diff --git a/discovery/androidmanagement-v1.json b/discovery/androidmanagement-v1.json index a451535202d..aaf5b464501 100644 --- a/discovery/androidmanagement-v1.json +++ b/discovery/androidmanagement-v1.json @@ -1265,7 +1265,7 @@ } } }, - "revision": "20251022", + "revision": "20251104", "rootUrl": "https://androidmanagement.googleapis.com/", "schemas": { "AdbShellCommandEvent": { @@ -5445,7 +5445,8 @@ "REQUIRED_ACCOUNT_NOT_IN_ENTERPRISE", "NEW_ACCOUNT_NOT_IN_ENTERPRISE", "DEFAULT_APPLICATION_SETTING_UNSUPPORTED_SCOPES", - "DEFAULT_APPLICATION_SETTING_FAILED_FOR_SCOPE" + "DEFAULT_APPLICATION_SETTING_FAILED_FOR_SCOPE", + "PRIVATE_DNS_HOST_NOT_SERVING" ], "enumDescriptions": [ "Specific non-compliance reason is not specified. Fields in specific_non_compliance_context are not set.", @@ -5461,7 +5462,8 @@ "Work account required by the workAccountSetupConfig policy setting is not part of the enterprise anymore. nonComplianceReason is set to USER_ACTION.", "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 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." ], "type": "string" } diff --git a/discovery/appengine-v1.json b/discovery/appengine-v1.json index eccbf5eb979..48b23e80326 100644 --- a/discovery/appengine-v1.json +++ b/discovery/appengine-v1.json @@ -959,7 +959,7 @@ "type": "string" }, "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2189,6 +2189,57 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ] }, + "list": { + "description": "Lists the domain mappings on an application.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/domainMappings", + "httpMethod": "GET", + "id": "appengine.projects.locations.applications.domainMappings.list", + "parameterOrder": [ + "projectsId", + "locationsId", + "applicationsId" + ], + "parameters": { + "applicationsId": { + "description": "Part of `parent`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "locationsId": { + "description": "Part of `parent`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "projectsId": { + "description": "Part of `parent`. Required. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/domainMappings", + "response": { + "$ref": "ListDomainMappingsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, "patch": { "description": "Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/domainMappings/{domainMappingsId}", @@ -2479,7 +2530,7 @@ } } }, - "revision": "20250930", + "revision": "20251103", "rootUrl": "https://appengine.googleapis.com/", "schemas": { "ApiConfigHandler": { @@ -2694,10 +2745,11 @@ "type": "integer" }, "domainNames": { - "description": "Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", + "description": "Output only. Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", "items": { "type": "string" }, + "readOnly": true, "type": "array" }, "expireTime": { @@ -2706,7 +2758,8 @@ "type": "string" }, "id": { - "description": "Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", + "description": "Output only. Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", + "readOnly": true, "type": "string" }, "managedCertificate": { @@ -2714,14 +2767,16 @@ "description": "Only applicable if this certificate is managed by App Engine. Managed certificates are tied to the lifecycle of a DomainMapping and cannot be updated or deleted via the AuthorizedCertificates API. If this certificate is manually administered by the user, this field will be empty.@OutputOnly" }, "name": { - "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "description": "Output only. Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "readOnly": true, "type": "string" }, "visibleDomainMappings": { - "description": "The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", + "description": "Output only. The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", "items": { "type": "string" }, + "readOnly": true, "type": "array" } }, @@ -3071,14 +3126,16 @@ "type": "string" }, "name": { - "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", + "description": "Output only. Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", + "readOnly": true, "type": "string" }, "resourceRecords": { - "description": "The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", + "description": "Output only. The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", "items": { "$ref": "ResourceRecord" }, + "readOnly": true, "type": "array" }, "sslSettings": { @@ -4559,7 +4616,8 @@ "type": "string" }, "pendingManagedCertificateId": { - "description": "ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly", + "description": "Output only. ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly", + "readOnly": true, "type": "string" }, "sslManagementType": { diff --git a/discovery/appengine-v1alpha.json b/discovery/appengine-v1alpha.json index 0e4f61e89da..12e0ef817b7 100644 --- a/discovery/appengine-v1alpha.json +++ b/discovery/appengine-v1alpha.json @@ -599,7 +599,7 @@ "type": "string" }, "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -766,7 +766,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1286,6 +1286,57 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ] }, + "list": { + "description": "Lists the domain mappings on an application.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/domainMappings", + "httpMethod": "GET", + "id": "appengine.projects.locations.applications.domainMappings.list", + "parameterOrder": [ + "projectsId", + "locationsId", + "applicationsId" + ], + "parameters": { + "applicationsId": { + "description": "Part of `parent`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "locationsId": { + "description": "Part of `parent`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "projectsId": { + "description": "Part of `parent`. Required. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/domainMappings", + "response": { + "$ref": "ListDomainMappingsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, "patch": { "description": "Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/domainMappings/{domainMappingsId}", @@ -1452,7 +1503,7 @@ } } }, - "revision": "20250930", + "revision": "20251103", "rootUrl": "https://appengine.googleapis.com/", "schemas": { "AuthorizedCertificate": { @@ -1473,10 +1524,11 @@ "type": "integer" }, "domainNames": { - "description": "Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", + "description": "Output only. Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", "items": { "type": "string" }, + "readOnly": true, "type": "array" }, "expireTime": { @@ -1485,7 +1537,8 @@ "type": "string" }, "id": { - "description": "Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", + "description": "Output only. Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", + "readOnly": true, "type": "string" }, "managedCertificate": { @@ -1493,14 +1546,16 @@ "description": "Only applicable if this certificate is managed by App Engine. Managed certificates are tied to the lifecycle of a DomainMapping and cannot be updated or deleted via the AuthorizedCertificates API. If this certificate is manually administered by the user, this field will be empty.@OutputOnly" }, "name": { - "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "description": "Output only. Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "readOnly": true, "type": "string" }, "visibleDomainMappings": { - "description": "The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", + "description": "Output only. The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", "items": { "type": "string" }, + "readOnly": true, "type": "array" } }, @@ -1608,14 +1663,16 @@ "type": "string" }, "name": { - "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", + "description": "Output only. Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", + "readOnly": true, "type": "string" }, "resourceRecords": { - "description": "The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", + "description": "Output only. The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", "items": { "$ref": "ResourceRecord" }, + "readOnly": true, "type": "array" }, "sslSettings": { @@ -2272,7 +2329,8 @@ "type": "string" }, "isManagedCertificate": { - "description": "Whether the mapped certificate is an App Engine managed certificate. Managed certificates are created by default with a domain mapping. To opt out, specify no_managed_certificate on a CREATE or UPDATE request.@OutputOnly", + "description": "Output only. Whether the mapped certificate is an App Engine managed certificate. Managed certificates are created by default with a domain mapping. To opt out, specify no_managed_certificate on a CREATE or UPDATE request.@OutputOnly", + "readOnly": true, "type": "boolean" } }, diff --git a/discovery/appengine-v1beta.json b/discovery/appengine-v1beta.json index 63a31cd6f65..af9dcde0cc1 100644 --- a/discovery/appengine-v1beta.json +++ b/discovery/appengine-v1beta.json @@ -959,7 +959,7 @@ "type": "string" }, "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1738,7 +1738,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2302,6 +2302,57 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ] }, + "list": { + "description": "Lists the domain mappings on an application.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/domainMappings", + "httpMethod": "GET", + "id": "appengine.projects.locations.applications.domainMappings.list", + "parameterOrder": [ + "projectsId", + "locationsId", + "applicationsId" + ], + "parameters": { + "applicationsId": { + "description": "Part of `parent`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "locationsId": { + "description": "Part of `parent`. See documentation of `projectsId`.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "location": "query", + "type": "string" + }, + "projectsId": { + "description": "Part of `parent`. Required. Name of the parent Application resource. Example: apps/myapp.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1beta/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/domainMappings", + "response": { + "$ref": "ListDomainMappingsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, "patch": { "description": "Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/domainMappings/{domainMappingsId}", @@ -2690,7 +2741,7 @@ } } }, - "revision": "20251005", + "revision": "20251103", "rootUrl": "https://appengine.googleapis.com/", "schemas": { "ApiConfigHandler": { @@ -2905,10 +2956,11 @@ "type": "integer" }, "domainNames": { - "description": "Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", + "description": "Output only. Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", "items": { "type": "string" }, + "readOnly": true, "type": "array" }, "expireTime": { @@ -2917,7 +2969,8 @@ "type": "string" }, "id": { - "description": "Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", + "description": "Output only. Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", + "readOnly": true, "type": "string" }, "managedCertificate": { @@ -2925,14 +2978,16 @@ "description": "Only applicable if this certificate is managed by App Engine. Managed certificates are tied to the lifecycle of a DomainMapping and cannot be updated or deleted via the AuthorizedCertificates API. If this certificate is manually administered by the user, this field will be empty.@OutputOnly" }, "name": { - "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "description": "Output only. Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "readOnly": true, "type": "string" }, "visibleDomainMappings": { - "description": "The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", + "description": "Output only. The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", "items": { "type": "string" }, + "readOnly": true, "type": "array" } }, @@ -3333,14 +3388,16 @@ "type": "string" }, "name": { - "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", + "description": "Output only. Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", + "readOnly": true, "type": "string" }, "resourceRecords": { - "description": "The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", + "description": "Output only. The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", "items": { "$ref": "ResourceRecord" }, + "readOnly": true, "type": "array" }, "sslSettings": { @@ -4819,7 +4876,8 @@ "type": "string" }, "pendingManagedCertificateId": { - "description": "ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly", + "description": "Output only. ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly", + "readOnly": true, "type": "string" }, "sslManagementType": { diff --git a/discovery/authorizedbuyersmarketplace-v1.json b/discovery/authorizedbuyersmarketplace-v1.json index c7d764a2f76..15cdff9b3b7 100644 --- a/discovery/authorizedbuyersmarketplace-v1.json +++ b/discovery/authorizedbuyersmarketplace-v1.json @@ -1395,7 +1395,7 @@ } } }, - "revision": "20251028", + "revision": "20251104", "rootUrl": "https://authorizedbuyersmarketplace.googleapis.com/", "schemas": { "AcceptProposalRequest": { @@ -2500,10 +2500,11 @@ "type": "object" }, "MediaPlanner": { - "description": "Describes a single Media Planner account.", + "description": "Represents a media planner account.", "id": "MediaPlanner", "properties": { "accountId": { + "deprecated": true, "description": "Output only. Account ID of the media planner.", "readOnly": true, "type": "string" diff --git a/discovery/authorizedbuyersmarketplace-v1alpha.json b/discovery/authorizedbuyersmarketplace-v1alpha.json index dd0ac6d490b..c5182048a8b 100644 --- a/discovery/authorizedbuyersmarketplace-v1alpha.json +++ b/discovery/authorizedbuyersmarketplace-v1alpha.json @@ -1578,7 +1578,7 @@ } } }, - "revision": "20251028", + "revision": "20251104", "rootUrl": "https://authorizedbuyersmarketplace.googleapis.com/", "schemas": { "AcceptProposalRequest": { @@ -2755,10 +2755,11 @@ "type": "object" }, "MediaPlanner": { - "description": "Describes a single Media Planner account.", + "description": "Represents a media planner account.", "id": "MediaPlanner", "properties": { "accountId": { + "deprecated": true, "description": "Output only. Account ID of the media planner.", "readOnly": true, "type": "string" diff --git a/discovery/backupdr-v1.json b/discovery/backupdr-v1.json index e69a400f464..96da9a2bd87 100644 --- a/discovery/backupdr-v1.json +++ b/discovery/backupdr-v1.json @@ -2234,7 +2234,7 @@ } } }, - "revision": "20251022", + "revision": "20251029", "rootUrl": "https://backupdr.googleapis.com/", "schemas": { "AbandonBackupRequest": { @@ -5129,6 +5129,13 @@ "nextPageToken": { "description": "A token, which 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" diff --git a/discovery/calendar-v3.json b/discovery/calendar-v3.json index 479df5d28c9..57b432ece83 100644 --- a/discovery/calendar-v3.json +++ b/discovery/calendar-v3.json @@ -736,7 +736,7 @@ ] }, "insert": { - "description": "Creates a secondary calendar.", + "description": "Creates a secondary calendar.\nThe authenticated user for the request is made the data owner of the new calendar.\n\nNote: We recommend to authenticate as the intended data owner of the calendar. You can use domain-wide delegation of authority to allow applications to act on behalf of a specific user. Don't use a service account for authentication. If you use a service account for authentication, the service account is the data owner, which can lead to unexpected behavior. For example, if a service account is the data owner, data ownership cannot be transferred.", "httpMethod": "POST", "id": "calendar.calendars.insert", "path": "calendars", @@ -1890,7 +1890,7 @@ } } }, - "revision": "20250404", + "revision": "20251028", "rootUrl": "https://www.googleapis.com/", "schemas": { "Acl": { @@ -1945,7 +1945,7 @@ "calendar.acl.insert" ] }, - "description": "The role assigned to the scope. Possible values are: \n- \"none\" - Provides no access. \n- \"freeBusyReader\" - Provides read access to free/busy information. \n- \"reader\" - Provides read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. \n- \"writer\" - Provides read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. Provides read access to the calendar's ACLs. \n- \"owner\" - Provides ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to manipulate ACLs.", + "description": "The role assigned to the scope. Possible values are: \n- \"none\" - Provides no access. \n- \"freeBusyReader\" - Provides read access to free/busy information. \n- \"reader\" - Provides read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. \n- \"writer\" - Provides read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. Provides read access to the calendar's ACLs. \n- \"owner\" - Provides manager access to the calendar. This role has all of the permissions of the writer role with the additional ability to modify access levels of other users.\nImportant: the owner role is different from the calendar's data owner. A calendar has a single data owner, but can have multiple users with owner role.", "type": "string" }, "scope": { @@ -1984,6 +1984,10 @@ "$ref": "ConferenceProperties", "description": "Conferencing properties for this calendar, for example what types of conferences are allowed." }, + "dataOwner": { + "description": "The email of the owner of the calendar. Set only for secondary calendars. Read-only.", + "type": "string" + }, "description": { "description": "Description of the calendar. Optional.", "type": "string" @@ -2055,7 +2059,7 @@ "id": "CalendarListEntry", "properties": { "accessRole": { - "description": "The effective access role that the authenticated user has on the calendar. Read-only. Possible values are: \n- \"freeBusyReader\" - Provides read access to free/busy information. \n- \"reader\" - Provides read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. \n- \"writer\" - Provides read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. \n- \"owner\" - Provides ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to see and manipulate ACLs.", + "description": "The effective access role that the authenticated user has on the calendar. Read-only. Possible values are: \n- \"freeBusyReader\" - Provides read access to free/busy information. \n- \"reader\" - Provides read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. \n- \"writer\" - Provides read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. \n- \"owner\" - Provides manager access to the calendar. This role has all of the permissions of the writer role with the additional ability to see and modify access levels of other users.\nImportant: the owner role is different from the calendar's data owner. A calendar has a single data owner, but can have multiple users with owner role.", "type": "string" }, "backgroundColor": { @@ -2070,6 +2074,10 @@ "$ref": "ConferenceProperties", "description": "Conferencing properties for this calendar, for example what types of conferences are allowed." }, + "dataOwner": { + "description": "The email of the owner of the calendar. Set only for secondary calendars. Read-only.", + "type": "string" + }, "defaultReminders": { "description": "The default reminders that the authenticated user has for this calendar.", "items": { @@ -3015,7 +3023,7 @@ "id": "Events", "properties": { "accessRole": { - "description": "The user's access role for this calendar. Read-only. Possible values are: \n- \"none\" - The user has no access. \n- \"freeBusyReader\" - The user has read access to free/busy information. \n- \"reader\" - The user has read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. \n- \"writer\" - The user has read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. \n- \"owner\" - The user has ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to see and manipulate ACLs.", + "description": "The user's access role for this calendar. Read-only. Possible values are: \n- \"none\" - The user has no access. \n- \"freeBusyReader\" - The user has read access to free/busy information. \n- \"reader\" - The user has read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. \n- \"writer\" - The user has read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. \n- \"owner\" - The user has manager access to the calendar. This role has all of the permissions of the writer role with the additional ability to see and modify access levels of other users.\nImportant: the owner role is different from the calendar's data owner. A calendar has a single data owner, but can have multiple users with owner role.", "type": "string" }, "defaultReminders": { diff --git a/discovery/certificatemanager-v1.json b/discovery/certificatemanager-v1.json index 4a57c017c4a..236581e9071 100644 --- a/discovery/certificatemanager-v1.json +++ b/discovery/certificatemanager-v1.json @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1325,7 +1325,7 @@ } } }, - "revision": "20250924", + "revision": "20251027", "rootUrl": "https://certificatemanager.googleapis.com/", "schemas": { "AllowlistedCertificate": { diff --git a/discovery/chromemanagement-v1.json b/discovery/chromemanagement-v1.json index d7ed32a6bb3..7a57ada75cb 100644 --- a/discovery/chromemanagement-v1.json +++ b/discovery/chromemanagement-v1.json @@ -705,6 +705,49 @@ }, "reports": { "methods": { + "countActiveDevices": { + "description": "Get a count of active devices per set time frames.", + "flatPath": "v1/customers/{customersId}/reports:countActiveDevices", + "httpMethod": "GET", + "id": "chromemanagement.customers.reports.countActiveDevices", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Required. Obfuscated customer ID prefixed with \"customers/C\" or \"customers/my_customer\".", + "location": "path", + "pattern": "^customers/[^/]+$", + "required": true, + "type": "string" + }, + "date.day": { + "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "date.month": { + "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "date.year": { + "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + "format": "int32", + "location": "query", + "type": "integer" + } + }, + "path": "v1/{+customer}/reports:countActiveDevices", + "response": { + "$ref": "GoogleChromeManagementV1CountActiveDevicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/chrome.management.reports.readonly" + ] + }, "countChromeBrowsersNeedingAttention": { "description": "Count of Chrome Browsers that have been recently enrolled, have new policy to be synced, or have no recent activity.", "flatPath": "v1/customers/{customersId}/reports:countChromeBrowsersNeedingAttention", @@ -933,6 +976,92 @@ "https://www.googleapis.com/auth/chrome.management.reports.readonly" ] }, + "countDevicesPerBootType": { + "description": "Get a count of devices per boot type.", + "flatPath": "v1/customers/{customersId}/reports:countDevicesPerBootType", + "httpMethod": "GET", + "id": "chromemanagement.customers.reports.countDevicesPerBootType", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Required. Obfuscated customer ID prefixed with \"customers/C\" or \"customers/my_customer\".", + "location": "path", + "pattern": "^customers/[^/]+$", + "required": true, + "type": "string" + }, + "date.day": { + "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "date.month": { + "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "date.year": { + "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + "format": "int32", + "location": "query", + "type": "integer" + } + }, + "path": "v1/{+customer}/reports:countDevicesPerBootType", + "response": { + "$ref": "GoogleChromeManagementV1CountDevicesPerBootTypeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/chrome.management.reports.readonly" + ] + }, + "countDevicesPerReleaseChannel": { + "description": "Get a count of devices per channel.", + "flatPath": "v1/customers/{customersId}/reports:countDevicesPerReleaseChannel", + "httpMethod": "GET", + "id": "chromemanagement.customers.reports.countDevicesPerReleaseChannel", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Required. Obfuscated customer ID prefixed with \"customers/C\" or \"customers/my_customer\".", + "location": "path", + "pattern": "^customers/[^/]+$", + "required": true, + "type": "string" + }, + "date.day": { + "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "date.month": { + "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "date.year": { + "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + "format": "int32", + "location": "query", + "type": "integer" + } + }, + "path": "v1/{+customer}/reports:countDevicesPerReleaseChannel", + "response": { + "$ref": "GoogleChromeManagementV1CountDevicesPerReleaseChannelResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/chrome.management.reports.readonly" + ] + }, "countInstalledApps": { "description": "Generate report of app installations.", "flatPath": "v1/customers/{customersId}/reports:countInstalledApps", @@ -1657,7 +1786,7 @@ } } }, - "revision": "20251014", + "revision": "20251105", "rootUrl": "https://chromemanagement.googleapis.com/", "schemas": { "GoogleChromeManagementV1AndroidAppInfo": { @@ -2375,6 +2504,23 @@ }, "type": "object" }, + "GoogleChromeManagementV1CountActiveDevicesResponse": { + "description": "Response containing the number of active devices.", + "id": "GoogleChromeManagementV1CountActiveDevicesResponse", + "properties": { + "sevenDaysCount": { + "description": "Number of active devices in the 7 days leading up to the date specified in the request.", + "format": "int64", + "type": "string" + }, + "thirtyDaysCount": { + "description": "Number of active devices in the 30 days leading up to the date specified in the request.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "GoogleChromeManagementV1CountChromeAppRequestsResponse": { "description": "Response containing summary of requested app installations.", "id": "GoogleChromeManagementV1CountChromeAppRequestsResponse", @@ -2558,6 +2704,75 @@ }, "type": "object" }, + "GoogleChromeManagementV1CountDevicesPerBootTypeResponse": { + "description": "Response containing the number of devices with the given boot type.", + "id": "GoogleChromeManagementV1CountDevicesPerBootTypeResponse", + "properties": { + "devBootTypeCount": { + "description": "Number of devices with dev boot type.", + "format": "int64", + "type": "string" + }, + "unreportedBootTypeCount": { + "description": "Number of devices with unreported boot type.", + "format": "int64", + "type": "string" + }, + "verifiedBootTypeCount": { + "description": "Number of devices with verified boot type.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleChromeManagementV1CountDevicesPerReleaseChannelResponse": { + "description": "Response containing the number of devices with the given channel.", + "id": "GoogleChromeManagementV1CountDevicesPerReleaseChannelResponse", + "properties": { + "betaChannelCount": { + "description": "Number of devices with beta release channel.", + "format": "int64", + "type": "string" + }, + "canaryChannelCount": { + "description": "Number of devices with canary release channel.", + "format": "int64", + "type": "string" + }, + "devChannelCount": { + "description": "Number of devices with dev release channel.", + "format": "int64", + "type": "string" + }, + "ltcChannelCount": { + "description": "Number of devices with ltc release channel.", + "format": "int64", + "type": "string" + }, + "ltsChannelCount": { + "description": "Number of devices with lts release channel.", + "format": "int64", + "type": "string" + }, + "stableChannelCount": { + "description": "Number of devices with stable release channel.", + "format": "int64", + "type": "string" + }, + "unreportedChannelCount": { + "description": "Number of devices with an unreported release channel.", + "format": "int64", + "type": "string" + }, + "unsupportedChannelCount": { + "description": "Number of devices with unsupported release channel.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "GoogleChromeManagementV1CountInstalledAppsResponse": { "description": "Response containing details of queried installed apps.", "id": "GoogleChromeManagementV1CountInstalledAppsResponse", diff --git a/discovery/classroom-v1.json b/discovery/classroom-v1.json index ea65c8d3df2..597d67515d4 100644 --- a/discovery/classroom-v1.json +++ b/discovery/classroom-v1.json @@ -4107,7 +4107,7 @@ } } }, - "revision": "20250929", + "revision": "20251104", "rootUrl": "https://classroom.googleapis.com/", "schemas": { "AddOnAttachment": { @@ -4995,11 +4995,11 @@ "type": "string" }, "title": { - "description": "Title of the Gem. Read-only.", + "description": "Title of the Gem.", "type": "string" }, "url": { - "description": "URL that can be used to access the Gem. Read-only.", + "description": "URL that can be used to access the Gem.", "type": "string" } }, @@ -5751,11 +5751,11 @@ "type": "string" }, "title": { - "description": "Title of the Notebook. Read-only.", + "description": "Title of the Notebook.", "type": "string" }, "url": { - "description": "URL that can be used to access the Notebook. Read-only.", + "description": "URL that can be used to access the Notebook.", "type": "string" } }, diff --git a/discovery/cloudshell-v1.json b/discovery/cloudshell-v1.json index bf21a0d7187..7fea848f5dd 100644 --- a/discovery/cloudshell-v1.json +++ b/discovery/cloudshell-v1.json @@ -293,6 +293,43 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "generateAccessToken": { + "description": "Generates an access token for the user's environment.", + "flatPath": "v1/users/{usersId}/environments/{environmentsId}:generateAccessToken", + "httpMethod": "GET", + "id": "cloudshell.users.environments.generateAccessToken", + "parameterOrder": [ + "environment" + ], + "parameters": { + "environment": { + "description": "Required. The environment to generate the access token for.", + "location": "path", + "pattern": "^users/[^/]+/environments/[^/]+$", + "required": true, + "type": "string" + }, + "expireTime": { + "description": "Desired expiration time of the access token. This value must be at most 24 hours in the future. If a value is not specified, the token's expiration time will be set to a default value of 1 hour in the future.", + "format": "google-datetime", + "location": "query", + "type": "string" + }, + "ttl": { + "description": "Desired lifetime duration of the access token. This value must be at most 24 hours. If a value is not specified, the token's lifetime will be set to a default value of 1 hour.", + "format": "google-duration", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+environment}:generateAccessToken", + "response": { + "$ref": "GenerateAccessTokenResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "Gets an environment. Returns NOT_FOUND if the environment does not exist.", "flatPath": "v1/users/{usersId}/environments/{environmentsId}", @@ -379,7 +416,7 @@ } } }, - "revision": "20250930", + "revision": "20251105", "rootUrl": "https://cloudshell.googleapis.com/", "schemas": { "AddPublicKeyMetadata": { @@ -534,6 +571,17 @@ }, "type": "object" }, + "GenerateAccessTokenResponse": { + "description": "Response message for GenerateAccessToken.", + "id": "GenerateAccessTokenResponse", + "properties": { + "accessToken": { + "description": "The access token.", + "type": "string" + } + }, + "type": "object" + }, "ListOperationsResponse": { "description": "The response message for Operations.ListOperations.", "id": "ListOperationsResponse", diff --git a/discovery/compute-alpha.json b/discovery/compute-alpha.json index f5fb64883b0..a4047a69a2b 100644 --- a/discovery/compute-alpha.json +++ b/discovery/compute-alpha.json @@ -23736,7 +23736,7 @@ "organizationSecurityPolicies": { "methods": { "addAssociation": { - "description": "Inserts an association for the specified security policy.\n\nThis has billing implications. Projects in the hierarchy with effective\nhierarchical security policies will be automatically enrolled into Cloud\nArmor Enterprise if not already enrolled.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.addAssociation instead if possible.", + "description": "Inserts an association for the specified security policy.\n\nThis has billing implications. Projects in the hierarchy with effective\nhierarchical security policies will be automatically enrolled into Cloud\nArmor Enterprise if not already enrolled.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.addAssociation\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/addAssociation", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.addAssociation", @@ -23775,7 +23775,7 @@ ] }, "addRule": { - "description": "Inserts a rule into a security policy.", + "description": "Inserts a rule into a security policy.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.addRule instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/addRule", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.addRule", @@ -23809,7 +23809,7 @@ ] }, "copyRules": { - "description": "Copies rules to the specified security policy.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.copyRules instead.", + "description": "Copies rules to the specified security policy.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.cloneRules\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/copyRules", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.copyRules", @@ -23845,7 +23845,7 @@ ] }, "delete": { - "description": "Deletes the specified policy.\n\nUse of this API to remove firewall policies is deprecated. Use\nfirewallPolicies.delete instead.", + "description": "Deletes the specified policy.\n\nUse this API to remove Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to remove firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.delete instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}", "httpMethod": "DELETE", "id": "compute.organizationSecurityPolicies.delete", @@ -23876,7 +23876,7 @@ ] }, "get": { - "description": "List all of the ordered rules present in a single specified policy.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.get instead.", + "description": "List all of the ordered rules present in a single specified policy.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is now\ndisabled for most organizations. Use firewallPolicies.get instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.get", @@ -23903,7 +23903,7 @@ ] }, "getAssociation": { - "description": "Gets an association with the specified name.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.getAssociation instead if possible.", + "description": "Gets an association with the specified name.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.getAssociation\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/getAssociation", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.getAssociation", @@ -23935,7 +23935,7 @@ ] }, "getRule": { - "description": "Gets a rule at the specified priority.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.getRule instead.", + "description": "Gets a rule at the specified priority.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is now\ndisabled for most organizations. Use firewallPolicies.getRule instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/getRule", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.getRule", @@ -23968,7 +23968,7 @@ ] }, "insert": { - "description": "Creates a new policy in the specified organization using the data included\nin the request.\n\nUse of this API to insert firewall policies is deprecated. Use\nfirewallPolicies.insert instead.", + "description": "Creates a new policy in the specified organization using the data included\nin the request.\n\nUse this API to add Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to add firewall policies. This usage is now\ndisabled for most organizations. Use firewallPolicies.insert instead.", "flatPath": "locations/global/securityPolicies", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.insert", @@ -23997,7 +23997,7 @@ ] }, "list": { - "description": "List all the policies that have been configured for the specified\norganization.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.list instead.", + "description": "List all the policies that have been configured for the specified\norganization.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is now\ndisabled for most organizations. Use firewallPolicies.list instead.", "flatPath": "locations/global/securityPolicies", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.list", @@ -24047,7 +24047,7 @@ ] }, "listAssociations": { - "description": "Lists associations of a specified target, i.e., organization or folder.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.listAssociations instead if possible.", + "description": "Lists associations of a specified target, i.e., organization or folder.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.listAssociations\ninstead.", "flatPath": "locations/global/securityPolicies/listAssociations", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.listAssociations", @@ -24119,7 +24119,7 @@ ] }, "move": { - "description": "Moves the specified security policy.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.move instead.", + "description": "Moves the specified security policy.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.move instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/move", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.move", @@ -24155,7 +24155,7 @@ ] }, "patch": { - "description": "Patches the specified policy with the data included in the request.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.patch instead.", + "description": "Patches the specified policy with the data included in the request.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.patch instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}", "httpMethod": "PATCH", "id": "compute.organizationSecurityPolicies.patch", @@ -24195,7 +24195,7 @@ ] }, "patchRule": { - "description": "Patches a rule at the specified priority.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.patchRule instead.", + "description": "Patches a rule at the specified priority.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.patchRule\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/patchRule", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.patchRule", @@ -24241,7 +24241,7 @@ ] }, "removeAssociation": { - "description": "Removes an association for the specified security policy.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.removeAssociation instead if possible.", + "description": "Removes an association for the specified security policy.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.removeAssociation\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/removeAssociation", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.removeAssociation", @@ -24277,7 +24277,7 @@ ] }, "removeRule": { - "description": "Deletes a rule at the specified priority.", + "description": "Deletes a rule at the specified priority.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.removeRule\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/removeRule", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.removeRule", @@ -36935,6 +36935,355 @@ } } }, + "regionRecoverableSnapshots": { + "methods": { + "delete": { + "description": "Deletes the specified RecoverableSnapshot. Deleting a recoverable snapshot\nwill delete the underlying PD snapshot and is irreversible.", + "flatPath": "projects/{project}/regions/{region}/recoverableSnapshots/{recoverableSnapshot}", + "httpMethod": "DELETE", + "id": "compute.regionRecoverableSnapshots.delete", + "parameterOrder": [ + "project", + "region", + "recoverableSnapshot" + ], + "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" + }, + "recoverableSnapshot": { + "description": "Name of the recoverable Snapshot resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-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}/regions/{region}/recoverableSnapshots/{recoverableSnapshot}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified RecoverableSnapshot resource.", + "flatPath": "projects/{project}/regions/{region}/recoverableSnapshots/{recoverableSnapshot}", + "httpMethod": "GET", + "id": "compute.regionRecoverableSnapshots.get", + "parameterOrder": [ + "project", + "region", + "recoverableSnapshot" + ], + "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" + }, + "recoverableSnapshot": { + "description": "Name of the Snapshot 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" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/recoverableSnapshots/{recoverableSnapshot}", + "response": { + "$ref": "RecoverableSnapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such\npolicy or resource exists.", + "flatPath": "projects/{project}/regions/{region}/recoverableSnapshots/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.regionRecoverableSnapshots.getIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "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": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-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" + } + }, + "path": "projects/{project}/regions/{region}/recoverableSnapshots/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves the list of RecoverableSnapshot resources contained within\nthe specified region.", + "flatPath": "projects/{project}/regions/{region}/recoverableSnapshots", + "httpMethod": "GET", + "id": "compute.regionRecoverableSnapshots.list", + "parameterOrder": [ + "project", + "region" + ], + "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" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/recoverableSnapshots", + "response": { + "$ref": "RecoverableSnapshotList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "recover": { + "description": "Recovers the specified RecoverableSnapshot.", + "flatPath": "projects/{project}/regions/{region}/recoverableSnapshots/{recoverableSnapshot}/recover", + "httpMethod": "POST", + "id": "compute.regionRecoverableSnapshots.recover", + "parameterOrder": [ + "project", + "region", + "recoverableSnapshot" + ], + "parameters": { + "project": { + "description": "Project Id of the 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" + }, + "recoverableSnapshot": { + "description": "Name of the recoverable resource to recover", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-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" + }, + "snapshotName": { + "description": "Optional. Name of the snapshot after the recovery\nThe name will be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name will be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter will be a lowercase letter, and all following characters can be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/recoverableSnapshots/{recoverableSnapshot}/recover", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource.\nReplaces any existing policy.", + "flatPath": "projects/{project}/regions/{region}/recoverableSnapshots/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.regionRecoverableSnapshots.setIamPolicy", + "parameterOrder": [ + "project", + "region", + "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" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-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" + } + }, + "path": "projects/{project}/regions/{region}/recoverableSnapshots/{resource}/setIamPolicy", + "request": { + "$ref": "RegionSetPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/recoverableSnapshots/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.regionRecoverableSnapshots.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "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" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-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" + } + }, + "path": "projects/{project}/regions/{region}/recoverableSnapshots/{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" + ] + } + } + }, "regionSecurityPolicies": { "methods": { "addRule": { @@ -53180,7 +53529,7 @@ } } }, - "revision": "20251019", + "revision": "20251031", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -64635,6 +64984,24 @@ }, "type": "array" }, + "destNetworkContext": { + "description": "Network context of the traffic destination. Allowed values are:\n \n \n - UNSPECIFIED\n - INTERNET\n - NON_INTERNET", + "enum": [ + "INTERNET", + "INTRA_VPC", + "NON_INTERNET", + "UNSPECIFIED", + "VPC_NETWORKS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, "destNetworkScope": { "description": "Network scope of the traffic destination.", "enum": [ @@ -64713,6 +65080,24 @@ }, "type": "array" }, + "srcNetworkContext": { + "description": "Network context of the traffic source. Allowed values are:\n \n \n - UNSPECIFIED\n - INTERNET\n - INTRA_VPC\n - NON_INTERNET\n - VPC_NETWORKS", + "enum": [ + "INTERNET", + "INTRA_VPC", + "NON_INTERNET", + "UNSPECIFIED", + "VPC_NETWORKS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, "srcNetworkScope": { "description": "Network scope of the traffic source.", "enum": [ @@ -71179,7 +71564,7 @@ "description": "The header value must be an integer and its value must be in the range\nspecified in rangeMatch. If the header does not contain an\ninteger, number or is empty, the match fails.\n\nFor example for a range [-5, 0]\n \n \n - -3 will match.\n - 0 will not match.\n - 0.25 will not match.\n - -3someString will not match.\n\nOnly one of exactMatch, prefixMatch,suffixMatch, regexMatch,presentMatch or rangeMatch must be set.\n\nrangeMatch is not supported for load balancers\nthat have loadBalancingScheme set to EXTERNAL." }, "regexMatch": { - "description": "The value of the header must match the regular expression specified inregexMatch.\nFor more information about regular expression syntax, see Syntax.\n\nFor matching against a port specified in the HTTP request, use a\nheaderMatch with headerName set to PORT and a regular expression that\nsatisfies the RFC2616 Host header's port specifier.\n\nOnly one of exactMatch, prefixMatch,suffixMatch, regexMatch,presentMatch or rangeMatch must be set.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED.", + "description": "The value of the header must match the regular expression specified inregexMatch.\nFor more information about regular expression syntax, see Syntax.\n\nFor matching against a port specified in the HTTP request, use a\nheaderMatch with headerName set to PORT and a regular expression that\nsatisfies the RFC2616 Host header's port specifier.\n\nOnly one of exactMatch, prefixMatch,suffixMatch, regexMatch,presentMatch or rangeMatch must be set.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED.", "type": "string" }, "suffixMatch": { @@ -71451,7 +71836,7 @@ "type": "boolean" }, "regexMatch": { - "description": "The queryParameterMatch matches if the value of the\nparameter matches the regular expression specified byregexMatch. For\nmore information about regular expression syntax, see Syntax.\n\nOnly one of presentMatch, exactMatch, orregexMatch must be set.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED.", + "description": "The queryParameterMatch matches if the value of the\nparameter matches the regular expression specified byregexMatch. For\nmore information about regular expression syntax, see Syntax.\n\nOnly one of presentMatch, exactMatch, orregexMatch must be set.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED.", "type": "string" } }, @@ -71628,7 +72013,7 @@ "id": "HttpRouteRuleMatch", "properties": { "fullPathMatch": { - "description": "For satisfying the matchRule condition, the path of the\nrequest must exactly match the value specified infullPathMatch after removing any query parameters and anchor\nthat may be part of the original URL.\n\nfullPathMatch must be from 1 to 1024 characters.\n\nOnly one of prefixMatch, fullPathMatch or regexMatch must be\nspecified.", + "description": "For satisfying the matchRule condition, the path of the\nrequest must exactly match the value specified infullPathMatch after removing any query parameters and anchor\nthat may be part of the original URL.\n\nfullPathMatch must be from 1 to 1024 characters.\n\nOnly one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be\nspecified.", "type": "string" }, "headerMatches": { @@ -71654,7 +72039,7 @@ "type": "string" }, "prefixMatch": { - "description": "For satisfying the matchRule condition, the request's\npath must begin with the specified prefixMatch.prefixMatch must begin with a /.\n\nThe value must be from 1 to 1024 characters.\n\nOnly one of prefixMatch, fullPathMatch or regexMatch must be\nspecified.", + "description": "For satisfying the matchRule condition, the request's\npath must begin with the specified prefixMatch.prefixMatch must begin with a /.\n\nThe value must be from 1 to 1024 characters.\n\nOnly one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be\nspecified.\nspecified.", "type": "string" }, "queryParameterMatches": { @@ -71665,7 +72050,7 @@ "type": "array" }, "regexMatch": { - "description": "For satisfying the matchRule condition, the path of the\nrequest must satisfy the regular expression specified inregexMatch after removing any query parameters and anchor\nsupplied with the original URL. For\nmore information about regular expression syntax, see Syntax.\n\nOnly one of prefixMatch, fullPathMatch orregexMatch must be\nspecified.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED.", + "description": "For satisfying the matchRule condition, the path of the\nrequest must satisfy the regular expression specified inregexMatch after removing any query parameters and anchor\nsupplied with the original URL. For\nmore information about regular expression syntax, see Syntax.\n\nOnly one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be\nspecified.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED.", "type": "string" } }, @@ -84764,10 +85149,21 @@ "ManagedInstancePropertiesFromFlexibilityPolicy": { "id": "ManagedInstancePropertiesFromFlexibilityPolicy", "properties": { + "disks": { + "description": "List of disks to be attached to the instance.", + "items": { + "$ref": "AttachedDisk" + }, + "type": "array" + }, "machineType": { "description": "The machine type to be used for this instance.", "type": "string" }, + "minCpuPlatform": { + "description": "Name of the minimum CPU platform to be used by this instance.\ne.g. 'Intel Ice Lake'.", + "type": "string" + }, "provisioningModel": { "description": "The provisioning model to be used for this instance.", "enum": [ @@ -89012,25 +89408,6 @@ "format": "int32", "type": "integer" }, - "fieldType": { - "description": "The field type could be one of: TRAFFIC_CLASS or DSCP.", - "enum": [ - "DSCP", - "FIELD_TYPE_UNSPECIFIED", - "TRAFFIC_CLASS" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "type": "string" - }, - "fieldValue": { - "description": "For field_type = TRAFFIC_CLASS: 1 to 6. For field_type = DSCP: 0 to 63.", - "format": "int32", - "type": "integer" - }, "trafficClass": { "description": "The traffic class that should be applied to the matching packet.", "enum": [ @@ -96574,27 +96951,33 @@ "type": "object" }, "QueuedResourceStatus": { + "description": "[Output only] Result of queuing and provisioning based on deferred\ncapacity.", "id": "QueuedResourceStatus", "properties": { "failedData": { - "$ref": "QueuedResourceStatusFailedData" + "$ref": "QueuedResourceStatusFailedData", + "description": "Additional status detail for the FAILED state." }, "provisioningOperations": { + "description": "[Output only] Fully qualified URL of the provisioning GCE operation to\ntrack the provisioning along with provisioning errors. The referenced\noperation may not exist after having been deleted or expired.", "items": { "type": "string" }, "type": "array" }, "queuingPolicy": { - "$ref": "QueuingPolicy" + "$ref": "QueuingPolicy", + "description": "Constraints for the time when the resource(s) start provisioning. Always\nexposed as absolute times." } }, "type": "object" }, "QueuedResourceStatusFailedData": { + "description": "Additional status detail for the FAILED state.", "id": "QueuedResourceStatusFailedData", "properties": { "error": { + "description": "The error(s) that caused the QueuedResource to enter the FAILED state.", "properties": { "errors": { "description": "[Output Only] The array of errors encountered while processing this\noperation.", @@ -103453,7 +103836,7 @@ "description": "Required. The resource being rolled out." }, "rolloutPlan": { - "description": "Required. Rollout Plan used to model the Rollout.\nEx. progressiverollout.googleapis.com/v1/organizations/1/rolloutPlans\nEx. progressiverollout.googleapis.com/v1/folders/1/rolloutPlans", + "description": "Required. Rollout Plan used to model the Rollout.\nEx. compute.googleapis.com/v1/projects/1234/rolloutPlans/rp1", "type": "string" }, "selfLink": { @@ -103966,7 +104349,7 @@ "type": "string" }, "orchestrationSource": { - "description": "Required. Fully qualified resource name of the resource which contains the source\nof truth of the configuration being rolled out across\nlocations/projects. For example, in the case of a global Rollout which\nis applied across regions, this contains the name of the global\nresource created by the user which contains a payload for a resource\nthat is orchestrated across regions. This follows the following format:\n//.googleapis.com/organizations//locations/global//\ne.g.\n//osconfig.googleapis.com/organizations/1/locations/global/policyOrchestrators/po1", + "description": "Required. Fully qualified resource name of the resource which contains the source\nof truth of the configuration being rolled out across\nlocations/projects. For example, in the case of a global Rollout which\nis applied across regions, this contains the name of the global\nresource created by the user which contains a payload for a resource\nthat is orchestrated across regions. This follows the following format:\n//.googleapis.com/projects//locations/global//\ne.g.\n//osconfig.googleapis.com/projects/1/locations/global/policyOrchestrators/po1", "type": "string" } }, @@ -122011,6 +122394,18 @@ "description": "Represents a Cloud VPN Tunnel resource.\n\nFor more information about VPN, read the\nthe Cloud VPN Overview.", "id": "VpnTunnel", "properties": { + "capacityTier": { + "description": "Capacity tier of the VPN tunnel. This is used for IPsec over Interconnect\ntunnels to indicate different bandwidth limits.", + "enum": [ + "DEFAULT", + "HIGH" + ], + "enumDescriptions": [ + "DEFAULT: A VPN tunnel which can support up to 1 Gbps.", + "HIGH: A VPN tunnel which can support up to 6 Gbps." + ], + "type": "string" + }, "cipherSuite": { "$ref": "VpnTunnelCipherSuite", "description": "User specified list of ciphers to use for the phase 1 and phase 2 of the\nIKE protocol." diff --git a/discovery/compute-beta.json b/discovery/compute-beta.json index 619f7911cf8..2524b13e355 100644 --- a/discovery/compute-beta.json +++ b/discovery/compute-beta.json @@ -7591,6 +7591,47 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "delete": { + "description": "Purge scoped resources (zonal policies) from a global VM extension\npolicy, and then delete the global VM extension policy. Purge of the scoped\nresources is a pre-condition of the global VM extension policy deletion.\nThe deletion of the global VM extension policy happens after the purge\nrollout is done, so it's not a part of the LRO. It's an automatic process\nthat triggers in the backend.", + "flatPath": "projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete", + "httpMethod": "POST", + "id": "compute.globalVmExtensionPolicies.delete", + "parameterOrder": [ + "project", + "globalVmExtensionPolicy" + ], + "parameters": { + "globalVmExtensionPolicy": { + "description": "Name of the global VM extension policy to purge scoped resources for.", + "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).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/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": { "description": "Gets details of a global VM extension policy.", "flatPath": "projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", @@ -7625,6 +7666,136 @@ "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] + }, + "insert": { + "description": "Creates a new project level GlobalVmExtensionPolicy.", + "flatPath": "projects/{project}/global/vmExtensionPolicies", + "httpMethod": "POST", + "id": "compute.globalVmExtensionPolicies.insert", + "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" + }, + "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/vmExtensionPolicies", + "request": { + "$ref": "GlobalVmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Lists global VM extension policies.", + "flatPath": "projects/{project}/global/vmExtensionPolicies", + "httpMethod": "GET", + "id": "compute.globalVmExtensionPolicies.list", + "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": "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" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/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" + ] + }, + "update": { + "description": "Updates a global VM extension policy.", + "flatPath": "projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", + "httpMethod": "PATCH", + "id": "compute.globalVmExtensionPolicies.update", + "parameterOrder": [ + "project", + "globalVmExtensionPolicy" + ], + "parameters": { + "globalVmExtensionPolicy": { + "description": "Name of the global VM extension policy to update.", + "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).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", + "request": { + "$ref": "GlobalVmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } } }, @@ -21980,7 +22151,7 @@ "organizationSecurityPolicies": { "methods": { "addAssociation": { - "description": "Inserts an association for the specified security policy.\n\nThis has billing implications. Projects in the hierarchy with effective\nhierarchical security policies will be automatically enrolled into Cloud\nArmor Enterprise if not already enrolled.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.addAssociation instead if possible.", + "description": "Inserts an association for the specified security policy.\n\nThis has billing implications. Projects in the hierarchy with effective\nhierarchical security policies will be automatically enrolled into Cloud\nArmor Enterprise if not already enrolled.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.addAssociation\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/addAssociation", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.addAssociation", @@ -22019,7 +22190,7 @@ ] }, "addRule": { - "description": "Inserts a rule into a security policy.", + "description": "Inserts a rule into a security policy.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.addRule instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/addRule", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.addRule", @@ -22053,7 +22224,7 @@ ] }, "copyRules": { - "description": "Copies rules to the specified security policy.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.copyRules instead.", + "description": "Copies rules to the specified security policy.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.cloneRules\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/copyRules", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.copyRules", @@ -22089,7 +22260,7 @@ ] }, "delete": { - "description": "Deletes the specified policy.\n\nUse of this API to remove firewall policies is deprecated. Use\nfirewallPolicies.delete instead.", + "description": "Deletes the specified policy.\n\nUse this API to remove Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to remove firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.delete instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}", "httpMethod": "DELETE", "id": "compute.organizationSecurityPolicies.delete", @@ -22120,7 +22291,7 @@ ] }, "get": { - "description": "List all of the ordered rules present in a single specified policy.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.get instead.", + "description": "List all of the ordered rules present in a single specified policy.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is now\ndisabled for most organizations. Use firewallPolicies.get instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.get", @@ -22147,7 +22318,7 @@ ] }, "getAssociation": { - "description": "Gets an association with the specified name.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.getAssociation instead if possible.", + "description": "Gets an association with the specified name.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.getAssociation\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/getAssociation", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.getAssociation", @@ -22179,7 +22350,7 @@ ] }, "getRule": { - "description": "Gets a rule at the specified priority.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.getRule instead.", + "description": "Gets a rule at the specified priority.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is now\ndisabled for most organizations. Use firewallPolicies.getRule instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/getRule", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.getRule", @@ -22212,7 +22383,7 @@ ] }, "insert": { - "description": "Creates a new policy in the specified organization using the data included\nin the request.\n\nUse of this API to insert firewall policies is deprecated. Use\nfirewallPolicies.insert instead.", + "description": "Creates a new policy in the specified organization using the data included\nin the request.\n\nUse this API to add Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to add firewall policies. This usage is now\ndisabled for most organizations. Use firewallPolicies.insert instead.", "flatPath": "locations/global/securityPolicies", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.insert", @@ -22241,7 +22412,7 @@ ] }, "list": { - "description": "List all the policies that have been configured for the specified\norganization.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.list instead.", + "description": "List all the policies that have been configured for the specified\norganization.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is now\ndisabled for most organizations. Use firewallPolicies.list instead.", "flatPath": "locations/global/securityPolicies", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.list", @@ -22291,7 +22462,7 @@ ] }, "listAssociations": { - "description": "Lists associations of a specified target, i.e., organization or folder.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.listAssociations instead if possible.", + "description": "Lists associations of a specified target, i.e., organization or folder.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.listAssociations\ninstead.", "flatPath": "locations/global/securityPolicies/listAssociations", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.listAssociations", @@ -22363,7 +22534,7 @@ ] }, "move": { - "description": "Moves the specified security policy.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.move instead.", + "description": "Moves the specified security policy.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.move instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/move", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.move", @@ -22399,7 +22570,7 @@ ] }, "patch": { - "description": "Patches the specified policy with the data included in the request.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.patch instead.", + "description": "Patches the specified policy with the data included in the request.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.patch instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}", "httpMethod": "PATCH", "id": "compute.organizationSecurityPolicies.patch", @@ -22439,7 +22610,7 @@ ] }, "patchRule": { - "description": "Patches a rule at the specified priority.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.patchRule instead.", + "description": "Patches a rule at the specified priority.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.patchRule\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/patchRule", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.patchRule", @@ -22485,7 +22656,7 @@ ] }, "removeAssociation": { - "description": "Removes an association for the specified security policy.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.removeAssociation instead if possible.", + "description": "Removes an association for the specified security policy.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.removeAssociation\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/removeAssociation", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.removeAssociation", @@ -22521,7 +22692,7 @@ ] }, "removeRule": { - "description": "Deletes a rule at the specified priority.", + "description": "Deletes a rule at the specified priority.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.removeRule\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/removeRule", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.removeRule", @@ -38861,13 +39032,121 @@ } } }, - "routers": { + "rolloutPlans": { "methods": { - "aggregatedList": { - "description": "Retrieves an aggregated list of routers.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", - "flatPath": "projects/{project}/aggregated/routers", + "delete": { + "description": "Deletes a RolloutPlan.", + "flatPath": "projects/{project}/global/rolloutPlans/{rolloutPlan}", + "httpMethod": "DELETE", + "id": "compute.rolloutPlans.delete", + "parameterOrder": [ + "project", + "rolloutPlan" + ], + "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" + }, + "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" + }, + "rolloutPlan": { + "description": "Name of the RolloutPlan resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/rolloutPlans/{rolloutPlan}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Gets details of a single project-scoped RolloutPlan.", + "flatPath": "projects/{project}/global/rolloutPlans/{rolloutPlan}", "httpMethod": "GET", - "id": "compute.routers.aggregatedList", + "id": "compute.rolloutPlans.get", + "parameterOrder": [ + "project", + "rolloutPlan" + ], + "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" + }, + "rolloutPlan": { + "description": "Name of the persistent rollout plan 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": "projects/{project}/global/rolloutPlans/{rolloutPlan}", + "response": { + "$ref": "RolloutPlan" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a new RolloutPlan in a given project and location.", + "flatPath": "projects/{project}/global/rolloutPlans", + "httpMethod": "POST", + "id": "compute.rolloutPlans.insert", + "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" + }, + "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/rolloutPlans", + "request": { + "$ref": "RolloutPlan" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Lists RolloutPlans in a given project and location.", + "flatPath": "projects/{project}/global/rolloutPlans", + "httpMethod": "GET", + "id": "compute.rolloutPlans.list", "parameterOrder": [ "project" ], @@ -38877,8 +39156,244 @@ "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.", + "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" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/rolloutPlans", + "response": { + "$ref": "RolloutPlansListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "rollouts": { + "methods": { + "cancel": { + "description": "Cancels a Rollout.", + "flatPath": "projects/{project}/global/rollouts/{rollout}", + "httpMethod": "PATCH", + "id": "compute.rollouts.cancel", + "parameterOrder": [ + "project", + "rollout" + ], + "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" + }, + "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" + }, + "rollback": { + "description": "Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel\nthe rollout without taking any further actions. Note that products must\nsupport at least one of these options, however, it does not need to support\nboth.", + "location": "query", + "type": "boolean" + }, + "rollout": { + "description": "Name of the Rollout resource to cancel.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/rollouts/{rollout}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes a Rollout.", + "flatPath": "projects/{project}/global/rollouts/{rollout}", + "httpMethod": "DELETE", + "id": "compute.rollouts.delete", + "parameterOrder": [ + "project", + "rollout" + ], + "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" + }, + "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" + }, + "rollout": { + "description": "Name of the Rollout resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/rollouts/{rollout}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Gets details of a single project-scoped Rollout.", + "flatPath": "projects/{project}/global/rollouts/{rollout}", + "httpMethod": "GET", + "id": "compute.rollouts.get", + "parameterOrder": [ + "project", + "rollout" + ], + "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" + }, + "rollout": { + "description": "Name of the persistent rollout 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": "projects/{project}/global/rollouts/{rollout}", + "response": { + "$ref": "Rollout" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Lists Rollouts in a given project and location.", + "flatPath": "projects/{project}/global/rollouts", + "httpMethod": "GET", + "id": "compute.rollouts.list", + "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": "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" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/rollouts", + "response": { + "$ref": "RolloutsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "routers": { + "methods": { + "aggregatedList": { + "description": "Retrieves an aggregated list of routers.\n\nTo prevent failure, Google recommends that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "projects/{project}/aggregated/routers", + "httpMethod": "GET", + "id": "compute.routers.aggregatedList", + "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" + }, + "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" }, @@ -48851,7 +49366,7 @@ } } }, - "revision": "20251019", + "revision": "20251031", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -54980,6 +55495,7 @@ "GENERAL_PURPOSE_N2", "GENERAL_PURPOSE_N2D", "GENERAL_PURPOSE_N4", + "GENERAL_PURPOSE_N4D", "GENERAL_PURPOSE_T2D", "GRAPHICS_OPTIMIZED", "MEMORY_OPTIMIZED", @@ -55022,6 +55538,7 @@ "", "", "", + "", "Note for internal users: When adding a new enum Type for v1, make sure\nto also add it in the comment for the `optional Type type` definition.\nThis ensures that the public documentation displays the new enum Type." ], "type": "string" @@ -57281,24 +57798,27 @@ "type": "object" }, "DiskSettingsAccessLocation": { + "description": "AccessLocation is only used for regional snapshot. It contains which\nregions are allowed to create a regional snapshot from disks located in the\ngiven region/zone.\nIt includes key-value pairs designed to store the following structure. The\nkeys should match their corresponding values, which must be provided:\naccess_location: {\n locations {\n us-central1 {\n region: \"us-central1\"\n },\n asia-west2 {\n region: \"asia-west2\"\n }\n }\n}", "id": "DiskSettingsAccessLocation", "properties": { "locations": { "additionalProperties": { "$ref": "DiskSettingsAccessLocationAccessLocationPreference" }, + "description": "List of regions that can create a regional\nsnapshot from the current region", "type": "object" }, "policy": { + "description": "Policy of which location is allowed to access snapshot.", "enum": [ "ALL_REGIONS", "POLICY_UNSPECIFIED", "SPECIFIC_REGIONS" ], "enumDescriptions": [ + "Any regions will be able to access the source location.", "", - "", - "" + "Only allowlisted regions will be able to create region scoped\nsnapshots" ], "type": "string" } @@ -57306,9 +57826,11 @@ "type": "object" }, "DiskSettingsAccessLocationAccessLocationPreference": { + "description": "A structure for specifying an allowed target region to create snapshot.", "id": "DiskSettingsAccessLocationAccessLocationPreference", "properties": { "region": { + "description": "Accessible region name", "type": "string" } }, @@ -61944,6 +62466,171 @@ }, "type": "object" }, + "GlobalVmExtensionPolicyList": { + "description": "Response to list global VM extension policy resources.", + "id": "GlobalVmExtensionPolicyList", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of GlobalVmExtensionPolicy resources.", + "items": { + "$ref": "GlobalVmExtensionPolicy" + }, + "type": "array" + }, + "kind": { + "default": "compute#globalVmExtensionPolicyList", + "description": "Type of resource.", + "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] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "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" + }, "GlobalVmExtensionPolicyRolloutOperation": { "description": "Represents the rollout operation", "id": "GlobalVmExtensionPolicyRolloutOperation", @@ -64569,7 +65256,7 @@ "description": "The header value must be an integer and its value must be in the range\nspecified in rangeMatch. If the header does not contain an\ninteger, number or is empty, the match fails.\n\nFor example for a range [-5, 0]\n \n \n - -3 will match.\n - 0 will not match.\n - 0.25 will not match.\n - -3someString will not match.\n\nOnly one of exactMatch, prefixMatch,suffixMatch, regexMatch,presentMatch or rangeMatch must be set.\n\nrangeMatch is not supported for load balancers\nthat have loadBalancingScheme set to EXTERNAL." }, "regexMatch": { - "description": "The value of the header must match the regular expression specified inregexMatch.\nFor more information about regular expression syntax, see Syntax.\n\nFor matching against a port specified in the HTTP request, use a\nheaderMatch with headerName set to PORT and a regular expression that\nsatisfies the RFC2616 Host header's port specifier.\n\nOnly one of exactMatch, prefixMatch,suffixMatch, regexMatch,presentMatch or rangeMatch must be set.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED.", + "description": "The value of the header must match the regular expression specified inregexMatch.\nFor more information about regular expression syntax, see Syntax.\n\nFor matching against a port specified in the HTTP request, use a\nheaderMatch with headerName set to PORT and a regular expression that\nsatisfies the RFC2616 Host header's port specifier.\n\nOnly one of exactMatch, prefixMatch,suffixMatch, regexMatch,presentMatch or rangeMatch must be set.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED.", "type": "string" }, "suffixMatch": { @@ -64837,7 +65524,7 @@ "type": "boolean" }, "regexMatch": { - "description": "The queryParameterMatch matches if the value of the\nparameter matches the regular expression specified byregexMatch. For\nmore information about regular expression syntax, see Syntax.\n\nOnly one of presentMatch, exactMatch, orregexMatch must be set.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED.", + "description": "The queryParameterMatch matches if the value of the\nparameter matches the regular expression specified byregexMatch. For\nmore information about regular expression syntax, see Syntax.\n\nOnly one of presentMatch, exactMatch, orregexMatch must be set.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED.", "type": "string" } }, @@ -65014,7 +65701,7 @@ "id": "HttpRouteRuleMatch", "properties": { "fullPathMatch": { - "description": "For satisfying the matchRule condition, the path of the\nrequest must exactly match the value specified infullPathMatch after removing any query parameters and anchor\nthat may be part of the original URL.\n\nfullPathMatch must be from 1 to 1024 characters.\n\nOnly one of prefixMatch, fullPathMatch or regexMatch must be\nspecified.", + "description": "For satisfying the matchRule condition, the path of the\nrequest must exactly match the value specified infullPathMatch after removing any query parameters and anchor\nthat may be part of the original URL.\n\nfullPathMatch must be from 1 to 1024 characters.\n\nOnly one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be\nspecified.", "type": "string" }, "headerMatches": { @@ -65040,7 +65727,7 @@ "type": "string" }, "prefixMatch": { - "description": "For satisfying the matchRule condition, the request's\npath must begin with the specified prefixMatch.prefixMatch must begin with a /.\n\nThe value must be from 1 to 1024 characters.\n\nOnly one of prefixMatch, fullPathMatch or regexMatch must be\nspecified.", + "description": "For satisfying the matchRule condition, the request's\npath must begin with the specified prefixMatch.prefixMatch must begin with a /.\n\nThe value must be from 1 to 1024 characters.\n\nOnly one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be\nspecified.\nspecified.", "type": "string" }, "queryParameterMatches": { @@ -65051,7 +65738,7 @@ "type": "array" }, "regexMatch": { - "description": "For satisfying the matchRule condition, the path of the\nrequest must satisfy the regular expression specified inregexMatch after removing any query parameters and anchor\nsupplied with the original URL. For\nmore information about regular expression syntax, see Syntax.\n\nOnly one of prefixMatch, fullPathMatch orregexMatch must be\nspecified.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED.", + "description": "For satisfying the matchRule condition, the path of the\nrequest must satisfy the regular expression specified inregexMatch after removing any query parameters and anchor\nsupplied with the original URL. For\nmore information about regular expression syntax, see Syntax.\n\nOnly one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be\nspecified.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED.", "type": "string" } }, @@ -67098,6 +67785,13 @@ "InstanceGroupManagerInstanceFlexibilityPolicyInstanceSelection": { "id": "InstanceGroupManagerInstanceFlexibilityPolicyInstanceSelection", "properties": { + "disks": { + "description": "List of disks to be attached to the instances created from this\nselection.", + "items": { + "$ref": "AttachedDisk" + }, + "type": "array" + }, "machineTypes": { "description": "Full machine-type names, e.g. \"n1-standard-16\".", "items": { @@ -67105,6 +67799,10 @@ }, "type": "array" }, + "minCpuPlatform": { + "description": "Name of the minimum CPU platform to be used by this instance selection.\ne.g. 'Intel Ice Lake'.", + "type": "string" + }, "rank": { "description": "Preference of this instance selection. Lower number means higher\npreference. MIG will first try to create a VM based on the machine-type\nwith lowest rank and fallback to next rank based on availability.\nMachine types and instance selections with the same rank have the same\npreference.", "format": "int32", @@ -76521,10 +77219,21 @@ "ManagedInstancePropertiesFromFlexibilityPolicy": { "id": "ManagedInstancePropertiesFromFlexibilityPolicy", "properties": { + "disks": { + "description": "List of disks to be attached to the instance.", + "items": { + "$ref": "AttachedDisk" + }, + "type": "array" + }, "machineType": { "description": "The machine type to be used for this instance.", "type": "string" }, + "minCpuPlatform": { + "description": "Name of the minimum CPU platform to be used by this instance.\ne.g. 'Intel Ice Lake'.", + "type": "string" + }, "provisioningModel": { "description": "The provisioning model to be used for this instance.", "enum": [ @@ -92028,6 +92737,530 @@ }, "type": "object" }, + "Rollout": { + "description": "Represent a Rollout resource.", + "id": "Rollout", + "properties": { + "cancellationTime": { + "description": "Output only. The timestamp at which the Rollout was cancelled.", + "readOnly": true, + "type": "string" + }, + "completionTime": { + "description": "Output only. The timestamp at which the Rollout was completed.", + "readOnly": true, + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp inRFC3339\ntext format.", + "type": "string" + }, + "currentWaveNumber": { + "description": "Output only. The number of the currently running wave.\nEx. 1", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "etag": { + "description": "Output only. etag of the Rollout\nEx. abc1234", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#rollout", + "description": "[Output Only] Type of the resource. Always compute#rollout\nfor rollouts.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`\nwhich means the first character must be a lowercase letter, and all\nfollowing characters must be a dash, lowercase letter, or digit, except\nthe last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "rolloutEntity": { + "$ref": "RolloutRolloutEntity", + "description": "Required. The resource being rolled out." + }, + "rolloutPlan": { + "description": "Required. Rollout Plan used to model the Rollout.\nEx. compute.googleapis.com/v1/projects/1234/rolloutPlans/rp1", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "selfLinkWithId": { + "description": "[Output Only] Server-defined URL for this resource's resource id.", + "type": "string" + }, + "state": { + "description": "Output only. The current state of the Rollout.", + "enum": [ + "CANCELLED", + "CANCELLING", + "CANCEL_FAILED", + "COMPLETED", + "COMPLETE_FAILED", + "COMPLETING", + "FAILED", + "PAUSED", + "PAUSE_FAILED", + "PAUSING", + "PROCESSING", + "READY", + "RESUMING", + "ROLLBACK_WAVE_FAILED", + "ROLLING_BACK", + "STATE_UNSPECIFIED", + "UNINITIALIZED", + "WAVE_FAILED" + ], + "enumDescriptions": [ + "The rollout is in a failure terminal state.", + "The rollout is being cancelled.", + "An attempted cancel operation was unsuccessful.", + "The rollout is in a successful terminal state.", + "An attempted complete operation was unsuccessful.", + "The rollout is being marked as completed.", + "The rollout completed with failures.", + "The rollout is paused.", + "An attempted pause operation was unsuccessful.", + "The rollout is being paused.", + "A wave is being processed by the product.", + "The rollout has been successfully initialized and is ready to start.", + "The rollout is being resumed after being paused.", + "An attempted rollback operation failed to complete successfully.", + "A wave rollback is in progress for this rollout.", + "Undefined default state. Should never be exposed to users.", + "The rollout has been created but is not yet ready to be started.", + "The product failed to process the wave." + ], + "readOnly": true, + "type": "string" + }, + "waveDetails": { + "description": "Output only. Details about each wave of the rollout.", + "items": { + "$ref": "RolloutWaveDetails" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "RolloutPlan": { + "description": "Message describing RolloutPlan object", + "id": "RolloutPlan", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp inRFC3339\ntext format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#rolloutPlan", + "description": "[Output Only] Type of the resource. Always compute#rolloutPlan\nfor rolloutPlans.", + "type": "string" + }, + "locationScope": { + "description": "The location scope of the rollout plan. If not specified, the location\nscope is considered as ZONAL.", + "enum": [ + "LOCATION_SCOPE_UNSPECIFIED", + "REGIONAL", + "ZONAL" + ], + "enumDescriptions": [ + "Unspecified value. Considered as ZONAL.", + "Regional scope.", + "Zonal scope." + ], + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.rolloutPlans.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?`\nwhich means the first character must be a lowercase letter, and all\nfollowing characters must be a dash, lowercase letter, or digit, except\nthe last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "selfLinkWithId": { + "description": "[Output Only] Server-defined URL for this resource's resource id.", + "type": "string" + }, + "waves": { + "description": "Required. The waves included in this rollout plan.", + "items": { + "$ref": "RolloutPlanWave" + }, + "type": "array" + } + }, + "type": "object" + }, + "RolloutPlanWave": { + "description": "A single wave in a rollout plan.", + "id": "RolloutPlanWave", + "properties": { + "displayName": { + "description": "Optional. The display name of this wave of the rollout plan.", + "type": "string" + }, + "number": { + "description": "Output only. The wave number.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "orchestrationOptions": { + "$ref": "RolloutPlanWaveOrchestrationOptions", + "description": "Optional. The orchestration options for this wave." + }, + "selectors": { + "description": "Required. The selectors for this wave. There is a logical AND between each selector\ndefined in a wave, so a resource must satisfy the criteria of *all* the\nspecified selectors to be in scope for the wave.", + "items": { + "$ref": "RolloutPlanWaveSelector" + }, + "type": "array" + }, + "validation": { + "$ref": "RolloutPlanWaveValidation", + "description": "Required. The validation to be performed at the end of this wave." + } + }, + "type": "object" + }, + "RolloutPlanWaveOrchestrationOptions": { + "description": "Options to control the pace of orchestration of a wave. These options are\nrequired only if the resource being rolled out follows the Orchestrated\npattern.", + "id": "RolloutPlanWaveOrchestrationOptions", + "properties": { + "delays": { + "description": "Optional. Delays, if any, to be added between batches of projects. We allow\nmultiple Delays to be specified, letting users set separate delays\nbetween batches of projects corresponding to different locations and\nbatches of projects corresponding to the same location.", + "items": { + "$ref": "RolloutPlanWaveOrchestrationOptionsDelay" + }, + "type": "array" + }, + "maxConcurrentLocations": { + "description": "Optional. Maximum number of locations to be orchestrated in parallel.", + "format": "int64", + "type": "string" + }, + "maxConcurrentResourcesPerLocation": { + "description": "Optional. Maximum number of resources to be orchestrated per location in\nparallel.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "RolloutPlanWaveOrchestrationOptionsDelay": { + "description": "Options to control the delay, if any, between batches of projects.", + "id": "RolloutPlanWaveOrchestrationOptionsDelay", + "properties": { + "delimiter": { + "description": "Optional. Controls whether the delay should only be added between batches of\nprojects corresponding to different locations, or also between\nbatches of projects corresponding to the same location.\n\nMust be set to DELIMITER_UNSPECIFIED if no delay is to be added.", + "enum": [ + "DELIMITER_BATCH", + "DELIMITER_LOCATION", + "DELIMITER_UNSPECIFIED" + ], + "enumDescriptions": [ + "The delay will also be added between batches of projects\ncorresponding to the same location.", + "The delay will only be added between batches of projects\ncorresponding to different locations.", + "No delay will be added between batches of projects. Processing will\ncontinue with the next batch as soon as the previous batch of LROs\nis done." + ], + "type": "string" + }, + "duration": { + "description": "Optional. The duration of the delay, if any, to be added between batches of\nprojects. A zero duration corresponds to no delay.", + "format": "google-duration", + "type": "string" + }, + "type": { + "description": "Optional. Controls whether the specified duration is to be added at the end of\neach batch, or if the total processing time for each batch will be\npadded if needed to meet the specified duration.\n\nMust be set to TYPE_UNSPECIFIED if no delay is to be added.", + "enum": [ + "TYPE_MINIMUM", + "TYPE_OFFSET", + "TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "The total processing time for each batch of projects will be padded\nif needed to meet the specified delay duration.", + "The specified delay will directly be added after each batch of\nprojects as specified by the delimiter.", + "No delay will be added between batches of projects. Processing will\ncontinue with the next batch as soon as the previous batch of LROs\nis done." + ], + "type": "string" + } + }, + "type": "object" + }, + "RolloutPlanWaveSelector": { + "description": "A selector which specifies what resource(s) are included in a given wave.", + "id": "RolloutPlanWaveSelector", + "properties": { + "locationSelector": { + "$ref": "RolloutPlanWaveSelectorLocationSelector", + "description": "Optional. Roll out to resources by Cloud locations." + }, + "resourceHierarchySelector": { + "$ref": "RolloutPlanWaveSelectorResourceHierarchySelector", + "description": "Optional. Roll out to resources by Cloud Resource Manager resource hierarchy." + } + }, + "type": "object" + }, + "RolloutPlanWaveSelectorLocationSelector": { + "description": "Roll out to resources by location.", + "id": "RolloutPlanWaveSelectorLocationSelector", + "properties": { + "includedLocations": { + "description": "Optional. Example: \"us-central1-a\"", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RolloutPlanWaveSelectorResourceHierarchySelector": { + "description": "Roll out to resources by Cloud Resource Manager resource hierarchy\nnodes such as projects, folders, orgs.", + "id": "RolloutPlanWaveSelectorResourceHierarchySelector", + "properties": { + "includedFolders": { + "description": "Optional. Format: \"folders/{folder_id}\"", + "items": { + "type": "string" + }, + "type": "array" + }, + "includedOrganizations": { + "description": "Optional. Format: \"organizations/{organization_id}\"", + "items": { + "type": "string" + }, + "type": "array" + }, + "includedProjects": { + "description": "Optional. Format: \"projects/{project_id}\"", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RolloutPlanWaveValidation": { + "description": "The validation to be performed before progressing to the next wave.", + "id": "RolloutPlanWaveValidation", + "properties": { + "timeBasedValidationMetadata": { + "$ref": "RolloutPlanWaveValidationTimeBasedValidationMetadata", + "description": "Optional. Metadata required if type = \"time\"." + }, + "type": { + "description": "Required. The type of the validation. If a type of validation is associated with\na metadata object, the appropriate metadata field mapping to the\nvalidation type must be provided in the validation message. Possible\nvalues are in quotes below alongside an explanation:\n \"manual\": The system waits for an end-user approval API before\n progressing to the next wave.\n \"time\": The system waits for a user specified duration before\n progressing to the next wave. TimeBasedValidation must be provided.", + "type": "string" + } + }, + "type": "object" + }, + "RolloutPlanWaveValidationTimeBasedValidationMetadata": { + "description": "Metadata required if type = \"time\".", + "id": "RolloutPlanWaveValidationTimeBasedValidationMetadata", + "properties": { + "waitDuration": { + "description": "Optional. The duration that the system waits in between waves. This wait starts\nafter all changes in the wave are rolled out.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "RolloutPlansListResponse": { + "description": "Contains a list of RolloutPlan resources.", + "id": "RolloutPlansListResponse", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of RolloutPlan resources.", + "items": { + "$ref": "RolloutPlan" + }, + "type": "array" + }, + "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] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" + }, + "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" + }, "RolloutPolicy": { "description": "A rollout policy configuration.", "id": "RolloutPolicy", @@ -92046,6 +93279,251 @@ }, "type": "object" }, + "RolloutRolloutEntity": { + "description": "Specifications of the resource to roll out.", + "id": "RolloutRolloutEntity", + "properties": { + "orchestratedEntity": { + "$ref": "RolloutRolloutEntityOrchestratedEntity", + "description": "Optional. Entity details for products using the Orchestrated Integration model." + } + }, + "type": "object" + }, + "RolloutRolloutEntityOrchestratedEntity": { + "description": "This message is used if the resource type follows the Orchestrated\nintegration model with ProgressiveRollout.", + "id": "RolloutRolloutEntityOrchestratedEntity", + "properties": { + "conflictBehavior": { + "description": "Required. Specifies the behavior of the Rollout if an out of band update is\ndetected in a project during a Rollout. It can be one of the following\nvalues:\n1) overwrite : Overwrite the local value with the rollout value.\n2) no_overwrite : Do not overwrite the local value with the rollout\nvalue.", + "type": "string" + }, + "orchestrationAction": { + "description": "Required. Orchestration action during the Rollout. It can be one of the following\nvalues:\n1) \"update\": Resources will be updated by the rollout.\n2) \"delete\": Resources will be deleted by the rollout.", + "type": "string" + }, + "orchestrationSource": { + "description": "Required. Fully qualified resource name of the resource which contains the source\nof truth of the configuration being rolled out across\nlocations/projects. For example, in the case of a global Rollout which\nis applied across regions, this contains the name of the global\nresource created by the user which contains a payload for a resource\nthat is orchestrated across regions. This follows the following format:\n//.googleapis.com/projects//locations/global//\ne.g.\n//osconfig.googleapis.com/projects/1/locations/global/policyOrchestrators/po1", + "type": "string" + } + }, + "type": "object" + }, + "RolloutWaveDetails": { + "description": "Additional metadata about the status of each wave provided by the server.", + "id": "RolloutWaveDetails", + "properties": { + "orchestratedWaveDetails": { + "$ref": "RolloutWaveDetailsOrchestratedWaveDetails", + "description": "Output only. Additional details of the wave for products using the Orchestrated\nIntegration model.", + "readOnly": true + }, + "waveDisplayName": { + "description": "Output only. Wave name.\nEx. wave1", + "readOnly": true, + "type": "string" + }, + "waveNumber": { + "description": "Output only. System generated number for the wave.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "RolloutWaveDetailsOrchestratedWaveDetails": { + "description": "Details of the wave for products using the Orchestrated integration\nmodel.", + "id": "RolloutWaveDetailsOrchestratedWaveDetails", + "properties": { + "completedResourcesCount": { + "description": "Output only. Resource completed so far.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "estimatedTotalResourcesCount": { + "description": "Output only. Estimated total count of resources.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "failedLocations": { + "description": "Output only. Locations that failed during orchestration, and ProgressiveRollout\nstopped retrying. There may be some successful resources rolled out in\nthe wave as the location may have failed later in the Rollout.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "failedResourcesCount": { + "description": "Output only. Resources failed.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "RolloutsListResponse": { + "id": "RolloutsListResponse", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Rollout resources.", + "items": { + "$ref": "Rollout" + }, + "type": "array" + }, + "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] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" + }, + "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" + }, "Route": { "description": "Represents a Route resource.\n\nA route defines a path from VM instances in the VPC network to a specific\ndestination. This destination can be inside or outside the VPC network.\nFor more information, read theRoutes overview.", "id": "Route", diff --git a/discovery/compute-v1.json b/discovery/compute-v1.json index f58e38a5b65..f6def91c748 100644 --- a/discovery/compute-v1.json +++ b/discovery/compute-v1.json @@ -20556,7 +20556,7 @@ "organizationSecurityPolicies": { "methods": { "addAssociation": { - "description": "Inserts an association for the specified security policy.\n\nThis has billing implications. Projects in the hierarchy with effective\nhierarchical security policies will be automatically enrolled into Cloud\nArmor Enterprise if not already enrolled.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.addAssociation instead if possible.", + "description": "Inserts an association for the specified security policy.\n\nThis has billing implications. Projects in the hierarchy with effective\nhierarchical security policies will be automatically enrolled into Cloud\nArmor Enterprise if not already enrolled.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.addAssociation\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/addAssociation", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.addAssociation", @@ -20595,7 +20595,7 @@ ] }, "addRule": { - "description": "Inserts a rule into a security policy.", + "description": "Inserts a rule into a security policy.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.addRule instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/addRule", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.addRule", @@ -20629,7 +20629,7 @@ ] }, "copyRules": { - "description": "Copies rules to the specified security policy.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.copyRules instead.", + "description": "Copies rules to the specified security policy.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.cloneRules\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/copyRules", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.copyRules", @@ -20665,7 +20665,7 @@ ] }, "delete": { - "description": "Deletes the specified policy.\n\nUse of this API to remove firewall policies is deprecated. Use\nfirewallPolicies.delete instead.", + "description": "Deletes the specified policy.\n\nUse this API to remove Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to remove firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.delete instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}", "httpMethod": "DELETE", "id": "compute.organizationSecurityPolicies.delete", @@ -20696,7 +20696,7 @@ ] }, "get": { - "description": "List all of the ordered rules present in a single specified policy.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.get instead.", + "description": "List all of the ordered rules present in a single specified policy.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is now\ndisabled for most organizations. Use firewallPolicies.get instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.get", @@ -20723,7 +20723,7 @@ ] }, "getAssociation": { - "description": "Gets an association with the specified name.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.getAssociation instead if possible.", + "description": "Gets an association with the specified name.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.getAssociation\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/getAssociation", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.getAssociation", @@ -20755,7 +20755,7 @@ ] }, "getRule": { - "description": "Gets a rule at the specified priority.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.getRule instead.", + "description": "Gets a rule at the specified priority.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is now\ndisabled for most organizations. Use firewallPolicies.getRule instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/getRule", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.getRule", @@ -20788,7 +20788,7 @@ ] }, "insert": { - "description": "Creates a new policy in the specified organization using the data included\nin the request.\n\nUse of this API to insert firewall policies is deprecated. Use\nfirewallPolicies.insert instead.", + "description": "Creates a new policy in the specified organization using the data included\nin the request.\n\nUse this API to add Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to add firewall policies. This usage is now\ndisabled for most organizations. Use firewallPolicies.insert instead.", "flatPath": "locations/global/securityPolicies", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.insert", @@ -20817,7 +20817,7 @@ ] }, "list": { - "description": "List all the policies that have been configured for the specified\norganization.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.list instead.", + "description": "List all the policies that have been configured for the specified\norganization.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is now\ndisabled for most organizations. Use firewallPolicies.list instead.", "flatPath": "locations/global/securityPolicies", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.list", @@ -20867,7 +20867,7 @@ ] }, "listAssociations": { - "description": "Lists associations of a specified target, i.e., organization or folder.\n\nUse of this API to read firewall policies is deprecated. Use\nfirewallPolicies.listAssociations instead if possible.", + "description": "Lists associations of a specified target, i.e., organization or folder.\n\nUse this API to read Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to read firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.listAssociations\ninstead.", "flatPath": "locations/global/securityPolicies/listAssociations", "httpMethod": "GET", "id": "compute.organizationSecurityPolicies.listAssociations", @@ -20939,7 +20939,7 @@ ] }, "move": { - "description": "Moves the specified security policy.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.move instead.", + "description": "Moves the specified security policy.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.move instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/move", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.move", @@ -20975,7 +20975,7 @@ ] }, "patch": { - "description": "Patches the specified policy with the data included in the request.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.patch instead.", + "description": "Patches the specified policy with the data included in the request.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.patch instead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}", "httpMethod": "PATCH", "id": "compute.organizationSecurityPolicies.patch", @@ -21009,7 +21009,7 @@ ] }, "patchRule": { - "description": "Patches a rule at the specified priority.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.patchRule instead.", + "description": "Patches a rule at the specified priority.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.patchRule\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/patchRule", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.patchRule", @@ -21049,7 +21049,7 @@ ] }, "removeAssociation": { - "description": "Removes an association for the specified security policy.\n\nUse of this API to modify firewall policies is deprecated. Use\nfirewallPolicies.removeAssociation instead if possible.", + "description": "Removes an association for the specified security policy.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.removeAssociation\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/removeAssociation", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.removeAssociation", @@ -21085,7 +21085,7 @@ ] }, "removeRule": { - "description": "Deletes a rule at the specified priority.", + "description": "Deletes a rule at the specified priority.\n\nUse this API to modify Cloud Armor policies. Previously, alpha and beta\nversions of this API were used to modify firewall policies. This usage is\nnow disabled for most organizations. Use firewallPolicies.removeRule\ninstead.", "flatPath": "locations/global/securityPolicies/{securityPolicy}/removeRule", "httpMethod": "POST", "id": "compute.organizationSecurityPolicies.removeRule", @@ -42423,7 +42423,7 @@ } } }, - "revision": "20251019", + "revision": "20251031", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -47842,6 +47842,7 @@ "GENERAL_PURPOSE_N2", "GENERAL_PURPOSE_N2D", "GENERAL_PURPOSE_N4", + "GENERAL_PURPOSE_N4D", "GENERAL_PURPOSE_T2D", "GRAPHICS_OPTIMIZED", "MEMORY_OPTIMIZED", @@ -47884,6 +47885,7 @@ "", "", "", + "", "Note for internal users: When adding a new enum Type for v1, make sure\nto also add it in the comment for the `optional Type type` definition.\nThis ensures that the public documentation displays the new enum Type." ], "type": "string" @@ -55155,7 +55157,7 @@ "description": "The header value must be an integer and its value must be in the range\nspecified in rangeMatch. If the header does not contain an\ninteger, number or is empty, the match fails.\n\nFor example for a range [-5, 0]\n \n \n - -3 will match.\n - 0 will not match.\n - 0.25 will not match.\n - -3someString will not match.\n\nOnly one of exactMatch, prefixMatch,suffixMatch, regexMatch,presentMatch or rangeMatch must be set.\n\nrangeMatch is not supported for load balancers\nthat have loadBalancingScheme set to EXTERNAL." }, "regexMatch": { - "description": "The value of the header must match the regular expression specified inregexMatch.\nFor more information about regular expression syntax, see Syntax.\n\nFor matching against a port specified in the HTTP request, use a\nheaderMatch with headerName set to PORT and a regular expression that\nsatisfies the RFC2616 Host header's port specifier.\n\nOnly one of exactMatch, prefixMatch,suffixMatch, regexMatch,presentMatch or rangeMatch must be set.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED.", + "description": "The value of the header must match the regular expression specified inregexMatch.\nFor more information about regular expression syntax, see Syntax.\n\nFor matching against a port specified in the HTTP request, use a\nheaderMatch with headerName set to PORT and a regular expression that\nsatisfies the RFC2616 Host header's port specifier.\n\nOnly one of exactMatch, prefixMatch,suffixMatch, regexMatch,presentMatch or rangeMatch must be set.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED.", "type": "string" }, "suffixMatch": { @@ -55423,7 +55425,7 @@ "type": "boolean" }, "regexMatch": { - "description": "The queryParameterMatch matches if the value of the\nparameter matches the regular expression specified byregexMatch. For\nmore information about regular expression syntax, see Syntax.\n\nOnly one of presentMatch, exactMatch, orregexMatch must be set.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED.", + "description": "The queryParameterMatch matches if the value of the\nparameter matches the regular expression specified byregexMatch. For\nmore information about regular expression syntax, see Syntax.\n\nOnly one of presentMatch, exactMatch, orregexMatch must be set.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED.", "type": "string" } }, @@ -55586,7 +55588,7 @@ "id": "HttpRouteRuleMatch", "properties": { "fullPathMatch": { - "description": "For satisfying the matchRule condition, the path of the\nrequest must exactly match the value specified infullPathMatch after removing any query parameters and anchor\nthat may be part of the original URL.\n\nfullPathMatch must be from 1 to 1024 characters.\n\nOnly one of prefixMatch, fullPathMatch or regexMatch must be\nspecified.", + "description": "For satisfying the matchRule condition, the path of the\nrequest must exactly match the value specified infullPathMatch after removing any query parameters and anchor\nthat may be part of the original URL.\n\nfullPathMatch must be from 1 to 1024 characters.\n\nOnly one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be\nspecified.", "type": "string" }, "headerMatches": { @@ -55612,7 +55614,7 @@ "type": "string" }, "prefixMatch": { - "description": "For satisfying the matchRule condition, the request's\npath must begin with the specified prefixMatch.prefixMatch must begin with a /.\n\nThe value must be from 1 to 1024 characters.\n\nOnly one of prefixMatch, fullPathMatch or regexMatch must be\nspecified.", + "description": "For satisfying the matchRule condition, the request's\npath must begin with the specified prefixMatch.prefixMatch must begin with a /.\n\nThe value must be from 1 to 1024 characters.\n\nOnly one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be\nspecified.\nspecified.", "type": "string" }, "queryParameterMatches": { @@ -55623,7 +55625,7 @@ "type": "array" }, "regexMatch": { - "description": "For satisfying the matchRule condition, the path of the\nrequest must satisfy the regular expression specified inregexMatch after removing any query parameters and anchor\nsupplied with the original URL. For\nmore information about regular expression syntax, see Syntax.\n\nOnly one of prefixMatch, fullPathMatch orregexMatch must be\nspecified.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED.", + "description": "For satisfying the matchRule condition, the path of the\nrequest must satisfy the regular expression specified inregexMatch after removing any query parameters and anchor\nsupplied with the original URL. For\nmore information about regular expression syntax, see Syntax.\n\nOnly one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be\nspecified.\n\nRegular expressions can only be used when the loadBalancingScheme is\nset to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED.", "type": "string" } }, @@ -83742,6 +83744,10 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "parent": { + "description": "[Output Only] The parent of the security policy.", + "type": "string" + }, "recaptchaOptionsConfig": { "$ref": "SecurityPolicyRecaptchaOptionsConfig" }, diff --git a/discovery/config-v1.json b/discovery/config-v1.json index 54ed6b1ee95..f2d255e5b19 100644 --- a/discovery/config-v1.json +++ b/discovery/config-v1.json @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1350,7 +1350,7 @@ } } }, - "revision": "20250924", + "revision": "20251029", "rootUrl": "https://config.googleapis.com/", "schemas": { "ApplyResults": { diff --git a/discovery/containeranalysis-v1.json b/discovery/containeranalysis-v1.json index 780f04c864b..96dcbfb6448 100644 --- a/discovery/containeranalysis-v1.json +++ b/discovery/containeranalysis-v1.json @@ -1715,7 +1715,7 @@ } } }, - "revision": "20251004", + "revision": "20251030", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AliasContext": { @@ -3640,6 +3640,11 @@ "description": "An image built by the pipeline.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "digest": { "description": "Docker Registry 2.0 digest.", "type": "string" @@ -4166,6 +4171,11 @@ "description": "A Go module artifact uploaded to Artifact Registry using the GoModule directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGoModule", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Go Module Artifact." @@ -4186,6 +4196,11 @@ "description": "A Maven artifact uploaded using the MavenArtifact directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Maven Artifact." @@ -4206,6 +4221,11 @@ "description": "An npm package uploaded to Artifact Registry using the NpmPackage directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the npm package." @@ -4226,6 +4246,11 @@ "description": "Artifact uploaded using the PythonPackage directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Python Artifact." diff --git a/discovery/containeranalysis-v1alpha1.json b/discovery/containeranalysis-v1alpha1.json index 613b212f62f..2373d93c642 100644 --- a/discovery/containeranalysis-v1alpha1.json +++ b/discovery/containeranalysis-v1alpha1.json @@ -1452,7 +1452,7 @@ } } }, - "revision": "20250928", + "revision": "20251030", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AnalysisCompleted": { @@ -3184,6 +3184,11 @@ "description": "An image built by the pipeline.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "digest": { "description": "Docker Registry 2.0 digest.", "type": "string" @@ -3710,6 +3715,11 @@ "description": "A Go module artifact uploaded to Artifact Registry using the GoModule directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGoModule", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Go Module Artifact." @@ -3730,6 +3740,11 @@ "description": "A Maven artifact uploaded using the MavenArtifact directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Maven Artifact." @@ -3750,6 +3765,11 @@ "description": "An npm package uploaded to Artifact Registry using the NpmPackage directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the npm package." @@ -3770,6 +3790,11 @@ "description": "Artifact uploaded using the PythonPackage directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Python Artifact." diff --git a/discovery/containeranalysis-v1beta1.json b/discovery/containeranalysis-v1beta1.json index e458dfd41f3..3fc1ff1605b 100644 --- a/discovery/containeranalysis-v1beta1.json +++ b/discovery/containeranalysis-v1beta1.json @@ -1771,7 +1771,7 @@ } } }, - "revision": "20251004", + "revision": "20251030", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AliasContext": { @@ -3566,6 +3566,11 @@ "description": "An image built by the pipeline.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "digest": { "description": "Docker Registry 2.0 digest.", "type": "string" @@ -4092,6 +4097,11 @@ "description": "A Go module artifact uploaded to Artifact Registry using the GoModule directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGoModule", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Go Module Artifact." @@ -4112,6 +4122,11 @@ "description": "A Maven artifact uploaded using the MavenArtifact directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Maven Artifact." @@ -4132,6 +4147,11 @@ "description": "An npm package uploaded to Artifact Registry using the NpmPackage directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the npm package." @@ -4152,6 +4172,11 @@ "description": "Artifact uploaded using the PythonPackage directive.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Python Artifact." diff --git a/discovery/content-v2.1.json b/discovery/content-v2.1.json index 36df292d83e..63555b0a060 100644 --- a/discovery/content-v2.1.json +++ b/discovery/content-v2.1.json @@ -4570,7 +4570,7 @@ } } }, - "revision": "20250921", + "revision": "20251104", "rootUrl": "https://shoppingcontent.googleapis.com/", "schemas": { "Account": { @@ -5358,15 +5358,18 @@ "type": "string" }, "orderManager": { - "description": "Whether user is an order manager.", + "deprecated": true, + "description": "This role is deprecated and can no longer be assigned. Any value set will be ignored.", "type": "boolean" }, "paymentsAnalyst": { - "description": "Whether user can access payment statements.", + "deprecated": true, + "description": "This role is deprecated and can no longer be assigned. Any value set will be ignored.", "type": "boolean" }, "paymentsManager": { - "description": "Whether user can manage payment settings.", + "deprecated": true, + "description": "This role is deprecated and can no longer be assigned. Any value set will be ignored.", "type": "boolean" }, "readOnly": { diff --git a/discovery/dataform-v1.json b/discovery/dataform-v1.json index b2c072809ea..6f44cb61c3d 100644 --- a/discovery/dataform-v1.json +++ b/discovery/dataform-v1.json @@ -173,7 +173,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2467,7 +2467,7 @@ } } }, - "revision": "20251007", + "revision": "20251102", "rootUrl": "https://dataform.googleapis.com/", "schemas": { "ActionErrorTable": { diff --git a/discovery/dataform-v1beta1.json b/discovery/dataform-v1beta1.json index ba1ef714aa9..656e2035cf6 100644 --- a/discovery/dataform-v1beta1.json +++ b/discovery/dataform-v1beta1.json @@ -173,7 +173,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -2467,7 +2467,7 @@ } } }, - "revision": "20251007", + "revision": "20251102", "rootUrl": "https://dataform.googleapis.com/", "schemas": { "ActionErrorTable": { diff --git a/discovery/datamanager-v1.json b/discovery/datamanager-v1.json index 3de1f5b4d59..2de4f8e947e 100644 --- a/discovery/datamanager-v1.json +++ b/discovery/datamanager-v1.json @@ -193,7 +193,7 @@ } } }, - "revision": "20251006", + "revision": "20251105", "rootUrl": "https://datamanager.googleapis.com/", "schemas": { "AdIdentifiers": { @@ -276,6 +276,37 @@ }, "type": "object" }, + "AwsWrappedKeyInfo": { + "description": "A data encryption key wrapped by an AWS KMS key.", + "id": "AwsWrappedKeyInfo", + "properties": { + "encryptedDek": { + "description": "Required. The base64 encoded encrypted data encryption key.", + "type": "string" + }, + "kekUri": { + "description": "Required. The URI of the AWS KMS key used to decrypt the DEK. Should be in the format of \"arn:{partition}:kms:{region}:{account_id}:key/{key_id}\"", + "type": "string" + }, + "keyType": { + "description": "Required. The type of algorithm used to encrypt the data.", + "enum": [ + "KEY_TYPE_UNSPECIFIED", + "XCHACHA20_POLY1305" + ], + "enumDescriptions": [ + "Unspecified key type. Should never be used.", + "Algorithm XChaCha20-Poly1305" + ], + "type": "string" + }, + "roleArn": { + "description": "Required. The Amazon Resource Name of the IAM Role to assume for KMS decryption access. Should be in the format of \"arn:{partition}:iam::{account_id}:role/{role_name}\"", + "type": "string" + } + }, + "type": "object" + }, "CartData": { "description": "The cart data associated with the event.", "id": "CartData", @@ -410,6 +441,10 @@ "description": "Encryption information for the data being ingested.", "id": "EncryptionInfo", "properties": { + "awsWrappedKeyInfo": { + "$ref": "AwsWrappedKeyInfo", + "description": "Amazon Web Services wrapped key information." + }, "gcpWrappedKeyInfo": { "$ref": "GcpWrappedKeyInfo", "description": "Google Cloud Platform wrapped key information." @@ -449,6 +484,7 @@ "PROCESSING_ERROR_REASON_INVALID_KEK", "PROCESSING_ERROR_REASON_WIP_AUTH_FAILED", "PROCESSING_ERROR_REASON_KEK_PERMISSION_DENIED", + "PROCESSING_ERROR_REASON_AWS_AUTH_FAILED", "PROCESSING_ERROR_REASON_USER_IDENTIFIER_DECRYPTION_ERROR", "PROCESSING_ERROR_OPERATING_ACCOUNT_MISMATCH_FOR_AD_IDENTIFIER" ], @@ -478,6 +514,7 @@ "The KEK cannot decrypt data because it is the wrong KEK, or it does not exist.", "The WIP could not be used because it was rejected by its attestation condition.", "The system did not have the permissions needed to access the KEK.", + "The system failed to authenticate with AWS.", "Failed to decrypt the UserIdentifier data using the DEK.", "The user attempted to ingest events with an ad identifier that isn't from the operating account's ads." ], @@ -513,10 +550,21 @@ "$ref": "AdIdentifiers", "description": "Optional. Identifiers and other information used to match the conversion event with other online activity (such as ad clicks)." }, + "additionalEventParameters": { + "description": "Optional. A bucket of any [event parameters](https://developers.google.com/analytics/devguides/collection/protocol/ga4/reference/events) to be included within the event that were not already specified using other structured fields.", + "items": { + "$ref": "EventParameter" + }, + "type": "array" + }, "cartData": { "$ref": "CartData", "description": "Optional. Information about the transaction and items associated with the event." }, + "clientId": { + "description": "Optional. A unique identifier for the user instance of a web client for this GA4 web stream.", + "type": "string" + }, "consent": { "$ref": "Consent", "description": "Optional. Information about whether the associated user has provided different types of consent." @@ -548,6 +596,10 @@ "$ref": "DeviceInfo", "description": "Optional. Information gathered about the device being used (if any) when the event happened." }, + "eventName": { + "description": "Optional. The name of the event. Required for GA4 events.", + "type": "string" + }, "eventSource": { "description": "Optional. Signal for where the event happened (web, app, in-store, etc.).", "enum": [ @@ -593,6 +645,10 @@ "$ref": "UserData", "description": "Optional. Pieces of user provided data, representing the user the event is associated with." }, + "userId": { + "description": "Optional. A unique identifier for a user, as defined by the advertiser.", + "type": "string" + }, "userProperties": { "$ref": "UserProperties", "description": "Optional. Advertiser-assessed information about the user at the time that the event happened." @@ -600,6 +656,21 @@ }, "type": "object" }, + "EventParameter": { + "description": "Event parameter for GA4 events.", + "id": "EventParameter", + "properties": { + "parameterName": { + "description": "Required. The name of the parameter to use.", + "type": "string" + }, + "value": { + "description": "Required. The string representation of the value of the parameter to set.", + "type": "string" + } + }, + "type": "object" + }, "ExperimentalField": { "description": "Experimental field representing unofficial fields.", "id": "ExperimentalField", @@ -882,6 +953,17 @@ "description": "Represents an item in the cart associated with the event.", "id": "Item", "properties": { + "additionalItemParameters": { + "description": "Optional. A bucket of any [event parameters related to an item](https://developers.google.com/analytics/devguides/collection/protocol/ga4/reference/events) to be included within the event that were not already specified using other structured fields.", + "items": { + "$ref": "ItemParameter" + }, + "type": "array" + }, + "itemId": { + "description": "Optional. A unique identifier to reference the item.", + "type": "string" + }, "merchantProductId": { "description": "Optional. The product ID within the Merchant Center account.", "type": "string" @@ -899,6 +981,21 @@ }, "type": "object" }, + "ItemParameter": { + "description": "A bucket of any [event parameters related to an item](https://developers.google.com/analytics/devguides/collection/protocol/ga4/reference/events) to be included within the event that were not already specified using other structured fields.", + "id": "ItemParameter", + "properties": { + "parameterName": { + "description": "Required. The name of the parameter to use.", + "type": "string" + }, + "value": { + "description": "Required. The string representation of the value of the parameter to set.", + "type": "string" + } + }, + "type": "object" + }, "MobileData": { "description": "Mobile IDs for the audience. At least one mobile ID is required.", "id": "MobileData", @@ -942,14 +1039,16 @@ "GOOGLE_ADS", "DISPLAY_VIDEO_PARTNER", "DISPLAY_VIDEO_ADVERTISER", - "DATA_PARTNER" + "DATA_PARTNER", + "GOOGLE_ANALYTICS_PROPERTY" ], "enumDescriptions": [ "Unspecified product. Should never be used.", "Google Ads.", "Display & Video 360 partner.", "Display & Video 360 advertiser.", - "Data Partner." + "Data Partner.", + "Google Analytics." ], "type": "string" }, @@ -1220,6 +1319,13 @@ "description": "Advertiser-assessed information about the user at the time that the event happened. See https://support.google.com/google-ads/answer/14007601 for more details.", "id": "UserProperties", "properties": { + "additionalUserProperties": { + "description": "Optional. A bucket of any additional [user properties](https://developers.google.com/analytics/devguides/collection/protocol/ga4/user-properties) for the user associated with this event.", + "items": { + "$ref": "UserProperty" + }, + "type": "array" + }, "customerType": { "description": "Optional. Type of the customer associated with the event.", "enum": [ @@ -1255,6 +1361,21 @@ }, "type": "object" }, + "UserProperty": { + "description": "A bucket of any additional [user properties](https://developers.google.com/analytics/devguides/collection/protocol/ga4/user-properties) for the user associated with this event.", + "id": "UserProperty", + "properties": { + "propertyName": { + "description": "Required. The name of the user property to use.", + "type": "string" + }, + "value": { + "description": "Required. The string representation of the value of the user property to use.", + "type": "string" + } + }, + "type": "object" + }, "WarningCount": { "description": "The warning count for a given warning reason.", "id": "WarningCount", @@ -1270,7 +1391,8 @@ "PROCESSING_WARNING_REASON_INVALID_WIP", "PROCESSING_WARNING_REASON_INVALID_KEK", "PROCESSING_WARNING_REASON_USER_IDENTIFIER_DECRYPTION_ERROR", - "PROCESSING_WARNING_REASON_INTERNAL_ERROR" + "PROCESSING_WARNING_REASON_INTERNAL_ERROR", + "PROCESSING_WARNING_REASON_AWS_AUTH_FAILED" ], "enumDescriptions": [ "The processing warning reason is unknown.", @@ -1281,7 +1403,8 @@ "The WIP is formatted incorrectly or the WIP does not exist.", "The KEK cannot decrypt data because it is the wrong KEK, or it does not exist.", "Failed to decrypt th UserIdentifier data using the DEK.", - "Internal error." + "Internal error.", + "The system failed to authenticate with AWS." ], "type": "string" }, diff --git a/discovery/datamigration-v1.json b/discovery/datamigration-v1.json index 5a0a55ad081..559ef0c9f4c 100644 --- a/discovery/datamigration-v1.json +++ b/discovery/datamigration-v1.json @@ -2088,6 +2088,11 @@ "description": "The standard list page token.", "location": "query", "type": "string" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the [ListOperationsResponse.unreachable] field. This can only be `true` when reading across collections e.g. when `parent` is set to `\"projects/example/locations/-\"`. This field is not by default supported and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" } }, "path": "v1/{+name}/operations", @@ -2345,7 +2350,7 @@ } } }, - "revision": "20250826", + "revision": "20251029", "rootUrl": "https://datamigration.googleapis.com/", "schemas": { "AlloyDbConnectionProfile": { @@ -4562,6 +4567,13 @@ "$ref": "Operation" }, "type": "array" + }, + "unreachable": { + "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections e.g. when attempting to list all resources across all supported locations.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" diff --git a/discovery/datamigration-v1beta1.json b/discovery/datamigration-v1beta1.json index 6d08fa83acb..6bef7545528 100644 --- a/discovery/datamigration-v1beta1.json +++ b/discovery/datamigration-v1beta1.json @@ -1038,6 +1038,11 @@ "description": "The standard list page token.", "location": "query", "type": "string" + }, + "returnPartialSuccess": { + "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the [ListOperationsResponse.unreachable] field. This can only be `true` when reading across collections e.g. when `parent` is set to `\"projects/example/locations/-\"`. This field is not by default supported and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" } }, "path": "v1beta1/{+name}/operations", @@ -1055,7 +1060,7 @@ } } }, - "revision": "20250815", + "revision": "20251029", "rootUrl": "https://datamigration.googleapis.com/", "schemas": { "AuditConfig": { @@ -1561,6 +1566,13 @@ "$ref": "Operation" }, "type": "array" + }, + "unreachable": { + "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections e.g. when attempting to list all resources across all supported locations.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" diff --git a/discovery/dataplex-v1.json b/discovery/dataplex-v1.json index 9f3e58905b4..52d88fd374d 100644 --- a/discovery/dataplex-v1.json +++ b/discovery/dataplex-v1.json @@ -1578,6 +1578,37 @@ }, "dataProducts": { "methods": { + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataProducts/{dataProductsId}:getIamPolicy", + "httpMethod": "GET", + "id": "dataplex.projects.locations.dataProducts.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "options.requestedPolicyVersion": { + "description": "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).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resource": { + "description": "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.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataProducts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "setIamPolicy": { "description": "Sets the access control policy on the specified resource. Replaces any existing policy.Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataProducts/{dataProductsId}:setIamPolicy", @@ -1634,68 +1665,6 @@ "https://www.googleapis.com/auth/cloud-platform" ] } - }, - "resources": { - "dataAssets": { - "methods": { - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataProducts/{dataProductsId}/dataAssets/{dataAssetsId}:setIamPolicy", - "httpMethod": "POST", - "id": "dataplex.projects.locations.dataProducts.dataAssets.setIamPolicy", - "parameterOrder": [ - "resource" - ], - "parameters": { - "resource": { - "description": "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.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/dataProducts/[^/]+/dataAssets/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:setIamPolicy", - "request": { - "$ref": "GoogleIamV1SetIamPolicyRequest" - }, - "response": { - "$ref": "GoogleIamV1Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "testIamPermissions": { - "description": "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.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataProducts/{dataProductsId}/dataAssets/{dataAssetsId}:testIamPermissions", - "httpMethod": "POST", - "id": "dataplex.projects.locations.dataProducts.dataAssets.testIamPermissions", - "parameterOrder": [ - "resource" - ], - "parameters": { - "resource": { - "description": "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.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/dataProducts/[^/]+/dataAssets/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+resource}:testIamPermissions", - "request": { - "$ref": "GoogleIamV1TestIamPermissionsRequest" - }, - "response": { - "$ref": "GoogleIamV1TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } } }, "dataScans": { @@ -3096,7 +3065,7 @@ ], "parameters": { "filter": { - "description": "Optional. A filter on the entries to return. Filters are case-sensitive. You can filter the request by the following fields: entry_type entry_source.display_nameThe comparison operators are =, !=, <, >, <=, >=. The service compares strings according to lexical order.You can use the logical operators AND, OR, NOT in the filter.You can use Wildcard \"*\", but for entry_type you need to provide the full project id or number.Example filter expressions: \"entry_source.display_name=AnExampleDisplayName\" \"entry_type=projects/example-project/locations/global/entryTypes/example-entry_type\" \"entry_type=projects/example-project/locations/us/entryTypes/a* OR entry_type=projects/another-project/locations/*\" \"NOT entry_source.display_name=AnotherExampleDisplayName\"", + "description": "Optional. A filter on the entries to return. Filters are case-sensitive. You can filter the request by the following fields: entry_type entry_source.display_name parent_entryThe comparison operators are =, !=, <, >, <=, >=. The service compares strings according to lexical order.You can use the logical operators AND, OR, NOT in the filter.You can use Wildcard \"*\", but for entry_type and parent_entry you need to provide the full project id or number.You cannot use parent_entry in conjunction with other fields.Example filter expressions: \"entry_source.display_name=AnExampleDisplayName\" \"entry_type=projects/example-project/locations/global/entryTypes/example-entry_type\" \"entry_type=projects/example-project/locations/us/entryTypes/a* OR entry_type=projects/another-project/locations/*\" \"NOT entry_source.display_name=AnotherExampleDisplayName\" \"parent_entry=projects/example-project/locations/us/entryGroups/example-entry-group/entries/example-entry\"", "location": "query", "type": "string" }, @@ -7260,7 +7229,7 @@ } } }, - "revision": "20251027", + "revision": "20251104", "rootUrl": "https://dataplex.googleapis.com/", "schemas": { "Empty": { @@ -8753,6 +8722,11 @@ "description": "DataProfileResult defines the output of DataProfileScan. Each field of the table will have field type specific profile result.", "id": "GoogleCloudDataplexV1DataProfileResult", "properties": { + "catalogPublishingStatus": { + "$ref": "GoogleCloudDataplexV1DataScanCatalogPublishingStatus", + "description": "Output only. The status of publishing the data scan as Dataplex Universal Catalog metadata.", + "readOnly": true + }, "postScanActionsResult": { "$ref": "GoogleCloudDataplexV1DataProfileResultPostScanActionsResult", "description": "Output only. The result of post scan actions.", @@ -9032,6 +9006,10 @@ "description": "DataProfileScan related setting.", "id": "GoogleCloudDataplexV1DataProfileSpec", "properties": { + "catalogPublishingEnabled": { + "description": "Optional. If set, the latest DataScan job result will be published as Dataplex Universal Catalog metadata.", + "type": "boolean" + }, "excludeFields": { "$ref": "GoogleCloudDataplexV1DataProfileSpecSelectedFields", "description": "Optional. The fields to exclude from data profile.If specified, the fields will be excluded from data profile, regardless of include_fields value." diff --git a/discovery/datastream-v1.json b/discovery/datastream-v1.json index b78b4701311..48154615dce 100644 --- a/discovery/datastream-v1.json +++ b/discovery/datastream-v1.json @@ -1266,7 +1266,7 @@ } } }, - "revision": "20251021", + "revision": "20251029", "rootUrl": "https://datastream.googleapis.com/", "schemas": { "AppendOnly": { @@ -2320,6 +2320,20 @@ "$ref": "MongodbCluster", "description": "MongoDB collections to include in the stream." }, + "jsonMode": { + "description": "Optional. MongoDB JSON mode to use for the stream.", + "enum": [ + "MONGODB_JSON_MODE_UNSPECIFIED", + "STRICT", + "CANONICAL" + ], + "enumDescriptions": [ + "Unspecified JSON mode.", + "Strict JSON mode.", + "Canonical JSON mode." + ], + "type": "string" + }, "maxConcurrentBackfillTasks": { "description": "Optional. Maximum number of concurrent backfill tasks. The number should be non-negative and less than or equal to 50. If not set (or set to 0), the system's default value is used", "format": "int32", diff --git a/discovery/developerconnect-v1.json b/discovery/developerconnect-v1.json index 6b8a27fc9dc..3b6914eac44 100644 --- a/discovery/developerconnect-v1.json +++ b/discovery/developerconnect-v1.json @@ -196,7 +196,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1318,7 +1318,7 @@ ] }, "delete": { - "description": "Delete a single Insight.", + "description": "Deletes a single Insight.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/insightsConfigs/{insightsConfigsId}", "httpMethod": "DELETE", "id": "developerconnect.projects.locations.insightsConfigs.delete", @@ -1606,7 +1606,7 @@ } } }, - "revision": "20251016", + "revision": "20251030", "rootUrl": "https://developerconnect.googleapis.com/", "schemas": { "AccountConnector": { @@ -2381,7 +2381,7 @@ "type": "array" }, "createTime": { - "description": "Output only. [Output only] Create timestamp", + "description": "Output only. Create timestamp.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -2435,7 +2435,7 @@ "type": "string" }, "updateTime": { - "description": "Output only. [Output only] Update timestamp", + "description": "Output only. Update timestamp.", "format": "google-datetime", "readOnly": true, "type": "string" diff --git a/discovery/dialogflow-v2.json b/discovery/dialogflow-v2.json index d2db6ca433b..2018b1ef3b7 100644 --- a/discovery/dialogflow-v2.json +++ b/discovery/dialogflow-v2.json @@ -9258,7 +9258,7 @@ } } }, - "revision": "20251027", + "revision": "20251105", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -15587,7 +15587,7 @@ "enumDescriptions": [ "Type not set.", "A new conversation has been opened. This is fired when a telephone call is answered, or a conversation is created via the API.", - "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API.", + "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API. The event is fired for every CompleteConversation call, even if the conversation is already closed.", "An existing conversation has received notification from Dialogflow that human intervention is required.", "An existing conversation has received a new message, either from API or telephony. It is configured in ConversationProfile.new_message_event_notification_config", "An existing conversation has received a new speech recognition result. This is mainly for delivering intermediate transcripts. The notification is configured in ConversationProfile.new_recognition_event_notification_config.", @@ -17274,8 +17274,7 @@ "type": "boolean" }, "evaluatorVersion": { - "description": "Output only. Version for summarization evaluation.", - "readOnly": true, + "description": "Optional. Version for summarization evaluation.", "type": "string" } }, @@ -22849,7 +22848,7 @@ "enumDescriptions": [ "Type not set.", "A new conversation has been opened. This is fired when a telephone call is answered, or a conversation is created via the API.", - "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API.", + "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API. The event is fired for every CompleteConversation call, even if the conversation is already closed.", "An existing conversation has received notification from Dialogflow that human intervention is required.", "An existing conversation has received a new message, either from API or telephony. It is configured in ConversationProfile.new_message_event_notification_config", "An existing conversation has received a new speech recognition result. This is mainly for delivering intermediate transcripts. The notification is configured in ConversationProfile.new_recognition_event_notification_config.", diff --git a/discovery/dialogflow-v2beta1.json b/discovery/dialogflow-v2beta1.json index 1ddac58e16b..2594b1c5f8a 100644 --- a/discovery/dialogflow-v2beta1.json +++ b/discovery/dialogflow-v2beta1.json @@ -8898,7 +8898,7 @@ } } }, - "revision": "20251027", + "revision": "20251105", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -14226,7 +14226,7 @@ "enumDescriptions": [ "Type not set.", "A new conversation has been opened. This is fired when a telephone call is answered, or a conversation is created via the API.", - "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API.", + "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API. The event is fired for every CompleteConversation call, even if the conversation is already closed.", "An existing conversation has received notification from Dialogflow that human intervention is required.", "An existing conversation has received a new message, either from API or telephony. It is configured in ConversationProfile.new_message_event_notification_config", "An existing conversation has received a new speech recognition result. This is mainly for delivering intermediate transcripts. The notification is configured in ConversationProfile.new_recognition_event_notification_config.", @@ -18148,7 +18148,7 @@ "enumDescriptions": [ "Type not set.", "A new conversation has been opened. This is fired when a telephone call is answered, or a conversation is created via the API.", - "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API.", + "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API. The event is fired for every CompleteConversation call, even if the conversation is already closed.", "An existing conversation has received notification from Dialogflow that human intervention is required.", "An existing conversation has received a new message, either from API or telephony. It is configured in ConversationProfile.new_message_event_notification_config", "An existing conversation has received a new speech recognition result. This is mainly for delivering intermediate transcripts. The notification is configured in ConversationProfile.new_recognition_event_notification_config.", @@ -19520,8 +19520,7 @@ "type": "boolean" }, "evaluatorVersion": { - "description": "Output only. Version for summarization evaluation.", - "readOnly": true, + "description": "Optional. Version for summarization evaluation.", "type": "string" } }, diff --git a/discovery/dialogflow-v3.json b/discovery/dialogflow-v3.json index 9254756b757..6cd8336596c 100644 --- a/discovery/dialogflow-v3.json +++ b/discovery/dialogflow-v3.json @@ -5319,7 +5319,7 @@ } } }, - "revision": "20251027", + "revision": "20251105", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3Action": { @@ -15465,7 +15465,7 @@ "enumDescriptions": [ "Type not set.", "A new conversation has been opened. This is fired when a telephone call is answered, or a conversation is created via the API.", - "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API.", + "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API. The event is fired for every CompleteConversation call, even if the conversation is already closed.", "An existing conversation has received notification from Dialogflow that human intervention is required.", "An existing conversation has received a new message, either from API or telephony. It is configured in ConversationProfile.new_message_event_notification_config", "An existing conversation has received a new speech recognition result. This is mainly for delivering intermediate transcripts. The notification is configured in ConversationProfile.new_recognition_event_notification_config.", @@ -18298,7 +18298,7 @@ "enumDescriptions": [ "Type not set.", "A new conversation has been opened. This is fired when a telephone call is answered, or a conversation is created via the API.", - "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API.", + "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API. The event is fired for every CompleteConversation call, even if the conversation is already closed.", "An existing conversation has received notification from Dialogflow that human intervention is required.", "An existing conversation has received a new message, either from API or telephony. It is configured in ConversationProfile.new_message_event_notification_config", "An existing conversation has received a new speech recognition result. This is mainly for delivering intermediate transcripts. The notification is configured in ConversationProfile.new_recognition_event_notification_config.", diff --git a/discovery/dialogflow-v3beta1.json b/discovery/dialogflow-v3beta1.json index f5ba010fa04..9bcff66f863 100644 --- a/discovery/dialogflow-v3beta1.json +++ b/discovery/dialogflow-v3beta1.json @@ -5446,7 +5446,7 @@ } } }, - "revision": "20251027", + "revision": "20251105", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -16714,7 +16714,7 @@ "enumDescriptions": [ "Type not set.", "A new conversation has been opened. This is fired when a telephone call is answered, or a conversation is created via the API.", - "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API.", + "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API. The event is fired for every CompleteConversation call, even if the conversation is already closed.", "An existing conversation has received notification from Dialogflow that human intervention is required.", "An existing conversation has received a new message, either from API or telephony. It is configured in ConversationProfile.new_message_event_notification_config", "An existing conversation has received a new speech recognition result. This is mainly for delivering intermediate transcripts. The notification is configured in ConversationProfile.new_recognition_event_notification_config.", @@ -19547,7 +19547,7 @@ "enumDescriptions": [ "Type not set.", "A new conversation has been opened. This is fired when a telephone call is answered, or a conversation is created via the API.", - "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API.", + "An existing conversation has closed. This is fired when a telephone call is terminated, or a conversation is closed via the API. The event is fired for every CompleteConversation call, even if the conversation is already closed.", "An existing conversation has received notification from Dialogflow that human intervention is required.", "An existing conversation has received a new message, either from API or telephony. It is configured in ConversationProfile.new_message_event_notification_config", "An existing conversation has received a new speech recognition result. This is mainly for delivering intermediate transcripts. The notification is configured in ConversationProfile.new_recognition_event_notification_config.", diff --git a/discovery/dlp-v2.json b/discovery/dlp-v2.json index 49a611466b3..fd0d98c1790 100644 --- a/discovery/dlp-v2.json +++ b/discovery/dlp-v2.json @@ -5123,7 +5123,7 @@ } } }, - "revision": "20251019", + "revision": "20251102", "rootUrl": "https://dlp.googleapis.com/", "schemas": { "GooglePrivacyDlpV2Action": { @@ -8451,9 +8451,9 @@ ], "enumDescriptions": [ "Invalid.", - "Full match. - Dictionary: join of Dictionary results matched complete finding quote - Regex: all regex matches fill a finding quote start to end - Exclude info type: completely inside affecting info types findings", - "Partial match. - Dictionary: at least one of the tokens in the finding matches - Regex: substring of the finding matches - Exclude info type: intersects with affecting info types findings", - "Inverse match. - Dictionary: no tokens in the finding match the dictionary - Regex: finding doesn't match the regex - Exclude info type: no intersection with affecting info types findings" + "Full match. - Dictionary: join of Dictionary results matched the complete finding quote - Regex: all regex matches fill a finding quote from start to end - Exclude infoType: completely inside affecting infoTypes findings", + "Partial match. - Dictionary: at least one of the tokens in the finding matches - Regex: substring of the finding matches - Exclude infoType: intersects with affecting infoTypes findings", + "Inverse match. - Dictionary: no tokens in the finding match the dictionary - Regex: finding doesn't match the regex - Exclude infoType: no intersection with affecting infoTypes findings" ], "type": "string" }, diff --git a/discovery/documentai-v1.json b/discovery/documentai-v1.json index e4e5e707a0c..1c1ca627b42 100644 --- a/discovery/documentai-v1.json +++ b/discovery/documentai-v1.json @@ -198,7 +198,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1392,11 +1392,11 @@ } } }, - "revision": "20251020", + "revision": "20251030", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "CloudAiDocumentaiLabHifiaToolsValidationValidatorInput": { - "description": "Definition of the validation rules. Those are the input to the validator logic and they are used to validate a document.", + "description": "Definition of the validation rules. Those are the input to the validator logic and they are used to validate a document. Next ID: 3", "id": "CloudAiDocumentaiLabHifiaToolsValidationValidatorInput", "properties": { "validationRules": { @@ -1409,6 +1409,7 @@ "type": "object" }, "CloudAiDocumentaiLabHifiaToolsValidationValidatorInputValidationRule": { + "description": "Next ID: 9", "id": "CloudAiDocumentaiLabHifiaToolsValidationValidatorInputValidationRule", "properties": { "childAlignmentRule": { @@ -1433,6 +1434,10 @@ "name": { "description": "Name of the validation rule.", "type": "string" + }, + "ruleId": { + "description": "Unique identifier of the rule. Optional.", + "type": "string" } }, "type": "object" diff --git a/discovery/documentai-v1beta3.json b/discovery/documentai-v1beta3.json index a051f8f958e..9f709b2b49c 100644 --- a/discovery/documentai-v1beta3.json +++ b/discovery/documentai-v1beta3.json @@ -169,7 +169,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1634,11 +1634,11 @@ } } }, - "revision": "20251020", + "revision": "20251030", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "CloudAiDocumentaiLabHifiaToolsValidationValidatorInput": { - "description": "Definition of the validation rules. Those are the input to the validator logic and they are used to validate a document.", + "description": "Definition of the validation rules. Those are the input to the validator logic and they are used to validate a document. Next ID: 3", "id": "CloudAiDocumentaiLabHifiaToolsValidationValidatorInput", "properties": { "validationRules": { @@ -1651,6 +1651,7 @@ "type": "object" }, "CloudAiDocumentaiLabHifiaToolsValidationValidatorInputValidationRule": { + "description": "Next ID: 9", "id": "CloudAiDocumentaiLabHifiaToolsValidationValidatorInputValidationRule", "properties": { "childAlignmentRule": { @@ -1675,6 +1676,10 @@ "name": { "description": "Name of the validation rule.", "type": "string" + }, + "ruleId": { + "description": "Unique identifier of the rule. Optional.", + "type": "string" } }, "type": "object" diff --git a/discovery/firebaseappdistribution-v1.json b/discovery/firebaseappdistribution-v1.json index ebdbdafbdd3..bcca7b599a8 100644 --- a/discovery/firebaseappdistribution-v1.json +++ b/discovery/firebaseappdistribution-v1.json @@ -128,7 +128,7 @@ ], "parameters": { "app": { - "description": "Required. The name of the app resource. Format: `projects/{project_number}/apps/{app_id}`", + "description": "Required. The name of the app resource. Format: `projects/{project_number}/apps/{app}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+$", "required": true, @@ -163,7 +163,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the `AabInfo` resource to retrieve. Format: `projects/{project_number}/apps/{app_id}/aabInfo`", + "description": "Required. The name of the `AabInfo` resource to retrieve. Format: `projects/{project_number}/apps/{app}/aabInfo`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/aabInfo$", "required": true, @@ -192,7 +192,7 @@ ], "parameters": { "parent": { - "description": "Required. The name of the app resource, which is the parent of the release resources. Format: `projects/{project_number}/apps/{app_id}`", + "description": "Required. The name of the app resource, which is the parent of the release resources. Format: `projects/{project_number}/apps/{app}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+$", "required": true, @@ -220,7 +220,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the release resource to distribute. Format: `projects/{project_number}/apps/{app_id}/releases/{release_id}`", + "description": "Required. The name of the release resource to distribute. Format: `projects/{project_number}/apps/{app}/releases/{release}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/releases/[^/]+$", "required": true, @@ -248,7 +248,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the release resource to retrieve. Format: projects/{project_number}/apps/{app_id}/releases/{release_id}", + "description": "Required. The name of the release resource to retrieve. Format: projects/{project_number}/apps/{app}/releases/{release}", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/releases/[^/]+$", "required": true, @@ -294,7 +294,7 @@ "type": "string" }, "parent": { - "description": "Required. The name of the app resource, which is the parent of the release resources. Format: `projects/{project_number}/apps/{app_id}`", + "description": "Required. The name of the app resource, which is the parent of the release resources. Format: `projects/{project_number}/apps/{app}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+$", "required": true, @@ -319,7 +319,7 @@ ], "parameters": { "name": { - "description": "The name of the release resource. Format: `projects/{project_number}/apps/{app_id}/releases/{release_id}`", + "description": "The name of the release resource. Format: `projects/{project_number}/apps/{app}/releases/{release}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/releases/[^/]+$", "required": true, @@ -946,7 +946,7 @@ } } }, - "revision": "20250924", + "revision": "20251104", "rootUrl": "https://firebaseappdistribution.googleapis.com/", "schemas": { "GdataBlobstore2Info": { @@ -1449,7 +1449,7 @@ "id": "GoogleFirebaseAppdistroV1BatchDeleteReleasesRequest", "properties": { "names": { - "description": "Required. The names of the release resources to delete. Format: `projects/{project_number}/apps/{app_id}/releases/{release_id}` A maximum of 100 releases can be deleted per request.", + "description": "Required. The names of the release resources to delete. Format: `projects/{project_number}/apps/{app}/releases/{release}` A maximum of 100 releases can be deleted per request.", "items": { "type": "string" }, @@ -1724,7 +1724,7 @@ "type": "string" }, "name": { - "description": "The name of the release resource. Format: `projects/{project_number}/apps/{app_id}/releases/{release_id}`", + "description": "The name of the release resource. Format: `projects/{project_number}/apps/{app}/releases/{release}`", "type": "string" }, "releaseNotes": { diff --git a/discovery/firebaseappdistribution-v1alpha.json b/discovery/firebaseappdistribution-v1alpha.json index ea025ef3aca..c2ff81ab4d6 100644 --- a/discovery/firebaseappdistribution-v1alpha.json +++ b/discovery/firebaseappdistribution-v1alpha.json @@ -396,7 +396,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the `TestConfig` resource to retrieve. Format: `projects/{project_number}/apps/{app_id}/testConfig`", + "description": "Required. The name of the `TestConfig` resource to retrieve. Format: `projects/{project_number}/apps/{app}/testConfig`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/testConfig$", "required": true, @@ -421,7 +421,7 @@ ], "parameters": { "name": { - "description": "Identifier. The name of the test configuration resource. Format: `projects/{project_number}/apps/{app_id}/testConfig`", + "description": "Identifier. The name of the test configuration resource. Format: `projects/{project_number}/apps/{app}/testConfig`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/testConfig$", "required": true, @@ -461,7 +461,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the release test resource. Format: `projects/{project_number}/apps/{app_id}/releases/{release_id}/tests/{test_id}`", + "description": "Required. The name of the release test resource. Format: `projects/{project_number}/apps/{app}/releases/{release}/tests/{test}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/releases/[^/]+/tests/[^/]+$", "required": true, @@ -486,7 +486,7 @@ ], "parameters": { "parent": { - "description": "Required. The name of the release resource, which is the parent of the test Format: `projects/{project_number}/apps/{app_id}/releases/{release_id}`", + "description": "Required. The name of the release resource, which is the parent of the test Format: `projects/{project_number}/apps/{app}/releases/{release}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/releases/[^/]+$", "required": true, @@ -519,7 +519,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the release test resource. Format: `projects/{project_number}/apps/{app_id}/releases/{release_id}/tests/{test_id}`", + "description": "Required. The name of the release test resource. Format: `projects/{project_number}/apps/{app}/releases/{release}/tests/{test}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/releases/[^/]+/tests/[^/]+$", "required": true, @@ -555,7 +555,7 @@ "type": "string" }, "parent": { - "description": "Required. The name of the release resource, which is the parent of the tests Format: `projects/{project_number}/apps/{app_id}/releases/{release_id}`", + "description": "Required. The name of the release resource, which is the parent of the tests Format: `projects/{project_number}/apps/{app}/releases/{release}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/releases/[^/]+$", "required": true, @@ -601,7 +601,7 @@ ], "parameters": { "parent": { - "description": "Required. The parent resource of the test cases being deleted. Format: `projects/{project_number}/apps/{app_id}`", + "description": "Required. The parent resource of the test cases being deleted. Format: `projects/{project_number}/apps/{app}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+$", "required": true, @@ -629,7 +629,7 @@ ], "parameters": { "parent": { - "description": "Required. The parent resource of the test cases being updated. Format: `projects/{project_number}/apps/{app_id}`", + "description": "Required. The parent resource of the test cases being updated. Format: `projects/{project_number}/apps/{app}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+$", "required": true, @@ -657,7 +657,7 @@ ], "parameters": { "testCase": { - "description": "Required. The name of the test case resource for which to clear the cache. Format: `projects/{project_number}/apps/{app_id}/testCases/{test_case_id}`", + "description": "Required. The name of the test case resource for which to clear the cache. Format: `projects/{project_number}/apps/{app}/testCases/{test_case}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/testCases/[^/]+$", "required": true, @@ -685,7 +685,7 @@ ], "parameters": { "parent": { - "description": "Required. The parent resource where this test case will be created. Format: `projects/{project_number}/apps/{app_id}`", + "description": "Required. The parent resource where this test case will be created. Format: `projects/{project_number}/apps/{app}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+$", "required": true, @@ -718,7 +718,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the test case resource to delete. Format: `projects/{project_number}/apps/{app_id}/testCases/{test_case_id}`", + "description": "Required. The name of the test case resource to delete. Format: `projects/{project_number}/apps/{app}/testCases/{test_case}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/testCases/[^/]+$", "required": true, @@ -743,7 +743,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the test case resource to retrieve. Format: `projects/{project_number}/apps/{app_id}/testCases/{test_case_id}`", + "description": "Required. The name of the test case resource to retrieve. Format: `projects/{project_number}/apps/{app}/testCases/{test_case}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/testCases/[^/]+$", "required": true, @@ -779,7 +779,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent resource from which to list test cases. Format: `projects/{project_number}/apps/{app_id}`", + "description": "Required. The parent resource from which to list test cases. Format: `projects/{project_number}/apps/{app}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+$", "required": true, @@ -809,7 +809,7 @@ "type": "boolean" }, "name": { - "description": "Identifier. The name of the test case resource. Format: `projects/{project_number}/apps/{app_id}/testCases/{test_case_id}`", + "description": "Identifier. The name of the test case resource. Format: `projects/{project_number}/apps/{app}/testCases/{test_case}`", "location": "path", "pattern": "^projects/[^/]+/apps/[^/]+/testCases/[^/]+$", "required": true, @@ -868,7 +868,7 @@ } } }, - "revision": "20251030", + "revision": "20251104", "rootUrl": "https://firebaseappdistribution.googleapis.com/", "schemas": { "AndroidxCrawlerOutputPoint": { @@ -946,7 +946,7 @@ "type": "string" }, "name": { - "description": "The name of the release resource. Format: `projects/{project_number}/apps/{app_id}/releases/{release_id}`", + "description": "The name of the release resource. Format: `projects/{project_number}/apps/{app}/releases/{release}`", "type": "string" }, "releaseNotes": { @@ -1210,7 +1210,7 @@ "id": "GoogleFirebaseAppdistroV1alphaBatchDeleteTestCasesRequest", "properties": { "names": { - "description": "Required. The name of the test cases to delete. A maximum number of 1000 test cases can be deleted in one batch Format: `projects/{project_number}/apps/{app_id}/testCases/{test_case_id}`", + "description": "Required. The name of the test cases to delete. A maximum number of 1000 test cases can be deleted in one batch Format: `projects/{project_number}/apps/{app}/testCases/{test_case}`", "items": { "type": "string" }, @@ -1405,6 +1405,10 @@ "readOnly": true, "type": "string" }, + "name": { + "description": "Identifier. The name of the device execution resource. Format: `projects/{project_number}/apps/{app}/releases/{release}/tests/{test}/deviceExecutions/{device_execution}`", + "type": "string" + }, "resultsStoragePath": { "description": "Output only. The path to a directory in Cloud Storage that will eventually contain the results for this execution. For example, gs://bucket/Nexus5-18-en-portrait.", "readOnly": true, @@ -1998,7 +2002,7 @@ "description": "Optional. Input only. Login credentials for the test. Input only." }, "name": { - "description": "The name of the release test resource. Format: `projects/{project_number}/apps/{app_id}/releases/{release_id}/tests/{test_id}`", + "description": "The name of the release test resource. Format: `projects/{project_number}/apps/{app}/releases/{release}/tests/{test}`", "type": "string" }, "testCase": { @@ -2150,7 +2154,7 @@ "type": "string" }, "name": { - "description": "Identifier. The name of the test case resource. Format: `projects/{project_number}/apps/{app_id}/testCases/{test_case_id}`", + "description": "Identifier. The name of the test case resource. Format: `projects/{project_number}/apps/{app}/testCases/{test_case}`", "type": "string" }, "prerequisiteTestCase": { @@ -2169,7 +2173,7 @@ "type": "string" }, "name": { - "description": "Identifier. The name of the test configuration resource. Format: `projects/{project_number}/apps/{app_id}/testConfig`", + "description": "Identifier. The name of the test configuration resource. Format: `projects/{project_number}/apps/{app}/testConfig`", "type": "string" }, "roboCrawler": { @@ -2261,7 +2265,7 @@ }, "testCase": { "$ref": "GoogleFirebaseAppdistroV1alphaTestCase", - "description": "Required. The test case to update. The test case's `name` field is used to identify the test case to update. Format: `projects/{project_number}/apps/{app_id}/testCases/{test_case_id}`" + "description": "Required. The test case to update. The test case's `name` field is used to identify the test case to update. Format: `projects/{project_number}/apps/{app}/testCases/{test_case}`" } }, "type": "object" diff --git a/discovery/firebaseapphosting-v1.json b/discovery/firebaseapphosting-v1.json index 6b4549f14b4..10625dfd2f4 100644 --- a/discovery/firebaseapphosting-v1.json +++ b/discovery/firebaseapphosting-v1.json @@ -1106,7 +1106,7 @@ } } }, - "revision": "20251023", + "revision": "20251030", "rootUrl": "https://firebaseapphosting.googleapis.com/", "schemas": { "ArchiveSource": { @@ -1455,7 +1455,7 @@ "id": "Config", "properties": { "env": { - "description": "Optional. Environment variables for this build.", + "description": "Optional. Supplied environment variables for a specific build. Provided at Build creation time and immutable afterwards. This field is only applicable for Builds using a build image - (e.g., ContainerSource or ArchiveSource with locally_build_source) Attempts to set this for other build types will result in an error", "items": { "$ref": "EnvironmentVariable" }, diff --git a/discovery/firebaseapphosting-v1beta.json b/discovery/firebaseapphosting-v1beta.json index a7df26f6cea..65189509242 100644 --- a/discovery/firebaseapphosting-v1beta.json +++ b/discovery/firebaseapphosting-v1beta.json @@ -1103,7 +1103,7 @@ } } }, - "revision": "20251023", + "revision": "20251030", "rootUrl": "https://firebaseapphosting.googleapis.com/", "schemas": { "ArchiveSource": { @@ -1475,7 +1475,7 @@ "id": "Config", "properties": { "env": { - "description": "Optional. Environment variables for this build.", + "description": "Optional. Supplied environment variables for a specific build. Provided at Build creation time and immutable afterwards. This field is only applicable for Builds using a build image - (e.g., ContainerSource or ArchiveSource with locally_build_source) Attempts to set this for other build types will result in an error", "items": { "$ref": "EnvironmentVariable" }, diff --git a/discovery/firebasestorage-v1beta.json b/discovery/firebasestorage-v1beta.json index 20039348860..f87b985b2f4 100644 --- a/discovery/firebasestorage-v1beta.json +++ b/discovery/firebasestorage-v1beta.json @@ -325,7 +325,7 @@ } } }, - "revision": "20241218", + "revision": "20251031", "rootUrl": "https://firebasestorage.googleapis.com/", "schemas": { "AddFirebaseRequest": { @@ -360,7 +360,7 @@ "type": "string" }, "name": { - "description": "Resource name of the default bucket.", + "description": "Identifier. Resource name of the default bucket.", "type": "string" }, "storageClass": { diff --git a/discovery/healthcare-v1.json b/discovery/healthcare-v1.json index 5a314015c57..76fc19457b9 100644 --- a/discovery/healthcare-v1.json +++ b/discovery/healthcare-v1.json @@ -3081,7 +3081,7 @@ "type": "string" }, "organizeOutputBy": { - "description": "Optional. Required. The FHIR resource type used to organize exported resources. Only supports \"Patient\". When organized by Patient resource, output files are grouped as follows: * Patient file(s) containing the Patient resources. Each Patient is sequentially followed by all resources the Patient references, and all resources that reference the Patient (equivalent to a GetPatientEverything request). * Individual files grouped by resource type for resources in the Group's member field and the Group resource itself. Resources may be duplicated across multiple Patients. For example, if two Patient resources reference the same Organization resource, it will appear twice, once after each Patient. The Group resource from the request does not appear in the Patient files.", + "description": "Required. The FHIR resource type used to organize exported resources. Only supports \"Patient\". When organized by Patient resource, output files are grouped as follows: * Patient file(s) containing the Patient resources. Each Patient is sequentially followed by all resources the Patient references, and all resources that reference the Patient (equivalent to a GetPatientEverything request). * Individual files grouped by resource type for resources in the Group's member field and the Group resource itself. Resources may be duplicated across multiple Patients. For example, if two Patient resources reference the same Organization resource, it will appear twice, once after each Patient. The Group resource from the request does not appear in the Patient files.", "location": "query", "type": "string" }, @@ -5137,7 +5137,7 @@ } } }, - "revision": "20251009", + "revision": "20251016", "rootUrl": "https://healthcare.googleapis.com/", "schemas": { "AccessDeterminationLogConfig": { diff --git a/discovery/healthcare-v1beta1.json b/discovery/healthcare-v1beta1.json index d5809bf382e..fec74baf30f 100644 --- a/discovery/healthcare-v1beta1.json +++ b/discovery/healthcare-v1beta1.json @@ -3266,7 +3266,7 @@ "type": "string" }, "organizeOutputBy": { - "description": "Optional. Required. The FHIR resource type used to organize exported resources. Only supports \"Patient\". When organized by Patient resource, output files are grouped as follows: * Patient file(s) containing the Patient resources. Each Patient is sequentially followed by all resources the Patient references, and all resources that reference the Patient (equivalent to a GetPatientEverything request). * Individual files grouped by resource type for resources in the Group's member field and the Group resource itself. Resources may be duplicated across multiple Patients. For example, if two Patient resources reference the same Organization resource, it will appear twice, once after each Patient. The Group resource from the request does not appear in the Patient files.", + "description": "Required. The FHIR resource type used to organize exported resources. Only supports \"Patient\". When organized by Patient resource, output files are grouped as follows: * Patient file(s) containing the Patient resources. Each Patient is sequentially followed by all resources the Patient references, and all resources that reference the Patient (equivalent to a GetPatientEverything request). * Individual files grouped by resource type for resources in the Group's member field and the Group resource itself. Resources may be duplicated across multiple Patients. For example, if two Patient resources reference the same Organization resource, it will appear twice, once after each Patient. The Group resource from the request does not appear in the Patient files.", "location": "query", "type": "string" }, @@ -5684,7 +5684,7 @@ } } }, - "revision": "20251009", + "revision": "20251016", "rootUrl": "https://healthcare.googleapis.com/", "schemas": { "AccessDeterminationLogConfig": { diff --git a/discovery/iamcredentials-v1.json b/discovery/iamcredentials-v1.json index 598920d082d..3694e4aebb3 100644 --- a/discovery/iamcredentials-v1.json +++ b/discovery/iamcredentials-v1.json @@ -137,8 +137,68 @@ }, "protocol": "rest", "resources": { + "locations": { + "resources": { + "workforcePools": { + "methods": { + "getAllowedLocations": { + "description": "Returns the trust boundary info for a given workforce pool.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/allowedLocations", + "httpMethod": "GET", + "id": "iamcredentials.locations.workforcePools.getAllowedLocations", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Resource name of workforce pool.", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}/allowedLocations", + "response": { + "$ref": "WorkforcePoolAllowedLocations" + } + } + } + } + } + }, "projects": { "resources": { + "locations": { + "resources": { + "workloadIdentityPools": { + "methods": { + "getAllowedLocations": { + "description": "Returns the trust boundary info for a given workload identity pool.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}/allowedLocations", + "httpMethod": "GET", + "id": "iamcredentials.projects.locations.workloadIdentityPools.getAllowedLocations", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Resource name of workload identity pool.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}/allowedLocations", + "response": { + "$ref": "WorkloadIdentityPoolAllowedLocations" + } + } + } + } + } + }, "serviceAccounts": { "methods": { "generateAccessToken": { @@ -197,6 +257,28 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "getAllowedLocations": { + "description": "Returns the trust boundary info for a given service account.", + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/allowedLocations", + "httpMethod": "GET", + "id": "iamcredentials.projects.serviceAccounts.getAllowedLocations", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Resource name of service account.", + "location": "path", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}/allowedLocations", + "response": { + "$ref": "ServiceAccountAllowedLocations" + } + }, "signBlob": { "description": "Signs a blob using a service account's system-managed private key.", "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:signBlob", @@ -258,7 +340,7 @@ } } }, - "revision": "20251009", + "revision": "20251022", "rootUrl": "https://iamcredentials.googleapis.com/", "schemas": { "GenerateAccessTokenRequest": { @@ -336,6 +418,26 @@ }, "type": "object" }, + "ServiceAccountAllowedLocations": { + "description": "Represents a list of allowed locations for given service account.", + "id": "ServiceAccountAllowedLocations", + "properties": { + "encodedLocations": { + "description": "Output only. The hex encoded bitmap of the trust boundary locations", + "readOnly": true, + "type": "string" + }, + "locations": { + "description": "Output only. The human readable trust boundary locations. For example, [\"us-central1\", \"europe-west1\"]", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, "SignBlobRequest": { "id": "SignBlobRequest", "properties": { @@ -399,6 +501,46 @@ } }, "type": "object" + }, + "WorkforcePoolAllowedLocations": { + "description": "Represents a list of allowed locations for given workforce pool.", + "id": "WorkforcePoolAllowedLocations", + "properties": { + "encodedLocations": { + "description": "Output only. The hex encoded bitmap of the trust boundary locations", + "readOnly": true, + "type": "string" + }, + "locations": { + "description": "Output only. The human readable trust boundary locations. For example, [\"us-central1\", \"europe-west1\"]", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "WorkloadIdentityPoolAllowedLocations": { + "description": "Represents a list of allowed locations for given workload identity pool.", + "id": "WorkloadIdentityPoolAllowedLocations", + "properties": { + "encodedLocations": { + "description": "Output only. The hex encoded bitmap of the trust boundary locations", + "readOnly": true, + "type": "string" + }, + "locations": { + "description": "Output only. The human readable trust boundary locations. For example, [\"us-central1\", \"europe-west1\"]", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/discovery/managedkafka-v1.json b/discovery/managedkafka-v1.json index bb3101c5799..9af60e1a962 100644 --- a/discovery/managedkafka-v1.json +++ b/discovery/managedkafka-v1.json @@ -16,10 +16,215 @@ "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/managed-service-for-apache-kafka/docs", "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, { "description": "Regional Endpoint", "endpointUrl": "https://managedkafka.us-east7.rep.googleapis.com/", "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://managedkafka.us-west4.rep.googleapis.com/", + "location": "us-west4" } ], "fullyEncodeReservedExpansion": true, @@ -2946,7 +3151,7 @@ } } }, - "revision": "20251023", + "revision": "20251030", "rootUrl": "https://managedkafka.googleapis.com/", "schemas": { "AccessConfig": { diff --git a/discovery/merchantapi-datasources_v1.json b/discovery/merchantapi-datasources_v1.json index de665d563d1..a7b4fb82587 100644 --- a/discovery/merchantapi-datasources_v1.json +++ b/discovery/merchantapi-datasources_v1.json @@ -321,7 +321,7 @@ } } }, - "revision": "20250804", + "revision": "20251102", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "DataSource": { @@ -980,7 +980,7 @@ "type": "object" }, "SupplementalProductDataSource": { - "description": "The supplemental data source for local and online products. After creation, you should make sure to link the supplemental product data source into one or more primary product data sources.", + "description": "The [supplemental data source](https://developers.google.com/merchant/api/guides/data-sources/api-sources#link-supplemental-data-source) for local and online products. After creation,you should make sure to link the supplemental product data source into one or more primary product data sources.", "id": "SupplementalProductDataSource", "properties": { "contentLanguage": { diff --git a/discovery/merchantapi-datasources_v1beta.json b/discovery/merchantapi-datasources_v1beta.json index 181d8ccf1d8..d1c132c9d7d 100644 --- a/discovery/merchantapi-datasources_v1beta.json +++ b/discovery/merchantapi-datasources_v1beta.json @@ -321,7 +321,7 @@ } } }, - "revision": "20250721", + "revision": "20251102", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "DataSource": { @@ -992,7 +992,7 @@ "type": "object" }, "SupplementalProductDataSource": { - "description": "The supplemental data source for local and online products. After creation, you should make sure to link the supplemental product data source into one or more primary product data sources.", + "description": "The [supplemental data source](https://developers.google.com/merchant/api/guides/data-sources/api-sources#link-supplemental-data-source) for local and online products. After creation,you should make sure to link the supplemental product data source into one or more primary product data sources.", "id": "SupplementalProductDataSource", "properties": { "contentLanguage": { diff --git a/discovery/merchantapi-products_v1.json b/discovery/merchantapi-products_v1.json index c0e3f7a2c18..9e9d85976b3 100644 --- a/discovery/merchantapi-products_v1.json +++ b/discovery/merchantapi-products_v1.json @@ -281,7 +281,7 @@ } } }, - "revision": "20251007", + "revision": "20251104", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "AutomatedDiscounts": { @@ -1696,6 +1696,13 @@ }, "type": "array" }, + "shippingHandlingBusinessDays": { + "description": "The business days during which orders can be handled. If not provided, Monday to Friday business days will be assumed.", + "items": { + "$ref": "ShippingBusinessDaysConfig" + }, + "type": "array" + }, "shippingHeight": { "$ref": "ShippingDimension", "description": "Height of the item for shipping." @@ -1708,6 +1715,13 @@ "$ref": "ShippingDimension", "description": "Length of the item for shipping." }, + "shippingTransitBusinessDays": { + "description": "The business days during which orders are in transit. If not provided, Monday to Friday business days will be assumed.", + "items": { + "$ref": "ShippingBusinessDaysConfig" + }, + "type": "array" + }, "shippingWeight": { "$ref": "ShippingWeight", "description": "Weight of the item for shipping." @@ -2294,6 +2308,21 @@ }, "type": "object" }, + "ShippingBusinessDaysConfig": { + "description": "The business days during which orders are on their path to fulfillment. If not provided, Monday to Friday business days will be assumed.", + "id": "ShippingBusinessDaysConfig", + "properties": { + "businessDays": { + "description": "Effective days of the week considered for the delivery time calculation. May not be empty. The more business days included the faster the delivery. Can be set through individual days (e.g. `MTWRF`), or day ranges (e.g. `Mon-Fri`). For more information about accepted formats, see [Shipping handling business days](https://support.google.com/merchants/answer/16072859).", + "type": "string" + }, + "country": { + "description": "The [CLDR territory code](http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml) of the country to which an item will ship.", + "type": "string" + } + }, + "type": "object" + }, "ShippingDimension": { "description": "The ShippingDimension of the product.", "id": "ShippingDimension", diff --git a/discovery/networkconnectivity-v1.json b/discovery/networkconnectivity-v1.json index d6bd29be1e9..dff23e52244 100644 --- a/discovery/networkconnectivity-v1.json +++ b/discovery/networkconnectivity-v1.json @@ -172,7 +172,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -3540,7 +3540,7 @@ } } }, - "revision": "20251009", + "revision": "20251030", "rootUrl": "https://networkconnectivity.googleapis.com/", "schemas": { "AcceptHubSpokeRequest": { @@ -5634,7 +5634,7 @@ "type": "object" }, "name": { - "description": "Immutable. A unique name of the resource in the form of `projects/{project_number}/locations/global/PolicyBasedRoutes/{policy_based_route_id}`", + "description": "Immutable. Identifier. A unique name of the resource in the form of `projects/{project_number}/locations/global/PolicyBasedRoutes/{policy_based_route_id}`", "type": "string" }, "network": { diff --git a/discovery/networkservices-v1beta1.json b/discovery/networkservices-v1beta1.json index df7f29e53ce..0df385ae502 100644 --- a/discovery/networkservices-v1beta1.json +++ b/discovery/networkservices-v1beta1.json @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -382,7 +382,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent resource of the EndpointPolicy. Must be in the format `projects/*/locations/global`.", + "description": "Required. The parent resource of the EndpointPolicy. Must be in the format `projects/*/locations/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -410,7 +410,7 @@ ], "parameters": { "name": { - "description": "Required. A name of the EndpointPolicy to delete. Must be in the format `projects/*/locations/global/endpointPolicies/*`.", + "description": "Required. A name of the EndpointPolicy to delete. Must be in the format `projects/*/locations/*/endpointPolicies/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/endpointPolicies/[^/]+$", "required": true, @@ -435,7 +435,7 @@ ], "parameters": { "name": { - "description": "Required. A name of the EndpointPolicy to get. Must be in the format `projects/*/locations/global/endpointPolicies/*`.", + "description": "Required. A name of the EndpointPolicy to get. Must be in the format `projects/*/locations/*/endpointPolicies/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/endpointPolicies/[^/]+$", "required": true, @@ -471,7 +471,7 @@ "type": "string" }, "parent": { - "description": "Required. The project and location from which the EndpointPolicies should be listed, specified in the format `projects/*/locations/global`.", + "description": "Required. The project and location from which the EndpointPolicies should be listed, specified in the format `projects/*/locations/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -501,7 +501,7 @@ ], "parameters": { "name": { - "description": "Identifier. Name of the EndpointPolicy resource. It matches pattern `projects/{project}/locations/global/endpointPolicies/{endpoint_policy}`.", + "description": "Identifier. Name of the EndpointPolicy resource. It matches pattern `projects/{project}/locations/*/endpointPolicies/{endpoint_policy}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/endpointPolicies/[^/]+$", "required": true, @@ -768,7 +768,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent resource of the GrpcRoute. Must be in the format `projects/*/locations/global`.", + "description": "Required. The parent resource of the GrpcRoute. Must be in the format `projects/*/locations/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -796,7 +796,7 @@ ], "parameters": { "name": { - "description": "Required. A name of the GrpcRoute to delete. Must be in the format `projects/*/locations/global/grpcRoutes/*`.", + "description": "Required. A name of the GrpcRoute to delete. Must be in the format `projects/*/locations/*/grpcRoutes/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/grpcRoutes/[^/]+$", "required": true, @@ -821,7 +821,7 @@ ], "parameters": { "name": { - "description": "Required. A name of the GrpcRoute to get. Must be in the format `projects/*/locations/global/grpcRoutes/*`.", + "description": "Required. A name of the GrpcRoute to get. Must be in the format `projects/*/locations/*/grpcRoutes/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/grpcRoutes/[^/]+$", "required": true, @@ -857,7 +857,7 @@ "type": "string" }, "parent": { - "description": "Required. The project and location from which the GrpcRoutes should be listed, specified in the format `projects/*/locations/global`.", + "description": "Required. The project and location from which the GrpcRoutes should be listed, specified in the format `projects/*/locations/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -887,7 +887,7 @@ ], "parameters": { "name": { - "description": "Identifier. Name of the GrpcRoute resource. It matches pattern `projects/*/locations/global/grpcRoutes/`", + "description": "Identifier. Name of the GrpcRoute resource. It matches pattern `projects/*/locations/*/grpcRoutes/`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/grpcRoutes/[^/]+$", "required": true, @@ -930,7 +930,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent resource of the HttpRoute. Must be in the format `projects/*/locations/global`.", + "description": "Required. The parent resource of the HttpRoute. Must be in the format `projects/*/locations/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -958,7 +958,7 @@ ], "parameters": { "name": { - "description": "Required. A name of the HttpRoute to delete. Must be in the format `projects/*/locations/global/httpRoutes/*`.", + "description": "Required. A name of the HttpRoute to delete. Must be in the format `projects/*/locations/*/httpRoutes/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/httpRoutes/[^/]+$", "required": true, @@ -983,7 +983,7 @@ ], "parameters": { "name": { - "description": "Required. A name of the HttpRoute to get. Must be in the format `projects/*/locations/global/httpRoutes/*`.", + "description": "Required. A name of the HttpRoute to get. Must be in the format `projects/*/locations/*/httpRoutes/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/httpRoutes/[^/]+$", "required": true, @@ -1019,7 +1019,7 @@ "type": "string" }, "parent": { - "description": "Required. The project and location from which the HttpRoutes should be listed, specified in the format `projects/*/locations/global`.", + "description": "Required. The project and location from which the HttpRoutes should be listed, specified in the format `projects/*/locations/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -1049,7 +1049,7 @@ ], "parameters": { "name": { - "description": "Identifier. Name of the HttpRoute resource. It matches pattern `projects/*/locations/global/httpRoutes/http_route_name>`.", + "description": "Identifier. Name of the HttpRoute resource. It matches pattern `projects/*/locations/*/httpRoutes/http_route_name>`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/httpRoutes/[^/]+$", "required": true, @@ -1820,7 +1820,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent resource of the Mesh. Must be in the format `projects/*/locations/global`.", + "description": "Required. The parent resource of the Mesh. Must be in the format `projects/*/locations/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -1848,7 +1848,7 @@ ], "parameters": { "name": { - "description": "Required. A name of the Mesh to delete. Must be in the format `projects/*/locations/global/meshes/*`.", + "description": "Required. A name of the Mesh to delete. Must be in the format `projects/*/locations/*/meshes/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/meshes/[^/]+$", "required": true, @@ -1873,7 +1873,7 @@ ], "parameters": { "name": { - "description": "Required. A name of the Mesh to get. Must be in the format `projects/*/locations/global/meshes/*`.", + "description": "Required. A name of the Mesh to get. Must be in the format `projects/*/locations/*/meshes/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/meshes/[^/]+$", "required": true, @@ -1909,7 +1909,7 @@ "type": "string" }, "parent": { - "description": "Required. The project and location from which the Meshes should be listed, specified in the format `projects/*/locations/global`.", + "description": "Required. The project and location from which the Meshes should be listed, specified in the format `projects/*/locations/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -1939,7 +1939,7 @@ ], "parameters": { "name": { - "description": "Identifier. Name of the Mesh resource. It matches pattern `projects/*/locations/global/meshes/`.", + "description": "Identifier. Name of the Mesh resource. It matches pattern `projects/*/locations/*/meshes/`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/meshes/[^/]+$", "required": true, @@ -2486,7 +2486,7 @@ ], "parameters": { "parent": { - "description": "Required. The parent resource of the TcpRoute. Must be in the format `projects/*/locations/global`.", + "description": "Required. The parent resource of the TcpRoute. Must be in the format `projects/*/locations/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -2519,7 +2519,7 @@ ], "parameters": { "name": { - "description": "Required. A name of the TcpRoute to delete. Must be in the format `projects/*/locations/global/tcpRoutes/*`.", + "description": "Required. A name of the TcpRoute to delete. Must be in the format `projects/*/locations/*/tcpRoutes/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/tcpRoutes/[^/]+$", "required": true, @@ -2544,7 +2544,7 @@ ], "parameters": { "name": { - "description": "Required. A name of the TcpRoute to get. Must be in the format `projects/*/locations/global/tcpRoutes/*`.", + "description": "Required. A name of the TcpRoute to get. Must be in the format `projects/*/locations/*/tcpRoutes/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/tcpRoutes/[^/]+$", "required": true, @@ -2580,7 +2580,7 @@ "type": "string" }, "parent": { - "description": "Required. The project and location from which the TcpRoutes should be listed, specified in the format `projects/*/locations/global`.", + "description": "Required. The project and location from which the TcpRoutes should be listed, specified in the format `projects/*/locations/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -2610,7 +2610,7 @@ ], "parameters": { "name": { - "description": "Identifier. Name of the TcpRoute resource. It matches pattern `projects/*/locations/global/tcpRoutes/tcp_route_name>`.", + "description": "Identifier. Name of the TcpRoute resource. It matches pattern `projects/*/locations/*/tcpRoutes/tcp_route_name>`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/tcpRoutes/[^/]+$", "required": true, @@ -2648,7 +2648,7 @@ ], "parameters": { "parent": { - "description": "Required. The parent resource of the TlsRoute. Must be in the format `projects/*/locations/global`.", + "description": "Required. The parent resource of the TlsRoute. Must be in the format `projects/*/locations/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -2681,7 +2681,7 @@ ], "parameters": { "name": { - "description": "Required. A name of the TlsRoute to delete. Must be in the format `projects/*/locations/global/tlsRoutes/*`.", + "description": "Required. A name of the TlsRoute to delete. Must be in the format `projects/*/locations/*/tlsRoutes/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/tlsRoutes/[^/]+$", "required": true, @@ -2706,7 +2706,7 @@ ], "parameters": { "name": { - "description": "Required. A name of the TlsRoute to get. Must be in the format `projects/*/locations/global/tlsRoutes/*`.", + "description": "Required. A name of the TlsRoute to get. Must be in the format `projects/*/locations/*/tlsRoutes/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/tlsRoutes/[^/]+$", "required": true, @@ -2742,7 +2742,7 @@ "type": "string" }, "parent": { - "description": "Required. The project and location from which the TlsRoutes should be listed, specified in the format `projects/*/locations/global`.", + "description": "Required. The project and location from which the TlsRoutes should be listed, specified in the format `projects/*/locations/*`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -2772,7 +2772,7 @@ ], "parameters": { "name": { - "description": "Identifier. Name of the TlsRoute resource. It matches pattern `projects/*/locations/global/tlsRoutes/tls_route_name>`.", + "description": "Identifier. Name of the TlsRoute resource. It matches pattern `projects/*/locations/*/tlsRoutes/tls_route_name>`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/tlsRoutes/[^/]+$", "required": true, @@ -3100,7 +3100,7 @@ } } }, - "revision": "20251017", + "revision": "20251029", "rootUrl": "https://networkservices.googleapis.com/", "schemas": { "AuthzExtension": { @@ -3252,7 +3252,7 @@ "type": "object" }, "name": { - "description": "Identifier. Name of the EndpointPolicy resource. It matches pattern `projects/{project}/locations/global/endpointPolicies/{endpoint_policy}`.", + "description": "Identifier. Name of the EndpointPolicy resource. It matches pattern `projects/{project}/locations/*/endpointPolicies/{endpoint_policy}`.", "type": "string" }, "securityPolicy": { @@ -3347,6 +3347,10 @@ "description": "Optional. The name for this extension. The name is logged as part of the HTTP request logs. The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens, and can have a maximum length of 63 characters. Additionally, the first character must be a letter and the last a letter or a number. This field is required except for AuthzExtension.", "type": "string" }, + "observabilityMode": { + "description": "Optional. When set to `TRUE`, enables `observability_mode` on the `ext_proc` filter. This makes `ext_proc` calls asynchronous. Envoy doesn't check for the response from `ext_proc` calls. For more information about the filter, see: https://www.envoyproxy.io/docs/envoy/v1.32.3/api-v3/extensions/filters/http/ext_proc/v3/ext_proc.proto#extensions-filters-http-ext-proc-v3-externalprocessor This field is helpful when you want to try out the extension in async log-only mode. Supported by regional `LbTrafficExtension` and `LbRouteExtension` resources. Only `STREAMED` (default) body processing mode is supported.", + "type": "boolean" + }, "requestBodySendMode": { "description": "Optional. Configures the send mode for request body processing. The field can only be set if `supported_events` includes `REQUEST_BODY`. If `supported_events` includes `REQUEST_BODY`, but `request_body_send_mode` is unset, the default value `STREAMED` is used. When this field is set to `FULL_DUPLEX_STREAMED`, `supported_events` must include both `REQUEST_BODY` and `REQUEST_TRAILERS`. This field can be set only for `LbTrafficExtension` and `LbRouteExtension` resources, and only when the `service` field of the extension points to a `BackendService`. Only `FULL_DUPLEX_STREAMED` mode is supported for `LbRouteExtension` resources.", "enum": [ @@ -3606,7 +3610,7 @@ "type": "string" }, "gateways": { - "description": "Optional. Gateways defines a list of gateways this GrpcRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/*/locations/global/gateways/`", + "description": "Optional. Gateways defines a list of gateways this GrpcRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/*/locations/*/gateways/`", "items": { "type": "string" }, @@ -3627,14 +3631,14 @@ "type": "object" }, "meshes": { - "description": "Optional. Meshes defines a list of meshes this GrpcRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/*/locations/global/meshes/`", + "description": "Optional. Meshes defines a list of meshes this GrpcRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/*/locations/*/meshes/`", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "Identifier. Name of the GrpcRoute resource. It matches pattern `projects/*/locations/global/grpcRoutes/`", + "description": "Identifier. Name of the GrpcRoute resource. It matches pattern `projects/*/locations/*/grpcRoutes/`", "type": "string" }, "rules": { @@ -3903,7 +3907,7 @@ "type": "string" }, "gateways": { - "description": "Optional. Gateways defines a list of gateways this HttpRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/*/locations/global/gateways/`", + "description": "Optional. Gateways defines a list of gateways this HttpRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/*/locations/*/gateways/`", "items": { "type": "string" }, @@ -3924,14 +3928,14 @@ "type": "object" }, "meshes": { - "description": "Optional. Meshes defines a list of meshes this HttpRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/*/locations/global/meshes/` The attached Mesh should be of a type SIDECAR", + "description": "Optional. Meshes defines a list of meshes this HttpRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/*/locations/*/meshes/` The attached Mesh should be of a type SIDECAR", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "Identifier. Name of the HttpRoute resource. It matches pattern `projects/*/locations/global/httpRoutes/http_route_name>`.", + "description": "Identifier. Name of the HttpRoute resource. It matches pattern `projects/*/locations/*/httpRoutes/http_route_name>`.", "type": "string" }, "rules": { @@ -5315,7 +5319,7 @@ "type": "object" }, "name": { - "description": "Identifier. Name of the Mesh resource. It matches pattern `projects/*/locations/global/meshes/`.", + "description": "Identifier. Name of the Mesh resource. It matches pattern `projects/*/locations/*/meshes/`.", "type": "string" }, "selfLink": { @@ -5704,7 +5708,7 @@ "type": "string" }, "gateways": { - "description": "Optional. Gateways defines a list of gateways this TcpRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/*/locations/global/gateways/`", + "description": "Optional. Gateways defines a list of gateways this TcpRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/*/locations/*/gateways/`", "items": { "type": "string" }, @@ -5718,14 +5722,14 @@ "type": "object" }, "meshes": { - "description": "Optional. Meshes defines a list of meshes this TcpRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/*/locations/global/meshes/` The attached Mesh should be of a type SIDECAR", + "description": "Optional. Meshes defines a list of meshes this TcpRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/*/locations/*/meshes/` The attached Mesh should be of a type SIDECAR", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "Identifier. Name of the TcpRoute resource. It matches pattern `projects/*/locations/global/tcpRoutes/tcp_route_name>`.", + "description": "Identifier. Name of the TcpRoute resource. It matches pattern `projects/*/locations/*/tcpRoutes/tcp_route_name>`.", "type": "string" }, "rules": { @@ -5836,7 +5840,7 @@ "type": "string" }, "gateways": { - "description": "Optional. Gateways defines a list of gateways this TlsRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/*/locations/global/gateways/`", + "description": "Optional. Gateways defines a list of gateways this TlsRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/*/locations/*/gateways/`", "items": { "type": "string" }, @@ -5850,14 +5854,14 @@ "type": "object" }, "meshes": { - "description": "Optional. Meshes defines a list of meshes this TlsRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/*/locations/global/meshes/` The attached Mesh should be of a type SIDECAR", + "description": "Optional. Meshes defines a list of meshes this TlsRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/*/locations/*/meshes/` The attached Mesh should be of a type SIDECAR", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "Identifier. Name of the TlsRoute resource. It matches pattern `projects/*/locations/global/tlsRoutes/tls_route_name>`.", + "description": "Identifier. Name of the TlsRoute resource. It matches pattern `projects/*/locations/*/tlsRoutes/tls_route_name>`.", "type": "string" }, "rules": { diff --git a/discovery/osconfig-v1.json b/discovery/osconfig-v1.json index 451d14acf99..3deb2ed9b51 100644 --- a/discovery/osconfig-v1.json +++ b/discovery/osconfig-v1.json @@ -1083,7 +1083,7 @@ } } }, - "revision": "20250727", + "revision": "20251030", "rootUrl": "https://osconfig.googleapis.com/", "schemas": { "AptSettings": { @@ -3061,6 +3061,10 @@ ], "type": "string" }, + "skipUnpatchableVms": { + "description": "Optional. Enables enhanced reporting for the patch job: 1. Allows the patch job to skip unpatchable instances, reporting them as SKIPPED. An instance can be unpatchable for two reasons: a. The instance runs Container-Optimized OS (COS), which cannot be patched. b. The patch job's configuration prohibits patching on Managed Instance Groups (MIGs) through the PatchConfig.migInstancesAllowed field, and the instance is part of one. 2. The system reports the patch job as SUCCEEDED if it completes without errors, regardless of whether any instances were SKIPPED. 3. The system reports the patch job as COMPLETED_WITH_INACTIVE_VMS if it completes without errors, but some instances were INACTIVE and therefore not patched.", + "type": "boolean" + }, "windowsUpdate": { "$ref": "WindowsUpdateSettings", "description": "Windows update settings. Use this override the default windows patch rules." @@ -3270,6 +3274,7 @@ "INSTANCE_LOOKUP", "PATCHING", "SUCCEEDED", + "COMPLETED_WITH_INACTIVE_VMS", "COMPLETED_WITH_ERRORS", "CANCELED", "TIMED_OUT" @@ -3280,6 +3285,7 @@ "The patch job is looking up instances to run the patch on.", "Instances are being patched.", "Patch job completed successfully.", + "The patch job completed without errors, but some instances were inactive and therefore not patched.", "Patch job completed but there were errors.", "The patch job was canceled.", "The patch job timed out." @@ -3333,7 +3339,8 @@ "TIMED_OUT", "RUNNING_PRE_PATCH_STEP", "RUNNING_POST_PATCH_STEP", - "NO_AGENT_DETECTED" + "NO_AGENT_DETECTED", + "SKIPPED" ], "enumDescriptions": [ "Unspecified.", @@ -3351,7 +3358,8 @@ "The instance exceeded the time out while applying the patch.", "The instance is running the pre-patch step.", "The instance is running the post-patch step.", - "The service could not detect the presence of the agent. Check to ensure that the agent is installed, running, and able to communicate with the service." + "The service could not detect the presence of the agent. Check to ensure that the agent is installed, running, and able to communicate with the service.", + "The instance was skipped during patching due to one of two reasons: 1. The instance runs Container-Optimized OS (COS), which cannot be patched. 2. The patch job's configuration prohibits patching on Managed Instance Groups (MIGs), and the instance is part of one." ], "type": "string" } @@ -3417,6 +3425,11 @@ "format": "int64", "type": "string" }, + "skippedInstanceCount": { + "description": "Number of instances that were skipped during patching.", + "format": "int64", + "type": "string" + }, "startedInstanceCount": { "description": "Number of instances that have started.", "format": "int64", diff --git a/discovery/osconfig-v1beta.json b/discovery/osconfig-v1beta.json index 91e74eadf8b..89703030cb2 100644 --- a/discovery/osconfig-v1beta.json +++ b/discovery/osconfig-v1beta.json @@ -689,7 +689,7 @@ } } }, - "revision": "20250511", + "revision": "20251030", "rootUrl": "https://osconfig.googleapis.com/", "schemas": { "AptRepository": { @@ -1565,6 +1565,10 @@ ], "type": "string" }, + "skipUnpatchableVms": { + "description": "Optional. Enables enhanced reporting for the patch job: 1. Allows the patch job to skip unpatchable instances, reporting them as SKIPPED. An instance can be unpatchable for two reasons: a. The instance runs Container-Optimized OS (COS), which cannot be patched. b. The patch job's configuration prohibits patching on Managed Instance Groups (MIGs) through the PatchConfig.migInstancesAllowed field, and the instance is part of one. 2. The system reports the patch job as SUCCEEDED if it completes without errors, regardless of whether any instances were SKIPPED. 3. The system reports the patch job as COMPLETED_WITH_INACTIVE_VMS if it completes without errors, but some instances were INACTIVE and therefore not patched.", + "type": "boolean" + }, "windowsUpdate": { "$ref": "WindowsUpdateSettings", "description": "Windows update settings. Use this override the default windows patch rules." @@ -1774,6 +1778,7 @@ "INSTANCE_LOOKUP", "PATCHING", "SUCCEEDED", + "COMPLETED_WITH_INACTIVE_VMS", "COMPLETED_WITH_ERRORS", "CANCELED", "TIMED_OUT" @@ -1784,6 +1789,7 @@ "The patch job is looking up instances to run the patch on.", "Instances are being patched.", "Patch job completed successfully.", + "The patch job completed without errors, but some instances were inactive and therefore not patched.", "Patch job completed but there were errors.", "The patch job was canceled.", "The patch job timed out." @@ -1837,7 +1843,8 @@ "TIMED_OUT", "RUNNING_PRE_PATCH_STEP", "RUNNING_POST_PATCH_STEP", - "NO_AGENT_DETECTED" + "NO_AGENT_DETECTED", + "SKIPPED" ], "enumDescriptions": [ "Unspecified.", @@ -1855,7 +1862,8 @@ "The instance exceeded the time out while applying the patch.", "The instance is running the pre-patch step.", "The instance is running the post-patch step.", - "The service could not detect the presence of the agent. Check to ensure that the agent is installed, running, and able to communicate with the service." + "The service could not detect the presence of the agent. Check to ensure that the agent is installed, running, and able to communicate with the service.", + "The instance was skipped during patching due to one of two reasons: 1. The instance runs Container-Optimized OS (COS), which cannot be patched. 2. The patch job's configuration prohibits patching on Managed Instance Groups (MIGs), and the instance is part of one." ], "type": "string" } @@ -1921,6 +1929,11 @@ "format": "int64", "type": "string" }, + "skippedInstanceCount": { + "description": "Number of instances that were skipped during patching.", + "format": "int64", + "type": "string" + }, "startedInstanceCount": { "description": "Number of instances that have started.", "format": "int64", diff --git a/discovery/retail-v2alpha.json b/discovery/retail-v2alpha.json index cbbd1bbb21f..544a7d5e121 100644 --- a/discovery/retail-v2alpha.json +++ b/discovery/retail-v2alpha.json @@ -2874,7 +2874,7 @@ } } }, - "revision": "20251023", + "revision": "20251030", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -5124,7 +5124,7 @@ "properties": { "filter": { "deprecated": true, - "description": "This field is deprecated. Any filter provided will be ignored.", + "description": "Deprecated: This field is deprecated. Any filter provided will be ignored.", "type": "string" }, "outputConfig": { @@ -5161,7 +5161,8 @@ "id": "GoogleCloudRetailV2alphaExportUserEventsRequest", "properties": { "filter": { - "description": "A filtering expression to specify restrictions on returned events. The expression is a sequence of terms. Each term applies a restriction to the returned user events. Use this expression to restrict results to a specific time range or to filter events by eventType. For example, `eventTime > \"2012-04-23T18:25:43.511Z\" eventsMissingCatalogItems eventTime<\"2012-04-23T18:25:43.511Z\" eventType=search` We expect only three types of fields: * `eventTime`: This can be specified twice, once with a less than operator and once with a greater than operator. The `eventTime` restriction should result in one, contiguous, valid, `eventTime` range. * `eventType`: Boolean operators `OR` and `NOT` are supported if the expression is enclosed in parentheses and the operators are separated from the tag values by a space. * `eventsMissingCatalogItems`: This restricts results to events for which catalog items were not found in the catalog. The default behavior is to return only those events for which catalog items were found. Some examples of valid filters expressions: * Example 1: `eventTime > \"2012-04-23T18:25:43.511Z\" eventTime < \"2012-04-23T18:30:43.511Z\"` * Example 2: `eventTime > \"2012-04-23T18:25:43.511Z\" eventType = detail-page-view` * Example 3: `eventsMissingCatalogItems eventType = (NOT search) eventTime < \"2018-04-23T18:30:43.511Z\"` * Example 4: `eventTime > \"2012-04-23T18:25:43.511Z\"` * Example 5: `eventType = (detail-page-view OR search)` * Example 6: `eventsMissingCatalogItems`", + "deprecated": true, + "description": "Deprecated: This field is deprecated. Any filter provided will be ignored.", "type": "string" }, "outputConfig": { diff --git a/discovery/retail-v2beta.json b/discovery/retail-v2beta.json index 6f12e738488..10aa51dad15 100644 --- a/discovery/retail-v2beta.json +++ b/discovery/retail-v2beta.json @@ -2498,7 +2498,7 @@ } } }, - "revision": "20251023", + "revision": "20251030", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -5396,7 +5396,7 @@ "properties": { "filter": { "deprecated": true, - "description": "This field is deprecated. Any filter provided will be ignored.", + "description": "Deprecated: This field is deprecated. Any filter provided will be ignored.", "type": "string" }, "outputConfig": { @@ -5433,7 +5433,8 @@ "id": "GoogleCloudRetailV2betaExportUserEventsRequest", "properties": { "filter": { - "description": "A filtering expression to specify restrictions on returned events. The expression is a sequence of terms. Each term applies a restriction to the returned user events. Use this expression to restrict results to a specific time range or to filter events by eventType. For example, `eventTime > \"2012-04-23T18:25:43.511Z\" eventsMissingCatalogItems eventTime<\"2012-04-23T18:25:43.511Z\" eventType=search` We expect only three types of fields: * `eventTime`: This can be specified twice, once with a less than operator and once with a greater than operator. The `eventTime` restriction should result in one, contiguous, valid, `eventTime` range. * `eventType`: Boolean operators `OR` and `NOT` are supported if the expression is enclosed in parentheses and the operators are separated from the tag values by a space. * `eventsMissingCatalogItems`: This restricts results to events for which catalog items were not found in the catalog. The default behavior is to return only those events for which catalog items were found. Some examples of valid filters expressions: * Example 1: `eventTime > \"2012-04-23T18:25:43.511Z\" eventTime < \"2012-04-23T18:30:43.511Z\"` * Example 2: `eventTime > \"2012-04-23T18:25:43.511Z\" eventType = detail-page-view` * Example 3: `eventsMissingCatalogItems eventType = (NOT search) eventTime < \"2018-04-23T18:30:43.511Z\"` * Example 4: `eventTime > \"2012-04-23T18:25:43.511Z\"` * Example 5: `eventType = (detail-page-view OR search)` * Example 6: `eventsMissingCatalogItems`", + "deprecated": true, + "description": "Deprecated: This field is deprecated. Any filter provided will be ignored.", "type": "string" }, "outputConfig": { diff --git a/discovery/run-v1.json b/discovery/run-v1.json index 39d4c2a24b9..86e671b1ad0 100644 --- a/discovery/run-v1.json +++ b/discovery/run-v1.json @@ -240,6 +240,231 @@ "description": "Locational Endpoint", "endpointUrl": "https://us-west8-run.googleapis.com/", "location": "us-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-west4.rep.googleapis.com/", + "location": "us-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-west8.rep.googleapis.com/", + "location": "us-west8" } ], "fullyEncodeReservedExpansion": true, @@ -2907,7 +3132,7 @@ } } }, - "revision": "20251024", + "revision": "20251031", "rootUrl": "https://run.googleapis.com/", "schemas": { "Addressable": { @@ -4415,6 +4640,11 @@ "description": "An image built by the pipeline.", "id": "GoogleDevtoolsCloudbuildV1BuiltImage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "digest": { "description": "Docker Registry 2.0 digest.", "type": "string" @@ -5076,6 +5306,11 @@ "description": "A Go module artifact uploaded to Artifact Registry using the GoModule directive.", "id": "GoogleDevtoolsCloudbuildV1UploadedGoModule", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "GoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Go Module Artifact." @@ -5096,6 +5331,11 @@ "description": "A Maven artifact uploaded using the MavenArtifact directive.", "id": "GoogleDevtoolsCloudbuildV1UploadedMavenArtifact", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "GoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Maven Artifact." @@ -5116,6 +5356,11 @@ "description": "An npm package uploaded to Artifact Registry using the NpmPackage directive.", "id": "GoogleDevtoolsCloudbuildV1UploadedNpmPackage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "GoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the npm package." @@ -5136,6 +5381,11 @@ "description": "Artifact uploaded using the PythonPackage directive.", "id": "GoogleDevtoolsCloudbuildV1UploadedPythonPackage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "GoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Python Artifact." diff --git a/discovery/run-v2.json b/discovery/run-v2.json index 334c785efcf..1b3384b6f60 100644 --- a/discovery/run-v2.json +++ b/discovery/run-v2.json @@ -240,6 +240,231 @@ "description": "Locational Endpoint", "endpointUrl": "https://us-west8-run.googleapis.com/", "location": "us-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west2.rep.googleapis.com/", + "location": "europe-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west3.rep.googleapis.com/", + "location": "europe-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west8.rep.googleapis.com/", + "location": "europe-west8" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.europe-west9.rep.googleapis.com/", + "location": "europe-west9" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-west4.rep.googleapis.com/", + "location": "us-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://run.us-west8.rep.googleapis.com/", + "location": "us-west8" } ], "fullyEncodeReservedExpansion": true, @@ -1942,7 +2167,7 @@ } } }, - "revision": "20251024", + "revision": "20251031", "rootUrl": "https://run.googleapis.com/", "schemas": { "GoogleCloudRunV2BinaryAuthorization": { @@ -2096,6 +2321,26 @@ }, "type": "object" }, + "GoogleCloudRunV2CloudStorageSource": { + "description": "Cloud Storage source.", + "id": "GoogleCloudRunV2CloudStorageSource", + "properties": { + "bucket": { + "description": "Required. The Cloud Storage bucket name.", + "type": "string" + }, + "generation": { + "description": "Optional. The Cloud Storage object generation.", + "format": "int64", + "type": "string" + }, + "object": { + "description": "Required. The Cloud Storage object name.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudRunV2Condition": { "description": "Defines a status condition for a resource.", "id": "GoogleCloudRunV2Condition", @@ -2311,6 +2556,10 @@ "$ref": "GoogleCloudRunV2ResourceRequirements", "description": "Compute Resource requirements by this container." }, + "sourceCode": { + "$ref": "GoogleCloudRunV2SourceCode", + "description": "Optional. Location of the source." + }, "startupProbe": { "$ref": "GoogleCloudRunV2Probe", "description": "Startup probe of application within the container. All other probes are disabled if a startup probe is provided, until it succeeds. Container will not be added to service endpoints if the probe fails." @@ -4081,6 +4330,17 @@ }, "type": "object" }, + "GoogleCloudRunV2SourceCode": { + "description": "Source type for the container.", + "id": "GoogleCloudRunV2SourceCode", + "properties": { + "cloudStorageSource": { + "$ref": "GoogleCloudRunV2CloudStorageSource", + "description": "The source is a Cloud Storage bucket." + } + }, + "type": "object" + }, "GoogleCloudRunV2StorageSource": { "description": "Location of the source in an archive file in Google Cloud Storage.", "id": "GoogleCloudRunV2StorageSource", @@ -5632,6 +5892,11 @@ "description": "An image built by the pipeline.", "id": "GoogleDevtoolsCloudbuildV1BuiltImage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "digest": { "description": "Docker Registry 2.0 digest.", "type": "string" @@ -6293,6 +6558,11 @@ "description": "A Go module artifact uploaded to Artifact Registry using the GoModule directive.", "id": "GoogleDevtoolsCloudbuildV1UploadedGoModule", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "GoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Go Module Artifact." @@ -6313,6 +6583,11 @@ "description": "A Maven artifact uploaded using the MavenArtifact directive.", "id": "GoogleDevtoolsCloudbuildV1UploadedMavenArtifact", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "GoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Maven Artifact." @@ -6333,6 +6608,11 @@ "description": "An npm package uploaded to Artifact Registry using the NpmPackage directive.", "id": "GoogleDevtoolsCloudbuildV1UploadedNpmPackage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "GoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the npm package." @@ -6353,6 +6633,11 @@ "description": "Artifact uploaded using the PythonPackage directive.", "id": "GoogleDevtoolsCloudbuildV1UploadedPythonPackage", "properties": { + "artifactRegistryPackage": { + "description": "Output only. Path to the artifact in Artifact Registry.", + "readOnly": true, + "type": "string" + }, "fileHashes": { "$ref": "GoogleDevtoolsCloudbuildV1FileHashes", "description": "Hash types and values of the Python Artifact." diff --git a/discovery/storagebatchoperations-v1.json b/discovery/storagebatchoperations-v1.json index 76f3188b9eb..7878e0e8d91 100644 --- a/discovery/storagebatchoperations-v1.json +++ b/discovery/storagebatchoperations-v1.json @@ -487,7 +487,7 @@ } } }, - "revision": "20251022", + "revision": "20251029", "rootUrl": "https://storagebatchoperations.googleapis.com/", "schemas": { "Bucket": { @@ -562,6 +562,12 @@ "readOnly": true, "type": "string" }, + "totalBytesFound": { + "description": "Output only. Number of bytes found from source. This field is only populated for jobs with a prefix list object configuration.", + "format": "int64", + "readOnly": true, + "type": "string" + }, "totalObjectCount": { "description": "Output only. Number of objects listed.", "format": "int64", @@ -702,6 +708,10 @@ "description": "Optional. A description provided by the user for the job. Its max length is 1024 bytes when Unicode-encoded.", "type": "string" }, + "dryRun": { + "description": "Optional. If true, the job will run in dry run mode, returning the total object count and, if the object configuration is a prefix list, the bytes found from source. No transformations will be performed.", + "type": "boolean" + }, "errorSummaries": { "description": "Output only. Summarizes errors encountered with sample error log entries.", "items": { diff --git a/discovery/tasks-v1.json b/discovery/tasks-v1.json index ac76005f086..b36f47709f2 100644 --- a/discovery/tasks-v1.json +++ b/discovery/tasks-v1.json @@ -576,7 +576,7 @@ } } }, - "revision": "20250518", + "revision": "20251102", "rootUrl": "https://tasks.googleapis.com/", "schemas": { "AssignmentInfo": { @@ -664,7 +664,7 @@ "type": "boolean" }, "due": { - "description": "Due date of the task (as a RFC 3339 timestamp). Optional. The due date only records date information; the time portion of the timestamp is discarded when setting the due date. It isn't possible to read or write the time that a task is due via the API.", + "description": "Scheduled date for the task (as an RFC 3339 timestamp). Optional. This represents the day that the task should be done, or that the task is visible on the calendar grid. It doesn't represent the deadline of the task. Only date information is recorded; the time portion of the timestamp is discarded when setting this field. It isn't possible to read or write the time that a task is scheduled for using the API.", "type": "string" }, "etag": { diff --git a/discovery/vmmigration-v1alpha1.json b/discovery/vmmigration-v1alpha1.json index a250a762f77..beb38cec314 100644 --- a/discovery/vmmigration-v1alpha1.json +++ b/discovery/vmmigration-v1alpha1.json @@ -2548,7 +2548,7 @@ } } }, - "revision": "20251023", + "revision": "20251030", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AccessKeyCredentials": { @@ -3748,6 +3748,10 @@ "description": "Optional. The service account to associate the VM with.", "type": "string" }, + "storagePool": { + "description": "Optional. If specified this will be the storage pool in which the disk is created. This is the full path of the storage pool resource, for example: \"projects/my-project/zones/us-central1-a/storagePools/my-storage-pool\". The storage pool must be in the same project and zone as the target disks. The storage pool's type must match the disk type.", + "type": "string" + }, "targetProject": { "description": "The full path of the resource of type TargetProject which represents the Compute Engine project in which to create this VM.", "type": "string" @@ -3920,6 +3924,10 @@ "description": "The service account to associate the VM with.", "type": "string" }, + "storagePool": { + "description": "Optional. The storage pool used for the VM disks. If specified this will be the storage pool in which the disk is created. This is the full path of the storage pool resource, for example: \"projects/my-project/zones/us-central1-a/storagePools/my-storage-pool\". The storage pool must be in the same project and zone as the target disks. The storage pool's type must match the disk type.", + "type": "string" + }, "vmName": { "description": "The name of the VM to create.", "type": "string" @@ -4188,7 +4196,7 @@ "type": "object" }, "DataDiskImageImport": { - "description": "Mentions that the image import is not using OS adaptation process.", + "description": "Used when the image import is not using OS adaptation process.", "id": "DataDiskImageImport", "properties": {}, "type": "object" diff --git a/discovery/workflows-v1.json b/discovery/workflows-v1.json index 402f078a47c..efd1c2040e8 100644 --- a/discovery/workflows-v1.json +++ b/discovery/workflows-v1.json @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -496,7 +496,7 @@ } } }, - "revision": "20251013", + "revision": "20251026", "rootUrl": "https://workflows.googleapis.com/", "schemas": { "Empty": { diff --git a/discovery/workflows-v1beta.json b/discovery/workflows-v1beta.json index 5e5fee7a04a..da827828814 100644 --- a/discovery/workflows-v1beta.json +++ b/discovery/workflows-v1beta.json @@ -144,7 +144,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.", + "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -455,7 +455,7 @@ } } }, - "revision": "20251013", + "revision": "20251026", "rootUrl": "https://workflows.googleapis.com/", "schemas": { "Empty": { diff --git a/discovery/workspaceevents-v1.json b/discovery/workspaceevents-v1.json index abfc5544fad..539ba2a4edb 100644 --- a/discovery/workspaceevents-v1.json +++ b/discovery/workspaceevents-v1.json @@ -159,6 +159,25 @@ }, "protocol": "rest", "resources": { + "message": { + "methods": { + "stream": { + "description": "SendStreamingMessage is a streaming call that will return a stream of task update events until the Task is in an interrupted or terminal state.", + "flatPath": "v1/message:stream", + "httpMethod": "POST", + "id": "workspaceevents.message.stream", + "parameterOrder": [], + "parameters": {}, + "path": "v1/message:stream", + "request": { + "$ref": "SendMessageRequest" + }, + "response": { + "$ref": "StreamResponse" + } + } + } + }, "operations": { "methods": { "get": { @@ -490,170 +509,1156 @@ ] } } + }, + "tasks": { + "methods": { + "cancel": { + "description": "Cancel a task from the agent. If supported one should expect no more task updates for the task.", + "flatPath": "v1/tasks/{tasksId}:cancel", + "httpMethod": "POST", + "id": "workspaceevents.tasks.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the task to cancel. Format: tasks/{task_id}", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "request": { + "$ref": "CancelTaskRequest" + }, + "response": { + "$ref": "Task" + } + }, + "get": { + "description": "Get the current state of a task from the agent.", + "flatPath": "v1/tasks/{tasksId}", + "httpMethod": "GET", + "id": "workspaceevents.tasks.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "historyLength": { + "description": "The number of most recent messages from the task's history to retrieve.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "name": { + "description": "Required. The resource name of the task. Format: tasks/{task_id}", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Task" + } + }, + "subscribe": { + "description": "TaskSubscription is a streaming call that will return a stream of task update events. This attaches the stream to an existing in process task. If the task is complete the stream will return the completed task (like GetTask) and close the stream.", + "flatPath": "v1/tasks/{tasksId}:subscribe", + "httpMethod": "GET", + "id": "workspaceevents.tasks.subscribe", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the task to subscribe to. Format: tasks/{task_id}", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:subscribe", + "response": { + "$ref": "StreamResponse" + } + } + }, + "resources": { + "pushNotificationConfigs": { + "methods": { + "create": { + "description": "Set a push notification config for a task.", + "flatPath": "v1/tasks/{tasksId}/pushNotificationConfigs", + "httpMethod": "POST", + "id": "workspaceevents.tasks.pushNotificationConfigs.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "configId": { + "description": "Required. The ID for the new config.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent task resource for this config. Format: tasks/{task_id}", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}", + "request": { + "$ref": "TaskPushNotificationConfig" + }, + "response": { + "$ref": "TaskPushNotificationConfig" + } + }, + "delete": { + "description": "Delete a push notification config for a task.", + "flatPath": "v1/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", + "httpMethod": "DELETE", + "id": "workspaceevents.tasks.pushNotificationConfigs.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the config to delete. Format: tasks/{task_id}/pushNotificationConfigs/{config_id}", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + } + }, + "get": { + "description": "Get a push notification config for a task.", + "flatPath": "v1/tasks/{tasksId}/pushNotificationConfigs/{pushNotificationConfigsId}", + "httpMethod": "GET", + "id": "workspaceevents.tasks.pushNotificationConfigs.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the config to retrieve. Format: tasks/{task_id}/pushNotificationConfigs/{config_id}", + "location": "path", + "pattern": "^tasks/[^/]+/pushNotificationConfigs/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "TaskPushNotificationConfig" + } + }, + "list": { + "description": "Get a list of push notifications configured for a task.", + "flatPath": "v1/tasks/{tasksId}/pushNotificationConfigs", + "httpMethod": "GET", + "id": "workspaceevents.tasks.pushNotificationConfigs.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "For AIP-158 these fields are present. Usually not used/needed. The maximum number of configurations to return. If unspecified, all configs will be returned.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token received from a previous ListTaskPushNotificationConfigRequest call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTaskPushNotificationConfigRequest` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The parent task resource. Format: tasks/{task_id}", + "location": "path", + "pattern": "^tasks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/pushNotificationConfigs", + "response": { + "$ref": "ListTaskPushNotificationConfigResponse" + } + } + } + } + } + }, + "v1": { + "methods": { + "getCard": { + "description": "GetAgentCard returns the agent card for the agent.", + "flatPath": "v1/card", + "httpMethod": "GET", + "id": "workspaceevents.getCard", + "parameterOrder": [], + "parameters": {}, + "path": "v1/card", + "response": { + "$ref": "AgentCard" + } + } + } } }, - "revision": "20250930", + "revision": "20251102", "rootUrl": "https://workspaceevents.googleapis.com/", "schemas": { - "ListSubscriptionsResponse": { - "description": "The response message for SubscriptionsService.ListSubscriptions.", - "id": "ListSubscriptionsResponse", + "APIKeySecurityScheme": { + "id": "APIKeySecurityScheme", "properties": { - "nextPageToken": { - "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "description": { + "description": "Description of this security scheme.", "type": "string" }, - "subscriptions": { - "description": "List of subscriptions.", - "items": { - "$ref": "Subscription" - }, - "type": "array" + "location": { + "description": "Location of the API key, valid values are \"query\", \"header\", or \"cookie\"", + "type": "string" + }, + "name": { + "description": "Name of the header, query or cookie parameter to be used.", + "type": "string" } }, "type": "object" }, - "NotificationEndpoint": { - "description": "The endpoint where the subscription delivers events.", - "id": "NotificationEndpoint", + "AgentCapabilities": { + "description": "Defines the A2A feature set supported by the agent", + "id": "AgentCapabilities", "properties": { - "pubsubTopic": { - "description": "Immutable. The Pub/Sub topic that receives events for the subscription. Format: `projects/{project}/topics/{topic}` You must create the topic in the same Google Cloud project where you create this subscription. Note: The Google Workspace Events API uses [ordering keys](https://cloud.google.com/pubsub/docs/ordering) for the benefit of sequential events. If the Cloud Pub/Sub topic has a [message storage policy](https://cloud.google.com/pubsub/docs/resource-location-restriction#exceptions) configured to exclude the nearest Google Cloud region, publishing events with ordering keys will fail. When the topic receives events, the events are encoded as Pub/Sub messages. For details, see the [Google Cloud Pub/Sub Protocol Binding for CloudEvents](https://github.com/googleapis/google-cloudevents/blob/main/docs/spec/pubsub.md).", - "type": "string" + "extensions": { + "description": "Extensions supported by this agent.", + "items": { + "$ref": "AgentExtension" + }, + "type": "array" + }, + "pushNotifications": { + "description": "If the agent can send push notifications to the clients webhook", + "type": "boolean" + }, + "streaming": { + "description": "If the agent will support streaming responses", + "type": "boolean" } }, "type": "object" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", - "id": "Operation", + "AgentCard": { + "description": "AgentCard conveys key information: - Overall details (version, name, description, uses) - Skills; a set of actions/solutions the agent can perform - Default modalities/content types supported by the agent. - Authentication requirements Next ID: 19", + "id": "AgentCard", "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" + "additionalInterfaces": { + "description": "Announcement of additional supported transports. Client can use any of the supported transports.", + "items": { + "$ref": "AgentInterface" + }, + "type": "array" }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "capabilities": { + "$ref": "AgentCapabilities", + "description": "A2A Capability set supported by the agent." }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "defaultInputModes": { + "description": "protolint:enable REPEATED_FIELD_NAMES_PLURALIZED The set of interaction modes that the agent supports across all skills. This can be overridden per skill. Defined as mime types.", + "items": { + "type": "string" }, - "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" + "type": "array" + }, + "defaultOutputModes": { + "description": "The mime types supported as outputs from this agent.", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "A description of the agent's domain of action/solution space. Example: \"Agent that helps users with recipes and cooking.\"", + "type": "string" + }, + "documentationUrl": { + "description": "A url to provide additional documentation about the agent.", + "type": "string" + }, + "iconUrl": { + "description": "An optional URL to an icon for the agent.", + "type": "string" }, "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}`.", + "description": "A human readable name for the agent. Example: \"Recipe Agent\"", "type": "string" }, - "response": { + "preferredTransport": { + "description": "The transport of the preferred endpoint. If empty, defaults to JSONRPC.", + "type": "string" + }, + "protocolVersion": { + "description": "The version of the A2A protocol this agent supports.", + "type": "string" + }, + "provider": { + "$ref": "AgentProvider", + "description": "The service provider of the agent." + }, + "security": { + "description": "protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Security requirements for contacting the agent. This list can be seen as an OR of ANDs. Each object in the list describes one possible set of security requirements that must be present on a request. This allows specifying, for example, \"callers must either use OAuth OR an API Key AND mTLS.\" Example: security { schemes { key: \"oauth\" value { list: [\"read\"] } } } security { schemes { key: \"api-key\" } schemes { key: \"mtls\" } }", + "items": { + "$ref": "Security" + }, + "type": "array" + }, + "securitySchemes": { "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "$ref": "SecurityScheme" }, - "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`.", + "description": "The security scheme details used for authenticating with this agent.", "type": "object" + }, + "signatures": { + "description": "JSON Web Signatures computed for this AgentCard.", + "items": { + "$ref": "AgentCardSignature" + }, + "type": "array" + }, + "skills": { + "description": "Skills represent a unit of ability an agent can perform. This may somewhat abstract but represents a more focused set of actions that the agent is highly likely to succeed at.", + "items": { + "$ref": "AgentSkill" + }, + "type": "array" + }, + "supportsAuthenticatedExtendedCard": { + "description": "Whether the agent supports providing an extended agent card when the user is authenticated, i.e. is the card from .well-known different than the card from GetAgentCard.", + "type": "boolean" + }, + "url": { + "description": "A URL to the address the agent is hosted at. This represents the preferred endpoint as declared by the agent.", + "type": "string" + }, + "version": { + "description": "The version of the agent. Example: \"1.0.0\"", + "type": "string" } }, "type": "object" }, - "PayloadOptions": { - "description": "Options about what data to include in the event payload. Only supported for Google Chat and Google Drive events.", - "id": "PayloadOptions", + "AgentCardSignature": { + "description": "AgentCardSignature represents a JWS signature of an AgentCard. This follows the JSON format of an RFC 7515 JSON Web Signature (JWS).", + "id": "AgentCardSignature", "properties": { - "fieldMask": { - "description": "Optional. If `include_resource` is set to `true`, the list of fields to include in the event payload. Separate fields with a comma. For example, to include a Google Chat message's sender and create time, enter `message.sender,message.createTime`. If omitted, the payload includes all fields for the resource. If you specify a field that doesn't exist for the resource, the system ignores the field.", - "format": "google-fieldmask", + "header": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The unprotected JWS header values.", + "type": "object" + }, + "protected": { + "description": "Required. The protected JWS header for the signature. This is always a base64url-encoded JSON object. Required.", "type": "string" }, - "includeResource": { - "description": "Optional. Whether the event payload includes data about the resource that changed. For example, for an event where a Google Chat message was created, whether the payload contains data about the [`Message`](https://developers.google.com/chat/api/reference/rest/v1/spaces.messages) resource. If false, the event payload only includes the name of the changed resource.", - "type": "boolean" + "signature": { + "description": "Required. The computed signature, base64url-encoded. Required.", + "type": "string" } }, "type": "object" }, - "ReactivateSubscriptionRequest": { - "description": "The request message for SubscriptionsService.ReactivateSubscription.", - "id": "ReactivateSubscriptionRequest", - "properties": {}, - "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", + "AgentExtension": { + "description": "A declaration of an extension supported by an Agent.", + "id": "AgentExtension", "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "description": { + "description": "A description of how this agent uses this extension. Example: \"Google OAuth 2.0 authentication\"", + "type": "string" }, - "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" + "params": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "type": "array" + "description": "Optional configuration for the extension.", + "type": "object" }, - "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.", + "required": { + "description": "Whether the client must follow specific requirements of the extension. Example: false", + "type": "boolean" + }, + "uri": { + "description": "The URI of the extension. Example: \"https://developers.google.com/identity/protocols/oauth2\"", "type": "string" } }, "type": "object" }, - "Subscription": { - "description": "A subscription to receive events about a Google Workspace resource. To learn more about subscriptions, see the [Google Workspace Events API overview](https://developers.google.com/workspace/events).", - "id": "Subscription", + "AgentInterface": { + "description": "Defines additional transport information for the agent.", + "id": "AgentInterface", "properties": { - "authority": { - "description": "Output only. The user who authorized the creation of the subscription. When a user authorizes the subscription, this field and the `user_authority` field have the same value and the format is: Format: `users/{user}` For Google Workspace users, the `{user}` value is the [`user.id`](https://developers.google.com/admin-sdk/directory/reference/rest/v1/users#User.FIELDS.ids) field from the Directory API. When a Chat app authorizes the subscription, only `service_account_authority` field populates and this field is empty.", - "readOnly": true, + "transport": { + "description": "The transport supported this url. This is an open form string, to be easily extended for many transport protocols. The core ones officially supported are JSONRPC, GRPC and HTTP+JSON.", "type": "string" }, - "createTime": { - "description": "Output only. The time when the subscription is created.", - "format": "google-datetime", - "readOnly": true, + "url": { + "description": "The url this interface is found at.", + "type": "string" + } + }, + "type": "object" + }, + "AgentProvider": { + "description": "Represents information about the service provider of an agent.", + "id": "AgentProvider", + "properties": { + "organization": { + "description": "The providers organization name Example: \"Google\"", "type": "string" }, - "etag": { - "description": "Optional. This checksum is computed by the server based on the value of other fields, and might be sent on update requests to ensure the client has an up-to-date value before proceeding.", + "url": { + "description": "The providers reference url Example: \"https://ai.google.dev\"", + "type": "string" + } + }, + "type": "object" + }, + "AgentSkill": { + "description": "AgentSkill represents a unit of action/solution that the agent can perform. One can think of this as a type of highly reliable solution that an agent can be tasked to provide. Agents have the autonomy to choose how and when to use specific skills, but clients should have confidence that if the skill is defined that unit of action can be reliably performed.", + "id": "AgentSkill", + "properties": { + "description": { + "description": "A human (or llm) readable description of the skill details and behaviors.", "type": "string" }, - "eventTypes": { - "description": "Required. Unordered list. Input for creating a subscription. Otherwise, output only. One or more types of events to receive about the target resource. Formatted according to the CloudEvents specification. The supported event types depend on the target resource of your subscription. For details, see [Supported Google Workspace events](https://developers.google.com/workspace/events/guides#supported-events). By default, you also receive events about the [lifecycle of your subscription](https://developers.google.com/workspace/events/guides/events-lifecycle). You don't need to specify lifecycle events for this field. If you specify an event type that doesn't exist for the target resource, the request returns an HTTP `400 Bad Request` status code.", + "examples": { + "description": "A set of example queries that this skill is designed to address. These examples should help the caller to understand how to craft requests to the agent to achieve specific goals. Example: [\"I need a recipe for bread\"]", "items": { "type": "string" }, "type": "array" }, - "expireTime": { - "description": "Non-empty default. The timestamp in UTC when the subscription expires. Always displayed on output, regardless of what was used on input.", - "format": "google-datetime", + "id": { + "description": "Unique identifier of the skill within this agent.", "type": "string" }, + "inputModes": { + "description": "Possible input modalities supported.", + "items": { + "type": "string" + }, + "type": "array" + }, "name": { - "description": "Identifier. Resource name of the subscription. Format: `subscriptions/{subscription}`", + "description": "A human readable name for the skill.", "type": "string" }, - "notificationEndpoint": { - "$ref": "NotificationEndpoint", - "description": "Required. Immutable. The endpoint where the subscription delivers events, such as a Pub/Sub topic." + "outputModes": { + "description": "Possible output modalities produced", + "items": { + "type": "string" + }, + "type": "array" }, - "payloadOptions": { - "$ref": "PayloadOptions", - "description": "Optional. Options about what data to include in the event payload. Only supported for Google Chat and Google Drive events." + "security": { + "description": "protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Security schemes necessary for the agent to leverage this skill. As in the overall AgentCard.security, this list represents a logical OR of security requirement objects. Each object is a set of security schemes that must be used together (a logical AND). protolint:enable REPEATED_FIELD_NAMES_PLURALIZED", + "items": { + "$ref": "Security" + }, + "type": "array" }, - "reconciling": { - "description": "Output only. If `true`, the subscription is in the process of being updated.", - "readOnly": true, + "tags": { + "description": "A set of tags for the skill to enhance categorization/utilization. Example: [\"cooking\", \"customer support\", \"billing\"]", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Artifact": { + "description": "Artifacts are the container for task completed results. These are similar to Messages but are intended to be the product of a task, as opposed to point-to-point communication.", + "id": "Artifact", + "properties": { + "artifactId": { + "description": "Unique identifier (e.g. UUID) for the artifact. It must be at least unique within a task.", + "type": "string" + }, + "description": { + "description": "A human readable description of the artifact, optional.", + "type": "string" + }, + "extensions": { + "description": "The URIs of extensions that are present or contributed to this Artifact.", + "items": { + "type": "string" + }, + "type": "array" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional metadata included with the artifact.", + "type": "object" + }, + "name": { + "description": "A human readable name for the artifact.", + "type": "string" + }, + "parts": { + "description": "The content of the artifact.", + "items": { + "$ref": "Part" + }, + "type": "array" + } + }, + "type": "object" + }, + "AuthenticationInfo": { + "description": "Defines authentication details, used for push notifications.", + "id": "AuthenticationInfo", + "properties": { + "credentials": { + "description": "Optional credentials", + "type": "string" + }, + "schemes": { + "description": "Supported authentication schemes - e.g. Basic, Bearer, etc", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AuthorizationCodeOAuthFlow": { + "id": "AuthorizationCodeOAuthFlow", + "properties": { + "authorizationUrl": { + "description": "The authorization URL to be used for this flow. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS", + "type": "string" + }, + "refreshUrl": { + "description": "The URL to be used for obtaining refresh tokens. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS.", + "type": "string" + }, + "scopes": { + "additionalProperties": { + "type": "string" + }, + "description": "The available scopes for the OAuth2 security scheme. A map between the scope name and a short description for it. The map MAY be empty.", + "type": "object" + }, + "tokenUrl": { + "description": "The token URL to be used for this flow. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS.", + "type": "string" + } + }, + "type": "object" + }, + "CancelTaskRequest": { + "id": "CancelTaskRequest", + "properties": {}, + "type": "object" + }, + "ClientCredentialsOAuthFlow": { + "id": "ClientCredentialsOAuthFlow", + "properties": { + "refreshUrl": { + "description": "The URL to be used for obtaining refresh tokens. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS.", + "type": "string" + }, + "scopes": { + "additionalProperties": { + "type": "string" + }, + "description": "The available scopes for the OAuth2 security scheme. A map between the scope name and a short description for it. The map MAY be empty.", + "type": "object" + }, + "tokenUrl": { + "description": "The token URL to be used for this flow. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS.", + "type": "string" + } + }, + "type": "object" + }, + "DataPart": { + "description": "DataPart represents a structured blob. This is most commonly a JSON payload.", + "id": "DataPart", + "properties": { + "data": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + } + }, + "type": "object" + }, + "Empty": { + "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "FilePart": { + "description": "FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source.", + "id": "FilePart", + "properties": { + "fileWithBytes": { + "format": "byte", + "type": "string" + }, + "fileWithUri": { + "type": "string" + }, + "mimeType": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "type": "object" + }, + "HTTPAuthSecurityScheme": { + "id": "HTTPAuthSecurityScheme", + "properties": { + "bearerFormat": { + "description": "A hint to the client to identify how the bearer token is formatted. Bearer tokens are usually generated by an authorization server, so this information is primarily for documentation purposes.", + "type": "string" + }, + "description": { + "description": "Description of this security scheme.", + "type": "string" + }, + "scheme": { + "description": "The name of the HTTP Authentication scheme to be used in the Authorization header as defined in RFC7235. The values used SHOULD be registered in the IANA Authentication Scheme registry. The value is case-insensitive, as defined in RFC7235.", + "type": "string" + } + }, + "type": "object" + }, + "ImplicitOAuthFlow": { + "id": "ImplicitOAuthFlow", + "properties": { + "authorizationUrl": { + "description": "The authorization URL to be used for this flow. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS", + "type": "string" + }, + "refreshUrl": { + "description": "The URL to be used for obtaining refresh tokens. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS.", + "type": "string" + }, + "scopes": { + "additionalProperties": { + "type": "string" + }, + "description": "The available scopes for the OAuth2 security scheme. A map between the scope name and a short description for it. The map MAY be empty.", + "type": "object" + } + }, + "type": "object" + }, + "ListSubscriptionsResponse": { + "description": "The response message for SubscriptionsService.ListSubscriptions.", + "id": "ListSubscriptionsResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "subscriptions": { + "description": "List of subscriptions.", + "items": { + "$ref": "Subscription" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListTaskPushNotificationConfigResponse": { + "id": "ListTaskPushNotificationConfigResponse", + "properties": { + "configs": { + "description": "The list of push notification configurations.", + "items": { + "$ref": "TaskPushNotificationConfig" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + } + }, + "type": "object" + }, + "Message": { + "description": "Message is one unit of communication between client and server. It is associated with a context and optionally a task. Since the server is responsible for the context definition, it must always provide a context_id in its messages. The client can optionally provide the context_id if it knows the context to associate the message to. Similarly for task_id, except the server decides if a task is created and whether to include the task_id.", + "id": "Message", + "properties": { + "content": { + "description": "protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content is the container of the message content.", + "items": { + "$ref": "Part" + }, + "type": "array" + }, + "contextId": { + "description": "The context id of the message. This is optional and if set, the message will be associated with the given context.", + "type": "string" + }, + "extensions": { + "description": "The URIs of extensions that are present or contributed to this Message.", + "items": { + "type": "string" + }, + "type": "array" + }, + "messageId": { + "description": "The unique identifier (e.g. UUID)of the message. This is required and created by the message creator.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Any optional metadata to provide along with the message.", + "type": "object" + }, + "role": { + "description": "A role for the message.", + "enum": [ + "ROLE_UNSPECIFIED", + "ROLE_USER", + "ROLE_AGENT" + ], + "enumDescriptions": [ + "", + "USER role refers to communication from the client to the server.", + "AGENT role refers to communication from the server to the client." + ], + "type": "string" + }, + "taskId": { + "description": "The task id of the message. This is optional and if set, the message will be associated with the given task.", + "type": "string" + } + }, + "type": "object" + }, + "MutualTlsSecurityScheme": { + "id": "MutualTlsSecurityScheme", + "properties": { + "description": { + "description": "Description of this security scheme.", + "type": "string" + } + }, + "type": "object" + }, + "NotificationEndpoint": { + "description": "The endpoint where the subscription delivers events.", + "id": "NotificationEndpoint", + "properties": { + "pubsubTopic": { + "description": "Immutable. The Pub/Sub topic that receives events for the subscription. Format: `projects/{project}/topics/{topic}` You must create the topic in the same Google Cloud project where you create this subscription. Note: The Google Workspace Events API uses [ordering keys](https://cloud.google.com/pubsub/docs/ordering) for the benefit of sequential events. If the Cloud Pub/Sub topic has a [message storage policy](https://cloud.google.com/pubsub/docs/resource-location-restriction#exceptions) configured to exclude the nearest Google Cloud region, publishing events with ordering keys will fail. When the topic receives events, the events are encoded as Pub/Sub messages. For details, see the [Google Cloud Pub/Sub Protocol Binding for CloudEvents](https://github.com/googleapis/google-cloudevents/blob/main/docs/spec/pubsub.md).", + "type": "string" + } + }, + "type": "object" + }, + "OAuth2SecurityScheme": { + "id": "OAuth2SecurityScheme", + "properties": { + "description": { + "description": "Description of this security scheme.", + "type": "string" + }, + "flows": { + "$ref": "OAuthFlows", + "description": "An object containing configuration information for the flow types supported" + }, + "oauth2MetadataUrl": { + "description": "URL to the oauth2 authorization server metadata [RFC8414](https://datatracker.ietf.org/doc/html/rfc8414). TLS is required.", + "type": "string" + } + }, + "type": "object" + }, + "OAuthFlows": { + "id": "OAuthFlows", + "properties": { + "authorizationCode": { + "$ref": "AuthorizationCodeOAuthFlow" + }, + "clientCredentials": { + "$ref": "ClientCredentialsOAuthFlow" + }, + "implicit": { + "$ref": "ImplicitOAuthFlow" + }, + "password": { + "$ref": "PasswordOAuthFlow" + } + }, + "type": "object" + }, + "OpenIdConnectSecurityScheme": { + "id": "OpenIdConnectSecurityScheme", + "properties": { + "description": { + "description": "Description of this security scheme.", + "type": "string" + }, + "openIdConnectUrl": { + "description": "Well-known URL to discover the [[OpenID-Connect-Discovery]] provider metadata.", + "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" + }, + "Part": { + "description": "Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON).", + "id": "Part", + "properties": { + "data": { + "$ref": "DataPart" + }, + "file": { + "$ref": "FilePart" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional metadata associated with this part.", + "type": "object" + }, + "text": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordOAuthFlow": { + "id": "PasswordOAuthFlow", + "properties": { + "refreshUrl": { + "description": "The URL to be used for obtaining refresh tokens. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS.", + "type": "string" + }, + "scopes": { + "additionalProperties": { + "type": "string" + }, + "description": "The available scopes for the OAuth2 security scheme. A map between the scope name and a short description for it. The map MAY be empty.", + "type": "object" + }, + "tokenUrl": { + "description": "The token URL to be used for this flow. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS.", + "type": "string" + } + }, + "type": "object" + }, + "PayloadOptions": { + "description": "Options about what data to include in the event payload. Only supported for Google Chat and Google Drive events.", + "id": "PayloadOptions", + "properties": { + "fieldMask": { + "description": "Optional. If `include_resource` is set to `true`, the list of fields to include in the event payload. Separate fields with a comma. For example, to include a Google Chat message's sender and create time, enter `message.sender,message.createTime`. If omitted, the payload includes all fields for the resource. If you specify a field that doesn't exist for the resource, the system ignores the field.", + "format": "google-fieldmask", + "type": "string" + }, + "includeResource": { + "description": "Optional. Whether the event payload includes data about the resource that changed. For example, for an event where a Google Chat message was created, whether the payload contains data about the [`Message`](https://developers.google.com/chat/api/reference/rest/v1/spaces.messages) resource. If false, the event payload only includes the name of the changed resource.", + "type": "boolean" + } + }, + "type": "object" + }, + "PushNotificationConfig": { + "description": "Configuration for setting up push notifications for task updates.", + "id": "PushNotificationConfig", + "properties": { + "authentication": { + "$ref": "AuthenticationInfo", + "description": "Information about the authentication to sent with the notification" + }, + "id": { + "description": "A unique identifier (e.g. UUID) for this push notification.", + "type": "string" + }, + "token": { + "description": "Token unique for this task/session", + "type": "string" + }, + "url": { + "description": "Url to send the notification too", + "type": "string" + } + }, + "type": "object" + }, + "ReactivateSubscriptionRequest": { + "description": "The request message for SubscriptionsService.ReactivateSubscription.", + "id": "ReactivateSubscriptionRequest", + "properties": {}, + "type": "object" + }, + "Security": { + "id": "Security", + "properties": { + "schemes": { + "additionalProperties": { + "$ref": "StringList" + }, + "type": "object" + } + }, + "type": "object" + }, + "SecurityScheme": { + "id": "SecurityScheme", + "properties": { + "apiKeySecurityScheme": { + "$ref": "APIKeySecurityScheme" + }, + "httpAuthSecurityScheme": { + "$ref": "HTTPAuthSecurityScheme" + }, + "mtlsSecurityScheme": { + "$ref": "MutualTlsSecurityScheme" + }, + "oauth2SecurityScheme": { + "$ref": "OAuth2SecurityScheme" + }, + "openIdConnectSecurityScheme": { + "$ref": "OpenIdConnectSecurityScheme" + } + }, + "type": "object" + }, + "SendMessageConfiguration": { + "description": "Configuration of a send message request.", + "id": "SendMessageConfiguration", + "properties": { + "acceptedOutputModes": { + "description": "The output modes that the agent is expected to respond with.", + "items": { + "type": "string" + }, + "type": "array" + }, + "blocking": { + "description": "If true, the message will be blocking until the task is completed. If false, the message will be non-blocking and the task will be returned immediately. It is the caller's responsibility to check for any task updates.", + "type": "boolean" + }, + "historyLength": { + "description": "The maximum number of messages to include in the history. if 0, the history will be unlimited.", + "format": "int32", + "type": "integer" + }, + "pushNotification": { + "$ref": "PushNotificationConfig", + "description": "A configuration of a webhook that can be used to receive updates" + } + }, + "type": "object" + }, + "SendMessageRequest": { + "description": "/////////// Request Messages ///////////", + "id": "SendMessageRequest", + "properties": { + "configuration": { + "$ref": "SendMessageConfiguration", + "description": "Configuration for the send request." + }, + "message": { + "$ref": "Message", + "description": "Required. The message to send to the agent." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional metadata for the request.", + "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" + }, + "StreamResponse": { + "description": "The stream response for a message. The stream should be one of the following sequences: If the response is a message, the stream should contain one, and only one, message and then close If the response is a task lifecycle, the first response should be a Task object followed by zero or more TaskStatusUpdateEvents and TaskArtifactUpdateEvents. The stream should complete when the Task if in an interrupted or terminal state. A stream that ends before these conditions are met are", + "id": "StreamResponse", + "properties": { + "artifactUpdate": { + "$ref": "TaskArtifactUpdateEvent" + }, + "message": { + "$ref": "Message" + }, + "statusUpdate": { + "$ref": "TaskStatusUpdateEvent" + }, + "task": { + "$ref": "Task" + } + }, + "type": "object" + }, + "StringList": { + "description": "protolint:disable REPEATED_FIELD_NAMES_PLURALIZED", + "id": "StringList", + "properties": { + "list": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Subscription": { + "description": "A subscription to receive events about a Google Workspace resource. To learn more about subscriptions, see the [Google Workspace Events API overview](https://developers.google.com/workspace/events).", + "id": "Subscription", + "properties": { + "authority": { + "description": "Output only. The user who authorized the creation of the subscription. When a user authorizes the subscription, this field and the `user_authority` field have the same value and the format is: Format: `users/{user}` For Google Workspace users, the `{user}` value is the [`user.id`](https://developers.google.com/admin-sdk/directory/reference/rest/v1/users#User.FIELDS.ids) field from the Directory API. When a Chat app authorizes the subscription, only `service_account_authority` field populates and this field is empty.", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. The time when the subscription is created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "etag": { + "description": "Optional. This checksum is computed by the server based on the value of other fields, and might be sent on update requests to ensure the client has an up-to-date value before proceeding.", + "type": "string" + }, + "eventTypes": { + "description": "Required. Unordered list. Input for creating a subscription. Otherwise, output only. One or more types of events to receive about the target resource. Formatted according to the CloudEvents specification. The supported event types depend on the target resource of your subscription. For details, see [Supported Google Workspace events](https://developers.google.com/workspace/events/guides#supported-events). By default, you also receive events about the [lifecycle of your subscription](https://developers.google.com/workspace/events/guides/events-lifecycle). You don't need to specify lifecycle events for this field. If you specify an event type that doesn't exist for the target resource, the request returns an HTTP `400 Bad Request` status code.", + "items": { + "type": "string" + }, + "type": "array" + }, + "expireTime": { + "description": "Non-empty default. The timestamp in UTC when the subscription expires. Always displayed on output, regardless of what was used on input.", + "format": "google-datetime", + "type": "string" + }, + "name": { + "description": "Identifier. Resource name of the subscription. Format: `subscriptions/{subscription}`", + "type": "string" + }, + "notificationEndpoint": { + "$ref": "NotificationEndpoint", + "description": "Required. Immutable. The endpoint where the subscription delivers events, such as a Pub/Sub topic." + }, + "payloadOptions": { + "$ref": "PayloadOptions", + "description": "Optional. Options about what data to include in the event payload. Only supported for Google Chat and Google Drive events." + }, + "reconciling": { + "description": "Output only. If `true`, the subscription is in the process of being updated.", + "readOnly": true, "type": "boolean" }, "state": { @@ -720,6 +1725,169 @@ } }, "type": "object" + }, + "Task": { + "description": "Task is the core unit of action for A2A. It has a current status and when results are created for the task they are stored in the artifact. If there are multiple turns for a task, these are stored in history.", + "id": "Task", + "properties": { + "artifacts": { + "description": "A set of output artifacts for a Task.", + "items": { + "$ref": "Artifact" + }, + "type": "array" + }, + "contextId": { + "description": "Unique identifier (e.g. UUID) for the contextual collection of interactions (tasks and messages). Created by the A2A server.", + "type": "string" + }, + "history": { + "description": "protolint:disable REPEATED_FIELD_NAMES_PLURALIZED The history of interactions from a task.", + "items": { + "$ref": "Message" + }, + "type": "array" + }, + "id": { + "description": "Unique identifier (e.g. UUID) for the task, generated by the server for a new task.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "protolint:enable REPEATED_FIELD_NAMES_PLURALIZED A key/value object to store custom metadata about a task.", + "type": "object" + }, + "status": { + "$ref": "TaskStatus", + "description": "The current status of a Task, including state and a message." + } + }, + "type": "object" + }, + "TaskArtifactUpdateEvent": { + "description": "TaskArtifactUpdateEvent represents a task delta where an artifact has been generated.", + "id": "TaskArtifactUpdateEvent", + "properties": { + "append": { + "description": "Whether this should be appended to a prior one produced", + "type": "boolean" + }, + "artifact": { + "$ref": "Artifact", + "description": "The artifact itself" + }, + "contextId": { + "description": "The id of the context that this task belongs too", + "type": "string" + }, + "lastChunk": { + "description": "Whether this represents the last part of an artifact", + "type": "boolean" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional metadata associated with the artifact update.", + "type": "object" + }, + "taskId": { + "description": "The id of the task for this artifact", + "type": "string" + } + }, + "type": "object" + }, + "TaskPushNotificationConfig": { + "id": "TaskPushNotificationConfig", + "properties": { + "name": { + "description": "The resource name of the config. Format: tasks/{task_id}/pushNotificationConfigs/{config_id}", + "type": "string" + }, + "pushNotificationConfig": { + "$ref": "PushNotificationConfig", + "description": "The push notification configuration details." + } + }, + "type": "object" + }, + "TaskStatus": { + "description": "A container for the status of a task", + "id": "TaskStatus", + "properties": { + "message": { + "$ref": "Message", + "description": "A message associated with the status." + }, + "state": { + "description": "The current state of this task", + "enum": [ + "TASK_STATE_UNSPECIFIED", + "TASK_STATE_SUBMITTED", + "TASK_STATE_WORKING", + "TASK_STATE_COMPLETED", + "TASK_STATE_FAILED", + "TASK_STATE_CANCELLED", + "TASK_STATE_INPUT_REQUIRED", + "TASK_STATE_REJECTED", + "TASK_STATE_AUTH_REQUIRED" + ], + "enumDescriptions": [ + "", + "Represents the status that acknowledges a task is created", + "Represents the status that a task is actively being processed", + "Represents the status a task is finished. This is a terminal state", + "Represents the status a task is done but failed. This is a terminal state", + "Represents the status a task was cancelled before it finished. This is a terminal state.", + "Represents the status that the task requires information to complete. This is an interrupted state.", + "Represents the status that the agent has decided to not perform the task. This may be done during initial task creation or later once an agent has determined it can't or won't proceed. This is a terminal state.", + "Represents the state that some authentication is needed from the upstream client. Authentication is expected to come out-of-band thus this is not an interrupted or terminal state." + ], + "type": "string" + }, + "timestamp": { + "description": "Timestamp when the status was recorded. Example: \"2023-10-27T10:00:00Z\"", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "TaskStatusUpdateEvent": { + "description": "TaskStatusUpdateEvent is a delta even on a task indicating that a task has changed.", + "id": "TaskStatusUpdateEvent", + "properties": { + "contextId": { + "description": "The id of the context that the task belongs to", + "type": "string" + }, + "final": { + "description": "Whether this is the last status update expected for this task.", + "type": "boolean" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional metadata to associate with the task update.", + "type": "object" + }, + "status": { + "$ref": "TaskStatus", + "description": "The new status of the task." + }, + "taskId": { + "description": "The id of the task that is changed", + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/src/apis/appengine/v1.ts b/src/apis/appengine/v1.ts index c8f8626ce7c..f1af3222fb5 100644 --- a/src/apis/appengine/v1.ts +++ b/src/apis/appengine/v1.ts @@ -244,7 +244,7 @@ export namespace appengine_v1 { */ domainMappingsCount?: number | null; /** - * Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly + * Output only. Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly */ domainNames?: string[] | null; /** @@ -252,7 +252,7 @@ export namespace appengine_v1 { */ expireTime?: string | null; /** - * Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly + * Output only. Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly */ id?: string | null; /** @@ -260,11 +260,11 @@ export namespace appengine_v1 { */ managedCertificate?: Schema$ManagedCertificate; /** - * Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly + * Output only. Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly */ name?: string | null; /** - * The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly + * Output only. The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly */ visibleDomainMappings?: string[] | null; } @@ -535,11 +535,11 @@ export namespace appengine_v1 { */ id?: string | null; /** - * Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly + * Output only. Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly */ name?: string | null; /** - * The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly + * Output only. The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly */ resourceRecords?: Schema$ResourceRecord[]; /** @@ -1518,7 +1518,7 @@ export namespace appengine_v1 { */ certificateId?: string | null; /** - * ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly + * Output only. ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly */ pendingManagedCertificateId?: string | null; /** @@ -5777,7 +5777,7 @@ export namespace appengine_v1 { * const res = await appengine.apps.locations.list({ * // Part of `name`. The resource that owns the locations collection, if applicable. * appsId: 'placeholder-value', - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like "displayName=tokyo", and is documented in more detail in AIP-160 (https://google.aip.dev/160). * filter: 'placeholder-value', @@ -5911,7 +5911,7 @@ export namespace appengine_v1 { */ appsId?: string; /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -10520,6 +10520,162 @@ export namespace appengine_v1 { } } + /** + * Lists the domain mappings on an application. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/appengine.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 appengine = google.appengine('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/appengine.admin', + * '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 appengine.projects.locations.applications.domainMappings.list({ + * // Part of `parent`. See documentation of `projectsId`. + * applicationsId: 'placeholder-value', + * // Part of `parent`. See documentation of `projectsId`. + * locationsId: 'placeholder-value', + * // Maximum results to return per page. + * pageSize: 'placeholder-value', + * // Continuation token for fetching the next page of results. + * pageToken: 'placeholder-value', + * // Part of `parent`. Required. Name of the parent Application resource. Example: apps/myapp. + * projectsId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "domainMappings": [], + * // "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$Applications$Domainmappings$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Applications$Domainmappings$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Applications$Domainmappings$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Applications$Domainmappings$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Applications$Domainmappings$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Applications$Domainmappings$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Applications$Domainmappings$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Applications$Domainmappings$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://appengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/domainMappings' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['projectsId', 'locationsId', 'applicationsId'], + pathParams: ['applicationsId', 'locationsId', 'projectsId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource. * @example @@ -10755,6 +10911,29 @@ export namespace appengine_v1 { */ projectsId?: string; } + export interface Params$Resource$Projects$Locations$Applications$Domainmappings$List + extends StandardParameters { + /** + * Part of `parent`. See documentation of `projectsId`. + */ + applicationsId?: string; + /** + * Part of `parent`. See documentation of `projectsId`. + */ + locationsId?: string; + /** + * Maximum results to return per page. + */ + pageSize?: number; + /** + * Continuation token for fetching the next page of results. + */ + pageToken?: string; + /** + * Part of `parent`. Required. Name of the parent Application resource. Example: apps/myapp. + */ + projectsId?: string; + } export interface Params$Resource$Projects$Locations$Applications$Domainmappings$Patch extends StandardParameters { /** diff --git a/src/apis/appengine/v1alpha.ts b/src/apis/appengine/v1alpha.ts index de18dbe4787..e8bee42d55b 100644 --- a/src/apis/appengine/v1alpha.ts +++ b/src/apis/appengine/v1alpha.ts @@ -143,7 +143,7 @@ export namespace appengine_v1alpha { */ domainMappingsCount?: number | null; /** - * Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly + * Output only. Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly */ domainNames?: string[] | null; /** @@ -151,7 +151,7 @@ export namespace appengine_v1alpha { */ expireTime?: string | null; /** - * Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly + * Output only. Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly */ id?: string | null; /** @@ -159,11 +159,11 @@ export namespace appengine_v1alpha { */ managedCertificate?: Schema$ManagedCertificate; /** - * Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly + * Output only. Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly */ name?: string | null; /** - * The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly + * Output only. The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly */ visibleDomainMappings?: string[] | null; } @@ -243,11 +243,11 @@ export namespace appengine_v1alpha { */ id?: string | null; /** - * Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly + * Output only. Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly */ name?: string | null; /** - * The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly + * Output only. The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly */ resourceRecords?: Schema$ResourceRecord[]; /** @@ -658,7 +658,7 @@ export namespace appengine_v1alpha { */ certificateId?: string | null; /** - * Whether the mapped certificate is an App Engine managed certificate. Managed certificates are created by default with a domain mapping. To opt out, specify no_managed_certificate on a CREATE or UPDATE request.@OutputOnly + * Output only. Whether the mapped certificate is an App Engine managed certificate. Managed certificates are created by default with a domain mapping. To opt out, specify no_managed_certificate on a CREATE or UPDATE request.@OutputOnly */ isManagedCertificate?: boolean | null; } @@ -2770,7 +2770,7 @@ export namespace appengine_v1alpha { * const res = await appengine.apps.locations.list({ * // Part of `name`. The resource that owns the locations collection, if applicable. * appsId: 'placeholder-value', - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like "displayName=tokyo", and is documented in more detail in AIP-160 (https://google.aip.dev/160). * filter: 'placeholder-value', @@ -2904,7 +2904,7 @@ export namespace appengine_v1alpha { */ appsId?: string; /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -3466,7 +3466,7 @@ export namespace appengine_v1alpha { * * // Do the magic * const res = await appengine.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like "displayName=tokyo", and is documented in more detail in AIP-160 (https://google.aip.dev/160). * filter: 'placeholder-value', @@ -3598,7 +3598,7 @@ export namespace appengine_v1alpha { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -5292,6 +5292,162 @@ export namespace appengine_v1alpha { } } + /** + * Lists the domain mappings on an application. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/appengine.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 appengine = google.appengine('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/appengine.admin', + * '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 appengine.projects.locations.applications.domainMappings.list({ + * // Part of `parent`. See documentation of `projectsId`. + * applicationsId: 'placeholder-value', + * // Part of `parent`. See documentation of `projectsId`. + * locationsId: 'placeholder-value', + * // Maximum results to return per page. + * pageSize: 'placeholder-value', + * // Continuation token for fetching the next page of results. + * pageToken: 'placeholder-value', + * // Part of `parent`. Required. Name of the parent Application resource. Example: apps/myapp. + * projectsId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "domainMappings": [], + * // "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$Applications$Domainmappings$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Applications$Domainmappings$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Applications$Domainmappings$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Applications$Domainmappings$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Applications$Domainmappings$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Applications$Domainmappings$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Applications$Domainmappings$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Applications$Domainmappings$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://appengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1alpha/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/domainMappings' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['projectsId', 'locationsId', 'applicationsId'], + pathParams: ['applicationsId', 'locationsId', 'projectsId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource. * @example @@ -5533,6 +5689,29 @@ export namespace appengine_v1alpha { */ projectsId?: string; } + export interface Params$Resource$Projects$Locations$Applications$Domainmappings$List + extends StandardParameters { + /** + * Part of `parent`. See documentation of `projectsId`. + */ + applicationsId?: string; + /** + * Part of `parent`. See documentation of `projectsId`. + */ + locationsId?: string; + /** + * Maximum results to return per page. + */ + pageSize?: number; + /** + * Continuation token for fetching the next page of results. + */ + pageToken?: string; + /** + * Part of `parent`. Required. Name of the parent Application resource. Example: apps/myapp. + */ + projectsId?: string; + } export interface Params$Resource$Projects$Locations$Applications$Domainmappings$Patch extends StandardParameters { /** diff --git a/src/apis/appengine/v1beta.ts b/src/apis/appengine/v1beta.ts index b2c1d605c10..de59b6776b5 100644 --- a/src/apis/appengine/v1beta.ts +++ b/src/apis/appengine/v1beta.ts @@ -244,7 +244,7 @@ export namespace appengine_v1beta { */ domainMappingsCount?: number | null; /** - * Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly + * Output only. Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly */ domainNames?: string[] | null; /** @@ -252,7 +252,7 @@ export namespace appengine_v1beta { */ expireTime?: string | null; /** - * Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly + * Output only. Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly */ id?: string | null; /** @@ -260,11 +260,11 @@ export namespace appengine_v1beta { */ managedCertificate?: Schema$ManagedCertificate; /** - * Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly + * Output only. Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly */ name?: string | null; /** - * The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly + * Output only. The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly */ visibleDomainMappings?: string[] | null; } @@ -577,11 +577,11 @@ export namespace appengine_v1beta { */ id?: string | null; /** - * Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly + * Output only. Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly */ name?: string | null; /** - * The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly + * Output only. The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly */ resourceRecords?: Schema$ResourceRecord[]; /** @@ -1560,7 +1560,7 @@ export namespace appengine_v1beta { */ certificateId?: string | null; /** - * ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly + * Output only. ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly */ pendingManagedCertificateId?: string | null; /** @@ -5868,7 +5868,7 @@ export namespace appengine_v1beta { * const res = await appengine.apps.locations.list({ * // Part of `name`. The resource that owns the locations collection, if applicable. * appsId: 'placeholder-value', - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like "displayName=tokyo", and is documented in more detail in AIP-160 (https://google.aip.dev/160). * filter: 'placeholder-value', @@ -6002,7 +6002,7 @@ export namespace appengine_v1beta { */ appsId?: string; /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -8936,7 +8936,7 @@ export namespace appengine_v1beta { * * // Do the magic * const res = await appengine.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like "displayName=tokyo", and is documented in more detail in AIP-160 (https://google.aip.dev/160). * filter: 'placeholder-value', @@ -9068,7 +9068,7 @@ export namespace appengine_v1beta { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -10960,6 +10960,162 @@ export namespace appengine_v1beta { } } + /** + * Lists the domain mappings on an application. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/appengine.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 appengine = google.appengine('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/appengine.admin', + * '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 appengine.projects.locations.applications.domainMappings.list({ + * // Part of `parent`. See documentation of `projectsId`. + * applicationsId: 'placeholder-value', + * // Part of `parent`. See documentation of `projectsId`. + * locationsId: 'placeholder-value', + * // Maximum results to return per page. + * pageSize: 'placeholder-value', + * // Continuation token for fetching the next page of results. + * pageToken: 'placeholder-value', + * // Part of `parent`. Required. Name of the parent Application resource. Example: apps/myapp. + * projectsId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "domainMappings": [], + * // "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$Applications$Domainmappings$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Applications$Domainmappings$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Applications$Domainmappings$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Applications$Domainmappings$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Applications$Domainmappings$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Applications$Domainmappings$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Applications$Domainmappings$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Applications$Domainmappings$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://appengine.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/v1beta/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/domainMappings' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['projectsId', 'locationsId', 'applicationsId'], + pathParams: ['applicationsId', 'locationsId', 'projectsId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource. * @example @@ -11195,6 +11351,29 @@ export namespace appengine_v1beta { */ projectsId?: string; } + export interface Params$Resource$Projects$Locations$Applications$Domainmappings$List + extends StandardParameters { + /** + * Part of `parent`. See documentation of `projectsId`. + */ + applicationsId?: string; + /** + * Part of `parent`. See documentation of `projectsId`. + */ + locationsId?: string; + /** + * Maximum results to return per page. + */ + pageSize?: number; + /** + * Continuation token for fetching the next page of results. + */ + pageToken?: string; + /** + * Part of `parent`. Required. Name of the parent Application resource. Example: apps/myapp. + */ + projectsId?: string; + } export interface Params$Resource$Projects$Locations$Applications$Domainmappings$Patch extends StandardParameters { /** diff --git a/src/apis/authorizedbuyersmarketplace/v1.ts b/src/apis/authorizedbuyersmarketplace/v1.ts index c22db36a051..10bf6cababf 100644 --- a/src/apis/authorizedbuyersmarketplace/v1.ts +++ b/src/apis/authorizedbuyersmarketplace/v1.ts @@ -753,7 +753,7 @@ export namespace authorizedbuyersmarketplace_v1 { videoTargeting?: Schema$VideoTargeting; } /** - * Describes a single Media Planner account. + * Represents a media planner account. */ export interface Schema$MediaPlanner { /** diff --git a/src/apis/authorizedbuyersmarketplace/v1alpha.ts b/src/apis/authorizedbuyersmarketplace/v1alpha.ts index 7fdc006e8df..981cdd38352 100644 --- a/src/apis/authorizedbuyersmarketplace/v1alpha.ts +++ b/src/apis/authorizedbuyersmarketplace/v1alpha.ts @@ -799,7 +799,7 @@ export namespace authorizedbuyersmarketplace_v1alpha { videoTargeting?: Schema$VideoTargeting; } /** - * Describes a single Media Planner account. + * Represents a media planner account. */ export interface Schema$MediaPlanner { /** diff --git a/src/apis/backupdr/v1.ts b/src/apis/backupdr/v1.ts index d454d188005..8980603df9b 100644 --- a/src/apis/backupdr/v1.ts +++ b/src/apis/backupdr/v1.ts @@ -2089,6 +2089,10 @@ export namespace backupdr_v1 { * A token, which 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 listing DataSources. @@ -10013,7 +10017,8 @@ export namespace backupdr_v1 { * // Example response * // { * // "dataSourceReferences": [], - * // "nextPageToken": "my_nextPageToken" + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * diff --git a/src/apis/calendar/v3.ts b/src/apis/calendar/v3.ts index e2110849fdd..1f22ef9bce0 100644 --- a/src/apis/calendar/v3.ts +++ b/src/apis/calendar/v3.ts @@ -163,7 +163,8 @@ export namespace calendar_v3 { * - "freeBusyReader" - Provides read access to free/busy information. * - "reader" - Provides read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. * - "writer" - Provides read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. Provides read access to the calendar's ACLs. - * - "owner" - Provides ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to manipulate ACLs. + * - "owner" - Provides manager access to the calendar. This role has all of the permissions of the writer role with the additional ability to modify access levels of other users. + * Important: the owner role is different from the calendar's data owner. A calendar has a single data owner, but can have multiple users with owner role. */ role?: string | null; /** @@ -176,6 +177,10 @@ export namespace calendar_v3 { * Conferencing properties for this calendar, for example what types of conferences are allowed. */ conferenceProperties?: Schema$ConferenceProperties; + /** + * The email of the owner of the calendar. Set only for secondary calendars. Read-only. + */ + dataOwner?: string | null; /** * Description of the calendar. Optional. */ @@ -233,7 +238,8 @@ export namespace calendar_v3 { * - "freeBusyReader" - Provides read access to free/busy information. * - "reader" - Provides read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. * - "writer" - Provides read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. - * - "owner" - Provides ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to see and manipulate ACLs. + * - "owner" - Provides manager access to the calendar. This role has all of the permissions of the writer role with the additional ability to see and modify access levels of other users. + * Important: the owner role is different from the calendar's data owner. A calendar has a single data owner, but can have multiple users with owner role. */ accessRole?: string | null; /** @@ -248,6 +254,10 @@ export namespace calendar_v3 { * Conferencing properties for this calendar, for example what types of conferences are allowed. */ conferenceProperties?: Schema$ConferenceProperties; + /** + * The email of the owner of the calendar. Set only for secondary calendars. Read-only. + */ + dataOwner?: string | null; /** * The default reminders that the authenticated user has for this calendar. */ @@ -973,7 +983,8 @@ export namespace calendar_v3 { * - "freeBusyReader" - The user has read access to free/busy information. * - "reader" - The user has read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. * - "writer" - The user has read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. - * - "owner" - The user has ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to see and manipulate ACLs. + * - "owner" - The user has manager access to the calendar. This role has all of the permissions of the writer role with the additional ability to see and modify access levels of other users. + * Important: the owner role is different from the calendar's data owner. A calendar has a single data owner, but can have multiple users with owner role. */ accessRole?: string | null; /** @@ -2576,6 +2587,7 @@ export namespace calendar_v3 { * // "backgroundColor": "my_backgroundColor", * // "colorId": "my_colorId", * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "defaultReminders": [], * // "deleted": false, * // "description": "my_description", @@ -2732,6 +2744,7 @@ export namespace calendar_v3 { * // "backgroundColor": "my_backgroundColor", * // "colorId": "my_colorId", * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "defaultReminders": [], * // "deleted": false, * // "description": "my_description", @@ -2758,6 +2771,7 @@ export namespace calendar_v3 { * // "backgroundColor": "my_backgroundColor", * // "colorId": "my_colorId", * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "defaultReminders": [], * // "deleted": false, * // "description": "my_description", @@ -3079,6 +3093,7 @@ export namespace calendar_v3 { * // "backgroundColor": "my_backgroundColor", * // "colorId": "my_colorId", * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "defaultReminders": [], * // "deleted": false, * // "description": "my_description", @@ -3105,6 +3120,7 @@ export namespace calendar_v3 { * // "backgroundColor": "my_backgroundColor", * // "colorId": "my_colorId", * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "defaultReminders": [], * // "deleted": false, * // "description": "my_description", @@ -3265,6 +3281,7 @@ export namespace calendar_v3 { * // "backgroundColor": "my_backgroundColor", * // "colorId": "my_colorId", * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "defaultReminders": [], * // "deleted": false, * // "description": "my_description", @@ -3291,6 +3308,7 @@ export namespace calendar_v3 { * // "backgroundColor": "my_backgroundColor", * // "colorId": "my_colorId", * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "defaultReminders": [], * // "deleted": false, * // "description": "my_description", @@ -4026,6 +4044,7 @@ export namespace calendar_v3 { * // Example response * // { * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", @@ -4132,6 +4151,9 @@ export namespace calendar_v3 { /** * Creates a secondary calendar. + * The authenticated user for the request is made the data owner of the new calendar. + * + * Note: We recommend to authenticate as the intended data owner of the calendar. You can use domain-wide delegation of authority to allow applications to act on behalf of a specific user. Don't use a service account for authentication. If you use a service account for authentication, the service account is the data owner, which can lead to unexpected behavior. For example, if a service account is the data owner, data ownership cannot be transferred. * @example * ```js * // Before running the sample: @@ -4170,6 +4192,7 @@ export namespace calendar_v3 { * // request body parameters * // { * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", @@ -4185,6 +4208,7 @@ export namespace calendar_v3 { * // Example response * // { * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", @@ -4332,6 +4356,7 @@ export namespace calendar_v3 { * // request body parameters * // { * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", @@ -4347,6 +4372,7 @@ export namespace calendar_v3 { * // Example response * // { * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", @@ -4494,6 +4520,7 @@ export namespace calendar_v3 { * // request body parameters * // { * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", @@ -4509,6 +4536,7 @@ export namespace calendar_v3 { * // Example response * // { * // "conferenceProperties": {}, + * // "dataOwner": "my_dataOwner", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", diff --git a/src/apis/certificatemanager/v1.ts b/src/apis/certificatemanager/v1.ts index 6486285ade4..28a1d652820 100644 --- a/src/apis/certificatemanager/v1.ts +++ b/src/apis/certificatemanager/v1.ts @@ -1061,7 +1061,7 @@ export namespace certificatemanager_v1 { * * // Do the magic * const res = await certificatemanager.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). * filter: 'placeholder-value', @@ -1190,7 +1190,7 @@ export namespace certificatemanager_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/chromemanagement/v1.ts b/src/apis/chromemanagement/v1.ts index eba228371e8..42e39a420bc 100644 --- a/src/apis/chromemanagement/v1.ts +++ b/src/apis/chromemanagement/v1.ts @@ -553,6 +553,19 @@ export namespace chromemanagement_v1 { */ hostMatch?: string | null; } + /** + * Response containing the number of active devices. + */ + export interface Schema$GoogleChromeManagementV1CountActiveDevicesResponse { + /** + * Number of active devices in the 7 days leading up to the date specified in the request. + */ + sevenDaysCount?: string | null; + /** + * Number of active devices in the 30 days leading up to the date specified in the request. + */ + thirtyDaysCount?: string | null; + } /** * Response containing summary of requested app installations. */ @@ -685,6 +698,60 @@ export namespace chromemanagement_v1 { */ totalSize?: number | null; } + /** + * Response containing the number of devices with the given boot type. + */ + export interface Schema$GoogleChromeManagementV1CountDevicesPerBootTypeResponse { + /** + * Number of devices with dev boot type. + */ + devBootTypeCount?: string | null; + /** + * Number of devices with unreported boot type. + */ + unreportedBootTypeCount?: string | null; + /** + * Number of devices with verified boot type. + */ + verifiedBootTypeCount?: string | null; + } + /** + * Response containing the number of devices with the given channel. + */ + export interface Schema$GoogleChromeManagementV1CountDevicesPerReleaseChannelResponse { + /** + * Number of devices with beta release channel. + */ + betaChannelCount?: string | null; + /** + * Number of devices with canary release channel. + */ + canaryChannelCount?: string | null; + /** + * Number of devices with dev release channel. + */ + devChannelCount?: string | null; + /** + * Number of devices with ltc release channel. + */ + ltcChannelCount?: string | null; + /** + * Number of devices with lts release channel. + */ + ltsChannelCount?: string | null; + /** + * Number of devices with stable release channel. + */ + stableChannelCount?: string | null; + /** + * Number of devices with an unreported release channel. + */ + unreportedChannelCount?: string | null; + /** + * Number of devices with unsupported release channel. + */ + unsupportedChannelCount?: string | null; + } /** * Response containing details of queried installed apps. */ @@ -6237,6 +6304,162 @@ export namespace chromemanagement_v1 { this.context = context; } + /** + * Get a count of active devices per set time frames. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chromemanagement.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 chromemanagement = google.chromemanagement('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/chrome.management.reports.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 chromemanagement.customers.reports.countActiveDevices({ + * // Required. Obfuscated customer ID prefixed with "customers/C" or "customers/my_customer". + * customer: 'customers/my-customer', + * // Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. + * 'date.day': 'placeholder-value', + * // Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. + * 'date.month': 'placeholder-value', + * // Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. + * 'date.year': 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "sevenDaysCount": "my_sevenDaysCount", + * // "thirtyDaysCount": "my_thirtyDaysCount" + * // } + * } + * + * 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. + */ + countActiveDevices( + params: Params$Resource$Customers$Reports$Countactivedevices, + options: StreamMethodOptions + ): Promise>; + countActiveDevices( + params?: Params$Resource$Customers$Reports$Countactivedevices, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + countActiveDevices( + params: Params$Resource$Customers$Reports$Countactivedevices, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + countActiveDevices( + params: Params$Resource$Customers$Reports$Countactivedevices, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + countActiveDevices( + params: Params$Resource$Customers$Reports$Countactivedevices, + callback: BodyResponseCallback + ): void; + countActiveDevices( + callback: BodyResponseCallback + ): void; + countActiveDevices( + paramsOrCallback?: + | Params$Resource$Customers$Reports$Countactivedevices + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Customers$Reports$Countactivedevices; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Customers$Reports$Countactivedevices; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://chromemanagement.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1/{+customer}/reports:countActiveDevices' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['customer'], + pathParams: ['customer'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Count of Chrome Browsers that have been recently enrolled, have new policy to be synced, or have no recent activity. * @example @@ -7190,6 +7413,328 @@ export namespace chromemanagement_v1 { } } + /** + * Get a count of devices per boot type. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chromemanagement.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 chromemanagement = google.chromemanagement('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/chrome.management.reports.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 chromemanagement.customers.reports.countDevicesPerBootType({ + * // Required. Obfuscated customer ID prefixed with "customers/C" or "customers/my_customer". + * customer: 'customers/my-customer', + * // Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. + * 'date.day': 'placeholder-value', + * // Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. + * 'date.month': 'placeholder-value', + * // Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. + * 'date.year': 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "devBootTypeCount": "my_devBootTypeCount", + * // "unreportedBootTypeCount": "my_unreportedBootTypeCount", + * // "verifiedBootTypeCount": "my_verifiedBootTypeCount" + * // } + * } + * + * 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. + */ + countDevicesPerBootType( + params: Params$Resource$Customers$Reports$Countdevicesperboottype, + options: StreamMethodOptions + ): Promise>; + countDevicesPerBootType( + params?: Params$Resource$Customers$Reports$Countdevicesperboottype, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + countDevicesPerBootType( + params: Params$Resource$Customers$Reports$Countdevicesperboottype, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + countDevicesPerBootType( + params: Params$Resource$Customers$Reports$Countdevicesperboottype, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + countDevicesPerBootType( + params: Params$Resource$Customers$Reports$Countdevicesperboottype, + callback: BodyResponseCallback + ): void; + countDevicesPerBootType( + callback: BodyResponseCallback + ): void; + countDevicesPerBootType( + paramsOrCallback?: + | Params$Resource$Customers$Reports$Countdevicesperboottype + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Customers$Reports$Countdevicesperboottype; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Customers$Reports$Countdevicesperboottype; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://chromemanagement.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1/{+customer}/reports:countDevicesPerBootType' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['customer'], + pathParams: ['customer'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Get a count of devices per channel. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chromemanagement.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 chromemanagement = google.chromemanagement('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/chrome.management.reports.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 chromemanagement.customers.reports.countDevicesPerReleaseChannel({ + * // Required. Obfuscated customer ID prefixed with "customers/C" or "customers/my_customer". + * customer: 'customers/my-customer', + * // Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. + * 'date.day': 'placeholder-value', + * // Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. + * 'date.month': 'placeholder-value', + * // Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. + * 'date.year': 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "betaChannelCount": "my_betaChannelCount", + * // "canaryChannelCount": "my_canaryChannelCount", + * // "devChannelCount": "my_devChannelCount", + * // "ltcChannelCount": "my_ltcChannelCount", + * // "ltsChannelCount": "my_ltsChannelCount", + * // "stableChannelCount": "my_stableChannelCount", + * // "unreportedChannelCount": "my_unreportedChannelCount", + * // "unsupportedChannelCount": "my_unsupportedChannelCount" + * // } + * } + * + * 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. + */ + countDevicesPerReleaseChannel( + params: Params$Resource$Customers$Reports$Countdevicesperreleasechannel, + options: StreamMethodOptions + ): Promise>; + countDevicesPerReleaseChannel( + params?: Params$Resource$Customers$Reports$Countdevicesperreleasechannel, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + countDevicesPerReleaseChannel( + params: Params$Resource$Customers$Reports$Countdevicesperreleasechannel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + countDevicesPerReleaseChannel( + params: Params$Resource$Customers$Reports$Countdevicesperreleasechannel, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + countDevicesPerReleaseChannel( + params: Params$Resource$Customers$Reports$Countdevicesperreleasechannel, + callback: BodyResponseCallback + ): void; + countDevicesPerReleaseChannel( + callback: BodyResponseCallback + ): void; + countDevicesPerReleaseChannel( + paramsOrCallback?: + | Params$Resource$Customers$Reports$Countdevicesperreleasechannel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Customers$Reports$Countdevicesperreleasechannel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Customers$Reports$Countdevicesperreleasechannel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://chromemanagement.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1/{+customer}/reports:countDevicesPerReleaseChannel' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['customer'], + pathParams: ['customer'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Generate report of app installations. * @example @@ -8002,6 +8547,25 @@ export namespace chromemanagement_v1 { } } + export interface Params$Resource$Customers$Reports$Countactivedevices + extends StandardParameters { + /** + * Required. Obfuscated customer ID prefixed with "customers/C" or "customers/my_customer". + */ + customer?: string; + /** + * Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. + */ + 'date.day'?: number; + /** + * Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. + */ + 'date.month'?: number; + /** + * Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. + */ + 'date.year'?: number; + } export interface Params$Resource$Customers$Reports$Countchromebrowsersneedingattention extends StandardParameters { /** @@ -8104,6 +8668,44 @@ export namespace chromemanagement_v1 { */ pageToken?: string; } + export interface Params$Resource$Customers$Reports$Countdevicesperboottype + extends StandardParameters { + /** + * Required. Obfuscated customer ID prefixed with "customers/C" or "customers/my_customer". + */ + customer?: string; + /** + * Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. + */ + 'date.day'?: number; + /** + * Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. + */ + 'date.month'?: number; + /** + * Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. + */ + 'date.year'?: number; + } + export interface Params$Resource$Customers$Reports$Countdevicesperreleasechannel + extends StandardParameters { + /** + * Required. Obfuscated customer ID prefixed with "customers/C" or "customers/my_customer". + */ + customer?: string; + /** + * Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. + */ + 'date.day'?: number; + /** + * Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. + */ + 'date.month'?: number; + /** + * Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. + */ + 'date.year'?: number; + } export interface Params$Resource$Customers$Reports$Countinstalledapps extends StandardParameters { /** diff --git a/src/apis/classroom/v1.ts b/src/apis/classroom/v1.ts index 2c079e2b8ec..28adebb391e 100644 --- a/src/apis/classroom/v1.ts +++ b/src/apis/classroom/v1.ts @@ -787,11 +787,11 @@ export namespace classroom_v1 { */ id?: string | null; /** - * Title of the Gem. Read-only. + * Title of the Gem. */ title?: string | null; /** - * URL that can be used to access the Gem. Read-only. + * URL that can be used to access the Gem. */ url?: string | null; } @@ -1318,11 +1318,11 @@ export namespace classroom_v1 { */ id?: string | null; /** - * Title of the Notebook. Read-only. + * Title of the Notebook. */ title?: string | null; /** - * URL that can be used to access the Notebook. Read-only. + * URL that can be used to access the Notebook. */ url?: string | null; } diff --git a/src/apis/cloudshell/v1.ts b/src/apis/cloudshell/v1.ts index 6ac1dba100c..4399ea96b9c 100644 --- a/src/apis/cloudshell/v1.ts +++ b/src/apis/cloudshell/v1.ts @@ -230,6 +230,15 @@ export namespace cloudshell_v1 { */ webHost?: string | null; } + /** + * Response message for GenerateAccessToken. + */ + export interface Schema$GenerateAccessTokenResponse { + /** + * The access token. + */ + accessToken?: string | null; + } /** * The response message for Operations.ListOperations. */ @@ -1260,6 +1269,151 @@ export namespace cloudshell_v1 { } } + /** + * Generates an access token for the user's environment. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudshell.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 cloudshell = google.cloudshell('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 cloudshell.users.environments.generateAccessToken({ + * // Required. The environment to generate the access token for. + * environment: 'users/my-user/environments/my-environment', + * // Desired expiration time of the access token. This value must be at most 24 hours in the future. If a value is not specified, the token's expiration time will be set to a default value of 1 hour in the future. + * expireTime: 'placeholder-value', + * // Desired lifetime duration of the access token. This value must be at most 24 hours. If a value is not specified, the token's lifetime will be set to a default value of 1 hour. + * ttl: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "accessToken": "my_accessToken" + * // } + * } + * + * 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. + */ + generateAccessToken( + params: Params$Resource$Users$Environments$Generateaccesstoken, + options: StreamMethodOptions + ): Promise>; + generateAccessToken( + params?: Params$Resource$Users$Environments$Generateaccesstoken, + options?: MethodOptions + ): Promise>; + generateAccessToken( + params: Params$Resource$Users$Environments$Generateaccesstoken, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + generateAccessToken( + params: Params$Resource$Users$Environments$Generateaccesstoken, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + generateAccessToken( + params: Params$Resource$Users$Environments$Generateaccesstoken, + callback: BodyResponseCallback + ): void; + generateAccessToken( + callback: BodyResponseCallback + ): void; + generateAccessToken( + paramsOrCallback?: + | Params$Resource$Users$Environments$Generateaccesstoken + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Users$Environments$Generateaccesstoken; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Users$Environments$Generateaccesstoken; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://cloudshell.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+environment}:generateAccessToken').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['environment'], + pathParams: ['environment'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Gets an environment. Returns NOT_FOUND if the environment does not exist. * @example @@ -1723,6 +1877,21 @@ export namespace cloudshell_v1 { */ requestBody?: Schema$AuthorizeEnvironmentRequest; } + export interface Params$Resource$Users$Environments$Generateaccesstoken + extends StandardParameters { + /** + * Required. The environment to generate the access token for. + */ + environment?: string; + /** + * Desired expiration time of the access token. This value must be at most 24 hours in the future. If a value is not specified, the token's expiration time will be set to a default value of 1 hour in the future. + */ + expireTime?: string; + /** + * Desired lifetime duration of the access token. This value must be at most 24 hours. If a value is not specified, the token's lifetime will be set to a default value of 1 hour. + */ + ttl?: string; + } export interface Params$Resource$Users$Environments$Get extends StandardParameters { /** diff --git a/src/apis/compute/alpha.ts b/src/apis/compute/alpha.ts index f372b75f1e5..4933f8506a8 100644 --- a/src/apis/compute/alpha.ts +++ b/src/apis/compute/alpha.ts @@ -205,6 +205,7 @@ export namespace compute_alpha { regionNetworkPolicies: Resource$Regionnetworkpolicies; regionNotificationEndpoints: Resource$Regionnotificationendpoints; regionOperations: Resource$Regionoperations; + regionRecoverableSnapshots: Resource$Regionrecoverablesnapshots; regions: Resource$Regions; regionSecurityPolicies: Resource$Regionsecuritypolicies; regionSnapshots: Resource$Regionsnapshots; @@ -405,6 +406,9 @@ export namespace compute_alpha { this.regionNotificationEndpoints = new Resource$Regionnotificationendpoints(this.context); this.regionOperations = new Resource$Regionoperations(this.context); + this.regionRecoverableSnapshots = new Resource$Regionrecoverablesnapshots( + this.context + ); this.regions = new Resource$Regions(this.context); this.regionSecurityPolicies = new Resource$Regionsecuritypolicies( this.context @@ -8488,6 +8492,15 @@ export namespace compute_alpha { * Maximum number of destination CIDR IP ranges allowed is 5000. */ destIpRanges?: string[] | null; + /** + * Network context of the traffic destination. Allowed values are: + * + * + * - UNSPECIFIED + * - INTERNET + * - NON_INTERNET + */ + destNetworkContext?: string | null; /** * Network scope of the traffic destination. */ @@ -8533,6 +8546,17 @@ export namespace compute_alpha { * Maximum number of source CIDR IP ranges allowed is 5000. */ srcIpRanges?: string[] | null; + /** + * Network context of the traffic source. Allowed values are: + * + * + * - UNSPECIFIED + * - INTERNET + * - INTRA_VPC + * - NON_INTERNET + * - VPC_NETWORKS + */ + srcNetworkContext?: string | null; /** * Networks of the traffic source. It can be either a full or partial url. */ @@ -11971,7 +11995,7 @@ export namespace compute_alpha { * Only one of exactMatch, prefixMatch,suffixMatch, regexMatch,presentMatch or rangeMatch must be set. * * Regular expressions can only be used when the loadBalancingScheme is - * set to INTERNAL_SELF_MANAGED. + * set to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED. */ regexMatch?: string | null; /** @@ -12224,7 +12248,7 @@ export namespace compute_alpha { * Only one of presentMatch, exactMatch, orregexMatch must be set. * * Regular expressions can only be used when the loadBalancingScheme is - * set to INTERNAL_SELF_MANAGED. + * set to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED. */ regexMatch?: string | null; } @@ -12613,7 +12637,7 @@ export namespace compute_alpha { * * fullPathMatch must be from 1 to 1024 characters. * - * Only one of prefixMatch, fullPathMatch or regexMatch must be + * Only one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be * specified. */ fullPathMatch?: string | null; @@ -12677,7 +12701,8 @@ export namespace compute_alpha { * * The value must be from 1 to 1024 characters. * - * Only one of prefixMatch, fullPathMatch or regexMatch must be + * Only one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be + * specified. * specified. */ prefixMatch?: string | null; @@ -12694,11 +12719,11 @@ export namespace compute_alpha { * supplied with the original URL. For * more information about regular expression syntax, see Syntax. * - * Only one of prefixMatch, fullPathMatch orregexMatch must be + * Only one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be * specified. * * Regular expressions can only be used when the loadBalancingScheme is - * set to INTERNAL_SELF_MANAGED. + * set to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED. */ regexMatch?: string | null; } @@ -20534,10 +20559,19 @@ export namespace compute_alpha { } | null; } export interface Schema$ManagedInstancePropertiesFromFlexibilityPolicy { + /** + * List of disks to be attached to the instance. + */ + disks?: Schema$AttachedDisk[]; /** * The machine type to be used for this instance. */ machineType?: string | null; + /** + * Name of the minimum CPU platform to be used by this instance. + * e.g. 'Intel Ice Lake'. + */ + minCpuPlatform?: string | null; /** * The provisioning model to be used for this instance. */ @@ -22719,14 +22753,6 @@ export namespace compute_alpha { * Custom DSCP value from 0-63 range. */ dscpValue?: number | null; - /** - * The field type could be one of: TRAFFIC_CLASS or DSCP. - */ - fieldType?: string | null; - /** - * For field_type = TRAFFIC_CLASS: 1 to 6. For field_type = DSCP: 0 to 63. - */ - fieldValue?: number | null; /** * The traffic class that should be applied to the matching packet. */ @@ -26336,12 +26362,34 @@ export namespace compute_alpha { message?: string; } | null; } + /** + * [Output only] Result of queuing and provisioning based on deferred + * capacity. + */ export interface Schema$QueuedResourceStatus { + /** + * Additional status detail for the FAILED state. + */ failedData?: Schema$QueuedResourceStatusFailedData; + /** + * [Output only] Fully qualified URL of the provisioning GCE operation to + * track the provisioning along with provisioning errors. The referenced + * operation may not exist after having been deleted or expired. + */ provisioningOperations?: string[] | null; + /** + * Constraints for the time when the resource(s) start provisioning. Always + * exposed as absolute times. + */ queuingPolicy?: Schema$QueuingPolicy; } + /** + * Additional status detail for the FAILED state. + */ export interface Schema$QueuedResourceStatusFailedData { + /** + * The error(s) that caused the QueuedResource to enter the FAILED state. + */ error?: { errors?: Array<{ code?: string; @@ -29335,8 +29383,7 @@ export namespace compute_alpha { rolloutEntity?: Schema$RolloutRolloutEntity; /** * Required. Rollout Plan used to model the Rollout. - * Ex. progressiverollout.googleapis.com/v1/organizations/1/rolloutPlans - * Ex. progressiverollout.googleapis.com/v1/folders/1/rolloutPlans + * Ex. compute.googleapis.com/v1/projects/1234/rolloutPlans/rp1 */ rolloutPlan?: string | null; /** @@ -29650,9 +29697,9 @@ export namespace compute_alpha { * is applied across regions, this contains the name of the global * resource created by the user which contains a payload for a resource * that is orchestrated across regions. This follows the following format: - * //.googleapis.com/organizations//locations/global// + * //.googleapis.com/projects//locations/global// * e.g. - * //osconfig.googleapis.com/organizations/1/locations/global/policyOrchestrators/po1 + * //osconfig.googleapis.com/projects/1/locations/global/policyOrchestrators/po1 */ orchestrationSource?: string | null; } @@ -39141,6 +39188,11 @@ export namespace compute_alpha { * the Cloud VPN Overview. */ export interface Schema$VpnTunnel { + /** + * Capacity tier of the VPN tunnel. This is used for IPsec over Interconnect + * tunnels to indicate different bandwidth limits. + */ + capacityTier?: string | null; /** * User specified list of ciphers to use for the phase 1 and phase 2 of the * IKE protocol. @@ -159913,8 +159965,10 @@ export namespace compute_alpha { * hierarchical security policies will be automatically enrolled into Cloud * Armor Enterprise if not already enrolled. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.addAssociation instead if possible. + * 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: @@ -160114,6 +160168,10 @@ export namespace compute_alpha { /** * 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: @@ -160321,8 +160379,10 @@ export namespace compute_alpha { /** * Copies rules to the specified security policy. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.copyRules 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.cloneRules + * instead. * @example * ```js * // Before running the sample: @@ -160506,8 +160566,9 @@ export namespace compute_alpha { /** * Deletes the specified policy. * - * Use of this API to remove firewall policies is deprecated. Use - * firewallPolicies.delete instead. + * 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: @@ -160689,8 +160750,9 @@ export namespace compute_alpha { /** * List all of the ordered rules present in a single specified policy. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.get instead. + * 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: @@ -160856,8 +160918,10 @@ export namespace compute_alpha { /** * Gets an association with the specified name. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.getAssociation instead if possible. + * 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: @@ -161013,8 +161077,9 @@ export namespace compute_alpha { /** * Gets a rule at the specified priority. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.getRule instead. + * 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: @@ -161178,8 +161243,9 @@ export namespace compute_alpha { * Creates a new policy in the specified organization using the data included * in the request. * - * Use of this API to insert firewall policies is deprecated. Use - * firewallPolicies.insert instead. + * 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: @@ -161394,8 +161460,9 @@ export namespace compute_alpha { * List all the policies that have been configured for the specified * organization. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.list instead. + * 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: @@ -161631,8 +161698,10 @@ export namespace compute_alpha { /** * Lists associations of a specified target, i.e., organization or folder. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.listAssociations instead if possible. + * 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 * // Before running the sample: @@ -162030,8 +162099,9 @@ export namespace compute_alpha { /** * Moves the specified security policy. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.move 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.move instead. * @example * ```js * // Before running the sample: @@ -162215,8 +162285,9 @@ export namespace compute_alpha { /** * Patches the specified policy with the data included in the request. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.patch 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.patch instead. * @example * ```js * // Before running the sample: @@ -162431,8 +162502,10 @@ export namespace compute_alpha { /** * Patches a rule at the specified priority. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.patchRule 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.patchRule + * instead. * @example * ```js * // Before running the sample: @@ -162644,8 +162717,10 @@ export namespace compute_alpha { /** * Removes an association for the specified security policy. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.removeAssociation instead if possible. + * 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: @@ -162829,6 +162904,11 @@ export namespace compute_alpha { /** * 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. * @example * ```js * // Before running the sample: @@ -225621,6 +225701,1517 @@ export namespace compute_alpha { region?: string; } + export class Resource$Regionrecoverablesnapshots { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified RecoverableSnapshot. Deleting a recoverable snapshot + * will delete the underlying PD snapshot and is irreversible. + * @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('alpha'); + * + * 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.regionRecoverableSnapshots.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 recoverable Snapshot resource to delete. + * recoverableSnapshot: '[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). + * requestId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "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" + * // } + * } + * + * 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$Regionrecoverablesnapshots$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Regionrecoverablesnapshots$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Regionrecoverablesnapshots$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regionrecoverablesnapshots$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Regionrecoverablesnapshots$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Regionrecoverablesnapshots$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionrecoverablesnapshots$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionrecoverablesnapshots$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/alpha/projects/{project}/regions/{region}/recoverableSnapshots/{recoverableSnapshot}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'recoverableSnapshot'], + pathParams: ['project', 'recoverableSnapshot', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the specified RecoverableSnapshot 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('alpha'); + * + * 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.regionRecoverableSnapshots.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 Snapshot resource to return. + * recoverableSnapshot: '[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])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "originalResource": {}, + * // "purgeTimestamp": "my_purgeTimestamp", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "status": "my_status" + * // } + * } + * + * 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$Regionrecoverablesnapshots$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Regionrecoverablesnapshots$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Regionrecoverablesnapshots$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regionrecoverablesnapshots$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Regionrecoverablesnapshots$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Regionrecoverablesnapshots$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionrecoverablesnapshots$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionrecoverablesnapshots$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/alpha/projects/{project}/regions/{region}/recoverableSnapshots/{recoverableSnapshot}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'recoverableSnapshot'], + pathParams: ['project', 'recoverableSnapshot', '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('alpha'); + * + * 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.regionRecoverableSnapshots.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$Regionrecoverablesnapshots$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Regionrecoverablesnapshots$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Regionrecoverablesnapshots$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Regionrecoverablesnapshots$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Regionrecoverablesnapshots$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Regionrecoverablesnapshots$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionrecoverablesnapshots$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionrecoverablesnapshots$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/alpha/projects/{project}/regions/{region}/recoverableSnapshots/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the list of RecoverableSnapshot resources contained within + * the specified region. + * @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('alpha'); + * + * 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.regionRecoverableSnapshots.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 region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: '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. + */ + list( + params: Params$Resource$Regionrecoverablesnapshots$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Regionrecoverablesnapshots$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Regionrecoverablesnapshots$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regionrecoverablesnapshots$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Regionrecoverablesnapshots$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Regionrecoverablesnapshots$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionrecoverablesnapshots$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionrecoverablesnapshots$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/alpha/projects/{project}/regions/{region}/recoverableSnapshots' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Recovers the specified RecoverableSnapshot. + * @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('alpha'); + * + * 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.regionRecoverableSnapshots.recover({ + * // Project Id of the request + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-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 recoverable resource to recover + * recoverableSnapshot: 'placeholder-value', + * // 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', + * // Optional. Name of the snapshot after the recovery + * // The name will be 1-63 characters long, and comply withRFC1035. + * // Specifically, the name will be 1-63 characters long and match the regular + * // expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first + * // character will be a lowercase letter, and all following characters can be + * // a dash, lowercase letter, or digit, except the last character, which cannot + * // be a dash. + * snapshotName: '[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": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "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" + * // } + * } + * + * 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. + */ + recover( + params: Params$Resource$Regionrecoverablesnapshots$Recover, + options: StreamMethodOptions + ): Promise>; + recover( + params?: Params$Resource$Regionrecoverablesnapshots$Recover, + options?: MethodOptions + ): Promise>; + recover( + params: Params$Resource$Regionrecoverablesnapshots$Recover, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + recover( + params: Params$Resource$Regionrecoverablesnapshots$Recover, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + recover( + params: Params$Resource$Regionrecoverablesnapshots$Recover, + callback: BodyResponseCallback + ): void; + recover(callback: BodyResponseCallback): void; + recover( + paramsOrCallback?: + | Params$Resource$Regionrecoverablesnapshots$Recover + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionrecoverablesnapshots$Recover; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionrecoverablesnapshots$Recover; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/regions/{region}/recoverableSnapshots/{recoverableSnapshot}/recover' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'recoverableSnapshot'], + pathParams: ['project', 'recoverableSnapshot', '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('alpha'); + * + * 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.regionRecoverableSnapshots.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$Regionrecoverablesnapshots$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Regionrecoverablesnapshots$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Regionrecoverablesnapshots$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Regionrecoverablesnapshots$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Regionrecoverablesnapshots$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Regionrecoverablesnapshots$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionrecoverablesnapshots$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionrecoverablesnapshots$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/alpha/projects/{project}/regions/{region}/recoverableSnapshots/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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('alpha'); + * + * 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.regionRecoverableSnapshots.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 + * // { + * // "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$Regionrecoverablesnapshots$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Regionrecoverablesnapshots$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Regionrecoverablesnapshots$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regionrecoverablesnapshots$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Regionrecoverablesnapshots$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Regionrecoverablesnapshots$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionrecoverablesnapshots$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Regionrecoverablesnapshots$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/alpha/projects/{project}/regions/{region}/recoverableSnapshots/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Regionrecoverablesnapshots$Delete + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the recoverable Snapshot resource to delete. + */ + recoverableSnapshot?: 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$Regionrecoverablesnapshots$Get + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the Snapshot resource to return. + */ + recoverableSnapshot?: string; + /** + * Name of the region for this request. + */ + region?: string; + } + export interface Params$Resource$Regionrecoverablesnapshots$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$Regionrecoverablesnapshots$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 region for this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Regionrecoverablesnapshots$Recover + extends StandardParameters { + /** + * Project Id of the request + */ + project?: string; + /** + * Name of the recoverable resource to recover + */ + recoverableSnapshot?: 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; + /** + * Optional. Name of the snapshot after the recovery + * The name will be 1-63 characters long, and comply withRFC1035. + * Specifically, the name will be 1-63 characters long and match the regular + * expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first + * character will be a lowercase letter, and all following characters can be + * a dash, lowercase letter, or digit, except the last character, which cannot + * be a dash. + */ + snapshotName?: string; + } + export interface Params$Resource$Regionrecoverablesnapshots$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$Regionrecoverablesnapshots$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$Regions { context: APIRequestContext; constructor(context: APIRequestContext) { @@ -298200,6 +299791,7 @@ export namespace compute_alpha { * * // Example response * // { + * // "capacityTier": "my_capacityTier", * // "cipherSuite": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", @@ -298382,6 +299974,7 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { + * // "capacityTier": "my_capacityTier", * // "cipherSuite": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", diff --git a/src/apis/compute/beta.ts b/src/apis/compute/beta.ts index 2f8a13dcc63..7bbb3068d3f 100644 --- a/src/apis/compute/beta.ts +++ b/src/apis/compute/beta.ts @@ -214,6 +214,8 @@ export namespace compute_beta { reservations: Resource$Reservations; reservationSubBlocks: Resource$Reservationsubblocks; resourcePolicies: Resource$Resourcepolicies; + rolloutPlans: Resource$Rolloutplans; + rollouts: Resource$Rollouts; routers: Resource$Routers; routes: Resource$Routes; securityPolicies: Resource$Securitypolicies; @@ -406,6 +408,8 @@ export namespace compute_beta { this.context ); this.resourcePolicies = new Resource$Resourcepolicies(this.context); + this.rolloutPlans = new Resource$Rolloutplans(this.context); + this.rollouts = new Resource$Rollouts(this.context); this.routers = new Resource$Routers(this.context); this.routes = new Resource$Routes(this.context); this.securityPolicies = new Resource$Securitypolicies(this.context); @@ -6577,13 +6581,43 @@ export namespace compute_beta { */ accessLocation?: Schema$DiskSettingsAccessLocation; } + /** + * AccessLocation is only used for regional snapshot. It contains which + * regions are allowed to create a regional snapshot from disks located in the + * given region/zone. + * It includes key-value pairs designed to store the following structure. The + * keys should match their corresponding values, which must be provided: + * access_location: { + * locations { + * us-central1 { + * region: "us-central1" + * \}, + * asia-west2 { + * region: "asia-west2" + * \} + * \} + * \} + */ export interface Schema$DiskSettingsAccessLocation { + /** + * List of regions that can create a regional + * snapshot from the current region + */ locations?: { [key: string]: Schema$DiskSettingsAccessLocationAccessLocationPreference; } | null; + /** + * Policy of which location is allowed to access snapshot. + */ policy?: string | null; } + /** + * A structure for specifying an allowed target region to create snapshot. + */ export interface Schema$DiskSettingsAccessLocationAccessLocationPreference { + /** + * Accessible region name + */ region?: string | null; } export interface Schema$DisksRemoveResourcePoliciesRequest { @@ -9277,6 +9311,48 @@ export namespace compute_beta { */ inclusionLabels?: {[key: string]: string} | null; } + /** + * Response to list global VM extension policy resources. + */ + export interface Schema$GlobalVmExtensionPolicyList { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of GlobalVmExtensionPolicy resources. + */ + items?: Schema$GlobalVmExtensionPolicy[]; + /** + * 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; + } /** * Represents the rollout operation */ @@ -10705,7 +10781,7 @@ export namespace compute_beta { * Only one of exactMatch, prefixMatch,suffixMatch, regexMatch,presentMatch or rangeMatch must be set. * * Regular expressions can only be used when the loadBalancingScheme is - * set to INTERNAL_SELF_MANAGED. + * set to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED. */ regexMatch?: string | null; /** @@ -10950,7 +11026,7 @@ export namespace compute_beta { * Only one of presentMatch, exactMatch, orregexMatch must be set. * * Regular expressions can only be used when the loadBalancingScheme is - * set to INTERNAL_SELF_MANAGED. + * set to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED. */ regexMatch?: string | null; } @@ -11339,7 +11415,7 @@ export namespace compute_beta { * * fullPathMatch must be from 1 to 1024 characters. * - * Only one of prefixMatch, fullPathMatch or regexMatch must be + * Only one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be * specified. */ fullPathMatch?: string | null; @@ -11403,7 +11479,8 @@ export namespace compute_beta { * * The value must be from 1 to 1024 characters. * - * Only one of prefixMatch, fullPathMatch or regexMatch must be + * Only one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be + * specified. * specified. */ prefixMatch?: string | null; @@ -11420,11 +11497,11 @@ export namespace compute_beta { * supplied with the original URL. For * more information about regular expression syntax, see Syntax. * - * Only one of prefixMatch, fullPathMatch orregexMatch must be + * Only one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be * specified. * * Regular expressions can only be used when the loadBalancingScheme is - * set to INTERNAL_SELF_MANAGED. + * set to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED. */ regexMatch?: string | null; } @@ -12933,10 +13010,20 @@ export namespace compute_beta { provisioningModelMix?: Schema$InstanceGroupManagerInstanceFlexibilityPolicyProvisioningModelMix; } export interface Schema$InstanceGroupManagerInstanceFlexibilityPolicyInstanceSelection { + /** + * List of disks to be attached to the instances created from this + * selection. + */ + disks?: Schema$AttachedDisk[]; /** * Full machine-type names, e.g. "n1-standard-16". */ machineTypes?: string[] | null; + /** + * Name of the minimum CPU platform to be used by this instance selection. + * e.g. 'Intel Ice Lake'. + */ + minCpuPlatform?: string | null; /** * Preference of this instance selection. Lower number means higher * preference. MIG will first try to create a VM based on the machine-type @@ -18156,10 +18243,19 @@ export namespace compute_beta { } | null; } export interface Schema$ManagedInstancePropertiesFromFlexibilityPolicy { + /** + * List of disks to be attached to the instance. + */ + disks?: Schema$AttachedDisk[]; /** * The machine type to be used for this instance. */ machineType?: string | null; + /** + * Name of the minimum CPU platform to be used by this instance. + * e.g. 'Intel Ice Lake'. + */ + minCpuPlatform?: string | null; /** * The provisioning model to be used for this instance. */ @@ -25427,6 +25523,321 @@ export namespace compute_beta { */ targetState?: string | null; } + /** + * Represent a Rollout resource. + */ + export interface Schema$Rollout { + /** + * Output only. The timestamp at which the Rollout was cancelled. + */ + cancellationTime?: string | null; + /** + * Output only. The timestamp at which the Rollout was completed. + */ + completionTime?: string | null; + /** + * [Output Only] Creation timestamp inRFC3339 + * text format. + */ + creationTimestamp?: string | null; + /** + * Output only. The number of the currently running wave. + * Ex. 1 + */ + currentWaveNumber?: string | null; + /** + * An optional description of this resource. Provide this property when you + * create the resource. + */ + description?: string | null; + /** + * Output only. etag of the Rollout + * Ex. abc1234 + */ + etag?: string | null; + /** + * [Output Only] The unique identifier for the resource. This identifier is + * defined by the server. + */ + id?: string | null; + /** + * [Output Only] Type of the resource. Always compute#rollout + * for rollouts. + */ + kind?: string | null; + /** + * Name of the resource. Provided by the client when the resource is created. + * The name must be 1-63 characters long, and comply withRFC1035. + * Specifically, the name must be 1-63 characters long and match the regular + * expression `[a-z]([-a-z0-9]*[a-z0-9])?` + * which means the first character must be a lowercase letter, and all + * following characters must be a dash, lowercase letter, or digit, except + * the last character, which cannot be a dash. + */ + name?: string | null; + /** + * Required. The resource being rolled out. + */ + rolloutEntity?: Schema$RolloutRolloutEntity; + /** + * Required. Rollout Plan used to model the Rollout. + * Ex. compute.googleapis.com/v1/projects/1234/rolloutPlans/rp1 + */ + rolloutPlan?: string | null; + /** + * [Output Only] Server-defined fully-qualified URL for this resource. + */ + selfLink?: string | null; + /** + * [Output Only] Server-defined URL for this resource's resource id. + */ + selfLinkWithId?: string | null; + /** + * Output only. The current state of the Rollout. + */ + state?: string | null; + /** + * Output only. Details about each wave of the rollout. + */ + waveDetails?: Schema$RolloutWaveDetails[]; + } + /** + * Message describing RolloutPlan object + */ + export interface Schema$RolloutPlan { + /** + * [Output Only] Creation timestamp inRFC3339 + * text format. + */ + creationTimestamp?: string | null; + /** + * An optional description of this resource. Provide this property when you + * create the resource. + */ + description?: string | null; + /** + * [Output Only] The unique identifier for the resource. This identifier is + * defined by the server. + */ + id?: string | null; + /** + * [Output Only] Type of the resource. Always compute#rolloutPlan + * for rolloutPlans. + */ + kind?: string | null; + /** + * The location scope of the rollout plan. If not specified, the location + * scope is considered as ZONAL. + */ + locationScope?: string | null; + /** + * Name of the resource. Provided by the client when the resource is created. + * The name must be 1-63 characters long, and comply withRFC1035. + * Specifically, the name must be 1-63 characters long and match the regular + * expression `[a-z]([-a-z0-9]*[a-z0-9])?` + * which means the first character must be a lowercase letter, and all + * following characters must be a dash, lowercase letter, or digit, except + * the last character, which cannot be a dash. + */ + name?: string | null; + /** + * [Output Only] Server-defined fully-qualified URL for this resource. + */ + selfLink?: string | null; + /** + * [Output Only] Server-defined URL for this resource's resource id. + */ + selfLinkWithId?: string | null; + /** + * Required. The waves included in this rollout plan. + */ + waves?: Schema$RolloutPlanWave[]; + } + /** + * Contains a list of RolloutPlan resources. + */ + export interface Schema$RolloutPlansListResponse { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of RolloutPlan resources. + */ + items?: Schema$RolloutPlan[]; + /** + * [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. + * end_interface: MixerListResponseWithEtagBuilder + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * A single wave in a rollout plan. + */ + export interface Schema$RolloutPlanWave { + /** + * Optional. The display name of this wave of the rollout plan. + */ + displayName?: string | null; + /** + * Output only. The wave number. + */ + number?: string | null; + /** + * Optional. The orchestration options for this wave. + */ + orchestrationOptions?: Schema$RolloutPlanWaveOrchestrationOptions; + /** + * Required. The selectors for this wave. There is a logical AND between each selector + * defined in a wave, so a resource must satisfy the criteria of *all* the + * specified selectors to be in scope for the wave. + */ + selectors?: Schema$RolloutPlanWaveSelector[]; + /** + * Required. The validation to be performed at the end of this wave. + */ + validation?: Schema$RolloutPlanWaveValidation; + } + /** + * Options to control the pace of orchestration of a wave. These options are + * required only if the resource being rolled out follows the Orchestrated + * pattern. + */ + export interface Schema$RolloutPlanWaveOrchestrationOptions { + /** + * Optional. Delays, if any, to be added between batches of projects. We allow + * multiple Delays to be specified, letting users set separate delays + * between batches of projects corresponding to different locations and + * batches of projects corresponding to the same location. + */ + delays?: Schema$RolloutPlanWaveOrchestrationOptionsDelay[]; + /** + * Optional. Maximum number of locations to be orchestrated in parallel. + */ + maxConcurrentLocations?: string | null; + /** + * Optional. Maximum number of resources to be orchestrated per location in + * parallel. + */ + maxConcurrentResourcesPerLocation?: string | null; + } + /** + * Options to control the delay, if any, between batches of projects. + */ + export interface Schema$RolloutPlanWaveOrchestrationOptionsDelay { + /** + * Optional. Controls whether the delay should only be added between batches of + * projects corresponding to different locations, or also between + * batches of projects corresponding to the same location. + * + * Must be set to DELIMITER_UNSPECIFIED if no delay is to be added. + */ + delimiter?: string | null; + /** + * Optional. The duration of the delay, if any, to be added between batches of + * projects. A zero duration corresponds to no delay. + */ + duration?: string | null; + /** + * Optional. Controls whether the specified duration is to be added at the end of + * each batch, or if the total processing time for each batch will be + * padded if needed to meet the specified duration. + * + * Must be set to TYPE_UNSPECIFIED if no delay is to be added. + */ + type?: string | null; + } + /** + * A selector which specifies what resource(s) are included in a given wave. + */ + export interface Schema$RolloutPlanWaveSelector { + /** + * Optional. Roll out to resources by Cloud locations. + */ + locationSelector?: Schema$RolloutPlanWaveSelectorLocationSelector; + /** + * Optional. Roll out to resources by Cloud Resource Manager resource hierarchy. + */ + resourceHierarchySelector?: Schema$RolloutPlanWaveSelectorResourceHierarchySelector; + } + /** + * Roll out to resources by location. + */ + export interface Schema$RolloutPlanWaveSelectorLocationSelector { + /** + * Optional. Example: "us-central1-a" + */ + includedLocations?: string[] | null; + } + /** + * Roll out to resources by Cloud Resource Manager resource hierarchy + * nodes such as projects, folders, orgs. + */ + export interface Schema$RolloutPlanWaveSelectorResourceHierarchySelector { + /** + * Optional. Format: "folders/{folder_id\}" + */ + includedFolders?: string[] | null; + /** + * Optional. Format: "organizations/{organization_id\}" + */ + includedOrganizations?: string[] | null; + /** + * Optional. Format: "projects/{project_id\}" + */ + includedProjects?: string[] | null; + } + /** + * The validation to be performed before progressing to the next wave. + */ + export interface Schema$RolloutPlanWaveValidation { + /** + * Optional. Metadata required if type = "time". + */ + timeBasedValidationMetadata?: Schema$RolloutPlanWaveValidationTimeBasedValidationMetadata; + /** + * Required. The type of the validation. If a type of validation is associated with + * a metadata object, the appropriate metadata field mapping to the + * validation type must be provided in the validation message. Possible + * values are in quotes below alongside an explanation: + * "manual": The system waits for an end-user approval API before + * progressing to the next wave. + * "time": The system waits for a user specified duration before + * progressing to the next wave. TimeBasedValidation must be provided. + */ + type?: string | null; + } + /** + * Metadata required if type = "time". + */ + export interface Schema$RolloutPlanWaveValidationTimeBasedValidationMetadata { + /** + * Optional. The duration that the system waits in between waves. This wait starts + * after all changes in the wave are rolled out. + */ + waitDuration?: string | null; + } /** * A rollout policy configuration. */ @@ -25447,6 +25858,128 @@ export namespace compute_beta { */ locationRolloutPolicies?: {[key: string]: string} | null; } + /** + * Specifications of the resource to roll out. + */ + export interface Schema$RolloutRolloutEntity { + /** + * Optional. Entity details for products using the Orchestrated Integration model. + */ + orchestratedEntity?: Schema$RolloutRolloutEntityOrchestratedEntity; + } + /** + * This message is used if the resource type follows the Orchestrated + * integration model with ProgressiveRollout. + */ + export interface Schema$RolloutRolloutEntityOrchestratedEntity { + /** + * Required. Specifies the behavior of the Rollout if an out of band update is + * detected in a project during a Rollout. It can be one of the following + * values: + * 1) overwrite : Overwrite the local value with the rollout value. + * 2) no_overwrite : Do not overwrite the local value with the rollout + * value. + */ + conflictBehavior?: string | null; + /** + * Required. Orchestration action during the Rollout. It can be one of the following + * values: + * 1) "update": Resources will be updated by the rollout. + * 2) "delete": Resources will be deleted by the rollout. + */ + orchestrationAction?: string | null; + /** + * Required. Fully qualified resource name of the resource which contains the source + * of truth of the configuration being rolled out across + * locations/projects. For example, in the case of a global Rollout which + * is applied across regions, this contains the name of the global + * resource created by the user which contains a payload for a resource + * that is orchestrated across regions. This follows the following format: + * //.googleapis.com/projects//locations/global// + * e.g. + * //osconfig.googleapis.com/projects/1/locations/global/policyOrchestrators/po1 + */ + orchestrationSource?: string | null; + } + export interface Schema$RolloutsListResponse { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of Rollout resources. + */ + items?: Schema$Rollout[]; + /** + * [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. + * end_interface: MixerListResponseWithEtagBuilder + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * Additional metadata about the status of each wave provided by the server. + */ + export interface Schema$RolloutWaveDetails { + /** + * Output only. Additional details of the wave for products using the Orchestrated + * Integration model. + */ + orchestratedWaveDetails?: Schema$RolloutWaveDetailsOrchestratedWaveDetails; + /** + * Output only. Wave name. + * Ex. wave1 + */ + waveDisplayName?: string | null; + /** + * Output only. System generated number for the wave. + */ + waveNumber?: string | null; + } + /** + * Details of the wave for products using the Orchestrated integration + * model. + */ + export interface Schema$RolloutWaveDetailsOrchestratedWaveDetails { + /** + * Output only. Resource completed so far. + */ + completedResourcesCount?: string | null; + /** + * Output only. Estimated total count of resources. + */ + estimatedTotalResourcesCount?: string | null; + /** + * Output only. Locations that failed during orchestration, and ProgressiveRollout + * stopped retrying. There may be some successful resources rolled out in + * the wave as the location may have failed later in the Rollout. + */ + failedLocations?: string[] | null; + /** + * Output only. Resources failed. + */ + failedResourcesCount?: string | null; + } /** * Represents a Route resource. * @@ -74762,6 +75295,204 @@ export namespace compute_beta { } } + /** + * 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('beta'); + * + * 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', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-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", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "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$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/beta/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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 @@ -74920,6 +75651,649 @@ export namespace compute_beta { 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('beta'); + * + * 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])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // For example, consider a situation where you make an initial request and + * // the request times out. If you make the request again with the same + * // request ID, the server can check if original operation with the same + * // request ID was received, and if so, will ignore the second request. This + * // prevents clients from accidentally creating duplicate 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": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "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$Globalvmextensionpolicies$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Globalvmextensionpolicies$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Globalvmextensionpolicies$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Globalvmextensionpolicies$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Globalvmextensionpolicies$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Globalvmextensionpolicies$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Globalvmextensionpolicies$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Globalvmextensionpolicies$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/beta/projects/{project}/global/vmExtensionPolicies' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists global VM extension policies. + * @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('beta'); + * + * 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.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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: '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. + */ + list( + params: Params$Resource$Globalvmextensionpolicies$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Globalvmextensionpolicies$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Globalvmextensionpolicies$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Globalvmextensionpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Globalvmextensionpolicies$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Globalvmextensionpolicies$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Globalvmextensionpolicies$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Globalvmextensionpolicies$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/beta/projects/{project}/global/vmExtensionPolicies' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates 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('beta'); + * + * 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.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])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // For example, consider a situation where you make an initial request and + * // the request times out. If you make the request again with the same + * // request ID, the server can check if original operation with the same + * // request ID was received, and if so, will ignore the second request. This + * // prevents clients from accidentally creating duplicate 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": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "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$Globalvmextensionpolicies$Update, + options: StreamMethodOptions + ): Promise>; + update( + params?: Params$Resource$Globalvmextensionpolicies$Update, + options?: MethodOptions + ): Promise>; + update( + params: Params$Resource$Globalvmextensionpolicies$Update, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + update( + params: Params$Resource$Globalvmextensionpolicies$Update, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + update( + params: Params$Resource$Globalvmextensionpolicies$Update, + callback: BodyResponseCallback + ): void; + update(callback: BodyResponseCallback): void; + update( + paramsOrCallback?: + | Params$Resource$Globalvmextensionpolicies$Update + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Globalvmextensionpolicies$Update; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Globalvmextensionpolicies$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/beta/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Globalvmextensionpolicies$Aggregatedlist @@ -75042,6 +76416,38 @@ export namespace compute_beta { */ 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. + */ + 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$GlobalVmExtensionPolicyRolloutOperationRolloutInput; + } export interface Params$Resource$Globalvmextensionpolicies$Get extends StandardParameters { /** @@ -75053,6 +76459,171 @@ export namespace compute_beta { */ project?: string; } + export interface Params$Resource$Globalvmextensionpolicies$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$GlobalVmExtensionPolicy; + } + 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: + * 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + 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; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same + * request ID, the server can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate 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$GlobalVmExtensionPolicy; + } export class Resource$Healthchecks { context: APIRequestContext; @@ -145874,8 +147445,10 @@ export namespace compute_beta { * hierarchical security policies will be automatically enrolled into Cloud * Armor Enterprise if not already enrolled. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.addAssociation instead if possible. + * 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: @@ -146074,6 +147647,10 @@ export namespace compute_beta { /** * 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: @@ -146278,8 +147855,10 @@ export namespace compute_beta { /** * Copies rules to the specified security policy. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.copyRules 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.cloneRules + * instead. * @example * ```js * // Before running the sample: @@ -146462,8 +148041,9 @@ export namespace compute_beta { /** * Deletes the specified policy. * - * Use of this API to remove firewall policies is deprecated. Use - * firewallPolicies.delete instead. + * 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: @@ -146644,8 +148224,9 @@ export namespace compute_beta { /** * List all of the ordered rules present in a single specified policy. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.get instead. + * 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: @@ -146810,8 +148391,10 @@ export namespace compute_beta { /** * Gets an association with the specified name. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.getAssociation instead if possible. + * 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: @@ -146967,8 +148550,9 @@ export namespace compute_beta { /** * Gets a rule at the specified priority. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.getRule instead. + * 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: @@ -147130,8 +148714,9 @@ export namespace compute_beta { * Creates a new policy in the specified organization using the data included * in the request. * - * Use of this API to insert firewall policies is deprecated. Use - * firewallPolicies.insert instead. + * 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: @@ -147344,8 +148929,9 @@ export namespace compute_beta { * List all the policies that have been configured for the specified * organization. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.list instead. + * 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: @@ -147579,8 +149165,10 @@ export namespace compute_beta { /** * Lists associations of a specified target, i.e., organization or folder. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.listAssociations instead if possible. + * 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 * // Before running the sample: @@ -147978,8 +149566,9 @@ export namespace compute_beta { /** * Moves the specified security policy. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.move 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.move instead. * @example * ```js * // Before running the sample: @@ -148162,8 +149751,9 @@ export namespace compute_beta { /** * Patches the specified policy with the data included in the request. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.patch 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.patch instead. * @example * ```js * // Before running the sample: @@ -148376,8 +149966,10 @@ export namespace compute_beta { /** * Patches a rule at the specified priority. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.patchRule 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.patchRule + * instead. * @example * ```js * // Before running the sample: @@ -148586,8 +150178,10 @@ export namespace compute_beta { /** * Removes an association for the specified security policy. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.removeAssociation instead if possible. + * 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: @@ -148770,736 +150364,741 @@ export namespace compute_beta { /** * Deletes a rule at 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('beta'); * - * 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.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. - * // - * // For example, consider a situation where you make an initial request and - * // the request times out. If you make the request again with the same - * // request ID, the server can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate 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 - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "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. - */ - removeRule( - params: Params$Resource$Organizationsecuritypolicies$Removerule, - options: StreamMethodOptions - ): Promise>; - removeRule( - params?: Params$Resource$Organizationsecuritypolicies$Removerule, - options?: MethodOptions - ): Promise>; - removeRule( - params: Params$Resource$Organizationsecuritypolicies$Removerule, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - removeRule( - params: Params$Resource$Organizationsecuritypolicies$Removerule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - removeRule( - params: Params$Resource$Organizationsecuritypolicies$Removerule, - callback: BodyResponseCallback - ): void; - removeRule(callback: BodyResponseCallback): void; - removeRule( - paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Removerule - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Removerule; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Removerule; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/beta/locations/global/securityPolicies/{securityPolicy}/removeRule' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Organizationsecuritypolicies$Addassociation - 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. - */ - 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; - /** - * 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. - */ - 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - 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; - /** - * Indicates fields to be cleared as part of this request. - */ - updateMask?: 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). - */ - requestId?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; - /** - * Indicates fields to be cleared as part of this request. - */ - updateMask?: 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; - } - - export class Resource$Packetmirrorings { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Retrieves an aggregated list of packetMirrorings. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * 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: + * // - 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('beta'); + * + * 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.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. + * // + * // For example, consider a situation where you make an initial request and + * // the request times out. If you make the request again with the same + * // request ID, the server can check if original operation with the same + * // request ID was received, and if so, will ignore the second request. This + * // prevents clients from accidentally creating duplicate 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 + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "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. + */ + removeRule( + params: Params$Resource$Organizationsecuritypolicies$Removerule, + options: StreamMethodOptions + ): Promise>; + removeRule( + params?: Params$Resource$Organizationsecuritypolicies$Removerule, + options?: MethodOptions + ): Promise>; + removeRule( + params: Params$Resource$Organizationsecuritypolicies$Removerule, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeRule( + params: Params$Resource$Organizationsecuritypolicies$Removerule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeRule( + params: Params$Resource$Organizationsecuritypolicies$Removerule, + callback: BodyResponseCallback + ): void; + removeRule(callback: BodyResponseCallback): void; + removeRule( + paramsOrCallback?: + | Params$Resource$Organizationsecuritypolicies$Removerule + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationsecuritypolicies$Removerule; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationsecuritypolicies$Removerule; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/locations/global/securityPolicies/{securityPolicy}/removeRule' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Organizationsecuritypolicies$Addassociation + 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. + */ + 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; + /** + * 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. + */ + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + 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; + /** + * Indicates fields to be cleared as part of this request. + */ + updateMask?: 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). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + /** + * Indicates fields to be cleared as part of this request. + */ + updateMask?: 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; + } + + export class Resource$Packetmirrorings { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves an aggregated list of packetMirrorings. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -227747,6 +229346,1890 @@ export namespace compute_beta { requestBody?: Schema$TestPermissionsRequest; } + export class Resource$Rolloutplans { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes a RolloutPlan. + * @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('beta'); + * + * 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.rolloutPlans.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])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // For example, consider a situation where you make an initial request and + * // the request times out. If you make the request again with the same + * // request ID, the server can check if original operation with the same + * // request ID was received, and if so, will ignore the second request. This + * // prevents clients from accidentally creating duplicate 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 RolloutPlan resource to delete. + * rolloutPlan: '[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": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "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$Rolloutplans$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Rolloutplans$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Rolloutplans$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Rolloutplans$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Rolloutplans$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Rolloutplans$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Rolloutplans$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Rolloutplans$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/beta/projects/{project}/global/rolloutPlans/{rolloutPlan}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'rolloutPlan'], + pathParams: ['project', 'rolloutPlan'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single project-scoped RolloutPlan. + * @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('beta'); + * + * 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.rolloutPlans.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 persistent rollout plan to return. + * rolloutPlan: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "locationScope": "my_locationScope", + * // "name": "my_name", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "waves": [] + * // } + * } + * + * 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$Rolloutplans$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Rolloutplans$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Rolloutplans$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Rolloutplans$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Rolloutplans$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Rolloutplans$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Rolloutplans$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Rolloutplans$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/beta/projects/{project}/global/rolloutPlans/{rolloutPlan}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'rolloutPlan'], + pathParams: ['project', 'rolloutPlan'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a new RolloutPlan in a given project and location. + * @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('beta'); + * + * 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.rolloutPlans.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 + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "locationScope": "my_locationScope", + * // "name": "my_name", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "waves": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "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$Rolloutplans$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Rolloutplans$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Rolloutplans$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Rolloutplans$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Rolloutplans$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Rolloutplans$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Rolloutplans$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Rolloutplans$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/beta/projects/{project}/global/rolloutPlans' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists RolloutPlans in a given project and location. + * @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('beta'); + * + * 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.rolloutPlans.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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "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. + */ + list( + params: Params$Resource$Rolloutplans$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Rolloutplans$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Rolloutplans$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Rolloutplans$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Rolloutplans$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Rolloutplans$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Rolloutplans$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Rolloutplans$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/beta/projects/{project}/global/rolloutPlans' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Rolloutplans$Delete + 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 RolloutPlan resource to delete. + */ + rolloutPlan?: string; + } + export interface Params$Resource$Rolloutplans$Get extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the persistent rollout plan to return. + */ + rolloutPlan?: string; + } + export interface Params$Resource$Rolloutplans$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$RolloutPlan; + } + export interface Params$Resource$Rolloutplans$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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Rollouts { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Cancels a Rollout. + * @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('beta'); + * + * 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.rollouts.cancel({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-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', + * // Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel + * // the rollout without taking any further actions. Note that products must + * // support at least one of these options, however, it does not need to support + * // both. + * rollback: 'placeholder-value', + * // Name of the Rollout resource to cancel. + * rollout: '[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": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "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$Rollouts$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Rollouts$Cancel, + options?: MethodOptions + ): Promise>; + cancel( + params: Params$Resource$Rollouts$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Rollouts$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Rollouts$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Rollouts$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Rollouts$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Rollouts$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/beta/projects/{project}/global/rollouts/{rollout}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'rollout'], + pathParams: ['project', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a Rollout. + * @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('beta'); + * + * 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.rollouts.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])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // For example, consider a situation where you make an initial request and + * // the request times out. If you make the request again with the same + * // request ID, the server can check if original operation with the same + * // request ID was received, and if so, will ignore the second request. This + * // prevents clients from accidentally creating duplicate 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 Rollout resource to delete. + * rollout: '[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": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "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$Rollouts$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Rollouts$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Rollouts$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Rollouts$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Rollouts$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Rollouts$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Rollouts$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Rollouts$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/beta/projects/{project}/global/rollouts/{rollout}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'rollout'], + pathParams: ['project', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single project-scoped Rollout. + * @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('beta'); + * + * 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.rollouts.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 persistent rollout to return. + * rollout: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "cancellationTime": "my_cancellationTime", + * // "completionTime": "my_completionTime", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentWaveNumber": "my_currentWaveNumber", + * // "description": "my_description", + * // "etag": "my_etag", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "rolloutEntity": {}, + * // "rolloutPlan": "my_rolloutPlan", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "waveDetails": [] + * // } + * } + * + * 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$Rollouts$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Rollouts$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Rollouts$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Rollouts$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Rollouts$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Rollouts$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Rollouts$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Rollouts$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/beta/projects/{project}/global/rollouts/{rollout}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'rollout'], + pathParams: ['project', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Rollouts in a given project and location. + * @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('beta'); + * + * 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.rollouts.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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "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. + */ + list( + params: Params$Resource$Rollouts$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Rollouts$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Rollouts$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Rollouts$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Rollouts$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Rollouts$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Rollouts$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Rollouts$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/beta/projects/{project}/global/rollouts' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Rollouts$Cancel 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; + /** + * Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel + * the rollout without taking any further actions. Note that products must + * support at least one of these options, however, it does not need to support + * both. + */ + rollback?: boolean; + /** + * Name of the Rollout resource to cancel. + */ + rollout?: string; + } + export interface Params$Resource$Rollouts$Delete 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 Rollout resource to delete. + */ + rollout?: string; + } + export interface Params$Resource$Rollouts$Get extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the persistent rollout to return. + */ + rollout?: string; + } + export interface Params$Resource$Rollouts$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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export class Resource$Routers { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/compute/v1.ts b/src/apis/compute/v1.ts index 73503bfdbae..75b9489332b 100644 --- a/src/apis/compute/v1.ts +++ b/src/apis/compute/v1.ts @@ -9209,7 +9209,7 @@ export namespace compute_v1 { * Only one of exactMatch, prefixMatch,suffixMatch, regexMatch,presentMatch or rangeMatch must be set. * * Regular expressions can only be used when the loadBalancingScheme is - * set to INTERNAL_SELF_MANAGED. + * set to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED. */ regexMatch?: string | null; /** @@ -9454,7 +9454,7 @@ export namespace compute_v1 { * Only one of presentMatch, exactMatch, orregexMatch must be set. * * Regular expressions can only be used when the loadBalancingScheme is - * set to INTERNAL_SELF_MANAGED. + * set to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED. */ regexMatch?: string | null; } @@ -9821,7 +9821,7 @@ export namespace compute_v1 { * * fullPathMatch must be from 1 to 1024 characters. * - * Only one of prefixMatch, fullPathMatch or regexMatch must be + * Only one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be * specified. */ fullPathMatch?: string | null; @@ -9885,7 +9885,8 @@ export namespace compute_v1 { * * The value must be from 1 to 1024 characters. * - * Only one of prefixMatch, fullPathMatch or regexMatch must be + * Only one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be + * specified. * specified. */ prefixMatch?: string | null; @@ -9902,11 +9903,11 @@ export namespace compute_v1 { * supplied with the original URL. For * more information about regular expression syntax, see Syntax. * - * Only one of prefixMatch, fullPathMatch orregexMatch must be + * Only one of prefixMatch, fullPathMatch,regexMatch or path_template_match must be * specified. * * Regular expressions can only be used when the loadBalancingScheme is - * set to INTERNAL_SELF_MANAGED. + * set to INTERNAL_SELF_MANAGED, EXTERNAL_MANAGED orINTERNAL_MANAGED. */ regexMatch?: string | null; } @@ -24610,6 +24611,10 @@ export namespace compute_v1 { * cannot be a dash. */ name?: string | null; + /** + * [Output Only] The parent of the security policy. + */ + parent?: string | null; recaptchaOptionsConfig?: Schema$SecurityPolicyRecaptchaOptionsConfig; /** * [Output Only] URL of the region where the regional security policy @@ -135752,8 +135757,10 @@ export namespace compute_v1 { * hierarchical security policies will be automatically enrolled into Cloud * Armor Enterprise if not already enrolled. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.addAssociation instead if possible. + * 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: @@ -135952,6 +135959,10 @@ export namespace compute_v1 { /** * 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: @@ -136150,8 +136161,10 @@ export namespace compute_v1 { /** * Copies rules to the specified security policy. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.copyRules 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.cloneRules + * instead. * @example * ```js * // Before running the sample: @@ -136334,8 +136347,9 @@ export namespace compute_v1 { /** * Deletes the specified policy. * - * Use of this API to remove firewall policies is deprecated. Use - * firewallPolicies.delete instead. + * 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: @@ -136516,8 +136530,9 @@ export namespace compute_v1 { /** * List all of the ordered rules present in a single specified policy. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.get instead. + * 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: @@ -136570,6 +136585,7 @@ export namespace compute_v1 { * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, * // "name": "my_name", + * // "parent": "my_parent", * // "recaptchaOptionsConfig": {}, * // "region": "my_region", * // "rules": [], @@ -136678,8 +136694,10 @@ export namespace compute_v1 { /** * Gets an association with the specified name. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.getAssociation instead if possible. + * 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: @@ -136835,8 +136853,9 @@ export namespace compute_v1 { /** * Gets a rule at the specified priority. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.getRule instead. + * 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: @@ -136992,8 +137011,9 @@ export namespace compute_v1 { * Creates a new policy in the specified organization using the data included * in the request. * - * Use of this API to insert firewall policies is deprecated. Use - * firewallPolicies.insert instead. + * 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: @@ -137061,6 +137081,7 @@ export namespace compute_v1 { * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, * // "name": "my_name", + * // "parent": "my_parent", * // "recaptchaOptionsConfig": {}, * // "region": "my_region", * // "rules": [], @@ -137202,8 +137223,9 @@ export namespace compute_v1 { * List all the policies that have been configured for the specified * organization. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.list instead. + * 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: @@ -137437,8 +137459,10 @@ export namespace compute_v1 { /** * Lists associations of a specified target, i.e., organization or folder. * - * Use of this API to read firewall policies is deprecated. Use - * firewallPolicies.listAssociations instead if possible. + * 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 * // Before running the sample: @@ -137836,8 +137860,9 @@ export namespace compute_v1 { /** * Moves the specified security policy. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.move 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.move instead. * @example * ```js * // Before running the sample: @@ -138020,8 +138045,9 @@ export namespace compute_v1 { /** * Patches the specified policy with the data included in the request. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.patch 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.patch instead. * @example * ```js * // Before running the sample: @@ -138087,6 +138113,7 @@ export namespace compute_v1 { * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, * // "name": "my_name", + * // "parent": "my_parent", * // "recaptchaOptionsConfig": {}, * // "region": "my_region", * // "rules": [], @@ -138228,8 +138255,10 @@ export namespace compute_v1 { /** * Patches a rule at the specified priority. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.patchRule 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.patchRule + * instead. * @example * ```js * // Before running the sample: @@ -138430,8 +138459,10 @@ export namespace compute_v1 { /** * Removes an association for the specified security policy. * - * Use of this API to modify firewall policies is deprecated. Use - * firewallPolicies.removeAssociation instead if possible. + * 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: @@ -138614,6 +138645,11 @@ export namespace compute_v1 { /** * 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. * @example * ```js * // Before running the sample: @@ -180348,6 +180384,7 @@ export namespace compute_v1 { * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, * // "name": "my_name", + * // "parent": "my_parent", * // "recaptchaOptionsConfig": {}, * // "region": "my_region", * // "rules": [], @@ -180684,6 +180721,7 @@ export namespace compute_v1 { * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, * // "name": "my_name", + * // "parent": "my_parent", * // "recaptchaOptionsConfig": {}, * // "region": "my_region", * // "rules": [], @@ -181137,6 +181175,7 @@ export namespace compute_v1 { * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, * // "name": "my_name", + * // "parent": "my_parent", * // "recaptchaOptionsConfig": {}, * // "region": "my_region", * // "rules": [], @@ -204219,6 +204258,7 @@ export namespace compute_v1 { * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, * // "name": "my_name", + * // "parent": "my_parent", * // "recaptchaOptionsConfig": {}, * // "region": "my_region", * // "rules": [], @@ -204551,6 +204591,7 @@ export namespace compute_v1 { * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, * // "name": "my_name", + * // "parent": "my_parent", * // "recaptchaOptionsConfig": {}, * // "region": "my_region", * // "rules": [], @@ -205239,6 +205280,7 @@ export namespace compute_v1 { * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, * // "name": "my_name", + * // "parent": "my_parent", * // "recaptchaOptionsConfig": {}, * // "region": "my_region", * // "rules": [], diff --git a/src/apis/config/v1.ts b/src/apis/config/v1.ts index a11842ae2d2..b4a850dc845 100644 --- a/src/apis/config/v1.ts +++ b/src/apis/config/v1.ts @@ -1455,7 +1455,7 @@ export namespace config_v1 { * * // Do the magic * const res = await config.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). * filter: 'placeholder-value', @@ -1583,7 +1583,7 @@ export namespace config_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/containeranalysis/v1.ts b/src/apis/containeranalysis/v1.ts index 6bdf88f2681..eae38461454 100644 --- a/src/apis/containeranalysis/v1.ts +++ b/src/apis/containeranalysis/v1.ts @@ -1130,6 +1130,10 @@ export namespace containeranalysis_v1 { * An image built by the pipeline. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Docker Registry 2.0 digest. */ @@ -1536,6 +1540,10 @@ export namespace containeranalysis_v1 { * A Go module artifact uploaded to Artifact Registry using the GoModule directive. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGoModule { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Go Module Artifact. */ @@ -1553,6 +1561,10 @@ export namespace containeranalysis_v1 { * A Maven artifact uploaded using the MavenArtifact directive. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Maven Artifact. */ @@ -1570,6 +1582,10 @@ export namespace containeranalysis_v1 { * An npm package uploaded to Artifact Registry using the NpmPackage directive. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the npm package. */ @@ -1587,6 +1603,10 @@ export namespace containeranalysis_v1 { * Artifact uploaded using the PythonPackage directive. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Python Artifact. */ diff --git a/src/apis/containeranalysis/v1alpha1.ts b/src/apis/containeranalysis/v1alpha1.ts index 6d337bd170f..9121830486c 100644 --- a/src/apis/containeranalysis/v1alpha1.ts +++ b/src/apis/containeranalysis/v1alpha1.ts @@ -1113,6 +1113,10 @@ export namespace containeranalysis_v1alpha1 { * An image built by the pipeline. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Docker Registry 2.0 digest. */ @@ -1519,6 +1523,10 @@ export namespace containeranalysis_v1alpha1 { * A Go module artifact uploaded to Artifact Registry using the GoModule directive. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGoModule { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Go Module Artifact. */ @@ -1536,6 +1544,10 @@ export namespace containeranalysis_v1alpha1 { * A Maven artifact uploaded using the MavenArtifact directive. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Maven Artifact. */ @@ -1553,6 +1565,10 @@ export namespace containeranalysis_v1alpha1 { * An npm package uploaded to Artifact Registry using the NpmPackage directive. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the npm package. */ @@ -1570,6 +1586,10 @@ export namespace containeranalysis_v1alpha1 { * Artifact uploaded using the PythonPackage directive. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Python Artifact. */ diff --git a/src/apis/containeranalysis/v1beta1.ts b/src/apis/containeranalysis/v1beta1.ts index 8755dd7a35d..ef1a6ebd1ce 100644 --- a/src/apis/containeranalysis/v1beta1.ts +++ b/src/apis/containeranalysis/v1beta1.ts @@ -1031,6 +1031,10 @@ export namespace containeranalysis_v1beta1 { * An image built by the pipeline. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Docker Registry 2.0 digest. */ @@ -1437,6 +1441,10 @@ export namespace containeranalysis_v1beta1 { * A Go module artifact uploaded to Artifact Registry using the GoModule directive. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedGoModule { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Go Module Artifact. */ @@ -1454,6 +1462,10 @@ export namespace containeranalysis_v1beta1 { * A Maven artifact uploaded using the MavenArtifact directive. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Maven Artifact. */ @@ -1471,6 +1483,10 @@ export namespace containeranalysis_v1beta1 { * An npm package uploaded to Artifact Registry using the NpmPackage directive. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the npm package. */ @@ -1488,6 +1504,10 @@ export namespace containeranalysis_v1beta1 { * Artifact uploaded using the PythonPackage directive. */ export interface Schema$ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Python Artifact. */ diff --git a/src/apis/content/v2.1.ts b/src/apis/content/v2.1.ts index 7d114100247..43d37e0ffaf 100644 --- a/src/apis/content/v2.1.ts +++ b/src/apis/content/v2.1.ts @@ -1113,15 +1113,15 @@ export namespace content_v2_1 { */ emailAddress?: string | null; /** - * Whether user is an order manager. + * This role is deprecated and can no longer be assigned. Any value set will be ignored. */ orderManager?: boolean | null; /** - * Whether user can access payment statements. + * This role is deprecated and can no longer be assigned. Any value set will be ignored. */ paymentsAnalyst?: boolean | null; /** - * Whether user can manage payment settings. + * This role is deprecated and can no longer be assigned. Any value set will be ignored. */ paymentsManager?: boolean | null; /** diff --git a/src/apis/dataform/v1.ts b/src/apis/dataform/v1.ts index f61db64ebf2..872b41e23bd 100644 --- a/src/apis/dataform/v1.ts +++ b/src/apis/dataform/v1.ts @@ -2300,7 +2300,7 @@ export namespace dataform_v1 { * * // Do the magic * const res = await dataform.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). * filter: 'placeholder-value', @@ -2586,7 +2586,7 @@ export namespace dataform_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/dataform/v1beta1.ts b/src/apis/dataform/v1beta1.ts index cae666a443a..357c3dec3eb 100644 --- a/src/apis/dataform/v1beta1.ts +++ b/src/apis/dataform/v1beta1.ts @@ -2300,7 +2300,7 @@ export namespace dataform_v1beta1 { * * // Do the magic * const res = await dataform.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). * filter: 'placeholder-value', @@ -2586,7 +2586,7 @@ export namespace dataform_v1beta1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/datamanager/v1.ts b/src/apis/datamanager/v1.ts index d3061f99197..06277d7261b 100644 --- a/src/apis/datamanager/v1.ts +++ b/src/apis/datamanager/v1.ts @@ -199,6 +199,27 @@ export namespace datamanager_v1 { */ userData?: Schema$UserData; } + /** + * A data encryption key wrapped by an AWS KMS key. + */ + export interface Schema$AwsWrappedKeyInfo { + /** + * Required. The base64 encoded encrypted data encryption key. + */ + encryptedDek?: string | null; + /** + * Required. The URI of the AWS KMS key used to decrypt the DEK. Should be in the format of "arn:{partition\}:kms:{region\}:{account_id\}:key/{key_id\}" + */ + kekUri?: string | null; + /** + * Required. The type of algorithm used to encrypt the data. + */ + keyType?: string | null; + /** + * Required. The Amazon Resource Name of the IAM Role to assume for KMS decryption access. Should be in the format of "arn:{partition\}:iam::{account_id\}:role/{role_name\}" + */ + roleArn?: string | null; + } /** * The cart data associated with the event. */ @@ -296,6 +317,10 @@ export namespace datamanager_v1 { * Encryption information for the data being ingested. */ export interface Schema$EncryptionInfo { + /** + * Amazon Web Services wrapped key information. + */ + awsWrappedKeyInfo?: Schema$AwsWrappedKeyInfo; /** * Google Cloud Platform wrapped key information. */ @@ -327,6 +352,10 @@ export namespace datamanager_v1 { * An event representing a user interaction with an advertiser's website or app. */ export interface Schema$Event { + /** + * Optional. A bucket of any [event parameters](https://developers.google.com/analytics/devguides/collection/protocol/ga4/reference/events) to be included within the event that were not already specified using other structured fields. + */ + additionalEventParameters?: Schema$EventParameter[]; /** * Optional. Identifiers and other information used to match the conversion event with other online activity (such as ad clicks). */ @@ -335,6 +364,10 @@ export namespace datamanager_v1 { * Optional. Information about the transaction and items associated with the event. */ cartData?: Schema$CartData; + /** + * Optional. A unique identifier for the user instance of a web client for this GA4 web stream. + */ + clientId?: string | null; /** * Optional. Information about whether the associated user has provided different types of consent. */ @@ -359,6 +392,10 @@ export namespace datamanager_v1 { * Optional. Information gathered about the device being used (if any) when the event happened. */ eventDeviceInfo?: Schema$DeviceInfo; + /** + * Optional. The name of the event. Required for GA4 events. + */ + eventName?: string | null; /** * Optional. Signal for where the event happened (web, app, in-store, etc.). */ @@ -383,11 +420,28 @@ export namespace datamanager_v1 { * Optional. Pieces of user provided data, representing the user the event is associated with. */ userData?: Schema$UserData; + /** + * Optional. A unique identifier for a user, as defined by the advertiser. + */ + userId?: string | null; /** * Optional. Advertiser-assessed information about the user at the time that the event happened. */ userProperties?: Schema$UserProperties; } + /** + * Event parameter for GA4 events. + */ + export interface Schema$EventParameter { + /** + * Required. The name of the parameter to use. + */ + parameterName?: string | null; + /** + * Required. The string representation of the value of the parameter to set. + */ + value?: string | null; + } /** * Experimental field representing unofficial fields. */ @@ -575,6 +629,14 @@ export namespace datamanager_v1 { * Represents an item in the cart associated with the event. */ export interface Schema$Item { + /** + * Optional. A bucket of any [event parameters related to an item](https://developers.google.com/analytics/devguides/collection/protocol/ga4/reference/events) to be included within the event that were not already specified using other structured fields. + */ + additionalItemParameters?: Schema$ItemParameter[]; + /** + * Optional. A unique identifier to reference the item. + */ + itemId?: string | null; /** * Optional. The product ID within the Merchant Center account. */ @@ -588,6 +650,19 @@ export namespace datamanager_v1 { */ unitPrice?: number | null; } + /** + * A bucket of any [event parameters related to an item](https://developers.google.com/analytics/devguides/collection/protocol/ga4/reference/events) to be included within the event that were not already specified using other structured fields. + */ + export interface Schema$ItemParameter { + /** + * Required. The name of the parameter to use. + */ + parameterName?: string | null; + /** + * Required. The string representation of the value of the parameter to set. + */ + value?: string | null; + } /** * Mobile IDs for the audience. At least one mobile ID is required. */ @@ -794,6 +869,10 @@ export namespace datamanager_v1 { * Advertiser-assessed information about the user at the time that the event happened. See https://support.google.com/google-ads/answer/14007601 for more details. */ export interface Schema$UserProperties { + /** + * Optional. A bucket of any additional [user properties](https://developers.google.com/analytics/devguides/collection/protocol/ga4/user-properties) for the user associated with this event. + */ + additionalUserProperties?: Schema$UserProperty[]; /** * Optional. Type of the customer associated with the event. */ @@ -803,6 +882,19 @@ export namespace datamanager_v1 { */ customerValueBucket?: string | null; } + /** + * A bucket of any additional [user properties](https://developers.google.com/analytics/devguides/collection/protocol/ga4/user-properties) for the user associated with this event. + */ + export interface Schema$UserProperty { + /** + * Required. The name of the user property to use. + */ + propertyName?: string | null; + /** + * Required. The string representation of the value of the user property to use. + */ + value?: string | null; + } /** * The warning count for a given warning reason. */ diff --git a/src/apis/datamigration/v1.ts b/src/apis/datamigration/v1.ts index d82018c52cd..9be62fe7afe 100644 --- a/src/apis/datamigration/v1.ts +++ b/src/apis/datamigration/v1.ts @@ -1456,6 +1456,10 @@ export namespace datamigration_v1 { * A list of operations that matches the specified filter in the request. */ operations?: Schema$Operation[]; + /** + * Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections e.g. when attempting to list all resources across all supported locations. + */ + unreachable?: string[] | null; } /** * Response message for 'ListPrivateConnections' request. @@ -13235,13 +13239,16 @@ export namespace datamigration_v1 { * pageSize: 'placeholder-value', * // The standard list page token. * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the [ListOperationsResponse.unreachable] field. This can only be `true` when reading across collections e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "operations": [] + * // "operations": [], + * // "unreachable": [] * // } * } * @@ -13388,6 +13395,10 @@ export namespace datamigration_v1 { * The standard list page token. */ pageToken?: string; + /** + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the [ListOperationsResponse.unreachable] field. This can only be `true` when reading across collections e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + */ + returnPartialSuccess?: boolean; } export class Resource$Projects$Locations$Privateconnections { diff --git a/src/apis/datamigration/v1beta1.ts b/src/apis/datamigration/v1beta1.ts index 6de9eeda32a..6a5e5b7e8e6 100644 --- a/src/apis/datamigration/v1beta1.ts +++ b/src/apis/datamigration/v1beta1.ts @@ -449,6 +449,10 @@ export namespace datamigration_v1beta1 { * A list of operations that matches the specified filter in the request. */ operations?: Schema$Operation[]; + /** + * Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections e.g. when attempting to list all resources across all supported locations. + */ + unreachable?: string[] | null; } /** * A resource that represents a Google Cloud location. @@ -5507,13 +5511,16 @@ export namespace datamigration_v1beta1 { * pageSize: 'placeholder-value', * // The standard list page token. * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the [ListOperationsResponse.unreachable] field. This can only be `true` when reading across collections e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "operations": [] + * // "operations": [], + * // "unreachable": [] * // } * } * @@ -5660,5 +5667,9 @@ export namespace datamigration_v1beta1 { * The standard list page token. */ pageToken?: string; + /** + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the [ListOperationsResponse.unreachable] field. This can only be `true` when reading across collections e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + */ + returnPartialSuccess?: boolean; } } diff --git a/src/apis/dataplex/v1.ts b/src/apis/dataplex/v1.ts index ad924842dfc..6af1f3b6d0b 100644 --- a/src/apis/dataplex/v1.ts +++ b/src/apis/dataplex/v1.ts @@ -1178,6 +1178,10 @@ export namespace dataplex_v1 { * DataProfileResult defines the output of DataProfileScan. Each field of the table will have field type specific profile result. */ export interface Schema$GoogleCloudDataplexV1DataProfileResult { + /** + * Output only. The status of publishing the data scan as Dataplex Universal Catalog metadata. + */ + catalogPublishingStatus?: Schema$GoogleCloudDataplexV1DataScanCatalogPublishingStatus; /** * Output only. The result of post scan actions. */ @@ -1364,6 +1368,10 @@ export namespace dataplex_v1 { * DataProfileScan related setting. */ export interface Schema$GoogleCloudDataplexV1DataProfileSpec { + /** + * Optional. If set, the latest DataScan job result will be published as Dataplex Universal Catalog metadata. + */ + catalogPublishingEnabled?: boolean | null; /** * Optional. The fields to exclude from data profile.If specified, the fields will be excluded from data profile, regardless of include_fields value. */ @@ -10983,16 +10991,12 @@ export namespace dataplex_v1 { export class Resource$Projects$Locations$Dataproducts { context: APIRequestContext; - dataAssets: Resource$Projects$Locations$Dataproducts$Dataassets; constructor(context: APIRequestContext) { this.context = context; - this.dataAssets = new Resource$Projects$Locations$Dataproducts$Dataassets( - this.context - ); } /** - * 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: @@ -11021,19 +11025,12 @@ export namespace dataplex_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataplex.projects.locations.dataProducts.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 dataplex.projects.locations.dataProducts.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/dataProducts/my-dataProduct', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, * }); * console.log(res.data); * @@ -11058,34 +11055,34 @@ export namespace dataplex_v1 { * @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$Dataproducts$Setiampolicy, + getIamPolicy( + params: Params$Resource$Projects$Locations$Dataproducts$Getiampolicy, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Dataproducts$Setiampolicy, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Dataproducts$Getiampolicy, options?: MethodOptions ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Dataproducts$Setiampolicy, + getIamPolicy( + params: Params$Resource$Projects$Locations$Dataproducts$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Dataproducts$Setiampolicy, + getIamPolicy( + params: Params$Resource$Projects$Locations$Dataproducts$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Dataproducts$Setiampolicy, + getIamPolicy( + params: Params$Resource$Projects$Locations$Dataproducts$Getiampolicy, callback: BodyResponseCallback ): void; - setIamPolicy( + getIamPolicy( callback: BodyResponseCallback ): void; - setIamPolicy( + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dataproducts$Setiampolicy + | Params$Resource$Projects$Locations$Dataproducts$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -11101,13 +11098,13 @@ export namespace dataplex_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dataproducts$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Dataproducts$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Dataproducts$Setiampolicy; + {} as Params$Resource$Projects$Locations$Dataproducts$Getiampolicy; options = {}; } @@ -11120,11 +11117,11 @@ export namespace dataplex_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace( + url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -11145,7 +11142,7 @@ export namespace dataplex_v1 { } /** - * 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. + * 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: @@ -11174,212 +11171,20 @@ export namespace dataplex_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await dataplex.projects.locations.dataProducts.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/dataProducts/my-dataProduct', + * const res = await dataplex.projects.locations.dataProducts.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/dataProducts/my-dataProduct', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } * }, - * ); - * 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$Dataproducts$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Dataproducts$Testiampermissions, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - testIamPermissions( - params: Params$Resource$Projects$Locations$Dataproducts$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Dataproducts$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Dataproducts$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Dataproducts$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dataproducts$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Dataproducts$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://dataplex.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+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$Dataproducts$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$Dataproducts$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$Dataproducts$Dataassets { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * 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/dataplex.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 dataplex = google.dataplex('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 dataplex.projects.locations.dataProducts.dataAssets.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/dataProducts/my-dataProduct/dataAssets/my-dataAsset', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, - * }); * console.log(res.data); * * // Example response @@ -11404,25 +11209,25 @@ export namespace dataplex_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Projects$Locations$Dataproducts$Dataassets$Setiampolicy, + params: Params$Resource$Projects$Locations$Dataproducts$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Projects$Locations$Dataproducts$Dataassets$Setiampolicy, + params?: Params$Resource$Projects$Locations$Dataproducts$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Projects$Locations$Dataproducts$Dataassets$Setiampolicy, + params: Params$Resource$Projects$Locations$Dataproducts$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Projects$Locations$Dataproducts$Dataassets$Setiampolicy, + params: Params$Resource$Projects$Locations$Dataproducts$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Projects$Locations$Dataproducts$Dataassets$Setiampolicy, + params: Params$Resource$Projects$Locations$Dataproducts$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy( @@ -11430,7 +11235,7 @@ export namespace dataplex_v1 { ): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dataproducts$Dataassets$Setiampolicy + | Params$Resource$Projects$Locations$Dataproducts$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -11446,13 +11251,13 @@ export namespace dataplex_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dataproducts$Dataassets$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Dataproducts$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Dataproducts$Dataassets$Setiampolicy; + {} as Params$Resource$Projects$Locations$Dataproducts$Setiampolicy; options = {}; } @@ -11519,22 +11324,21 @@ export namespace dataplex_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await dataplex.projects.locations.dataProducts.dataAssets.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/dataProducts/my-dataProduct/dataAssets/my-dataAsset', + * const res = await dataplex.projects.locations.dataProducts.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/dataProducts/my-dataProduct', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } * }, - * ); + * }, + * ); * console.log(res.data); * * // Example response @@ -11556,29 +11360,29 @@ export namespace dataplex_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Projects$Locations$Dataproducts$Dataassets$Testiampermissions, + params: Params$Resource$Projects$Locations$Dataproducts$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Projects$Locations$Dataproducts$Dataassets$Testiampermissions, + params?: Params$Resource$Projects$Locations$Dataproducts$Testiampermissions, options?: MethodOptions ): Promise< GaxiosResponseWithHTTP2 >; testIamPermissions( - params: Params$Resource$Projects$Locations$Dataproducts$Dataassets$Testiampermissions, + params: Params$Resource$Projects$Locations$Dataproducts$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Projects$Locations$Dataproducts$Dataassets$Testiampermissions, + params: Params$Resource$Projects$Locations$Dataproducts$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Projects$Locations$Dataproducts$Dataassets$Testiampermissions, + params: Params$Resource$Projects$Locations$Dataproducts$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -11586,7 +11390,7 @@ export namespace dataplex_v1 { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dataproducts$Dataassets$Testiampermissions + | Params$Resource$Projects$Locations$Dataproducts$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -11604,13 +11408,13 @@ export namespace dataplex_v1 { > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dataproducts$Dataassets$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Dataproducts$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Dataproducts$Dataassets$Testiampermissions; + {} as Params$Resource$Projects$Locations$Dataproducts$Testiampermissions; options = {}; } @@ -11650,7 +11454,18 @@ export namespace dataplex_v1 { } } - export interface Params$Resource$Projects$Locations$Dataproducts$Dataassets$Setiampolicy + export interface Params$Resource$Projects$Locations$Dataproducts$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$Dataproducts$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. @@ -11662,7 +11477,7 @@ export namespace dataplex_v1 { */ requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; } - export interface Params$Resource$Projects$Locations$Dataproducts$Dataassets$Testiampermissions + export interface Params$Resource$Projects$Locations$Dataproducts$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. @@ -18532,7 +18347,7 @@ export namespace dataplex_v1 { * * // Do the magic * const res = await dataplex.projects.locations.entryGroups.entries.list({ - * // Optional. A filter on the entries to return. Filters are case-sensitive. You can filter the request by the following fields: entry_type entry_source.display_nameThe comparison operators are =, !=, <, \>, <=, \>=. The service compares strings according to lexical order.You can use the logical operators AND, OR, NOT in the filter.You can use Wildcard "*", but for entry_type you need to provide the full project id or number.Example filter expressions: "entry_source.display_name=AnExampleDisplayName" "entry_type=projects/example-project/locations/global/entryTypes/example-entry_type" "entry_type=projects/example-project/locations/us/entryTypes/a* OR entry_type=projects/another-project/locations/x" "NOT entry_source.display_name=AnotherExampleDisplayName" + * // Optional. A filter on the entries to return. Filters are case-sensitive. You can filter the request by the following fields: entry_type entry_source.display_name parent_entryThe comparison operators are =, !=, <, \>, <=, \>=. The service compares strings according to lexical order.You can use the logical operators AND, OR, NOT in the filter.You can use Wildcard "*", but for entry_type and parent_entry you need to provide the full project id or number.You cannot use parent_entry in conjunction with other fields.Example filter expressions: "entry_source.display_name=AnExampleDisplayName" "entry_type=projects/example-project/locations/global/entryTypes/example-entry_type" "entry_type=projects/example-project/locations/us/entryTypes/a* OR entry_type=projects/another-project/locations/x" "NOT entry_source.display_name=AnotherExampleDisplayName" "parent_entry=projects/example-project/locations/us/entryGroups/example-entry-group/entries/example-entry" * filter: 'placeholder-value', * // Optional. Number of items to return per page. If there are remaining results, the service returns a next_page_token. If unspecified, the service returns at most 10 Entries. The maximum value is 100; values above 100 will be coerced to 100. * pageSize: 'placeholder-value', @@ -18872,7 +18687,7 @@ export namespace dataplex_v1 { export interface Params$Resource$Projects$Locations$Entrygroups$Entries$List extends StandardParameters { /** - * Optional. A filter on the entries to return. Filters are case-sensitive. You can filter the request by the following fields: entry_type entry_source.display_nameThe comparison operators are =, !=, <, \>, <=, \>=. The service compares strings according to lexical order.You can use the logical operators AND, OR, NOT in the filter.You can use Wildcard "*", but for entry_type you need to provide the full project id or number.Example filter expressions: "entry_source.display_name=AnExampleDisplayName" "entry_type=projects/example-project/locations/global/entryTypes/example-entry_type" "entry_type=projects/example-project/locations/us/entryTypes/a* OR entry_type=projects/another-project/locations/x" "NOT entry_source.display_name=AnotherExampleDisplayName" + * Optional. A filter on the entries to return. Filters are case-sensitive. You can filter the request by the following fields: entry_type entry_source.display_name parent_entryThe comparison operators are =, !=, <, \>, <=, \>=. The service compares strings according to lexical order.You can use the logical operators AND, OR, NOT in the filter.You can use Wildcard "*", but for entry_type and parent_entry you need to provide the full project id or number.You cannot use parent_entry in conjunction with other fields.Example filter expressions: "entry_source.display_name=AnExampleDisplayName" "entry_type=projects/example-project/locations/global/entryTypes/example-entry_type" "entry_type=projects/example-project/locations/us/entryTypes/a* OR entry_type=projects/another-project/locations/x" "NOT entry_source.display_name=AnotherExampleDisplayName" "parent_entry=projects/example-project/locations/us/entryGroups/example-entry-group/entries/example-entry" */ filter?: string; /** diff --git a/src/apis/datastream/v1.ts b/src/apis/datastream/v1.ts index ba408c187bc..0dca56abff7 100644 --- a/src/apis/datastream/v1.ts +++ b/src/apis/datastream/v1.ts @@ -921,6 +921,10 @@ export namespace datastream_v1 { * MongoDB collections to include in the stream. */ includeObjects?: Schema$MongodbCluster; + /** + * Optional. MongoDB JSON mode to use for the stream. + */ + jsonMode?: string | null; /** * Optional. Maximum number of concurrent backfill tasks. The number should be non-negative and less than or equal to 50. If not set (or set to 0), the system's default value is used */ diff --git a/src/apis/developerconnect/v1.ts b/src/apis/developerconnect/v1.ts index ee8e4526396..1faeffb35e8 100644 --- a/src/apis/developerconnect/v1.ts +++ b/src/apis/developerconnect/v1.ts @@ -735,7 +735,7 @@ export namespace developerconnect_v1 { */ artifactConfigs?: Schema$ArtifactConfig[]; /** - * Output only. [Output only] Create timestamp + * Output only. Create timestamp. */ createTime?: string | null; /** @@ -763,7 +763,7 @@ export namespace developerconnect_v1 { */ state?: string | null; /** - * Output only. [Output only] Update timestamp + * Output only. Update timestamp. */ updateTime?: string | null; } @@ -1369,7 +1369,7 @@ export namespace developerconnect_v1 { * * // Do the magic * const res = await developerconnect.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). * filter: 'placeholder-value', @@ -1498,7 +1498,7 @@ export namespace developerconnect_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -6667,7 +6667,7 @@ export namespace developerconnect_v1 { } /** - * Delete a single Insight. + * Deletes a single Insight. * @example * ```js * // Before running the sample: diff --git a/src/apis/dialogflow/v2.ts b/src/apis/dialogflow/v2.ts index 609c830bd98..7e2b2416550 100644 --- a/src/apis/dialogflow/v2.ts +++ b/src/apis/dialogflow/v2.ts @@ -8127,7 +8127,7 @@ export namespace dialogflow_v2 { */ enableCompletenessEvaluation?: boolean | null; /** - * Output only. Version for summarization evaluation. + * Optional. Version for summarization evaluation. */ evaluatorVersion?: string | null; } diff --git a/src/apis/dialogflow/v2beta1.ts b/src/apis/dialogflow/v2beta1.ts index 99688e3510f..906aaaea54a 100644 --- a/src/apis/dialogflow/v2beta1.ts +++ b/src/apis/dialogflow/v2beta1.ts @@ -5959,7 +5959,7 @@ export namespace dialogflow_v2beta1 { */ enableCompletenessEvaluation?: boolean | null; /** - * Output only. Version for summarization evaluation. + * Optional. Version for summarization evaluation. */ evaluatorVersion?: string | null; } diff --git a/src/apis/documentai/v1.ts b/src/apis/documentai/v1.ts index 0eb2a98790d..e7b4f3c983d 100644 --- a/src/apis/documentai/v1.ts +++ b/src/apis/documentai/v1.ts @@ -127,11 +127,14 @@ export namespace documentai_v1 { } /** - * Definition of the validation rules. Those are the input to the validator logic and they are used to validate a document. + * Definition of the validation rules. Those are the input to the validator logic and they are used to validate a document. Next ID: 3 */ export interface Schema$CloudAiDocumentaiLabHifiaToolsValidationValidatorInput { validationRules?: Schema$CloudAiDocumentaiLabHifiaToolsValidationValidatorInputValidationRule[]; } + /** + * Next ID: 9 + */ export interface Schema$CloudAiDocumentaiLabHifiaToolsValidationValidatorInputValidationRule { childAlignmentRule?: Schema$CloudAiDocumentaiLabHifiaToolsValidationValidatorInputValidationRuleChildAlignmentRule; /** @@ -146,6 +149,10 @@ export namespace documentai_v1 { * Name of the validation rule. */ name?: string | null; + /** + * Unique identifier of the rule. Optional. + */ + ruleId?: string | null; } /** * A rule for checking field alignment. Horizontal alignment checks if fields are on the same row by comparing y-coordinates of bounding box centers, while vertical alignment checks if fields are on the same column by comparing x-coordinates of bounding box centers. @@ -5821,7 +5828,7 @@ export namespace documentai_v1 { * * // Do the magic * const res = await documentai.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). * filter: 'placeholder-value', @@ -5964,7 +5971,7 @@ export namespace documentai_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/documentai/v1beta3.ts b/src/apis/documentai/v1beta3.ts index 0c47cc80d61..a9e79736b88 100644 --- a/src/apis/documentai/v1beta3.ts +++ b/src/apis/documentai/v1beta3.ts @@ -125,11 +125,14 @@ export namespace documentai_v1beta3 { } /** - * Definition of the validation rules. Those are the input to the validator logic and they are used to validate a document. + * Definition of the validation rules. Those are the input to the validator logic and they are used to validate a document. Next ID: 3 */ export interface Schema$CloudAiDocumentaiLabHifiaToolsValidationValidatorInput { validationRules?: Schema$CloudAiDocumentaiLabHifiaToolsValidationValidatorInputValidationRule[]; } + /** + * Next ID: 9 + */ export interface Schema$CloudAiDocumentaiLabHifiaToolsValidationValidatorInputValidationRule { childAlignmentRule?: Schema$CloudAiDocumentaiLabHifiaToolsValidationValidatorInputValidationRuleChildAlignmentRule; /** @@ -144,6 +147,10 @@ export namespace documentai_v1beta3 { * Name of the validation rule. */ name?: string | null; + /** + * Unique identifier of the rule. Optional. + */ + ruleId?: string | null; } /** * A rule for checking field alignment. Horizontal alignment checks if fields are on the same row by comparing y-coordinates of bounding box centers, while vertical alignment checks if fields are on the same column by comparing x-coordinates of bounding box centers. @@ -5658,7 +5665,7 @@ export namespace documentai_v1beta3 { * * // Do the magic * const res = await documentai.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). * filter: 'placeholder-value', @@ -5801,7 +5808,7 @@ export namespace documentai_v1beta3 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/firebaseappdistribution/v1.ts b/src/apis/firebaseappdistribution/v1.ts index 10686598242..43b12be1547 100644 --- a/src/apis/firebaseappdistribution/v1.ts +++ b/src/apis/firebaseappdistribution/v1.ts @@ -497,7 +497,7 @@ export namespace firebaseappdistribution_v1 { */ export interface Schema$GoogleFirebaseAppdistroV1BatchDeleteReleasesRequest { /** - * Required. The names of the release resources to delete. Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}` A maximum of 100 releases can be deleted per request. + * Required. The names of the release resources to delete. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}` A maximum of 100 releases can be deleted per request. */ names?: string[] | null; } @@ -693,7 +693,7 @@ export namespace firebaseappdistribution_v1 { */ firebaseConsoleUri?: string | null; /** - * The name of the release resource. Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}` + * The name of the release resource. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}` */ name?: string | null; /** @@ -896,7 +896,7 @@ export namespace firebaseappdistribution_v1 { * * // Do the magic * const res = await firebaseappdistribution.media.upload({ - * // Required. The name of the app resource. Format: `projects/{project_number\}/apps/{app_id\}` + * // Required. The name of the app resource. Format: `projects/{project_number\}/apps/{app\}` * app: 'projects/my-project/apps/my-app', * * // Request body metadata @@ -1029,7 +1029,7 @@ export namespace firebaseappdistribution_v1 { export interface Params$Resource$Media$Upload extends StandardParameters { /** - * Required. The name of the app resource. Format: `projects/{project_number\}/apps/{app_id\}` + * Required. The name of the app resource. Format: `projects/{project_number\}/apps/{app\}` */ app?: string; @@ -1106,7 +1106,7 @@ export namespace firebaseappdistribution_v1 { * * // Do the magic * const res = await firebaseappdistribution.projects.apps.getAabInfo({ - * // Required. The name of the `AabInfo` resource to retrieve. Format: `projects/{project_number\}/apps/{app_id\}/aabInfo` + * // Required. The name of the `AabInfo` resource to retrieve. Format: `projects/{project_number\}/apps/{app\}/aabInfo` * name: 'projects/my-project/apps/my-app/aabInfo', * }); * console.log(res.data); @@ -1226,7 +1226,7 @@ export namespace firebaseappdistribution_v1 { export interface Params$Resource$Projects$Apps$Getaabinfo extends StandardParameters { /** - * Required. The name of the `AabInfo` resource to retrieve. Format: `projects/{project_number\}/apps/{app_id\}/aabInfo` + * Required. The name of the `AabInfo` resource to retrieve. Format: `projects/{project_number\}/apps/{app\}/aabInfo` */ name?: string; } @@ -1275,7 +1275,7 @@ export namespace firebaseappdistribution_v1 { * * // Do the magic * const res = await firebaseappdistribution.projects.apps.releases.batchDelete({ - * // Required. The name of the app resource, which is the parent of the release resources. Format: `projects/{project_number\}/apps/{app_id\}` + * // Required. The name of the app resource, which is the parent of the release resources. Format: `projects/{project_number\}/apps/{app\}` * parent: 'projects/my-project/apps/my-app', * * // Request body metadata @@ -1421,7 +1421,7 @@ export namespace firebaseappdistribution_v1 { * * // Do the magic * const res = await firebaseappdistribution.projects.apps.releases.distribute({ - * // Required. The name of the release resource to distribute. Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}` + * // Required. The name of the release resource to distribute. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}` * name: 'projects/my-project/apps/my-app/releases/my-release', * * // Request body metadata @@ -1576,7 +1576,7 @@ export namespace firebaseappdistribution_v1 { * * // Do the magic * const res = await firebaseappdistribution.projects.apps.releases.get({ - * // Required. The name of the release resource to retrieve. Format: projects/{project_number\}/apps/{app_id\}/releases/{release_id\} + * // Required. The name of the release resource to retrieve. Format: projects/{project_number\}/apps/{app\}/releases/{release\} * name: 'projects/my-project/apps/my-app/releases/my-release', * }); * console.log(res.data); @@ -1738,7 +1738,7 @@ export namespace firebaseappdistribution_v1 { * pageSize: 'placeholder-value', * // Optional. A page token, received from a previous `ListReleases` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListReleases` must match the call that provided the page token. * pageToken: 'placeholder-value', - * // Required. The name of the app resource, which is the parent of the release resources. Format: `projects/{project_number\}/apps/{app_id\}` + * // Required. The name of the app resource, which is the parent of the release resources. Format: `projects/{project_number\}/apps/{app\}` * parent: 'projects/my-project/apps/my-app', * }); * console.log(res.data); @@ -1887,7 +1887,7 @@ export namespace firebaseappdistribution_v1 { * * // Do the magic * const res = await firebaseappdistribution.projects.apps.releases.patch({ - * // The name of the release resource. Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}` + * // The name of the release resource. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}` * name: 'projects/my-project/apps/my-app/releases/my-release', * // Optional. The list of fields to update. * updateMask: 'placeholder-value', @@ -2033,7 +2033,7 @@ export namespace firebaseappdistribution_v1 { export interface Params$Resource$Projects$Apps$Releases$Batchdelete extends StandardParameters { /** - * Required. The name of the app resource, which is the parent of the release resources. Format: `projects/{project_number\}/apps/{app_id\}` + * Required. The name of the app resource, which is the parent of the release resources. Format: `projects/{project_number\}/apps/{app\}` */ parent?: string; @@ -2045,7 +2045,7 @@ export namespace firebaseappdistribution_v1 { export interface Params$Resource$Projects$Apps$Releases$Distribute extends StandardParameters { /** - * Required. The name of the release resource to distribute. Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}` + * Required. The name of the release resource to distribute. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}` */ name?: string; @@ -2057,7 +2057,7 @@ export namespace firebaseappdistribution_v1 { export interface Params$Resource$Projects$Apps$Releases$Get extends StandardParameters { /** - * Required. The name of the release resource to retrieve. Format: projects/{project_number\}/apps/{app_id\}/releases/{release_id\} + * Required. The name of the release resource to retrieve. Format: projects/{project_number\}/apps/{app\}/releases/{release\} */ name?: string; } @@ -2080,14 +2080,14 @@ export namespace firebaseappdistribution_v1 { */ pageToken?: string; /** - * Required. The name of the app resource, which is the parent of the release resources. Format: `projects/{project_number\}/apps/{app_id\}` + * Required. The name of the app resource, which is the parent of the release resources. Format: `projects/{project_number\}/apps/{app\}` */ parent?: string; } export interface Params$Resource$Projects$Apps$Releases$Patch extends StandardParameters { /** - * The name of the release resource. Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}` + * The name of the release resource. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}` */ name?: string; /** diff --git a/src/apis/firebaseappdistribution/v1alpha.ts b/src/apis/firebaseappdistribution/v1alpha.ts index 52439e28fd0..477f063c5b5 100644 --- a/src/apis/firebaseappdistribution/v1alpha.ts +++ b/src/apis/firebaseappdistribution/v1alpha.ts @@ -279,7 +279,7 @@ export namespace firebaseappdistribution_v1alpha { */ export interface Schema$GoogleFirebaseAppdistroV1alphaBatchDeleteTestCasesRequest { /** - * Required. The name of the test cases to delete. A maximum number of 1000 test cases can be deleted in one batch Format: `projects/{project_number\}/apps/{app_id\}/testCases/{test_case_id\}` + * Required. The name of the test cases to delete. A maximum number of 1000 test cases can be deleted in one batch Format: `projects/{project_number\}/apps/{app\}/testCases/{test_case\}` */ names?: string[] | null; } @@ -376,6 +376,10 @@ export namespace firebaseappdistribution_v1alpha { * Output only. The reason why the test was inconclusive. */ inconclusiveReason?: string | null; + /** + * Identifier. The name of the device execution resource. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}/tests/{test\}/deviceExecutions/{device_execution\}` + */ + name?: string | null; /** * Output only. The path to a directory in Cloud Storage that will eventually contain the results for this execution. For example, gs://bucket/Nexus5-18-en-portrait. */ @@ -765,7 +769,7 @@ export namespace firebaseappdistribution_v1alpha { */ loginCredential?: Schema$GoogleFirebaseAppdistroV1alphaLoginCredential; /** - * The name of the release test resource. Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}/tests/{test_id\}` + * The name of the release test resource. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}/tests/{test\}` */ name?: string | null; /** @@ -862,7 +866,7 @@ export namespace firebaseappdistribution_v1alpha { */ displayName?: string | null; /** - * Identifier. The name of the test case resource. Format: `projects/{project_number\}/apps/{app_id\}/testCases/{test_case_id\}` + * Identifier. The name of the test case resource. Format: `projects/{project_number\}/apps/{app\}/testCases/{test_case\}` */ name?: string | null; /** @@ -879,7 +883,7 @@ export namespace firebaseappdistribution_v1alpha { */ displayName?: string | null; /** - * Identifier. The name of the test configuration resource. Format: `projects/{project_number\}/apps/{app_id\}/testConfig` + * Identifier. The name of the test configuration resource. Format: `projects/{project_number\}/apps/{app\}/testConfig` */ name?: string | null; /** @@ -955,7 +959,7 @@ export namespace firebaseappdistribution_v1alpha { */ allowMissing?: boolean | null; /** - * Required. The test case to update. The test case's `name` field is used to identify the test case to update. Format: `projects/{project_number\}/apps/{app_id\}/testCases/{test_case_id\}` + * Required. The test case to update. The test case's `name` field is used to identify the test case to update. Format: `projects/{project_number\}/apps/{app\}/testCases/{test_case\}` */ testCase?: Schema$GoogleFirebaseAppdistroV1alphaTestCase; } @@ -988,7 +992,7 @@ export namespace firebaseappdistribution_v1alpha { */ firebaseConsoleUri?: string | null; /** - * The name of the release resource. Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}` + * The name of the release resource. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}` */ name?: string | null; /** @@ -2450,7 +2454,7 @@ export namespace firebaseappdistribution_v1alpha { * * // Do the magic * const res = await firebaseappdistribution.projects.apps.getTestConfig({ - * // Required. The name of the `TestConfig` resource to retrieve. Format: `projects/{project_number\}/apps/{app_id\}/testConfig` + * // Required. The name of the `TestConfig` resource to retrieve. Format: `projects/{project_number\}/apps/{app\}/testConfig` * name: 'projects/my-project/apps/my-app/testConfig', * }); * console.log(res.data); @@ -2598,7 +2602,7 @@ export namespace firebaseappdistribution_v1alpha { * * // Do the magic * const res = await firebaseappdistribution.projects.apps.updateTestConfig({ - * // Identifier. The name of the test configuration resource. Format: `projects/{project_number\}/apps/{app_id\}/testConfig` + * // Identifier. The name of the test configuration resource. Format: `projects/{project_number\}/apps/{app\}/testConfig` * name: 'projects/my-project/apps/my-app/testConfig', * // Optional. The list of fields to update. * updateMask: 'placeholder-value', @@ -2732,14 +2736,14 @@ export namespace firebaseappdistribution_v1alpha { export interface Params$Resource$Projects$Apps$Gettestconfig extends StandardParameters { /** - * Required. The name of the `TestConfig` resource to retrieve. Format: `projects/{project_number\}/apps/{app_id\}/testConfig` + * Required. The name of the `TestConfig` resource to retrieve. Format: `projects/{project_number\}/apps/{app\}/testConfig` */ name?: string; } export interface Params$Resource$Projects$Apps$Updatetestconfig extends StandardParameters { /** - * Identifier. The name of the test configuration resource. Format: `projects/{project_number\}/apps/{app_id\}/testConfig` + * Identifier. The name of the test configuration resource. Format: `projects/{project_number\}/apps/{app\}/testConfig` */ name?: string; /** @@ -2800,7 +2804,7 @@ export namespace firebaseappdistribution_v1alpha { * // Do the magic * const res = await firebaseappdistribution.projects.apps.releases.tests.cancel( * { - * // Required. The name of the release test resource. Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}/tests/{test_id\}` + * // Required. The name of the release test resource. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}/tests/{test\}` * name: 'projects/my-project/apps/my-app/releases/my-release/tests/my-test', * }, * ); @@ -2948,7 +2952,7 @@ export namespace firebaseappdistribution_v1alpha { * // Do the magic * const res = await firebaseappdistribution.projects.apps.releases.tests.create( * { - * // Required. The name of the release resource, which is the parent of the test Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}` + * // Required. The name of the release resource, which is the parent of the test Format: `projects/{project_number\}/apps/{app\}/releases/{release\}` * parent: 'projects/my-project/apps/my-app/releases/my-release', * // Optional. The ID to use for the test, which will become the final component of the test's resource name. This value should be 4-63 characters, and valid characters are /a-z-/. If it is not provided one will be automatically generated. * releaseTestId: 'placeholder-value', @@ -3121,7 +3125,7 @@ export namespace firebaseappdistribution_v1alpha { * * // Do the magic * const res = await firebaseappdistribution.projects.apps.releases.tests.get({ - * // Required. The name of the release test resource. Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}/tests/{test_id\}` + * // Required. The name of the release test resource. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}/tests/{test\}` * name: 'projects/my-project/apps/my-app/releases/my-release/tests/my-test', * }); * console.log(res.data); @@ -3277,7 +3281,7 @@ export namespace firebaseappdistribution_v1alpha { * pageSize: 'placeholder-value', * // Optional. A page token, received from a previous `ListReleaseTests` call. Provide this to retrieve the subsequent page. * pageToken: 'placeholder-value', - * // Required. The name of the release resource, which is the parent of the tests Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}` + * // Required. The name of the release resource, which is the parent of the tests Format: `projects/{project_number\}/apps/{app\}/releases/{release\}` * parent: 'projects/my-project/apps/my-app/releases/my-release', * // Optional. The requested view on the returned ReleaseTests. Defaults to the basic view. * view: 'placeholder-value', @@ -3401,14 +3405,14 @@ export namespace firebaseappdistribution_v1alpha { export interface Params$Resource$Projects$Apps$Releases$Tests$Cancel extends StandardParameters { /** - * Required. The name of the release test resource. Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}/tests/{test_id\}` + * Required. The name of the release test resource. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}/tests/{test\}` */ name?: string; } export interface Params$Resource$Projects$Apps$Releases$Tests$Create extends StandardParameters { /** - * Required. The name of the release resource, which is the parent of the test Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}` + * Required. The name of the release resource, which is the parent of the test Format: `projects/{project_number\}/apps/{app\}/releases/{release\}` */ parent?: string; /** @@ -3424,7 +3428,7 @@ export namespace firebaseappdistribution_v1alpha { export interface Params$Resource$Projects$Apps$Releases$Tests$Get extends StandardParameters { /** - * Required. The name of the release test resource. Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}/tests/{test_id\}` + * Required. The name of the release test resource. Format: `projects/{project_number\}/apps/{app\}/releases/{release\}/tests/{test\}` */ name?: string; } @@ -3439,7 +3443,7 @@ export namespace firebaseappdistribution_v1alpha { */ pageToken?: string; /** - * Required. The name of the release resource, which is the parent of the tests Format: `projects/{project_number\}/apps/{app_id\}/releases/{release_id\}` + * Required. The name of the release resource, which is the parent of the tests Format: `projects/{project_number\}/apps/{app\}/releases/{release\}` */ parent?: string; /** @@ -3486,7 +3490,7 @@ export namespace firebaseappdistribution_v1alpha { * // Do the magic * const res = await firebaseappdistribution.projects.apps.testCases.batchDelete( * { - * // Required. The parent resource of the test cases being deleted. Format: `projects/{project_number\}/apps/{app_id\}` + * // Required. The parent resource of the test cases being deleted. Format: `projects/{project_number\}/apps/{app\}` * parent: 'projects/my-project/apps/my-app', * * // Request body metadata @@ -3634,7 +3638,7 @@ export namespace firebaseappdistribution_v1alpha { * // Do the magic * const res = await firebaseappdistribution.projects.apps.testCases.batchUpdate( * { - * // Required. The parent resource of the test cases being updated. Format: `projects/{project_number\}/apps/{app_id\}` + * // Required. The parent resource of the test cases being updated. Format: `projects/{project_number\}/apps/{app\}` * parent: 'projects/my-project/apps/my-app', * * // Request body metadata @@ -3792,7 +3796,7 @@ export namespace firebaseappdistribution_v1alpha { * // Do the magic * const res = * await firebaseappdistribution.projects.apps.testCases.clearTestCaseCache({ - * // Required. The name of the test case resource for which to clear the cache. Format: `projects/{project_number\}/apps/{app_id\}/testCases/{test_case_id\}` + * // Required. The name of the test case resource for which to clear the cache. Format: `projects/{project_number\}/apps/{app\}/testCases/{test_case\}` * testCase: 'projects/my-project/apps/my-app/testCases/my-testCase', * * // Request body metadata @@ -3947,7 +3951,7 @@ export namespace firebaseappdistribution_v1alpha { * * // Do the magic * const res = await firebaseappdistribution.projects.apps.testCases.create({ - * // Required. The parent resource where this test case will be created. Format: `projects/{project_number\}/apps/{app_id\}` + * // Required. The parent resource where this test case will be created. Format: `projects/{project_number\}/apps/{app\}` * parent: 'projects/my-project/apps/my-app', * // Optional. The ID to use for the test case, which will become the final component of the test case's resource name. This value should be 4-63 characters, and valid characters are /a-z-/. * testCaseId: 'placeholder-value', @@ -4115,7 +4119,7 @@ export namespace firebaseappdistribution_v1alpha { * * // Do the magic * const res = await firebaseappdistribution.projects.apps.testCases.delete({ - * // Required. The name of the test case resource to delete. Format: `projects/{project_number\}/apps/{app_id\}/testCases/{test_case_id\}` + * // Required. The name of the test case resource to delete. Format: `projects/{project_number\}/apps/{app\}/testCases/{test_case\}` * name: 'projects/my-project/apps/my-app/testCases/my-testCase', * }); * console.log(res.data); @@ -4248,7 +4252,7 @@ export namespace firebaseappdistribution_v1alpha { * * // Do the magic * const res = await firebaseappdistribution.projects.apps.testCases.get({ - * // Required. The name of the test case resource to retrieve. Format: `projects/{project_number\}/apps/{app_id\}/testCases/{test_case_id\}` + * // Required. The name of the test case resource to retrieve. Format: `projects/{project_number\}/apps/{app\}/testCases/{test_case\}` * name: 'projects/my-project/apps/my-app/testCases/my-testCase', * }); * console.log(res.data); @@ -4402,7 +4406,7 @@ export namespace firebaseappdistribution_v1alpha { * pageSize: 'placeholder-value', * // Optional. A page token, received from a previous `ListTestCases` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTestCases` must match the call that provided the page token. * pageToken: 'placeholder-value', - * // Required. The parent resource from which to list test cases. Format: `projects/{project_number\}/apps/{app_id\}` + * // Required. The parent resource from which to list test cases. Format: `projects/{project_number\}/apps/{app\}` * parent: 'projects/my-project/apps/my-app', * }); * console.log(res.data); @@ -4553,7 +4557,7 @@ export namespace firebaseappdistribution_v1alpha { * const res = await firebaseappdistribution.projects.apps.testCases.patch({ * // Optional. If set to true, and the test case is not found, a new test case will be created. * allowMissing: 'placeholder-value', - * // Identifier. The name of the test case resource. Format: `projects/{project_number\}/apps/{app_id\}/testCases/{test_case_id\}` + * // Identifier. The name of the test case resource. Format: `projects/{project_number\}/apps/{app\}/testCases/{test_case\}` * name: 'projects/my-project/apps/my-app/testCases/my-testCase', * * // Request body metadata @@ -4689,7 +4693,7 @@ export namespace firebaseappdistribution_v1alpha { export interface Params$Resource$Projects$Apps$Testcases$Batchdelete extends StandardParameters { /** - * Required. The parent resource of the test cases being deleted. Format: `projects/{project_number\}/apps/{app_id\}` + * Required. The parent resource of the test cases being deleted. Format: `projects/{project_number\}/apps/{app\}` */ parent?: string; @@ -4701,7 +4705,7 @@ export namespace firebaseappdistribution_v1alpha { export interface Params$Resource$Projects$Apps$Testcases$Batchupdate extends StandardParameters { /** - * Required. The parent resource of the test cases being updated. Format: `projects/{project_number\}/apps/{app_id\}` + * Required. The parent resource of the test cases being updated. Format: `projects/{project_number\}/apps/{app\}` */ parent?: string; @@ -4713,7 +4717,7 @@ export namespace firebaseappdistribution_v1alpha { export interface Params$Resource$Projects$Apps$Testcases$Cleartestcasecache extends StandardParameters { /** - * Required. The name of the test case resource for which to clear the cache. Format: `projects/{project_number\}/apps/{app_id\}/testCases/{test_case_id\}` + * Required. The name of the test case resource for which to clear the cache. Format: `projects/{project_number\}/apps/{app\}/testCases/{test_case\}` */ testCase?: string; @@ -4725,7 +4729,7 @@ export namespace firebaseappdistribution_v1alpha { export interface Params$Resource$Projects$Apps$Testcases$Create extends StandardParameters { /** - * Required. The parent resource where this test case will be created. Format: `projects/{project_number\}/apps/{app_id\}` + * Required. The parent resource where this test case will be created. Format: `projects/{project_number\}/apps/{app\}` */ parent?: string; /** @@ -4741,14 +4745,14 @@ export namespace firebaseappdistribution_v1alpha { export interface Params$Resource$Projects$Apps$Testcases$Delete extends StandardParameters { /** - * Required. The name of the test case resource to delete. Format: `projects/{project_number\}/apps/{app_id\}/testCases/{test_case_id\}` + * Required. The name of the test case resource to delete. Format: `projects/{project_number\}/apps/{app\}/testCases/{test_case\}` */ name?: string; } export interface Params$Resource$Projects$Apps$Testcases$Get extends StandardParameters { /** - * Required. The name of the test case resource to retrieve. Format: `projects/{project_number\}/apps/{app_id\}/testCases/{test_case_id\}` + * Required. The name of the test case resource to retrieve. Format: `projects/{project_number\}/apps/{app\}/testCases/{test_case\}` */ name?: string; } @@ -4763,7 +4767,7 @@ export namespace firebaseappdistribution_v1alpha { */ pageToken?: string; /** - * Required. The parent resource from which to list test cases. Format: `projects/{project_number\}/apps/{app_id\}` + * Required. The parent resource from which to list test cases. Format: `projects/{project_number\}/apps/{app\}` */ parent?: string; } @@ -4774,7 +4778,7 @@ export namespace firebaseappdistribution_v1alpha { */ allowMissing?: boolean; /** - * Identifier. The name of the test case resource. Format: `projects/{project_number\}/apps/{app_id\}/testCases/{test_case_id\}` + * Identifier. The name of the test case resource. Format: `projects/{project_number\}/apps/{app\}/testCases/{test_case\}` */ name?: string; diff --git a/src/apis/firebaseapphosting/v1.ts b/src/apis/firebaseapphosting/v1.ts index 8b1969c9ba6..e381f953319 100644 --- a/src/apis/firebaseapphosting/v1.ts +++ b/src/apis/firebaseapphosting/v1.ts @@ -379,7 +379,7 @@ export namespace firebaseapphosting_v1 { */ export interface Schema$Config { /** - * Optional. Environment variables for this build. + * Optional. Supplied environment variables for a specific build. Provided at Build creation time and immutable afterwards. This field is only applicable for Builds using a build image - (e.g., ContainerSource or ArchiveSource with locally_build_source) Attempts to set this for other build types will result in an error */ env?: Schema$EnvironmentVariable[]; /** diff --git a/src/apis/firebaseapphosting/v1beta.ts b/src/apis/firebaseapphosting/v1beta.ts index ccb0d9a88b0..a56364bce57 100644 --- a/src/apis/firebaseapphosting/v1beta.ts +++ b/src/apis/firebaseapphosting/v1beta.ts @@ -387,7 +387,7 @@ export namespace firebaseapphosting_v1beta { */ export interface Schema$Config { /** - * Optional. Environment variables for this build. + * Optional. Supplied environment variables for a specific build. Provided at Build creation time and immutable afterwards. This field is only applicable for Builds using a build image - (e.g., ContainerSource or ArchiveSource with locally_build_source) Attempts to set this for other build types will result in an error */ env?: Schema$EnvironmentVariable[]; /** diff --git a/src/apis/firebasestorage/v1beta.ts b/src/apis/firebasestorage/v1beta.ts index 7166a220e8d..5e44cc4b1fb 100644 --- a/src/apis/firebasestorage/v1beta.ts +++ b/src/apis/firebasestorage/v1beta.ts @@ -150,7 +150,7 @@ export namespace firebasestorage_v1beta { */ location?: string | null; /** - * Resource name of the default bucket. + * Identifier. Resource name of the default bucket. */ name?: string | null; /** diff --git a/src/apis/iamcredentials/v1.ts b/src/apis/iamcredentials/v1.ts index 3e33833fdd5..3cfe0819923 100644 --- a/src/apis/iamcredentials/v1.ts +++ b/src/apis/iamcredentials/v1.ts @@ -112,6 +112,7 @@ export namespace iamcredentials_v1 { */ export class Iamcredentials { context: APIRequestContext; + locations: Resource$Locations; projects: Resource$Projects; constructor(options: GlobalOptions, google?: GoogleConfigurable) { @@ -120,6 +121,7 @@ export namespace iamcredentials_v1 { google, }; + this.locations = new Resource$Locations(this.context); this.projects = new Resource$Projects(this.context); } } @@ -172,6 +174,19 @@ export namespace iamcredentials_v1 { */ token?: string | null; } + /** + * Represents a list of allowed locations for given service account. + */ + export interface Schema$ServiceAccountAllowedLocations { + /** + * Output only. The hex encoded bitmap of the trust boundary locations + */ + encodedLocations?: string | null; + /** + * Output only. The human readable trust boundary locations. For example, ["us-central1", "europe-west1"] + */ + locations?: string[] | null; + } export interface Schema$SignBlobRequest { /** * The sequence of service accounts in a delegation chain. Each service account must be granted the `roles/iam.serviceAccountTokenCreator` role on its next service account in the chain. The last service account in the chain must be granted the `roles/iam.serviceAccountTokenCreator` role on the service account that is specified in the `name` field of the request. The delegates must have the following format: `projects/-/serviceAccounts/{ACCOUNT_EMAIL_OR_UNIQUEID\}`. The `-` wildcard character is required; replacing it with a project ID is invalid. @@ -212,18 +227,396 @@ export namespace iamcredentials_v1 { */ signedJwt?: string | null; } + /** + * Represents a list of allowed locations for given workforce pool. + */ + export interface Schema$WorkforcePoolAllowedLocations { + /** + * Output only. The hex encoded bitmap of the trust boundary locations + */ + encodedLocations?: string | null; + /** + * Output only. The human readable trust boundary locations. For example, ["us-central1", "europe-west1"] + */ + locations?: string[] | null; + } + /** + * Represents a list of allowed locations for given workload identity pool. + */ + export interface Schema$WorkloadIdentityPoolAllowedLocations { + /** + * Output only. The hex encoded bitmap of the trust boundary locations + */ + encodedLocations?: string | null; + /** + * Output only. The human readable trust boundary locations. For example, ["us-central1", "europe-west1"] + */ + locations?: string[] | null; + } + + export class Resource$Locations { + context: APIRequestContext; + workforcePools: Resource$Locations$Workforcepools; + constructor(context: APIRequestContext) { + this.context = context; + this.workforcePools = new Resource$Locations$Workforcepools(this.context); + } + } + + export class Resource$Locations$Workforcepools { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns the trust boundary info for a given workforce pool. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/iamcredentials.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 iamcredentials = google.iamcredentials('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: [], + * }); + * + * // 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 iamcredentials.locations.workforcePools.getAllowedLocations( + * { + * // Required. Resource name of workforce pool. + * name: 'locations/my-location/workforcePools/my-workforcePool', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "encodedLocations": "my_encodedLocations", + * // "locations": [] + * // } + * } + * + * 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. + */ + getAllowedLocations( + params: Params$Resource$Locations$Workforcepools$Getallowedlocations, + options: StreamMethodOptions + ): Promise>; + getAllowedLocations( + params?: Params$Resource$Locations$Workforcepools$Getallowedlocations, + options?: MethodOptions + ): Promise>; + getAllowedLocations( + params: Params$Resource$Locations$Workforcepools$Getallowedlocations, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAllowedLocations( + params: Params$Resource$Locations$Workforcepools$Getallowedlocations, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAllowedLocations( + params: Params$Resource$Locations$Workforcepools$Getallowedlocations, + callback: BodyResponseCallback + ): void; + getAllowedLocations( + callback: BodyResponseCallback + ): void; + getAllowedLocations( + paramsOrCallback?: + | Params$Resource$Locations$Workforcepools$Getallowedlocations + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Locations$Workforcepools$Getallowedlocations; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Locations$Workforcepools$Getallowedlocations; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://iamcredentials.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}/allowedLocations').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$Workforcepools$Getallowedlocations + extends StandardParameters { + /** + * Required. Resource name of workforce pool. + */ + name?: string; + } export class Resource$Projects { context: APIRequestContext; + locations: Resource$Projects$Locations; serviceAccounts: Resource$Projects$Serviceaccounts; constructor(context: APIRequestContext) { this.context = context; + this.locations = new Resource$Projects$Locations(this.context); this.serviceAccounts = new Resource$Projects$Serviceaccounts( this.context ); } } + export class Resource$Projects$Locations { + context: APIRequestContext; + workloadIdentityPools: Resource$Projects$Locations$Workloadidentitypools; + constructor(context: APIRequestContext) { + this.context = context; + this.workloadIdentityPools = + new Resource$Projects$Locations$Workloadidentitypools(this.context); + } + } + + export class Resource$Projects$Locations$Workloadidentitypools { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns the trust boundary info for a given workload identity pool. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/iamcredentials.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 iamcredentials = google.iamcredentials('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: [], + * }); + * + * // 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 iamcredentials.projects.locations.workloadIdentityPools.getAllowedLocations( + * { + * // Required. Resource name of workload identity pool. + * name: 'projects/my-project/locations/my-location/workloadIdentityPools/my-workloadIdentityPool', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "encodedLocations": "my_encodedLocations", + * // "locations": [] + * // } + * } + * + * 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. + */ + getAllowedLocations( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Getallowedlocations, + options: StreamMethodOptions + ): Promise>; + getAllowedLocations( + params?: Params$Resource$Projects$Locations$Workloadidentitypools$Getallowedlocations, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + getAllowedLocations( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Getallowedlocations, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAllowedLocations( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Getallowedlocations, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAllowedLocations( + params: Params$Resource$Projects$Locations$Workloadidentitypools$Getallowedlocations, + callback: BodyResponseCallback + ): void; + getAllowedLocations( + callback: BodyResponseCallback + ): void; + getAllowedLocations( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Workloadidentitypools$Getallowedlocations + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Workloadidentitypools$Getallowedlocations; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Workloadidentitypools$Getallowedlocations; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://iamcredentials.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}/allowedLocations').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$Projects$Locations$Workloadidentitypools$Getallowedlocations + extends StandardParameters { + /** + * Required. Resource name of workload identity pool. + */ + name?: string; + } + export class Resource$Projects$Serviceaccounts { context: APIRequestContext; constructor(context: APIRequestContext) { @@ -539,6 +932,154 @@ export namespace iamcredentials_v1 { } } + /** + * Returns the trust boundary info for a given service account. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/iamcredentials.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 iamcredentials = google.iamcredentials('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: [], + * }); + * + * // 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 iamcredentials.projects.serviceAccounts.getAllowedLocations( + * { + * // Required. Resource name of service account. + * name: 'projects/my-project/serviceAccounts/my-serviceAccount', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "encodedLocations": "my_encodedLocations", + * // "locations": [] + * // } + * } + * + * 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. + */ + getAllowedLocations( + params: Params$Resource$Projects$Serviceaccounts$Getallowedlocations, + options: StreamMethodOptions + ): Promise>; + getAllowedLocations( + params?: Params$Resource$Projects$Serviceaccounts$Getallowedlocations, + options?: MethodOptions + ): Promise>; + getAllowedLocations( + params: Params$Resource$Projects$Serviceaccounts$Getallowedlocations, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAllowedLocations( + params: Params$Resource$Projects$Serviceaccounts$Getallowedlocations, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAllowedLocations( + params: Params$Resource$Projects$Serviceaccounts$Getallowedlocations, + callback: BodyResponseCallback + ): void; + getAllowedLocations( + callback: BodyResponseCallback + ): void; + getAllowedLocations( + paramsOrCallback?: + | Params$Resource$Projects$Serviceaccounts$Getallowedlocations + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Serviceaccounts$Getallowedlocations; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Serviceaccounts$Getallowedlocations; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://iamcredentials.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}/allowedLocations').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 + ); + } + } + /** * Signs a blob using a service account's system-managed private key. * @example @@ -860,6 +1401,13 @@ export namespace iamcredentials_v1 { */ requestBody?: Schema$GenerateIdTokenRequest; } + export interface Params$Resource$Projects$Serviceaccounts$Getallowedlocations + extends StandardParameters { + /** + * Required. Resource name of service account. + */ + name?: string; + } export interface Params$Resource$Projects$Serviceaccounts$Signblob extends StandardParameters { /** diff --git a/src/apis/merchantapi/datasources_v1.ts b/src/apis/merchantapi/datasources_v1.ts index 55b5e85bc76..113fabd496f 100644 --- a/src/apis/merchantapi/datasources_v1.ts +++ b/src/apis/merchantapi/datasources_v1.ts @@ -497,7 +497,7 @@ export namespace merchantapi_datasources_v1 { feedLabel?: string | null; } /** - * The supplemental data source for local and online products. After creation, you should make sure to link the supplemental product data source into one or more primary product data sources. + * The [supplemental data source](https://developers.google.com/merchant/api/guides/data-sources/api-sources#link-supplemental-data-source) for local and online products. After creation,you should make sure to link the supplemental product data source into one or more primary product data sources. */ export interface Schema$SupplementalProductDataSource { /** diff --git a/src/apis/merchantapi/datasources_v1beta.ts b/src/apis/merchantapi/datasources_v1beta.ts index 01a66e0fe18..472655b3861 100644 --- a/src/apis/merchantapi/datasources_v1beta.ts +++ b/src/apis/merchantapi/datasources_v1beta.ts @@ -497,7 +497,7 @@ export namespace merchantapi_datasources_v1beta { feedLabel?: string | null; } /** - * The supplemental data source for local and online products. After creation, you should make sure to link the supplemental product data source into one or more primary product data sources. + * The [supplemental data source](https://developers.google.com/merchant/api/guides/data-sources/api-sources#link-supplemental-data-source) for local and online products. After creation,you should make sure to link the supplemental product data source into one or more primary product data sources. */ export interface Schema$SupplementalProductDataSource { /** diff --git a/src/apis/merchantapi/products_v1.ts b/src/apis/merchantapi/products_v1.ts index bc54aa7cbf2..121c917b39d 100644 --- a/src/apis/merchantapi/products_v1.ts +++ b/src/apis/merchantapi/products_v1.ts @@ -798,6 +798,10 @@ export namespace merchantapi_products_v1 { * Shipping rules. */ shipping?: Schema$Shipping[]; + /** + * The business days during which orders can be handled. If not provided, Monday to Friday business days will be assumed. + */ + shippingHandlingBusinessDays?: Schema$ShippingBusinessDaysConfig[]; /** * Height of the item for shipping. */ @@ -810,6 +814,10 @@ export namespace merchantapi_products_v1 { * Length of the item for shipping. */ shippingLength?: Schema$ShippingDimension; + /** + * The business days during which orders are in transit. If not provided, Monday to Friday business days will be assumed. + */ + shippingTransitBusinessDays?: Schema$ShippingBusinessDaysConfig[]; /** * Weight of the item for shipping. */ @@ -1158,6 +1166,19 @@ export namespace merchantapi_products_v1 { */ service?: string | null; } + /** + * The business days during which orders are on their path to fulfillment. If not provided, Monday to Friday business days will be assumed. + */ + export interface Schema$ShippingBusinessDaysConfig { + /** + * Effective days of the week considered for the delivery time calculation. May not be empty. The more business days included the faster the delivery. Can be set through individual days (e.g. `MTWRF`), or day ranges (e.g. `Mon-Fri`). For more information about accepted formats, see [Shipping handling business days](https://support.google.com/merchants/answer/16072859). + */ + businessDays?: string | null; + /** + * The [CLDR territory code](http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml) of the country to which an item will ship. + */ + country?: string | null; + } /** * The ShippingDimension of the product. */ diff --git a/src/apis/networkconnectivity/v1.ts b/src/apis/networkconnectivity/v1.ts index c9124a1e635..4b3a1bec9e5 100644 --- a/src/apis/networkconnectivity/v1.ts +++ b/src/apis/networkconnectivity/v1.ts @@ -1477,7 +1477,7 @@ export namespace networkconnectivity_v1 { */ labels?: {[key: string]: string} | null; /** - * Immutable. A unique name of the resource in the form of `projects/{project_number\}/locations/global/PolicyBasedRoutes/{policy_based_route_id\}` + * Immutable. Identifier. A unique name of the resource in the form of `projects/{project_number\}/locations/global/PolicyBasedRoutes/{policy_based_route_id\}` */ name?: string | null; /** @@ -2686,7 +2686,7 @@ export namespace networkconnectivity_v1 { * * // Do the magic * const res = await networkconnectivity.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). * filter: 'placeholder-value', @@ -2827,7 +2827,7 @@ export namespace networkconnectivity_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/networkservices/v1beta1.ts b/src/apis/networkservices/v1beta1.ts index 238643603f2..f2c10559f28 100644 --- a/src/apis/networkservices/v1beta1.ts +++ b/src/apis/networkservices/v1beta1.ts @@ -227,7 +227,7 @@ export namespace networkservices_v1beta1 { */ labels?: {[key: string]: string} | null; /** - * Identifier. Name of the EndpointPolicy resource. It matches pattern `projects/{project\}/locations/global/endpointPolicies/{endpoint_policy\}`. + * Identifier. Name of the EndpointPolicy resource. It matches pattern `projects/{project\}/locations/x/endpointPolicies/{endpoint_policy\}`. */ name?: string | null; /** @@ -296,6 +296,10 @@ export namespace networkservices_v1beta1 { * Optional. The name for this extension. The name is logged as part of the HTTP request logs. The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens, and can have a maximum length of 63 characters. Additionally, the first character must be a letter and the last a letter or a number. This field is required except for AuthzExtension. */ name?: string | null; + /** + * Optional. When set to `TRUE`, enables `observability_mode` on the `ext_proc` filter. This makes `ext_proc` calls asynchronous. Envoy doesn't check for the response from `ext_proc` calls. For more information about the filter, see: https://www.envoyproxy.io/docs/envoy/v1.32.3/api-v3/extensions/filters/http/ext_proc/v3/ext_proc.proto#extensions-filters-http-ext-proc-v3-externalprocessor This field is helpful when you want to try out the extension in async log-only mode. Supported by regional `LbTrafficExtension` and `LbRouteExtension` resources. Only `STREAMED` (default) body processing mode is supported. + */ + observabilityMode?: boolean | null; /** * Optional. Configures the send mode for request body processing. The field can only be set if `supported_events` includes `REQUEST_BODY`. If `supported_events` includes `REQUEST_BODY`, but `request_body_send_mode` is unset, the default value `STREAMED` is used. When this field is set to `FULL_DUPLEX_STREAMED`, `supported_events` must include both `REQUEST_BODY` and `REQUEST_TRAILERS`. This field can be set only for `LbTrafficExtension` and `LbRouteExtension` resources, and only when the `service` field of the extension points to a `BackendService`. Only `FULL_DUPLEX_STREAMED` mode is supported for `LbRouteExtension` resources. */ @@ -441,7 +445,7 @@ export namespace networkservices_v1beta1 { */ description?: string | null; /** - * Optional. Gateways defines a list of gateways this GrpcRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/x/locations/global/gateways/` + * Optional. Gateways defines a list of gateways this GrpcRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/x/locations/x/gateways/` */ gateways?: string[] | null; /** @@ -453,11 +457,11 @@ export namespace networkservices_v1beta1 { */ labels?: {[key: string]: string} | null; /** - * Optional. Meshes defines a list of meshes this GrpcRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/x/locations/global/meshes/` + * Optional. Meshes defines a list of meshes this GrpcRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/x/locations/x/meshes/` */ meshes?: string[] | null; /** - * Identifier. Name of the GrpcRoute resource. It matches pattern `projects/x/locations/global/grpcRoutes/` + * Identifier. Name of the GrpcRoute resource. It matches pattern `projects/x/locations/x/grpcRoutes/` */ name?: string | null; /** @@ -653,7 +657,7 @@ export namespace networkservices_v1beta1 { */ description?: string | null; /** - * Optional. Gateways defines a list of gateways this HttpRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/x/locations/global/gateways/` + * Optional. Gateways defines a list of gateways this HttpRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/x/locations/x/gateways/` */ gateways?: string[] | null; /** @@ -665,11 +669,11 @@ export namespace networkservices_v1beta1 { */ labels?: {[key: string]: string} | null; /** - * Optional. Meshes defines a list of meshes this HttpRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/x/locations/global/meshes/` The attached Mesh should be of a type SIDECAR + * Optional. Meshes defines a list of meshes this HttpRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/x/locations/x/meshes/` The attached Mesh should be of a type SIDECAR */ meshes?: string[] | null; /** - * Identifier. Name of the HttpRoute resource. It matches pattern `projects/x/locations/global/httpRoutes/http_route_name\>`. + * Identifier. Name of the HttpRoute resource. It matches pattern `projects/x/locations/x/httpRoutes/http_route_name\>`. */ name?: string | null; /** @@ -1622,7 +1626,7 @@ export namespace networkservices_v1beta1 { */ labels?: {[key: string]: string} | null; /** - * Identifier. Name of the Mesh resource. It matches pattern `projects/x/locations/global/meshes/`. + * Identifier. Name of the Mesh resource. It matches pattern `projects/x/locations/x/meshes/`. */ name?: string | null; /** @@ -1884,7 +1888,7 @@ export namespace networkservices_v1beta1 { */ description?: string | null; /** - * Optional. Gateways defines a list of gateways this TcpRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/x/locations/global/gateways/` + * Optional. Gateways defines a list of gateways this TcpRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/x/locations/x/gateways/` */ gateways?: string[] | null; /** @@ -1892,11 +1896,11 @@ export namespace networkservices_v1beta1 { */ labels?: {[key: string]: string} | null; /** - * Optional. Meshes defines a list of meshes this TcpRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/x/locations/global/meshes/` The attached Mesh should be of a type SIDECAR + * Optional. Meshes defines a list of meshes this TcpRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/x/locations/x/meshes/` The attached Mesh should be of a type SIDECAR */ meshes?: string[] | null; /** - * Identifier. Name of the TcpRoute resource. It matches pattern `projects/x/locations/global/tcpRoutes/tcp_route_name\>`. + * Identifier. Name of the TcpRoute resource. It matches pattern `projects/x/locations/x/tcpRoutes/tcp_route_name\>`. */ name?: string | null; /** @@ -1981,7 +1985,7 @@ export namespace networkservices_v1beta1 { */ description?: string | null; /** - * Optional. Gateways defines a list of gateways this TlsRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/x/locations/global/gateways/` + * Optional. Gateways defines a list of gateways this TlsRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/x/locations/x/gateways/` */ gateways?: string[] | null; /** @@ -1989,11 +1993,11 @@ export namespace networkservices_v1beta1 { */ labels?: {[key: string]: string} | null; /** - * Optional. Meshes defines a list of meshes this TlsRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/x/locations/global/meshes/` The attached Mesh should be of a type SIDECAR + * Optional. Meshes defines a list of meshes this TlsRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/x/locations/x/meshes/` The attached Mesh should be of a type SIDECAR */ meshes?: string[] | null; /** - * Identifier. Name of the TlsRoute resource. It matches pattern `projects/x/locations/global/tlsRoutes/tls_route_name\>`. + * Identifier. Name of the TlsRoute resource. It matches pattern `projects/x/locations/x/tlsRoutes/tls_route_name\>`. */ name?: string | null; /** @@ -2462,7 +2466,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). * filter: 'placeholder-value', @@ -2591,7 +2595,7 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -3511,7 +3515,7 @@ export namespace networkservices_v1beta1 { * const res = await networkservices.projects.locations.endpointPolicies.create({ * // Required. Short name of the EndpointPolicy resource to be created. E.g. "CustomECS". * endpointPolicyId: 'placeholder-value', - * // Required. The parent resource of the EndpointPolicy. Must be in the format `projects/x/locations/global`. + * // Required. The parent resource of the EndpointPolicy. Must be in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', * * // Request body metadata @@ -3673,7 +3677,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.endpointPolicies.delete({ - * // Required. A name of the EndpointPolicy to delete. Must be in the format `projects/x/locations/global/endpointPolicies/x`. + * // Required. A name of the EndpointPolicy to delete. Must be in the format `projects/x/locations/x/endpointPolicies/x`. * name: 'projects/my-project/locations/my-location/endpointPolicies/my-endpointPolicie', * }); * console.log(res.data); @@ -3813,7 +3817,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.endpointPolicies.get({ - * // Required. A name of the EndpointPolicy to get. Must be in the format `projects/x/locations/global/endpointPolicies/x`. + * // Required. A name of the EndpointPolicy to get. Must be in the format `projects/x/locations/x/endpointPolicies/x`. * name: 'projects/my-project/locations/my-location/endpointPolicies/my-endpointPolicie', * }); * console.log(res.data); @@ -3963,7 +3967,7 @@ export namespace networkservices_v1beta1 { * pageSize: 'placeholder-value', * // The value returned by the last `ListEndpointPoliciesResponse` Indicates that this is a continuation of a prior `ListEndpointPolicies` call, and that the system should return the next page of data. * pageToken: 'placeholder-value', - * // Required. The project and location from which the EndpointPolicies should be listed, specified in the format `projects/x/locations/global`. + * // Required. The project and location from which the EndpointPolicies should be listed, specified in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', * // Optional. If true, allow partial responses for multi-regional Aggregated List requests. Otherwise if one of the locations is down or unreachable, the Aggregated List request will fail. * returnPartialSuccess: 'placeholder-value', @@ -4111,7 +4115,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.endpointPolicies.patch({ - * // Identifier. Name of the EndpointPolicy resource. It matches pattern `projects/{project\}/locations/global/endpointPolicies/{endpoint_policy\}`. + * // Identifier. Name of the EndpointPolicy resource. It matches pattern `projects/{project\}/locations/x/endpointPolicies/{endpoint_policy\}`. * name: 'projects/my-project/locations/my-location/endpointPolicies/my-endpointPolicie', * // Optional. Field mask is used to specify the fields to be overwritten in the EndpointPolicy 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', @@ -4249,7 +4253,7 @@ export namespace networkservices_v1beta1 { */ endpointPolicyId?: string; /** - * Required. The parent resource of the EndpointPolicy. Must be in the format `projects/x/locations/global`. + * Required. The parent resource of the EndpointPolicy. Must be in the format `projects/x/locations/x`. */ parent?: string; @@ -4261,14 +4265,14 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Endpointpolicies$Delete extends StandardParameters { /** - * Required. A name of the EndpointPolicy to delete. Must be in the format `projects/x/locations/global/endpointPolicies/x`. + * Required. A name of the EndpointPolicy to delete. Must be in the format `projects/x/locations/x/endpointPolicies/x`. */ name?: string; } export interface Params$Resource$Projects$Locations$Endpointpolicies$Get extends StandardParameters { /** - * Required. A name of the EndpointPolicy to get. Must be in the format `projects/x/locations/global/endpointPolicies/x`. + * Required. A name of the EndpointPolicy to get. Must be in the format `projects/x/locations/x/endpointPolicies/x`. */ name?: string; } @@ -4283,7 +4287,7 @@ export namespace networkservices_v1beta1 { */ pageToken?: string; /** - * Required. The project and location from which the EndpointPolicies should be listed, specified in the format `projects/x/locations/global`. + * Required. The project and location from which the EndpointPolicies should be listed, specified in the format `projects/x/locations/x`. */ parent?: string; /** @@ -4294,7 +4298,7 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Endpointpolicies$Patch extends StandardParameters { /** - * Identifier. Name of the EndpointPolicy resource. It matches pattern `projects/{project\}/locations/global/endpointPolicies/{endpoint_policy\}`. + * Identifier. Name of the EndpointPolicy resource. It matches pattern `projects/{project\}/locations/x/endpointPolicies/{endpoint_policy\}`. */ name?: string; /** @@ -5515,7 +5519,7 @@ export namespace networkservices_v1beta1 { * const res = await networkservices.projects.locations.grpcRoutes.create({ * // Required. Short name of the GrpcRoute resource to be created. * grpcRouteId: 'placeholder-value', - * // Required. The parent resource of the GrpcRoute. Must be in the format `projects/x/locations/global`. + * // Required. The parent resource of the GrpcRoute. Must be in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', * * // Request body metadata @@ -5674,7 +5678,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.grpcRoutes.delete({ - * // Required. A name of the GrpcRoute to delete. Must be in the format `projects/x/locations/global/grpcRoutes/x`. + * // Required. A name of the GrpcRoute to delete. Must be in the format `projects/x/locations/x/grpcRoutes/x`. * name: 'projects/my-project/locations/my-location/grpcRoutes/my-grpcRoute', * }); * console.log(res.data); @@ -5813,7 +5817,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.grpcRoutes.get({ - * // Required. A name of the GrpcRoute to get. Must be in the format `projects/x/locations/global/grpcRoutes/x`. + * // Required. A name of the GrpcRoute to get. Must be in the format `projects/x/locations/x/grpcRoutes/x`. * name: 'projects/my-project/locations/my-location/grpcRoutes/my-grpcRoute', * }); * console.log(res.data); @@ -5961,7 +5965,7 @@ export namespace networkservices_v1beta1 { * pageSize: 'placeholder-value', * // The value returned by the last `ListGrpcRoutesResponse` Indicates that this is a continuation of a prior `ListGrpcRoutes` call, and that the system should return the next page of data. * pageToken: 'placeholder-value', - * // Required. The project and location from which the GrpcRoutes should be listed, specified in the format `projects/x/locations/global`. + * // Required. The project and location from which the GrpcRoutes should be listed, specified in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', * // Optional. If true, allow partial responses for multi-regional Aggregated List requests. Otherwise if one of the locations is down or unreachable, the Aggregated List request will fail. * returnPartialSuccess: 'placeholder-value', @@ -6105,7 +6109,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.grpcRoutes.patch({ - * // Identifier. Name of the GrpcRoute resource. It matches pattern `projects/x/locations/global/grpcRoutes/` + * // Identifier. Name of the GrpcRoute resource. It matches pattern `projects/x/locations/x/grpcRoutes/` * name: 'projects/my-project/locations/my-location/grpcRoutes/my-grpcRoute', * // Optional. Field mask is used to specify the fields to be overwritten in the GrpcRoute 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', @@ -6240,7 +6244,7 @@ export namespace networkservices_v1beta1 { */ grpcRouteId?: string; /** - * Required. The parent resource of the GrpcRoute. Must be in the format `projects/x/locations/global`. + * Required. The parent resource of the GrpcRoute. Must be in the format `projects/x/locations/x`. */ parent?: string; @@ -6252,14 +6256,14 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Grpcroutes$Delete extends StandardParameters { /** - * Required. A name of the GrpcRoute to delete. Must be in the format `projects/x/locations/global/grpcRoutes/x`. + * Required. A name of the GrpcRoute to delete. Must be in the format `projects/x/locations/x/grpcRoutes/x`. */ name?: string; } export interface Params$Resource$Projects$Locations$Grpcroutes$Get extends StandardParameters { /** - * Required. A name of the GrpcRoute to get. Must be in the format `projects/x/locations/global/grpcRoutes/x`. + * Required. A name of the GrpcRoute to get. Must be in the format `projects/x/locations/x/grpcRoutes/x`. */ name?: string; } @@ -6274,7 +6278,7 @@ export namespace networkservices_v1beta1 { */ pageToken?: string; /** - * Required. The project and location from which the GrpcRoutes should be listed, specified in the format `projects/x/locations/global`. + * Required. The project and location from which the GrpcRoutes should be listed, specified in the format `projects/x/locations/x`. */ parent?: string; /** @@ -6285,7 +6289,7 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Grpcroutes$Patch extends StandardParameters { /** - * Identifier. Name of the GrpcRoute resource. It matches pattern `projects/x/locations/global/grpcRoutes/` + * Identifier. Name of the GrpcRoute resource. It matches pattern `projects/x/locations/x/grpcRoutes/` */ name?: string; /** @@ -6338,7 +6342,7 @@ export namespace networkservices_v1beta1 { * const res = await networkservices.projects.locations.httpRoutes.create({ * // Required. Short name of the HttpRoute resource to be created. * httpRouteId: 'placeholder-value', - * // Required. The parent resource of the HttpRoute. Must be in the format `projects/x/locations/global`. + * // Required. The parent resource of the HttpRoute. Must be in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', * * // Request body metadata @@ -6497,7 +6501,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.httpRoutes.delete({ - * // Required. A name of the HttpRoute to delete. Must be in the format `projects/x/locations/global/httpRoutes/x`. + * // Required. A name of the HttpRoute to delete. Must be in the format `projects/x/locations/x/httpRoutes/x`. * name: 'projects/my-project/locations/my-location/httpRoutes/my-httpRoute', * }); * console.log(res.data); @@ -6636,7 +6640,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.httpRoutes.get({ - * // Required. A name of the HttpRoute to get. Must be in the format `projects/x/locations/global/httpRoutes/x`. + * // Required. A name of the HttpRoute to get. Must be in the format `projects/x/locations/x/httpRoutes/x`. * name: 'projects/my-project/locations/my-location/httpRoutes/my-httpRoute', * }); * console.log(res.data); @@ -6784,7 +6788,7 @@ export namespace networkservices_v1beta1 { * pageSize: 'placeholder-value', * // The value returned by the last `ListHttpRoutesResponse` Indicates that this is a continuation of a prior `ListHttpRoutes` call, and that the system should return the next page of data. * pageToken: 'placeholder-value', - * // Required. The project and location from which the HttpRoutes should be listed, specified in the format `projects/x/locations/global`. + * // Required. The project and location from which the HttpRoutes should be listed, specified in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', * // Optional. If true, allow partial responses for multi-regional Aggregated List requests. Otherwise if one of the locations is down or unreachable, the Aggregated List request will fail. * returnPartialSuccess: 'placeholder-value', @@ -6928,7 +6932,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.httpRoutes.patch({ - * // Identifier. Name of the HttpRoute resource. It matches pattern `projects/x/locations/global/httpRoutes/http_route_name\>`. + * // Identifier. Name of the HttpRoute resource. It matches pattern `projects/x/locations/x/httpRoutes/http_route_name\>`. * name: 'projects/my-project/locations/my-location/httpRoutes/my-httpRoute', * // Optional. Field mask is used to specify the fields to be overwritten in the HttpRoute 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', @@ -7063,7 +7067,7 @@ export namespace networkservices_v1beta1 { */ httpRouteId?: string; /** - * Required. The parent resource of the HttpRoute. Must be in the format `projects/x/locations/global`. + * Required. The parent resource of the HttpRoute. Must be in the format `projects/x/locations/x`. */ parent?: string; @@ -7075,14 +7079,14 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Httproutes$Delete extends StandardParameters { /** - * Required. A name of the HttpRoute to delete. Must be in the format `projects/x/locations/global/httpRoutes/x`. + * Required. A name of the HttpRoute to delete. Must be in the format `projects/x/locations/x/httpRoutes/x`. */ name?: string; } export interface Params$Resource$Projects$Locations$Httproutes$Get extends StandardParameters { /** - * Required. A name of the HttpRoute to get. Must be in the format `projects/x/locations/global/httpRoutes/x`. + * Required. A name of the HttpRoute to get. Must be in the format `projects/x/locations/x/httpRoutes/x`. */ name?: string; } @@ -7097,7 +7101,7 @@ export namespace networkservices_v1beta1 { */ pageToken?: string; /** - * Required. The project and location from which the HttpRoutes should be listed, specified in the format `projects/x/locations/global`. + * Required. The project and location from which the HttpRoutes should be listed, specified in the format `projects/x/locations/x`. */ parent?: string; /** @@ -7108,7 +7112,7 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Httproutes$Patch extends StandardParameters { /** - * Identifier. Name of the HttpRoute resource. It matches pattern `projects/x/locations/global/httpRoutes/http_route_name\>`. + * Identifier. Name of the HttpRoute resource. It matches pattern `projects/x/locations/x/httpRoutes/http_route_name\>`. */ name?: string; /** @@ -10572,7 +10576,7 @@ export namespace networkservices_v1beta1 { * const res = await networkservices.projects.locations.meshes.create({ * // Required. Short name of the Mesh resource to be created. * meshId: 'placeholder-value', - * // Required. The parent resource of the Mesh. Must be in the format `projects/x/locations/global`. + * // Required. The parent resource of the Mesh. Must be in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', * * // Request body metadata @@ -10729,7 +10733,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.meshes.delete({ - * // Required. A name of the Mesh to delete. Must be in the format `projects/x/locations/global/meshes/x`. + * // Required. A name of the Mesh to delete. Must be in the format `projects/x/locations/x/meshes/x`. * name: 'projects/my-project/locations/my-location/meshes/my-meshe', * }); * console.log(res.data); @@ -10868,7 +10872,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.meshes.get({ - * // Required. A name of the Mesh to get. Must be in the format `projects/x/locations/global/meshes/x`. + * // Required. A name of the Mesh to get. Must be in the format `projects/x/locations/x/meshes/x`. * name: 'projects/my-project/locations/my-location/meshes/my-meshe', * }); * console.log(res.data); @@ -11014,7 +11018,7 @@ export namespace networkservices_v1beta1 { * pageSize: 'placeholder-value', * // The value returned by the last `ListMeshesResponse` Indicates that this is a continuation of a prior `ListMeshes` call, and that the system should return the next page of data. * pageToken: 'placeholder-value', - * // Required. The project and location from which the Meshes should be listed, specified in the format `projects/x/locations/global`. + * // Required. The project and location from which the Meshes should be listed, specified in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', * // Optional. If true, allow partial responses for multi-regional Aggregated List requests. Otherwise if one of the locations is down or unreachable, the Aggregated List request will fail. * returnPartialSuccess: 'placeholder-value', @@ -11156,7 +11160,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.meshes.patch({ - * // Identifier. Name of the Mesh resource. It matches pattern `projects/x/locations/global/meshes/`. + * // Identifier. Name of the Mesh resource. It matches pattern `projects/x/locations/x/meshes/`. * name: 'projects/my-project/locations/my-location/meshes/my-meshe', * // Optional. Field mask is used to specify the fields to be overwritten in the Mesh 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', @@ -11289,7 +11293,7 @@ export namespace networkservices_v1beta1 { */ meshId?: string; /** - * Required. The parent resource of the Mesh. Must be in the format `projects/x/locations/global`. + * Required. The parent resource of the Mesh. Must be in the format `projects/x/locations/x`. */ parent?: string; @@ -11301,14 +11305,14 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Meshes$Delete extends StandardParameters { /** - * Required. A name of the Mesh to delete. Must be in the format `projects/x/locations/global/meshes/x`. + * Required. A name of the Mesh to delete. Must be in the format `projects/x/locations/x/meshes/x`. */ name?: string; } export interface Params$Resource$Projects$Locations$Meshes$Get extends StandardParameters { /** - * Required. A name of the Mesh to get. Must be in the format `projects/x/locations/global/meshes/x`. + * Required. A name of the Mesh to get. Must be in the format `projects/x/locations/x/meshes/x`. */ name?: string; } @@ -11323,7 +11327,7 @@ export namespace networkservices_v1beta1 { */ pageToken?: string; /** - * Required. The project and location from which the Meshes should be listed, specified in the format `projects/x/locations/global`. + * Required. The project and location from which the Meshes should be listed, specified in the format `projects/x/locations/x`. */ parent?: string; /** @@ -11334,7 +11338,7 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Meshes$Patch extends StandardParameters { /** - * Identifier. Name of the Mesh resource. It matches pattern `projects/x/locations/global/meshes/`. + * Identifier. Name of the Mesh resource. It matches pattern `projects/x/locations/x/meshes/`. */ name?: string; /** @@ -13962,7 +13966,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.tcpRoutes.create({ - * // Required. The parent resource of the TcpRoute. Must be in the format `projects/x/locations/global`. + * // Required. The parent resource of the TcpRoute. Must be in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', * // Required. Short name of the TcpRoute resource to be created. * tcpRouteId: 'placeholder-value', @@ -14122,7 +14126,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.tcpRoutes.delete({ - * // Required. A name of the TcpRoute to delete. Must be in the format `projects/x/locations/global/tcpRoutes/x`. + * // Required. A name of the TcpRoute to delete. Must be in the format `projects/x/locations/x/tcpRoutes/x`. * name: 'projects/my-project/locations/my-location/tcpRoutes/my-tcpRoute', * }); * console.log(res.data); @@ -14261,7 +14265,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.tcpRoutes.get({ - * // Required. A name of the TcpRoute to get. Must be in the format `projects/x/locations/global/tcpRoutes/x`. + * // Required. A name of the TcpRoute to get. Must be in the format `projects/x/locations/x/tcpRoutes/x`. * name: 'projects/my-project/locations/my-location/tcpRoutes/my-tcpRoute', * }); * console.log(res.data); @@ -14408,7 +14412,7 @@ export namespace networkservices_v1beta1 { * pageSize: 'placeholder-value', * // The value returned by the last `ListTcpRoutesResponse` Indicates that this is a continuation of a prior `ListTcpRoutes` call, and that the system should return the next page of data. * pageToken: 'placeholder-value', - * // Required. The project and location from which the TcpRoutes should be listed, specified in the format `projects/x/locations/global`. + * // Required. The project and location from which the TcpRoutes should be listed, specified in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', * // Optional. If true, allow partial responses for multi-regional Aggregated List requests. Otherwise if one of the locations is down or unreachable, the Aggregated List request will fail. * returnPartialSuccess: 'placeholder-value', @@ -14552,7 +14556,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.tcpRoutes.patch({ - * // Identifier. Name of the TcpRoute resource. It matches pattern `projects/x/locations/global/tcpRoutes/tcp_route_name\>`. + * // Identifier. Name of the TcpRoute resource. It matches pattern `projects/x/locations/x/tcpRoutes/tcp_route_name\>`. * name: 'projects/my-project/locations/my-location/tcpRoutes/my-tcpRoute', * // Optional. Field mask is used to specify the fields to be overwritten in the TcpRoute 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', @@ -14682,7 +14686,7 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Tcproutes$Create extends StandardParameters { /** - * Required. The parent resource of the TcpRoute. Must be in the format `projects/x/locations/global`. + * Required. The parent resource of the TcpRoute. Must be in the format `projects/x/locations/x`. */ parent?: string; /** @@ -14698,14 +14702,14 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Tcproutes$Delete extends StandardParameters { /** - * Required. A name of the TcpRoute to delete. Must be in the format `projects/x/locations/global/tcpRoutes/x`. + * Required. A name of the TcpRoute to delete. Must be in the format `projects/x/locations/x/tcpRoutes/x`. */ name?: string; } export interface Params$Resource$Projects$Locations$Tcproutes$Get extends StandardParameters { /** - * Required. A name of the TcpRoute to get. Must be in the format `projects/x/locations/global/tcpRoutes/x`. + * Required. A name of the TcpRoute to get. Must be in the format `projects/x/locations/x/tcpRoutes/x`. */ name?: string; } @@ -14720,7 +14724,7 @@ export namespace networkservices_v1beta1 { */ pageToken?: string; /** - * Required. The project and location from which the TcpRoutes should be listed, specified in the format `projects/x/locations/global`. + * Required. The project and location from which the TcpRoutes should be listed, specified in the format `projects/x/locations/x`. */ parent?: string; /** @@ -14731,7 +14735,7 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Tcproutes$Patch extends StandardParameters { /** - * Identifier. Name of the TcpRoute resource. It matches pattern `projects/x/locations/global/tcpRoutes/tcp_route_name\>`. + * Identifier. Name of the TcpRoute resource. It matches pattern `projects/x/locations/x/tcpRoutes/tcp_route_name\>`. */ name?: string; /** @@ -14782,7 +14786,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.tlsRoutes.create({ - * // Required. The parent resource of the TlsRoute. Must be in the format `projects/x/locations/global`. + * // Required. The parent resource of the TlsRoute. Must be in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', * // Required. Short name of the TlsRoute resource to be created. * tlsRouteId: 'placeholder-value', @@ -14942,7 +14946,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.tlsRoutes.delete({ - * // Required. A name of the TlsRoute to delete. Must be in the format `projects/x/locations/global/tlsRoutes/x`. + * // Required. A name of the TlsRoute to delete. Must be in the format `projects/x/locations/x/tlsRoutes/x`. * name: 'projects/my-project/locations/my-location/tlsRoutes/my-tlsRoute', * }); * console.log(res.data); @@ -15081,7 +15085,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.tlsRoutes.get({ - * // Required. A name of the TlsRoute to get. Must be in the format `projects/x/locations/global/tlsRoutes/x`. + * // Required. A name of the TlsRoute to get. Must be in the format `projects/x/locations/x/tlsRoutes/x`. * name: 'projects/my-project/locations/my-location/tlsRoutes/my-tlsRoute', * }); * console.log(res.data); @@ -15228,7 +15232,7 @@ export namespace networkservices_v1beta1 { * pageSize: 'placeholder-value', * // The value returned by the last `ListTlsRoutesResponse` Indicates that this is a continuation of a prior `ListTlsRoutes` call, and that the system should return the next page of data. * pageToken: 'placeholder-value', - * // Required. The project and location from which the TlsRoutes should be listed, specified in the format `projects/x/locations/global`. + * // Required. The project and location from which the TlsRoutes should be listed, specified in the format `projects/x/locations/x`. * parent: 'projects/my-project/locations/my-location', * // Optional. If true, allow partial responses for multi-regional Aggregated List requests. Otherwise if one of the locations is down or unreachable, the Aggregated List request will fail. * returnPartialSuccess: 'placeholder-value', @@ -15372,7 +15376,7 @@ export namespace networkservices_v1beta1 { * * // Do the magic * const res = await networkservices.projects.locations.tlsRoutes.patch({ - * // Identifier. Name of the TlsRoute resource. It matches pattern `projects/x/locations/global/tlsRoutes/tls_route_name\>`. + * // Identifier. Name of the TlsRoute resource. It matches pattern `projects/x/locations/x/tlsRoutes/tls_route_name\>`. * name: 'projects/my-project/locations/my-location/tlsRoutes/my-tlsRoute', * // Optional. Field mask is used to specify the fields to be overwritten in the TlsRoute 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', @@ -15502,7 +15506,7 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Tlsroutes$Create extends StandardParameters { /** - * Required. The parent resource of the TlsRoute. Must be in the format `projects/x/locations/global`. + * Required. The parent resource of the TlsRoute. Must be in the format `projects/x/locations/x`. */ parent?: string; /** @@ -15518,14 +15522,14 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Tlsroutes$Delete extends StandardParameters { /** - * Required. A name of the TlsRoute to delete. Must be in the format `projects/x/locations/global/tlsRoutes/x`. + * Required. A name of the TlsRoute to delete. Must be in the format `projects/x/locations/x/tlsRoutes/x`. */ name?: string; } export interface Params$Resource$Projects$Locations$Tlsroutes$Get extends StandardParameters { /** - * Required. A name of the TlsRoute to get. Must be in the format `projects/x/locations/global/tlsRoutes/x`. + * Required. A name of the TlsRoute to get. Must be in the format `projects/x/locations/x/tlsRoutes/x`. */ name?: string; } @@ -15540,7 +15544,7 @@ export namespace networkservices_v1beta1 { */ pageToken?: string; /** - * Required. The project and location from which the TlsRoutes should be listed, specified in the format `projects/x/locations/global`. + * Required. The project and location from which the TlsRoutes should be listed, specified in the format `projects/x/locations/x`. */ parent?: string; /** @@ -15551,7 +15555,7 @@ export namespace networkservices_v1beta1 { export interface Params$Resource$Projects$Locations$Tlsroutes$Patch extends StandardParameters { /** - * Identifier. Name of the TlsRoute resource. It matches pattern `projects/x/locations/global/tlsRoutes/tls_route_name\>`. + * Identifier. Name of the TlsRoute resource. It matches pattern `projects/x/locations/x/tlsRoutes/tls_route_name\>`. */ name?: string; /** diff --git a/src/apis/osconfig/v1.ts b/src/apis/osconfig/v1.ts index 1e0db40ee0a..3213d0718ff 100644 --- a/src/apis/osconfig/v1.ts +++ b/src/apis/osconfig/v1.ts @@ -1502,6 +1502,10 @@ export namespace osconfig_v1 { * Post-patch reboot settings. */ rebootConfig?: string | null; + /** + * Optional. Enables enhanced reporting for the patch job: 1. Allows the patch job to skip unpatchable instances, reporting them as SKIPPED. An instance can be unpatchable for two reasons: a. The instance runs Container-Optimized OS (COS), which cannot be patched. b. The patch job's configuration prohibits patching on Managed Instance Groups (MIGs) through the PatchConfig.migInstancesAllowed field, and the instance is part of one. 2. The system reports the patch job as SUCCEEDED if it completes without errors, regardless of whether any instances were SKIPPED. 3. The system reports the patch job as COMPLETED_WITH_INACTIVE_VMS if it completes without errors, but some instances were INACTIVE and therefore not patched. + */ + skipUnpatchableVms?: boolean | null; /** * Windows update settings. Use this override the default windows patch rules. */ @@ -1740,6 +1744,10 @@ export namespace osconfig_v1 { * Number of instances rebooting. */ rebootingInstanceCount?: string | null; + /** + * Number of instances that were skipped during patching. + */ + skippedInstanceCount?: string | null; /** * Number of instances that have started. */ diff --git a/src/apis/osconfig/v1beta.ts b/src/apis/osconfig/v1beta.ts index 86f3d4c1ee9..e52695c2ae3 100644 --- a/src/apis/osconfig/v1beta.ts +++ b/src/apis/osconfig/v1beta.ts @@ -713,6 +713,10 @@ export namespace osconfig_v1beta { * Post-patch reboot settings. */ rebootConfig?: string | null; + /** + * Optional. Enables enhanced reporting for the patch job: 1. Allows the patch job to skip unpatchable instances, reporting them as SKIPPED. An instance can be unpatchable for two reasons: a. The instance runs Container-Optimized OS (COS), which cannot be patched. b. The patch job's configuration prohibits patching on Managed Instance Groups (MIGs) through the PatchConfig.migInstancesAllowed field, and the instance is part of one. 2. The system reports the patch job as SUCCEEDED if it completes without errors, regardless of whether any instances were SKIPPED. 3. The system reports the patch job as COMPLETED_WITH_INACTIVE_VMS if it completes without errors, but some instances were INACTIVE and therefore not patched. + */ + skipUnpatchableVms?: boolean | null; /** * Windows update settings. Use this override the default windows patch rules. */ @@ -951,6 +955,10 @@ export namespace osconfig_v1beta { * Number of instances rebooting. */ rebootingInstanceCount?: string | null; + /** + * Number of instances that were skipped during patching. + */ + skippedInstanceCount?: string | null; /** * Number of instances that have started. */ diff --git a/src/apis/retail/v2alpha.ts b/src/apis/retail/v2alpha.ts index 3346cdfcf77..484a0e3b90b 100644 --- a/src/apis/retail/v2alpha.ts +++ b/src/apis/retail/v2alpha.ts @@ -1318,7 +1318,7 @@ export namespace retail_v2alpha { */ export interface Schema$GoogleCloudRetailV2alphaExportProductsRequest { /** - * This field is deprecated. Any filter provided will be ignored. + * Deprecated: This field is deprecated. Any filter provided will be ignored. */ filter?: string | null; /** @@ -1348,7 +1348,7 @@ export namespace retail_v2alpha { */ export interface Schema$GoogleCloudRetailV2alphaExportUserEventsRequest { /** - * A filtering expression to specify restrictions on returned events. The expression is a sequence of terms. Each term applies a restriction to the returned user events. Use this expression to restrict results to a specific time range or to filter events by eventType. For example, `eventTime \> "2012-04-23T18:25:43.511Z" eventsMissingCatalogItems eventTime<"2012-04-23T18:25:43.511Z" eventType=search` We expect only three types of fields: * `eventTime`: This can be specified twice, once with a less than operator and once with a greater than operator. The `eventTime` restriction should result in one, contiguous, valid, `eventTime` range. * `eventType`: Boolean operators `OR` and `NOT` are supported if the expression is enclosed in parentheses and the operators are separated from the tag values by a space. * `eventsMissingCatalogItems`: This restricts results to events for which catalog items were not found in the catalog. The default behavior is to return only those events for which catalog items were found. Some examples of valid filters expressions: * Example 1: `eventTime \> "2012-04-23T18:25:43.511Z" eventTime < "2012-04-23T18:30:43.511Z"` * Example 2: `eventTime \> "2012-04-23T18:25:43.511Z" eventType = detail-page-view` * Example 3: `eventsMissingCatalogItems eventType = (NOT search) eventTime < "2018-04-23T18:30:43.511Z"` * Example 4: `eventTime \> "2012-04-23T18:25:43.511Z"` * Example 5: `eventType = (detail-page-view OR search)` * Example 6: `eventsMissingCatalogItems` + * Deprecated: This field is deprecated. Any filter provided will be ignored. */ filter?: string | null; /** diff --git a/src/apis/retail/v2beta.ts b/src/apis/retail/v2beta.ts index 0f2248dfb28..26695afa731 100644 --- a/src/apis/retail/v2beta.ts +++ b/src/apis/retail/v2beta.ts @@ -1768,7 +1768,7 @@ export namespace retail_v2beta { */ export interface Schema$GoogleCloudRetailV2betaExportProductsRequest { /** - * This field is deprecated. Any filter provided will be ignored. + * Deprecated: This field is deprecated. Any filter provided will be ignored. */ filter?: string | null; /** @@ -1798,7 +1798,7 @@ export namespace retail_v2beta { */ export interface Schema$GoogleCloudRetailV2betaExportUserEventsRequest { /** - * A filtering expression to specify restrictions on returned events. The expression is a sequence of terms. Each term applies a restriction to the returned user events. Use this expression to restrict results to a specific time range or to filter events by eventType. For example, `eventTime \> "2012-04-23T18:25:43.511Z" eventsMissingCatalogItems eventTime<"2012-04-23T18:25:43.511Z" eventType=search` We expect only three types of fields: * `eventTime`: This can be specified twice, once with a less than operator and once with a greater than operator. The `eventTime` restriction should result in one, contiguous, valid, `eventTime` range. * `eventType`: Boolean operators `OR` and `NOT` are supported if the expression is enclosed in parentheses and the operators are separated from the tag values by a space. * `eventsMissingCatalogItems`: This restricts results to events for which catalog items were not found in the catalog. The default behavior is to return only those events for which catalog items were found. Some examples of valid filters expressions: * Example 1: `eventTime \> "2012-04-23T18:25:43.511Z" eventTime < "2012-04-23T18:30:43.511Z"` * Example 2: `eventTime \> "2012-04-23T18:25:43.511Z" eventType = detail-page-view` * Example 3: `eventsMissingCatalogItems eventType = (NOT search) eventTime < "2018-04-23T18:30:43.511Z"` * Example 4: `eventTime \> "2012-04-23T18:25:43.511Z"` * Example 5: `eventType = (detail-page-view OR search)` * Example 6: `eventsMissingCatalogItems` + * Deprecated: This field is deprecated. Any filter provided will be ignored. */ filter?: string | null; /** diff --git a/src/apis/run/v1.ts b/src/apis/run/v1.ts index 641cf3b2de0..72f5f3187a3 100644 --- a/src/apis/run/v1.ts +++ b/src/apis/run/v1.ts @@ -1138,6 +1138,10 @@ export namespace run_v1 { * An image built by the pipeline. */ export interface Schema$GoogleDevtoolsCloudbuildV1BuiltImage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Docker Registry 2.0 digest. */ @@ -1644,6 +1648,10 @@ export namespace run_v1 { * A Go module artifact uploaded to Artifact Registry using the GoModule directive. */ export interface Schema$GoogleDevtoolsCloudbuildV1UploadedGoModule { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Go Module Artifact. */ @@ -1661,6 +1669,10 @@ export namespace run_v1 { * A Maven artifact uploaded using the MavenArtifact directive. */ export interface Schema$GoogleDevtoolsCloudbuildV1UploadedMavenArtifact { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Maven Artifact. */ @@ -1678,6 +1690,10 @@ export namespace run_v1 { * An npm package uploaded to Artifact Registry using the NpmPackage directive. */ export interface Schema$GoogleDevtoolsCloudbuildV1UploadedNpmPackage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the npm package. */ @@ -1695,6 +1711,10 @@ export namespace run_v1 { * Artifact uploaded using the PythonPackage directive. */ export interface Schema$GoogleDevtoolsCloudbuildV1UploadedPythonPackage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Python Artifact. */ diff --git a/src/apis/run/v2.ts b/src/apis/run/v2.ts index 72ef38fd1a3..5d30beac5d1 100644 --- a/src/apis/run/v2.ts +++ b/src/apis/run/v2.ts @@ -250,6 +250,23 @@ export namespace run_v2 { */ instances?: string[] | null; } + /** + * Cloud Storage source. + */ + export interface Schema$GoogleCloudRunV2CloudStorageSource { + /** + * Required. The Cloud Storage bucket name. + */ + bucket?: string | null; + /** + * Optional. The Cloud Storage object generation. + */ + generation?: string | null; + /** + * Required. The Cloud Storage object name. + */ + object?: string | null; + } /** * Defines a status condition for a resource. */ @@ -335,6 +352,10 @@ export namespace run_v2 { * Compute Resource requirements by this container. */ resources?: Schema$GoogleCloudRunV2ResourceRequirements; + /** + * Optional. Location of the source. + */ + sourceCode?: Schema$GoogleCloudRunV2SourceCode; /** * Startup probe of application within the container. All other probes are disabled if a startup probe is provided, until it succeeds. Container will not be added to service endpoints if the probe fails. */ @@ -1539,6 +1560,15 @@ export namespace run_v2 { */ scalingMode?: string | null; } + /** + * Source type for the container. + */ + export interface Schema$GoogleCloudRunV2SourceCode { + /** + * The source is a Cloud Storage bucket. + */ + cloudStorageSource?: Schema$GoogleCloudRunV2CloudStorageSource; + } /** * Location of the source in an archive file in Google Cloud Storage. */ @@ -2528,6 +2558,10 @@ export namespace run_v2 { * An image built by the pipeline. */ export interface Schema$GoogleDevtoolsCloudbuildV1BuiltImage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Docker Registry 2.0 digest. */ @@ -3034,6 +3068,10 @@ export namespace run_v2 { * A Go module artifact uploaded to Artifact Registry using the GoModule directive. */ export interface Schema$GoogleDevtoolsCloudbuildV1UploadedGoModule { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Go Module Artifact. */ @@ -3051,6 +3089,10 @@ export namespace run_v2 { * A Maven artifact uploaded using the MavenArtifact directive. */ export interface Schema$GoogleDevtoolsCloudbuildV1UploadedMavenArtifact { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Maven Artifact. */ @@ -3068,6 +3110,10 @@ export namespace run_v2 { * An npm package uploaded to Artifact Registry using the NpmPackage directive. */ export interface Schema$GoogleDevtoolsCloudbuildV1UploadedNpmPackage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the npm package. */ @@ -3085,6 +3131,10 @@ export namespace run_v2 { * Artifact uploaded using the PythonPackage directive. */ export interface Schema$GoogleDevtoolsCloudbuildV1UploadedPythonPackage { + /** + * Output only. Path to the artifact in Artifact Registry. + */ + artifactRegistryPackage?: string | null; /** * Hash types and values of the Python Artifact. */ diff --git a/src/apis/storagebatchoperations/v1.ts b/src/apis/storagebatchoperations/v1.ts index da07ea8f8ce..30cc3387c1f 100644 --- a/src/apis/storagebatchoperations/v1.ts +++ b/src/apis/storagebatchoperations/v1.ts @@ -179,6 +179,10 @@ export namespace storagebatchoperations_v1 { * Output only. Number of objects completed. */ succeededObjectCount?: string | null; + /** + * Output only. Number of bytes found from source. This field is only populated for jobs with a prefix list object configuration. + */ + totalBytesFound?: string | null; /** * Output only. Number of objects listed. */ @@ -255,6 +259,10 @@ export namespace storagebatchoperations_v1 { * Optional. A description provided by the user for the job. Its max length is 1024 bytes when Unicode-encoded. */ description?: string | null; + /** + * Optional. If true, the job will run in dry run mode, returning the total object count and, if the object configuration is a prefix list, the bytes found from source. No transformations will be performed. + */ + dryRun?: boolean | null; /** * Output only. Summarizes errors encountered with sample error log entries. */ @@ -1071,6 +1079,7 @@ export namespace storagebatchoperations_v1 { * // "createTime": "my_createTime", * // "deleteObject": {}, * // "description": "my_description", + * // "dryRun": false, * // "errorSummaries": [], * // "loggingConfig": {}, * // "name": "my_name", @@ -1366,6 +1375,7 @@ export namespace storagebatchoperations_v1 { * // "createTime": "my_createTime", * // "deleteObject": {}, * // "description": "my_description", + * // "dryRun": false, * // "errorSummaries": [], * // "loggingConfig": {}, * // "name": "my_name", diff --git a/src/apis/tasks/v1.ts b/src/apis/tasks/v1.ts index 4eb30d4f65f..567f18b956a 100644 --- a/src/apis/tasks/v1.ts +++ b/src/apis/tasks/v1.ts @@ -183,7 +183,7 @@ export namespace tasks_v1 { */ deleted?: boolean | null; /** - * Due date of the task (as a RFC 3339 timestamp). Optional. The due date only records date information; the time portion of the timestamp is discarded when setting the due date. It isn't possible to read or write the time that a task is due via the API. + * Scheduled date for the task (as an RFC 3339 timestamp). Optional. This represents the day that the task should be done, or that the task is visible on the calendar grid. It doesn't represent the deadline of the task. Only date information is recorded; the time portion of the timestamp is discarded when setting this field. It isn't possible to read or write the time that a task is scheduled for using the API. */ due?: string | null; /** diff --git a/src/apis/vmmigration/v1alpha1.ts b/src/apis/vmmigration/v1alpha1.ts index a396ba48785..3fef35c33c0 100644 --- a/src/apis/vmmigration/v1alpha1.ts +++ b/src/apis/vmmigration/v1alpha1.ts @@ -849,6 +849,10 @@ export namespace vmmigration_v1alpha1 { * Optional. The service account to associate the VM with. */ serviceAccount?: string | null; + /** + * Optional. If specified this will be the storage pool in which the disk is created. This is the full path of the storage pool resource, for example: "projects/my-project/zones/us-central1-a/storagePools/my-storage-pool". The storage pool must be in the same project and zone as the target disks. The storage pool's type must match the disk type. + */ + storagePool?: string | null; /** * The full path of the resource of type TargetProject which represents the Compute Engine project in which to create this VM. */ @@ -954,6 +958,10 @@ export namespace vmmigration_v1alpha1 { * The service account to associate the VM with. */ serviceAccount?: string | null; + /** + * Optional. The storage pool used for the VM disks. If specified this will be the storage pool in which the disk is created. This is the full path of the storage pool resource, for example: "projects/my-project/zones/us-central1-a/storagePools/my-storage-pool". The storage pool must be in the same project and zone as the target disks. The storage pool's type must match the disk type. + */ + storagePool?: string | null; /** * The name of the VM to create. */ @@ -1187,7 +1195,7 @@ export namespace vmmigration_v1alpha1 { version?: string | null; } /** - * Mentions that the image import is not using OS adaptation process. + * Used when the image import is not using OS adaptation process. */ export interface Schema$DataDiskImageImport {} /** diff --git a/src/apis/workflows/v1.ts b/src/apis/workflows/v1.ts index bd15f046379..a0a0d818a12 100644 --- a/src/apis/workflows/v1.ts +++ b/src/apis/workflows/v1.ts @@ -565,7 +565,7 @@ export namespace workflows_v1 { * * // Do the magic * const res = await workflows.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). * filter: 'placeholder-value', @@ -693,7 +693,7 @@ export namespace workflows_v1 { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/workflows/v1beta.ts b/src/apis/workflows/v1beta.ts index 3bc805c97cb..9a9f3d27431 100644 --- a/src/apis/workflows/v1beta.ts +++ b/src/apis/workflows/v1beta.ts @@ -503,7 +503,7 @@ export namespace workflows_v1beta { * * // Do the magic * const res = await workflows.projects.locations.list({ - * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). * filter: 'placeholder-value', @@ -631,7 +631,7 @@ export namespace workflows_v1beta { export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage. + * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** diff --git a/src/apis/workspaceevents/v1.ts b/src/apis/workspaceevents/v1.ts index 6bdc9e1a7c3..5c7795485dd 100644 --- a/src/apis/workspaceevents/v1.ts +++ b/src/apis/workspaceevents/v1.ts @@ -112,8 +112,11 @@ export namespace workspaceevents_v1 { */ export class Workspaceevents { context: APIRequestContext; + message: Resource$Message; operations: Resource$Operations; subscriptions: Resource$Subscriptions; + tasks: Resource$Tasks; + v1: Resource$V1; constructor(options: GlobalOptions, google?: GoogleConfigurable) { this.context = { @@ -121,11 +124,345 @@ export namespace workspaceevents_v1 { google, }; + this.message = new Resource$Message(this.context); this.operations = new Resource$Operations(this.context); this.subscriptions = new Resource$Subscriptions(this.context); + this.tasks = new Resource$Tasks(this.context); + this.v1 = new Resource$V1(this.context); } } + /** + * Defines the A2A feature set supported by the agent + */ + export interface Schema$AgentCapabilities { + /** + * Extensions supported by this agent. + */ + extensions?: Schema$AgentExtension[]; + /** + * If the agent can send push notifications to the clients webhook + */ + pushNotifications?: boolean | null; + /** + * If the agent will support streaming responses + */ + streaming?: boolean | null; + } + /** + * AgentCard conveys key information: - Overall details (version, name, description, uses) - Skills; a set of actions/solutions the agent can perform - Default modalities/content types supported by the agent. - Authentication requirements Next ID: 19 + */ + export interface Schema$AgentCard { + /** + * Announcement of additional supported transports. Client can use any of the supported transports. + */ + additionalInterfaces?: Schema$AgentInterface[]; + /** + * A2A Capability set supported by the agent. + */ + capabilities?: Schema$AgentCapabilities; + /** + * protolint:enable REPEATED_FIELD_NAMES_PLURALIZED The set of interaction modes that the agent supports across all skills. This can be overridden per skill. Defined as mime types. + */ + defaultInputModes?: string[] | null; + /** + * The mime types supported as outputs from this agent. + */ + defaultOutputModes?: string[] | null; + /** + * A description of the agent's domain of action/solution space. Example: "Agent that helps users with recipes and cooking." + */ + description?: string | null; + /** + * A url to provide additional documentation about the agent. + */ + documentationUrl?: string | null; + /** + * An optional URL to an icon for the agent. + */ + iconUrl?: string | null; + /** + * A human readable name for the agent. Example: "Recipe Agent" + */ + name?: string | null; + /** + * The transport of the preferred endpoint. If empty, defaults to JSONRPC. + */ + preferredTransport?: string | null; + /** + * The version of the A2A protocol this agent supports. + */ + protocolVersion?: string | null; + /** + * The service provider of the agent. + */ + provider?: Schema$AgentProvider; + /** + * protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Security requirements for contacting the agent. This list can be seen as an OR of ANDs. Each object in the list describes one possible set of security requirements that must be present on a request. This allows specifying, for example, "callers must either use OAuth OR an API Key AND mTLS." Example: security { schemes { key: "oauth" value { list: ["read"] \} \} \} security { schemes { key: "api-key" \} schemes { key: "mtls" \} \} + */ + security?: Schema$Security[]; + /** + * The security scheme details used for authenticating with this agent. + */ + securitySchemes?: {[key: string]: Schema$SecurityScheme} | null; + /** + * JSON Web Signatures computed for this AgentCard. + */ + signatures?: Schema$AgentCardSignature[]; + /** + * Skills represent a unit of ability an agent can perform. This may somewhat abstract but represents a more focused set of actions that the agent is highly likely to succeed at. + */ + skills?: Schema$AgentSkill[]; + /** + * Whether the agent supports providing an extended agent card when the user is authenticated, i.e. is the card from .well-known different than the card from GetAgentCard. + */ + supportsAuthenticatedExtendedCard?: boolean | null; + /** + * A URL to the address the agent is hosted at. This represents the preferred endpoint as declared by the agent. + */ + url?: string | null; + /** + * The version of the agent. Example: "1.0.0" + */ + version?: string | null; + } + /** + * AgentCardSignature represents a JWS signature of an AgentCard. This follows the JSON format of an RFC 7515 JSON Web Signature (JWS). + */ + export interface Schema$AgentCardSignature { + /** + * The unprotected JWS header values. + */ + header?: {[key: string]: any} | null; + /** + * Required. The protected JWS header for the signature. This is always a base64url-encoded JSON object. Required. + */ + protected?: string | null; + /** + * Required. The computed signature, base64url-encoded. Required. + */ + signature?: string | null; + } + /** + * A declaration of an extension supported by an Agent. + */ + export interface Schema$AgentExtension { + /** + * A description of how this agent uses this extension. Example: "Google OAuth 2.0 authentication" + */ + description?: string | null; + /** + * Optional configuration for the extension. + */ + params?: {[key: string]: any} | null; + /** + * Whether the client must follow specific requirements of the extension. Example: false + */ + required?: boolean | null; + /** + * The URI of the extension. Example: "https://developers.google.com/identity/protocols/oauth2" + */ + uri?: string | null; + } + /** + * Defines additional transport information for the agent. + */ + export interface Schema$AgentInterface { + /** + * The transport supported this url. This is an open form string, to be easily extended for many transport protocols. The core ones officially supported are JSONRPC, GRPC and HTTP+JSON. + */ + transport?: string | null; + /** + * The url this interface is found at. + */ + url?: string | null; + } + /** + * Represents information about the service provider of an agent. + */ + export interface Schema$AgentProvider { + /** + * The providers organization name Example: "Google" + */ + organization?: string | null; + /** + * The providers reference url Example: "https://ai.google.dev" + */ + url?: string | null; + } + /** + * AgentSkill represents a unit of action/solution that the agent can perform. One can think of this as a type of highly reliable solution that an agent can be tasked to provide. Agents have the autonomy to choose how and when to use specific skills, but clients should have confidence that if the skill is defined that unit of action can be reliably performed. + */ + export interface Schema$AgentSkill { + /** + * A human (or llm) readable description of the skill details and behaviors. + */ + description?: string | null; + /** + * A set of example queries that this skill is designed to address. These examples should help the caller to understand how to craft requests to the agent to achieve specific goals. Example: ["I need a recipe for bread"] + */ + examples?: string[] | null; + /** + * Unique identifier of the skill within this agent. + */ + id?: string | null; + /** + * Possible input modalities supported. + */ + inputModes?: string[] | null; + /** + * A human readable name for the skill. + */ + name?: string | null; + /** + * Possible output modalities produced + */ + outputModes?: string[] | null; + /** + * protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Security schemes necessary for the agent to leverage this skill. As in the overall AgentCard.security, this list represents a logical OR of security requirement objects. Each object is a set of security schemes that must be used together (a logical AND). protolint:enable REPEATED_FIELD_NAMES_PLURALIZED + */ + security?: Schema$Security[]; + /** + * A set of tags for the skill to enhance categorization/utilization. Example: ["cooking", "customer support", "billing"] + */ + tags?: string[] | null; + } + export interface Schema$APIKeySecurityScheme { + /** + * Description of this security scheme. + */ + description?: string | null; + /** + * Location of the API key, valid values are "query", "header", or "cookie" + */ + location?: string | null; + /** + * Name of the header, query or cookie parameter to be used. + */ + name?: string | null; + } + /** + * Artifacts are the container for task completed results. These are similar to Messages but are intended to be the product of a task, as opposed to point-to-point communication. + */ + export interface Schema$Artifact { + /** + * Unique identifier (e.g. UUID) for the artifact. It must be at least unique within a task. + */ + artifactId?: string | null; + /** + * A human readable description of the artifact, optional. + */ + description?: string | null; + /** + * The URIs of extensions that are present or contributed to this Artifact. + */ + extensions?: string[] | null; + /** + * Optional metadata included with the artifact. + */ + metadata?: {[key: string]: any} | null; + /** + * A human readable name for the artifact. + */ + name?: string | null; + /** + * The content of the artifact. + */ + parts?: Schema$Part[]; + } + /** + * Defines authentication details, used for push notifications. + */ + export interface Schema$AuthenticationInfo { + /** + * Optional credentials + */ + credentials?: string | null; + /** + * Supported authentication schemes - e.g. Basic, Bearer, etc + */ + schemes?: string[] | null; + } + export interface Schema$AuthorizationCodeOAuthFlow { + /** + * The authorization URL to be used for this flow. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS + */ + authorizationUrl?: string | null; + /** + * The URL to be used for obtaining refresh tokens. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS. + */ + refreshUrl?: string | null; + /** + * The available scopes for the OAuth2 security scheme. A map between the scope name and a short description for it. The map MAY be empty. + */ + scopes?: {[key: string]: string} | null; + /** + * The token URL to be used for this flow. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS. + */ + tokenUrl?: string | null; + } + export interface Schema$CancelTaskRequest {} + export interface Schema$ClientCredentialsOAuthFlow { + /** + * The URL to be used for obtaining refresh tokens. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS. + */ + refreshUrl?: string | null; + /** + * The available scopes for the OAuth2 security scheme. A map between the scope name and a short description for it. The map MAY be empty. + */ + scopes?: {[key: string]: string} | null; + /** + * The token URL to be used for this flow. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS. + */ + tokenUrl?: string | null; + } + /** + * DataPart represents a structured blob. This is most commonly a JSON payload. + */ + export interface Schema$DataPart { + data?: {[key: string]: any} | null; + } + /** + * A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); \} + */ + export interface Schema$Empty {} + /** + * FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. + */ + export interface Schema$FilePart { + fileWithBytes?: string | null; + fileWithUri?: string | null; + mimeType?: string | null; + name?: string | null; + } + export interface Schema$HTTPAuthSecurityScheme { + /** + * A hint to the client to identify how the bearer token is formatted. Bearer tokens are usually generated by an authorization server, so this information is primarily for documentation purposes. + */ + bearerFormat?: string | null; + /** + * Description of this security scheme. + */ + description?: string | null; + /** + * The name of the HTTP Authentication scheme to be used in the Authorization header as defined in RFC7235. The values used SHOULD be registered in the IANA Authentication Scheme registry. The value is case-insensitive, as defined in RFC7235. + */ + scheme?: string | null; + } + export interface Schema$ImplicitOAuthFlow { + /** + * The authorization URL to be used for this flow. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS + */ + authorizationUrl?: string | null; + /** + * The URL to be used for obtaining refresh tokens. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS. + */ + refreshUrl?: string | null; + /** + * The available scopes for the OAuth2 security scheme. A map between the scope name and a short description for it. The map MAY be empty. + */ + scopes?: {[key: string]: string} | null; + } /** * The response message for SubscriptionsService.ListSubscriptions. */ @@ -139,6 +476,55 @@ export namespace workspaceevents_v1 { */ subscriptions?: Schema$Subscription[]; } + export interface Schema$ListTaskPushNotificationConfigResponse { + /** + * The list of push notification configurations. + */ + configs?: Schema$TaskPushNotificationConfig[]; + /** + * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + } + /** + * Message is one unit of communication between client and server. It is associated with a context and optionally a task. Since the server is responsible for the context definition, it must always provide a context_id in its messages. The client can optionally provide the context_id if it knows the context to associate the message to. Similarly for task_id, except the server decides if a task is created and whether to include the task_id. + */ + export interface Schema$Message { + /** + * protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content is the container of the message content. + */ + content?: Schema$Part[]; + /** + * The context id of the message. This is optional and if set, the message will be associated with the given context. + */ + contextId?: string | null; + /** + * The URIs of extensions that are present or contributed to this Message. + */ + extensions?: string[] | null; + /** + * The unique identifier (e.g. UUID)of the message. This is required and created by the message creator. + */ + messageId?: string | null; + /** + * protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Any optional metadata to provide along with the message. + */ + metadata?: {[key: string]: any} | null; + /** + * A role for the message. + */ + role?: string | null; + /** + * The task id of the message. This is optional and if set, the message will be associated with the given task. + */ + taskId?: string | null; + } + export interface Schema$MutualTlsSecurityScheme { + /** + * Description of this security scheme. + */ + description?: string | null; + } /** * The endpoint where the subscription delivers events. */ @@ -148,6 +534,36 @@ export namespace workspaceevents_v1 { */ pubsubTopic?: string | null; } + export interface Schema$OAuth2SecurityScheme { + /** + * Description of this security scheme. + */ + description?: string | null; + /** + * An object containing configuration information for the flow types supported + */ + flows?: Schema$OAuthFlows; + /** + * URL to the oauth2 authorization server metadata [RFC8414](https://datatracker.ietf.org/doc/html/rfc8414). TLS is required. + */ + oauth2MetadataUrl?: string | null; + } + export interface Schema$OAuthFlows { + authorizationCode?: Schema$AuthorizationCodeOAuthFlow; + clientCredentials?: Schema$ClientCredentialsOAuthFlow; + implicit?: Schema$ImplicitOAuthFlow; + password?: Schema$PasswordOAuthFlow; + } + export interface Schema$OpenIdConnectSecurityScheme { + /** + * Description of this security scheme. + */ + description?: string | null; + /** + * Well-known URL to discover the [[OpenID-Connect-Discovery]] provider metadata. + */ + openIdConnectUrl?: string | null; + } /** * This resource represents a long-running operation that is the result of a network API call. */ @@ -173,6 +589,32 @@ export namespace workspaceevents_v1 { */ response?: {[key: string]: any} | null; } + /** + * Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). + */ + export interface Schema$Part { + data?: Schema$DataPart; + file?: Schema$FilePart; + /** + * Optional metadata associated with this part. + */ + metadata?: {[key: string]: any} | null; + text?: string | null; + } + export interface Schema$PasswordOAuthFlow { + /** + * The URL to be used for obtaining refresh tokens. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS. + */ + refreshUrl?: string | null; + /** + * The available scopes for the OAuth2 security scheme. A map between the scope name and a short description for it. The map MAY be empty. + */ + scopes?: {[key: string]: string} | null; + /** + * The token URL to be used for this flow. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS. + */ + tokenUrl?: string | null; + } /** * Options about what data to include in the event payload. Only supported for Google Chat and Google Drive events. */ @@ -186,37 +628,121 @@ export namespace workspaceevents_v1 { */ includeResource?: boolean | null; } + /** + * Configuration for setting up push notifications for task updates. + */ + export interface Schema$PushNotificationConfig { + /** + * Information about the authentication to sent with the notification + */ + authentication?: Schema$AuthenticationInfo; + /** + * A unique identifier (e.g. UUID) for this push notification. + */ + id?: string | null; + /** + * Token unique for this task/session + */ + token?: string | null; + /** + * Url to send the notification too + */ + url?: string | null; + } /** * The request message for SubscriptionsService.ReactivateSubscription. */ export interface Schema$ReactivateSubscriptionRequest {} + export interface Schema$Security { + schemes?: {[key: string]: Schema$StringList} | null; + } + export interface Schema$SecurityScheme { + apiKeySecurityScheme?: Schema$APIKeySecurityScheme; + httpAuthSecurityScheme?: Schema$HTTPAuthSecurityScheme; + mtlsSecurityScheme?: Schema$MutualTlsSecurityScheme; + oauth2SecurityScheme?: Schema$OAuth2SecurityScheme; + openIdConnectSecurityScheme?: Schema$OpenIdConnectSecurityScheme; + } /** - * 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). + * Configuration of a send message request. */ - export interface Schema$Status { + export interface Schema$SendMessageConfiguration { /** - * The status code, which should be an enum value of google.rpc.Code. + * The output modes that the agent is expected to respond with. */ - code?: number | null; + acceptedOutputModes?: string[] | null; /** - * A list of messages that carry the error details. There is a common set of message types for APIs to use. + * If true, the message will be blocking until the task is completed. If false, the message will be non-blocking and the task will be returned immediately. It is the caller's responsibility to check for any task updates. */ - details?: Array<{[key: string]: any}> | null; + blocking?: boolean | 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. + * The maximum number of messages to include in the history. if 0, the history will be unlimited. */ - message?: string | null; + historyLength?: number | null; + /** + * A configuration of a webhook that can be used to receive updates + */ + pushNotification?: Schema$PushNotificationConfig; } /** - * A subscription to receive events about a Google Workspace resource. To learn more about subscriptions, see the [Google Workspace Events API overview](https://developers.google.com/workspace/events). + * /////////// Request Messages /////////// */ - export interface Schema$Subscription { + export interface Schema$SendMessageRequest { /** - * Output only. The user who authorized the creation of the subscription. When a user authorizes the subscription, this field and the `user_authority` field have the same value and the format is: Format: `users/{user\}` For Google Workspace users, the `{user\}` value is the [`user.id`](https://developers.google.com/admin-sdk/directory/reference/rest/v1/users#User.FIELDS.ids) field from the Directory API. When a Chat app authorizes the subscription, only `service_account_authority` field populates and this field is empty. + * Configuration for the send request. */ - authority?: string | null; + configuration?: Schema$SendMessageConfiguration; /** - * Output only. The time when the subscription is created. + * Required. The message to send to the agent. + */ + message?: Schema$Message; + /** + * Optional metadata for the request. + */ + metadata?: {[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; + } + /** + * The stream response for a message. The stream should be one of the following sequences: If the response is a message, the stream should contain one, and only one, message and then close If the response is a task lifecycle, the first response should be a Task object followed by zero or more TaskStatusUpdateEvents and TaskArtifactUpdateEvents. The stream should complete when the Task if in an interrupted or terminal state. A stream that ends before these conditions are met are + */ + export interface Schema$StreamResponse { + artifactUpdate?: Schema$TaskArtifactUpdateEvent; + message?: Schema$Message; + statusUpdate?: Schema$TaskStatusUpdateEvent; + task?: Schema$Task; + } + /** + * protolint:disable REPEATED_FIELD_NAMES_PLURALIZED + */ + export interface Schema$StringList { + list?: string[] | null; + } + /** + * A subscription to receive events about a Google Workspace resource. To learn more about subscriptions, see the [Google Workspace Events API overview](https://developers.google.com/workspace/events). + */ + export interface Schema$Subscription { + /** + * Output only. The user who authorized the creation of the subscription. When a user authorizes the subscription, this field and the `user_authority` field have the same value and the format is: Format: `users/{user\}` For Google Workspace users, the `{user\}` value is the [`user.id`](https://developers.google.com/admin-sdk/directory/reference/rest/v1/users#User.FIELDS.ids) field from the Directory API. When a Chat app authorizes the subscription, only `service_account_authority` field populates and this field is empty. + */ + authority?: string | null; + /** + * Output only. The time when the subscription is created. */ createTime?: string | null; /** @@ -250,37 +776,1591 @@ export namespace workspaceevents_v1 { /** * Output only. The state of the subscription. Determines whether the subscription can receive events and deliver them to the notification endpoint. */ - state?: string | null; + state?: string | null; + /** + * Output only. The error that suspended the subscription. To reactivate the subscription, resolve the error and call the `ReactivateSubscription` method. + */ + suspensionReason?: string | null; + /** + * Required. Immutable. The Google Workspace resource that's monitored for events, formatted as the [full resource name](https://google.aip.dev/122#full-resource-names). To learn about target resources and the events that they support, see [Supported Google Workspace events](https://developers.google.com/workspace/events#supported-events). A user can only authorize your app to create one subscription for a given target resource. If your app tries to create another subscription with the same user credentials, the request returns an `ALREADY_EXISTS` error. + */ + targetResource?: string | null; + /** + * Input only. The time-to-live (TTL) or duration for the subscription. If unspecified or set to `0`, uses the maximum possible duration. + */ + ttl?: string | null; + /** + * Output only. System-assigned unique identifier for the subscription. + */ + uid?: string | null; + /** + * Output only. The last time that the subscription is updated. + */ + updateTime?: string | null; + } + /** + * Task is the core unit of action for A2A. It has a current status and when results are created for the task they are stored in the artifact. If there are multiple turns for a task, these are stored in history. + */ + export interface Schema$Task { + /** + * A set of output artifacts for a Task. + */ + artifacts?: Schema$Artifact[]; + /** + * Unique identifier (e.g. UUID) for the contextual collection of interactions (tasks and messages). Created by the A2A server. + */ + contextId?: string | null; + /** + * protolint:disable REPEATED_FIELD_NAMES_PLURALIZED The history of interactions from a task. + */ + history?: Schema$Message[]; + /** + * Unique identifier (e.g. UUID) for the task, generated by the server for a new task. + */ + id?: string | null; + /** + * protolint:enable REPEATED_FIELD_NAMES_PLURALIZED A key/value object to store custom metadata about a task. + */ + metadata?: {[key: string]: any} | null; + /** + * The current status of a Task, including state and a message. + */ + status?: Schema$TaskStatus; + } + /** + * TaskArtifactUpdateEvent represents a task delta where an artifact has been generated. + */ + export interface Schema$TaskArtifactUpdateEvent { + /** + * Whether this should be appended to a prior one produced + */ + append?: boolean | null; + /** + * The artifact itself + */ + artifact?: Schema$Artifact; + /** + * The id of the context that this task belongs too + */ + contextId?: string | null; + /** + * Whether this represents the last part of an artifact + */ + lastChunk?: boolean | null; + /** + * Optional metadata associated with the artifact update. + */ + metadata?: {[key: string]: any} | null; + /** + * The id of the task for this artifact + */ + taskId?: string | null; + } + export interface Schema$TaskPushNotificationConfig { + /** + * The resource name of the config. Format: tasks/{task_id\}/pushNotificationConfigs/{config_id\} + */ + name?: string | null; + /** + * The push notification configuration details. + */ + pushNotificationConfig?: Schema$PushNotificationConfig; + } + /** + * A container for the status of a task + */ + export interface Schema$TaskStatus { + /** + * A message associated with the status. + */ + message?: Schema$Message; + /** + * The current state of this task + */ + state?: string | null; + /** + * Timestamp when the status was recorded. Example: "2023-10-27T10:00:00Z" + */ + timestamp?: string | null; + } + /** + * TaskStatusUpdateEvent is a delta even on a task indicating that a task has changed. + */ + export interface Schema$TaskStatusUpdateEvent { + /** + * The id of the context that the task belongs to + */ + contextId?: string | null; + /** + * Whether this is the last status update expected for this task. + */ + final?: boolean | null; + /** + * Optional metadata to associate with the task update. + */ + metadata?: {[key: string]: any} | null; + /** + * The new status of the task. + */ + status?: Schema$TaskStatus; + /** + * The id of the task that is changed + */ + taskId?: string | null; + } + + export class Resource$Message { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * SendStreamingMessage is a streaming call that will return a stream of task update events until the Task is in an interrupted or terminal state. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/workspaceevents.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 workspaceevents = google.workspaceevents('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: [], + * }); + * + * // 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 workspaceevents.message.stream({ + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "configuration": {}, + * // "message": {}, + * // "metadata": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "artifactUpdate": {}, + * // "message": {}, + * // "statusUpdate": {}, + * // "task": {} + * // } + * } + * + * 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. + */ + stream( + params: Params$Resource$Message$Stream, + options: StreamMethodOptions + ): Promise>; + stream( + params?: Params$Resource$Message$Stream, + options?: MethodOptions + ): Promise>; + stream( + params: Params$Resource$Message$Stream, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stream( + params: Params$Resource$Message$Stream, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stream( + params: Params$Resource$Message$Stream, + callback: BodyResponseCallback + ): void; + stream(callback: BodyResponseCallback): void; + stream( + paramsOrCallback?: + | Params$Resource$Message$Stream + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Message$Stream; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Message$Stream; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://workspaceevents.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/message:stream').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Message$Stream extends StandardParameters { + /** + * Request body metadata + */ + requestBody?: Schema$SendMessageRequest; + } + + 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/workspaceevents.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 workspaceevents = google.workspaceevents('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/chat.bot', + * 'https://www.googleapis.com/auth/chat.memberships', + * 'https://www.googleapis.com/auth/chat.memberships.readonly', + * 'https://www.googleapis.com/auth/chat.messages', + * 'https://www.googleapis.com/auth/chat.messages.reactions', + * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', + * 'https://www.googleapis.com/auth/chat.messages.readonly', + * 'https://www.googleapis.com/auth/chat.spaces', + * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * 'https://www.googleapis.com/auth/drive.metadata.readonly', + * 'https://www.googleapis.com/auth/drive.readonly', + * 'https://www.googleapis.com/auth/meetings.space.created', + * 'https://www.googleapis.com/auth/meetings.space.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 workspaceevents.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://workspaceevents.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$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + + export class Resource$Subscriptions { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a Google Workspace subscription. To learn how to use this method, see [Create a Google Workspace subscription](https://developers.google.com/workspace/events/guides/create-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can create a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` and getting one-time administrator approval ([Developer Preview](https://developers.google.com/workspace/preview)). To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/workspaceevents.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 workspaceevents = google.workspaceevents('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/chat.app.memberships', + * 'https://www.googleapis.com/auth/chat.app.messages.readonly', + * 'https://www.googleapis.com/auth/chat.app.spaces', + * 'https://www.googleapis.com/auth/chat.memberships', + * 'https://www.googleapis.com/auth/chat.memberships.readonly', + * 'https://www.googleapis.com/auth/chat.messages', + * 'https://www.googleapis.com/auth/chat.messages.reactions', + * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', + * 'https://www.googleapis.com/auth/chat.messages.readonly', + * 'https://www.googleapis.com/auth/chat.spaces', + * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * 'https://www.googleapis.com/auth/drive.metadata.readonly', + * 'https://www.googleapis.com/auth/drive.readonly', + * 'https://www.googleapis.com/auth/meetings.space.created', + * 'https://www.googleapis.com/auth/meetings.space.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 workspaceevents.subscriptions.create({ + * // Optional. If set to `true`, validates and previews the request, but doesn't create the subscription. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "authority": "my_authority", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "eventTypes": [], + * // "expireTime": "my_expireTime", + * // "name": "my_name", + * // "notificationEndpoint": {}, + * // "payloadOptions": {}, + * // "reconciling": false, + * // "state": "my_state", + * // "suspensionReason": "my_suspensionReason", + * // "targetResource": "my_targetResource", + * // "ttl": "my_ttl", + * // "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$Subscriptions$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Subscriptions$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Subscriptions$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Subscriptions$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Subscriptions$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Subscriptions$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Subscriptions$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Subscriptions$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://workspaceevents.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/subscriptions').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a Google Workspace subscription. To learn how to use this method, see [Delete a Google Workspace subscription](https://developers.google.com/workspace/events/guides/delete-subscription). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/workspaceevents.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 workspaceevents = google.workspaceevents('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/chat.bot', + * 'https://www.googleapis.com/auth/chat.memberships', + * 'https://www.googleapis.com/auth/chat.memberships.readonly', + * 'https://www.googleapis.com/auth/chat.messages', + * 'https://www.googleapis.com/auth/chat.messages.reactions', + * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', + * 'https://www.googleapis.com/auth/chat.messages.readonly', + * 'https://www.googleapis.com/auth/chat.spaces', + * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * 'https://www.googleapis.com/auth/drive.metadata.readonly', + * 'https://www.googleapis.com/auth/drive.readonly', + * 'https://www.googleapis.com/auth/meetings.space.created', + * 'https://www.googleapis.com/auth/meetings.space.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 workspaceevents.subscriptions.delete({ + * // Optional. If set to `true` and the subscription isn't found, the request succeeds but doesn't delete the subscription. + * allowMissing: 'placeholder-value', + * // Optional. Etag of the subscription. If present, it must match with the server's etag. Otherwise, request fails with the status `ABORTED`. + * etag: 'placeholder-value', + * // Required. Resource name of the subscription to delete. Format: `subscriptions/{subscription\}` + * name: 'subscriptions/my-subscription', + * // Optional. If set to `true`, validates and previews the request, but doesn't delete the subscription. + * 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$Subscriptions$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Subscriptions$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Subscriptions$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Subscriptions$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Subscriptions$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Subscriptions$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Subscriptions$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Subscriptions$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://workspaceevents.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 about a Google Workspace subscription. To learn how to use this method, see [Get details about a Google Workspace subscription](https://developers.google.com/workspace/events/guides/get-subscription). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/workspaceevents.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 workspaceevents = google.workspaceevents('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/chat.bot', + * 'https://www.googleapis.com/auth/chat.memberships', + * 'https://www.googleapis.com/auth/chat.memberships.readonly', + * 'https://www.googleapis.com/auth/chat.messages', + * 'https://www.googleapis.com/auth/chat.messages.reactions', + * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', + * 'https://www.googleapis.com/auth/chat.messages.readonly', + * 'https://www.googleapis.com/auth/chat.spaces', + * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * 'https://www.googleapis.com/auth/drive.metadata.readonly', + * 'https://www.googleapis.com/auth/drive.readonly', + * 'https://www.googleapis.com/auth/meetings.space.created', + * 'https://www.googleapis.com/auth/meetings.space.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 workspaceevents.subscriptions.get({ + * // Required. Resource name of the subscription. Format: `subscriptions/{subscription\}` + * name: 'subscriptions/my-subscription', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "authority": "my_authority", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "eventTypes": [], + * // "expireTime": "my_expireTime", + * // "name": "my_name", + * // "notificationEndpoint": {}, + * // "payloadOptions": {}, + * // "reconciling": false, + * // "state": "my_state", + * // "suspensionReason": "my_suspensionReason", + * // "targetResource": "my_targetResource", + * // "ttl": "my_ttl", + * // "uid": "my_uid", + * // "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$Subscriptions$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Subscriptions$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Subscriptions$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Subscriptions$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Subscriptions$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Subscriptions$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Subscriptions$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Subscriptions$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://workspaceevents.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 Google Workspace subscriptions. To learn how to use this method, see [List Google Workspace subscriptions](https://developers.google.com/workspace/events/guides/list-subscriptions). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/workspaceevents.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 workspaceevents = google.workspaceevents('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/chat.bot', + * 'https://www.googleapis.com/auth/chat.memberships', + * 'https://www.googleapis.com/auth/chat.memberships.readonly', + * 'https://www.googleapis.com/auth/chat.messages', + * 'https://www.googleapis.com/auth/chat.messages.reactions', + * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', + * 'https://www.googleapis.com/auth/chat.messages.readonly', + * 'https://www.googleapis.com/auth/chat.spaces', + * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * 'https://www.googleapis.com/auth/drive.metadata.readonly', + * 'https://www.googleapis.com/auth/drive.readonly', + * 'https://www.googleapis.com/auth/meetings.space.created', + * 'https://www.googleapis.com/auth/meetings.space.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 workspaceevents.subscriptions.list({ + * // Required. A query filter. You can filter subscriptions by event type (`event_types`) and target resource (`target_resource`). You must specify at least one event type in your query. To filter for multiple event types, use the `OR` operator. To filter by both event type and target resource, use the `AND` operator and specify the full resource name, such as `//chat.googleapis.com/spaces/{space\}`. For example, the following queries are valid: ``` event_types:"google.workspace.chat.membership.v1.updated" OR event_types:"google.workspace.chat.message.v1.created" event_types:"google.workspace.chat.message.v1.created" AND target_resource="//chat.googleapis.com/spaces/{space\}" ( event_types:"google.workspace.chat.membership.v1.updated" OR event_types:"google.workspace.chat.message.v1.created" ) AND target_resource="//chat.googleapis.com/spaces/{space\}" ``` The server rejects invalid queries with an `INVALID_ARGUMENT` error. + * filter: 'placeholder-value', + * // Optional. The maximum number of subscriptions to return. The service might return fewer than this value. If unspecified or set to `0`, up to 50 subscriptions are returned. The maximum value is 100. If you specify a value more than 100, the system only returns 100 subscriptions. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous list subscriptions call. Provide this parameter to retrieve the subsequent page. When paginating, the filter value should match the call that provided the page token. Passing a different value might lead to unexpected results. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "subscriptions": [] + * // } + * } + * + * 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$Subscriptions$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Subscriptions$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Subscriptions$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Subscriptions$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Subscriptions$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Subscriptions$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Subscriptions$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Subscriptions$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://workspaceevents.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/subscriptions').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates or renews a Google Workspace subscription. To learn how to use this method, see [Update or renew a Google Workspace subscription](https://developers.google.com/workspace/events/guides/update-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can update a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` andgetting one-time administrator approval ([Developer Preview](https://developers.google.com/workspace/preview)). To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/workspaceevents.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 workspaceevents = google.workspaceevents('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/chat.app.memberships', + * 'https://www.googleapis.com/auth/chat.app.messages.readonly', + * 'https://www.googleapis.com/auth/chat.app.spaces', + * 'https://www.googleapis.com/auth/chat.memberships', + * 'https://www.googleapis.com/auth/chat.memberships.readonly', + * 'https://www.googleapis.com/auth/chat.messages', + * 'https://www.googleapis.com/auth/chat.messages.reactions', + * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', + * 'https://www.googleapis.com/auth/chat.messages.readonly', + * 'https://www.googleapis.com/auth/chat.spaces', + * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * 'https://www.googleapis.com/auth/drive.metadata.readonly', + * 'https://www.googleapis.com/auth/drive.readonly', + * 'https://www.googleapis.com/auth/meetings.space.created', + * 'https://www.googleapis.com/auth/meetings.space.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 workspaceevents.subscriptions.patch({ + * // Identifier. Resource name of the subscription. Format: `subscriptions/{subscription\}` + * name: 'subscriptions/my-subscription', + * // Optional. The field to update. If omitted, updates any fields included in the request. You can update one of the following fields in a subscription: * `expire_time`: The timestamp when the subscription expires. * `ttl`: The time-to-live (TTL) or duration of the subscription. * `event_types`: The list of event types to receive about the target resource. When using the `*` wildcard (equivalent to `PUT`), omitted fields are set to empty values and rejected if they're invalid. + * updateMask: 'placeholder-value', + * // Optional. If set to `true`, validates and previews the request, but doesn't update the subscription. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "authority": "my_authority", + * // "createTime": "my_createTime", + * // "etag": "my_etag", + * // "eventTypes": [], + * // "expireTime": "my_expireTime", + * // "name": "my_name", + * // "notificationEndpoint": {}, + * // "payloadOptions": {}, + * // "reconciling": false, + * // "state": "my_state", + * // "suspensionReason": "my_suspensionReason", + * // "targetResource": "my_targetResource", + * // "ttl": "my_ttl", + * // "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$Subscriptions$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Subscriptions$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Subscriptions$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Subscriptions$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Subscriptions$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Subscriptions$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Subscriptions$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Subscriptions$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://workspaceevents.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); + } + } + + /** + * Reactivates a suspended Google Workspace subscription. This method resets your subscription's `State` field to `ACTIVE`. Before you use this method, you must fix the error that suspended the subscription. This method will ignore or reject any subscription that isn't currently in a suspended state. To learn how to use this method, see [Reactivate a Google Workspace subscription](https://developers.google.com/workspace/events/guides/reactivate-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can reactivate a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` andgetting one-time administrator approval ([Developer Preview](https://developers.google.com/workspace/preview)). To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/workspaceevents.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 workspaceevents = google.workspaceevents('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/chat.app.memberships', + * 'https://www.googleapis.com/auth/chat.app.messages.readonly', + * 'https://www.googleapis.com/auth/chat.app.spaces', + * 'https://www.googleapis.com/auth/chat.memberships', + * 'https://www.googleapis.com/auth/chat.memberships.readonly', + * 'https://www.googleapis.com/auth/chat.messages', + * 'https://www.googleapis.com/auth/chat.messages.reactions', + * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', + * 'https://www.googleapis.com/auth/chat.messages.readonly', + * 'https://www.googleapis.com/auth/chat.spaces', + * 'https://www.googleapis.com/auth/chat.spaces.readonly', + * 'https://www.googleapis.com/auth/drive', + * 'https://www.googleapis.com/auth/drive.file', + * 'https://www.googleapis.com/auth/drive.metadata', + * 'https://www.googleapis.com/auth/drive.metadata.readonly', + * 'https://www.googleapis.com/auth/drive.readonly', + * 'https://www.googleapis.com/auth/meetings.space.created', + * 'https://www.googleapis.com/auth/meetings.space.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 workspaceevents.subscriptions.reactivate({ + * // Required. Resource name of the subscription. Format: `subscriptions/{subscription\}` + * name: 'subscriptions/my-subscription', + * + * // 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. + */ + reactivate( + params: Params$Resource$Subscriptions$Reactivate, + options: StreamMethodOptions + ): Promise>; + reactivate( + params?: Params$Resource$Subscriptions$Reactivate, + options?: MethodOptions + ): Promise>; + reactivate( + params: Params$Resource$Subscriptions$Reactivate, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + reactivate( + params: Params$Resource$Subscriptions$Reactivate, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + reactivate( + params: Params$Resource$Subscriptions$Reactivate, + callback: BodyResponseCallback + ): void; + reactivate(callback: BodyResponseCallback): void; + reactivate( + paramsOrCallback?: + | Params$Resource$Subscriptions$Reactivate + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Subscriptions$Reactivate; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Subscriptions$Reactivate; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://workspaceevents.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:reactivate').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); + } + } + } + + export interface Params$Resource$Subscriptions$Create + extends StandardParameters { + /** + * Optional. If set to `true`, validates and previews the request, but doesn't create the subscription. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Subscription; + } + export interface Params$Resource$Subscriptions$Delete + extends StandardParameters { + /** + * Optional. If set to `true` and the subscription isn't found, the request succeeds but doesn't delete the subscription. + */ + allowMissing?: boolean; + /** + * Optional. Etag of the subscription. If present, it must match with the server's etag. Otherwise, request fails with the status `ABORTED`. + */ + etag?: string; + /** + * Required. Resource name of the subscription to delete. Format: `subscriptions/{subscription\}` + */ + name?: string; + /** + * Optional. If set to `true`, validates and previews the request, but doesn't delete the subscription. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Subscriptions$Get + extends StandardParameters { + /** + * Required. Resource name of the subscription. Format: `subscriptions/{subscription\}` + */ + name?: string; + } + export interface Params$Resource$Subscriptions$List + extends StandardParameters { + /** + * Required. A query filter. You can filter subscriptions by event type (`event_types`) and target resource (`target_resource`). You must specify at least one event type in your query. To filter for multiple event types, use the `OR` operator. To filter by both event type and target resource, use the `AND` operator and specify the full resource name, such as `//chat.googleapis.com/spaces/{space\}`. For example, the following queries are valid: ``` event_types:"google.workspace.chat.membership.v1.updated" OR event_types:"google.workspace.chat.message.v1.created" event_types:"google.workspace.chat.message.v1.created" AND target_resource="//chat.googleapis.com/spaces/{space\}" ( event_types:"google.workspace.chat.membership.v1.updated" OR event_types:"google.workspace.chat.message.v1.created" ) AND target_resource="//chat.googleapis.com/spaces/{space\}" ``` The server rejects invalid queries with an `INVALID_ARGUMENT` error. + */ + filter?: string; + /** + * Optional. The maximum number of subscriptions to return. The service might return fewer than this value. If unspecified or set to `0`, up to 50 subscriptions are returned. The maximum value is 100. If you specify a value more than 100, the system only returns 100 subscriptions. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous list subscriptions call. Provide this parameter to retrieve the subsequent page. When paginating, the filter value should match the call that provided the page token. Passing a different value might lead to unexpected results. + */ + pageToken?: string; + } + export interface Params$Resource$Subscriptions$Patch + extends StandardParameters { + /** + * Identifier. Resource name of the subscription. Format: `subscriptions/{subscription\}` + */ + name?: string; /** - * Output only. The error that suspended the subscription. To reactivate the subscription, resolve the error and call the `ReactivateSubscription` method. + * Optional. The field to update. If omitted, updates any fields included in the request. You can update one of the following fields in a subscription: * `expire_time`: The timestamp when the subscription expires. * `ttl`: The time-to-live (TTL) or duration of the subscription. * `event_types`: The list of event types to receive about the target resource. When using the `*` wildcard (equivalent to `PUT`), omitted fields are set to empty values and rejected if they're invalid. */ - suspensionReason?: string | null; + updateMask?: string; /** - * Required. Immutable. The Google Workspace resource that's monitored for events, formatted as the [full resource name](https://google.aip.dev/122#full-resource-names). To learn about target resources and the events that they support, see [Supported Google Workspace events](https://developers.google.com/workspace/events#supported-events). A user can only authorize your app to create one subscription for a given target resource. If your app tries to create another subscription with the same user credentials, the request returns an `ALREADY_EXISTS` error. + * Optional. If set to `true`, validates and previews the request, but doesn't update the subscription. */ - targetResource?: string | null; + validateOnly?: boolean; + /** - * Input only. The time-to-live (TTL) or duration for the subscription. If unspecified or set to `0`, uses the maximum possible duration. + * Request body metadata */ - ttl?: string | null; + requestBody?: Schema$Subscription; + } + export interface Params$Resource$Subscriptions$Reactivate + extends StandardParameters { /** - * Output only. System-assigned unique identifier for the subscription. + * Required. Resource name of the subscription. Format: `subscriptions/{subscription\}` */ - uid?: string | null; + name?: string; + /** - * Output only. The last time that the subscription is updated. + * Request body metadata */ - updateTime?: string | null; + requestBody?: Schema$ReactivateSubscriptionRequest; } - export class Resource$Operations { + export class Resource$Tasks { context: APIRequestContext; + pushNotificationConfigs: Resource$Tasks$Pushnotificationconfigs; constructor(context: APIRequestContext) { this.context = context; + this.pushNotificationConfigs = new Resource$Tasks$Pushnotificationconfigs( + this.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. + * Cancel a task from the agent. If supported one should expect no more task updates for the task. * @example * ```js * // Before running the sample: @@ -301,24 +2381,7 @@ export namespace workspaceevents_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/chat.bot', - * 'https://www.googleapis.com/auth/chat.memberships', - * 'https://www.googleapis.com/auth/chat.memberships.readonly', - * 'https://www.googleapis.com/auth/chat.messages', - * 'https://www.googleapis.com/auth/chat.messages.reactions', - * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', - * 'https://www.googleapis.com/auth/chat.messages.readonly', - * 'https://www.googleapis.com/auth/chat.spaces', - * 'https://www.googleapis.com/auth/chat.spaces.readonly', - * 'https://www.googleapis.com/auth/drive', - * 'https://www.googleapis.com/auth/drive.file', - * 'https://www.googleapis.com/auth/drive.metadata', - * 'https://www.googleapis.com/auth/drive.metadata.readonly', - * 'https://www.googleapis.com/auth/drive.readonly', - * 'https://www.googleapis.com/auth/meetings.space.created', - * 'https://www.googleapis.com/auth/meetings.space.readonly', - * ], + * scopes: [], * }); * * // Acquire an auth client, and bind it to all future calls @@ -326,19 +2389,26 @@ export namespace workspaceevents_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await workspaceevents.operations.get({ - * // The name of the operation resource. - * name: 'operations/.*', + * const res = await workspaceevents.tasks.cancel({ + * // The resource name of the task to cancel. Format: tasks/{task_id\} + * name: 'tasks/my-task', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, + * // "artifacts": [], + * // "contextId": "my_contextId", + * // "history": [], + * // "id": "my_id", * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "status": {} * // } * } * @@ -354,52 +2424,52 @@ export namespace workspaceevents_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$Operations$Get, + cancel( + params: Params$Resource$Tasks$Cancel, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Operations$Get, + cancel( + params?: Params$Resource$Tasks$Cancel, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Operations$Get, + ): Promise>; + cancel( + params: Params$Resource$Tasks$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Operations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Tasks$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Operations$Get, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Tasks$Cancel, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Operations$Get - | BodyResponseCallback + | Params$Resource$Tasks$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Operations$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Tasks$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Operations$Get; + params = {} as Params$Resource$Tasks$Cancel; options = {}; } @@ -413,8 +2483,8 @@ export namespace workspaceevents_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -425,31 +2495,17 @@ export namespace workspaceevents_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Operations$Get extends StandardParameters { - /** - * The name of the operation resource. - */ - name?: string; - } - - export class Resource$Subscriptions { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a Google Workspace subscription. To learn how to use this method, see [Create a Google Workspace subscription](https://developers.google.com/workspace/events/guides/create-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can create a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` and getting one-time administrator approval ([Developer Preview](https://developers.google.com/workspace/preview)). To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). + * Get the current state of a task from the agent. * @example * ```js * // Before running the sample: @@ -470,26 +2526,7 @@ export namespace workspaceevents_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/chat.app.memberships', - * 'https://www.googleapis.com/auth/chat.app.messages.readonly', - * 'https://www.googleapis.com/auth/chat.app.spaces', - * 'https://www.googleapis.com/auth/chat.memberships', - * 'https://www.googleapis.com/auth/chat.memberships.readonly', - * 'https://www.googleapis.com/auth/chat.messages', - * 'https://www.googleapis.com/auth/chat.messages.reactions', - * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', - * 'https://www.googleapis.com/auth/chat.messages.readonly', - * 'https://www.googleapis.com/auth/chat.spaces', - * 'https://www.googleapis.com/auth/chat.spaces.readonly', - * 'https://www.googleapis.com/auth/drive', - * 'https://www.googleapis.com/auth/drive.file', - * 'https://www.googleapis.com/auth/drive.metadata', - * 'https://www.googleapis.com/auth/drive.metadata.readonly', - * 'https://www.googleapis.com/auth/drive.readonly', - * 'https://www.googleapis.com/auth/meetings.space.created', - * 'https://www.googleapis.com/auth/meetings.space.readonly', - * ], + * scopes: [], * }); * * // Acquire an auth client, and bind it to all future calls @@ -497,41 +2534,22 @@ export namespace workspaceevents_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await workspaceevents.subscriptions.create({ - * // Optional. If set to `true`, validates and previews the request, but doesn't create the subscription. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "authority": "my_authority", - * // "createTime": "my_createTime", - * // "etag": "my_etag", - * // "eventTypes": [], - * // "expireTime": "my_expireTime", - * // "name": "my_name", - * // "notificationEndpoint": {}, - * // "payloadOptions": {}, - * // "reconciling": false, - * // "state": "my_state", - * // "suspensionReason": "my_suspensionReason", - * // "targetResource": "my_targetResource", - * // "ttl": "my_ttl", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, + * const res = await workspaceevents.tasks.get({ + * // The number of most recent messages from the task's history to retrieve. + * historyLength: 'placeholder-value', + * // Required. The resource name of the task. Format: tasks/{task_id\} + * name: 'tasks/my-task', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, + * // "artifacts": [], + * // "contextId": "my_contextId", + * // "history": [], + * // "id": "my_id", * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "status": {} * // } * } * @@ -547,53 +2565,52 @@ export namespace workspaceevents_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$Subscriptions$Create, + get( + params: Params$Resource$Tasks$Get, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Subscriptions$Create, + get( + params?: Params$Resource$Tasks$Get, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Subscriptions$Create, + ): Promise>; + get( + params: Params$Resource$Tasks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Subscriptions$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Tasks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Subscriptions$Create, - callback: BodyResponseCallback + get( + params: Params$Resource$Tasks$Get, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Subscriptions$Create - | BodyResponseCallback + | Params$Resource$Tasks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Subscriptions$Create; + let params = (paramsOrCallback || {}) as Params$Resource$Tasks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Subscriptions$Create; + params = {} as Params$Resource$Tasks$Get; options = {}; } @@ -607,29 +2624,29 @@ export namespace workspaceevents_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/subscriptions').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+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); } } /** - * Deletes a Google Workspace subscription. To learn how to use this method, see [Delete a Google Workspace subscription](https://developers.google.com/workspace/events/guides/delete-subscription). + * TaskSubscription is a streaming call that will return a stream of task update events. This attaches the stream to an existing in process task. If the task is complete the stream will return the completed task (like GetTask) and close the stream. * @example * ```js * // Before running the sample: @@ -650,24 +2667,7 @@ export namespace workspaceevents_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/chat.bot', - * 'https://www.googleapis.com/auth/chat.memberships', - * 'https://www.googleapis.com/auth/chat.memberships.readonly', - * 'https://www.googleapis.com/auth/chat.messages', - * 'https://www.googleapis.com/auth/chat.messages.reactions', - * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', - * 'https://www.googleapis.com/auth/chat.messages.readonly', - * 'https://www.googleapis.com/auth/chat.spaces', - * 'https://www.googleapis.com/auth/chat.spaces.readonly', - * 'https://www.googleapis.com/auth/drive', - * 'https://www.googleapis.com/auth/drive.file', - * 'https://www.googleapis.com/auth/drive.metadata', - * 'https://www.googleapis.com/auth/drive.metadata.readonly', - * 'https://www.googleapis.com/auth/drive.readonly', - * 'https://www.googleapis.com/auth/meetings.space.created', - * 'https://www.googleapis.com/auth/meetings.space.readonly', - * ], + * scopes: [], * }); * * // Acquire an auth client, and bind it to all future calls @@ -675,25 +2675,18 @@ export namespace workspaceevents_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await workspaceevents.subscriptions.delete({ - * // Optional. If set to `true` and the subscription isn't found, the request succeeds but doesn't delete the subscription. - * allowMissing: 'placeholder-value', - * // Optional. Etag of the subscription. If present, it must match with the server's etag. Otherwise, request fails with the status `ABORTED`. - * etag: 'placeholder-value', - * // Required. Resource name of the subscription to delete. Format: `subscriptions/{subscription\}` - * name: 'subscriptions/my-subscription', - * // Optional. If set to `true`, validates and previews the request, but doesn't delete the subscription. - * validateOnly: 'placeholder-value', + * const res = await workspaceevents.tasks.subscribe({ + * // The resource name of the task to subscribe to. Format: tasks/{task_id\} + * name: 'tasks/my-task', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "artifactUpdate": {}, + * // "message": {}, + * // "statusUpdate": {}, + * // "task": {} * // } * } * @@ -709,53 +2702,52 @@ export namespace workspaceevents_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$Subscriptions$Delete, + subscribe( + params: Params$Resource$Tasks$Subscribe, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Subscriptions$Delete, + subscribe( + params?: Params$Resource$Tasks$Subscribe, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Subscriptions$Delete, + ): Promise>; + subscribe( + params: Params$Resource$Tasks$Subscribe, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Subscriptions$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + subscribe( + params: Params$Resource$Tasks$Subscribe, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Subscriptions$Delete, - callback: BodyResponseCallback + subscribe( + params: Params$Resource$Tasks$Subscribe, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + subscribe(callback: BodyResponseCallback): void; + subscribe( paramsOrCallback?: - | Params$Resource$Subscriptions$Delete - | BodyResponseCallback + | Params$Resource$Tasks$Subscribe + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Subscriptions$Delete; + let params = (paramsOrCallback || {}) as Params$Resource$Tasks$Subscribe; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Subscriptions$Delete; + params = {} as Params$Resource$Tasks$Subscribe; options = {}; } @@ -769,8 +2761,11 @@ export namespace workspaceevents_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+name}:subscribe').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options @@ -781,17 +2776,52 @@ export namespace workspaceevents_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Tasks$Cancel extends StandardParameters { /** - * Gets details about a Google Workspace subscription. To learn how to use this method, see [Get details about a Google Workspace subscription](https://developers.google.com/workspace/events/guides/get-subscription). + * The resource name of the task to cancel. Format: tasks/{task_id\} + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CancelTaskRequest; + } + export interface Params$Resource$Tasks$Get extends StandardParameters { + /** + * The number of most recent messages from the task's history to retrieve. + */ + historyLength?: number; + /** + * Required. The resource name of the task. Format: tasks/{task_id\} + */ + name?: string; + } + export interface Params$Resource$Tasks$Subscribe extends StandardParameters { + /** + * The resource name of the task to subscribe to. Format: tasks/{task_id\} + */ + name?: string; + } + + export class Resource$Tasks$Pushnotificationconfigs { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Set a push notification config for a task. * @example * ```js * // Before running the sample: @@ -812,24 +2842,7 @@ export namespace workspaceevents_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/chat.bot', - * 'https://www.googleapis.com/auth/chat.memberships', - * 'https://www.googleapis.com/auth/chat.memberships.readonly', - * 'https://www.googleapis.com/auth/chat.messages', - * 'https://www.googleapis.com/auth/chat.messages.reactions', - * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', - * 'https://www.googleapis.com/auth/chat.messages.readonly', - * 'https://www.googleapis.com/auth/chat.spaces', - * 'https://www.googleapis.com/auth/chat.spaces.readonly', - * 'https://www.googleapis.com/auth/drive', - * 'https://www.googleapis.com/auth/drive.file', - * 'https://www.googleapis.com/auth/drive.metadata', - * 'https://www.googleapis.com/auth/drive.metadata.readonly', - * 'https://www.googleapis.com/auth/drive.readonly', - * 'https://www.googleapis.com/auth/meetings.space.created', - * 'https://www.googleapis.com/auth/meetings.space.readonly', - * ], + * scopes: [], * }); * * // Acquire an auth client, and bind it to all future calls @@ -837,29 +2850,27 @@ export namespace workspaceevents_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await workspaceevents.subscriptions.get({ - * // Required. Resource name of the subscription. Format: `subscriptions/{subscription\}` - * name: 'subscriptions/my-subscription', + * const res = await workspaceevents.tasks.pushNotificationConfigs.create({ + * // Required. The ID for the new config. + * configId: 'placeholder-value', + * // Required. The parent task resource for this config. Format: tasks/{task_id\} + * parent: 'tasks/my-task/pushNotificationConfigs', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "name": "my_name", + * // "pushNotificationConfig": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "authority": "my_authority", - * // "createTime": "my_createTime", - * // "etag": "my_etag", - * // "eventTypes": [], - * // "expireTime": "my_expireTime", * // "name": "my_name", - * // "notificationEndpoint": {}, - * // "payloadOptions": {}, - * // "reconciling": false, - * // "state": "my_state", - * // "suspensionReason": "my_suspensionReason", - * // "targetResource": "my_targetResource", - * // "ttl": "my_ttl", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" + * // "pushNotificationConfig": {} * // } * } * @@ -875,53 +2886,57 @@ export namespace workspaceevents_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$Subscriptions$Get, + create( + params: Params$Resource$Tasks$Pushnotificationconfigs$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Subscriptions$Get, + create( + params?: Params$Resource$Tasks$Pushnotificationconfigs$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Subscriptions$Get, + ): Promise>; + create( + params: Params$Resource$Tasks$Pushnotificationconfigs$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Subscriptions$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Tasks$Pushnotificationconfigs$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Subscriptions$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Tasks$Pushnotificationconfigs$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create( + callback: BodyResponseCallback + ): void; + create( paramsOrCallback?: - | Params$Resource$Subscriptions$Get - | BodyResponseCallback + | Params$Resource$Tasks$Pushnotificationconfigs$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Subscriptions$Get; + {}) as Params$Resource$Tasks$Pushnotificationconfigs$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Subscriptions$Get; + params = {} as Params$Resource$Tasks$Pushnotificationconfigs$Create; options = {}; } @@ -935,29 +2950,29 @@ export namespace workspaceevents_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+parent}').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 Google Workspace subscriptions. To learn how to use this method, see [List Google Workspace subscriptions](https://developers.google.com/workspace/events/guides/list-subscriptions). + * Delete a push notification config for a task. * @example * ```js * // Before running the sample: @@ -978,24 +2993,7 @@ export namespace workspaceevents_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/chat.bot', - * 'https://www.googleapis.com/auth/chat.memberships', - * 'https://www.googleapis.com/auth/chat.memberships.readonly', - * 'https://www.googleapis.com/auth/chat.messages', - * 'https://www.googleapis.com/auth/chat.messages.reactions', - * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', - * 'https://www.googleapis.com/auth/chat.messages.readonly', - * 'https://www.googleapis.com/auth/chat.spaces', - * 'https://www.googleapis.com/auth/chat.spaces.readonly', - * 'https://www.googleapis.com/auth/drive', - * 'https://www.googleapis.com/auth/drive.file', - * 'https://www.googleapis.com/auth/drive.metadata', - * 'https://www.googleapis.com/auth/drive.metadata.readonly', - * 'https://www.googleapis.com/auth/drive.readonly', - * 'https://www.googleapis.com/auth/meetings.space.created', - * 'https://www.googleapis.com/auth/meetings.space.readonly', - * ], + * scopes: [], * }); * * // Acquire an auth client, and bind it to all future calls @@ -1003,21 +3001,14 @@ export namespace workspaceevents_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await workspaceevents.subscriptions.list({ - * // Required. A query filter. You can filter subscriptions by event type (`event_types`) and target resource (`target_resource`). You must specify at least one event type in your query. To filter for multiple event types, use the `OR` operator. To filter by both event type and target resource, use the `AND` operator and specify the full resource name, such as `//chat.googleapis.com/spaces/{space\}`. For example, the following queries are valid: ``` event_types:"google.workspace.chat.membership.v1.updated" OR event_types:"google.workspace.chat.message.v1.created" event_types:"google.workspace.chat.message.v1.created" AND target_resource="//chat.googleapis.com/spaces/{space\}" ( event_types:"google.workspace.chat.membership.v1.updated" OR event_types:"google.workspace.chat.message.v1.created" ) AND target_resource="//chat.googleapis.com/spaces/{space\}" ``` The server rejects invalid queries with an `INVALID_ARGUMENT` error. - * filter: 'placeholder-value', - * // Optional. The maximum number of subscriptions to return. The service might return fewer than this value. If unspecified or set to `0`, up to 50 subscriptions are returned. The maximum value is 100. If you specify a value more than 100, the system only returns 100 subscriptions. - * pageSize: 'placeholder-value', - * // Optional. A page token, received from a previous list subscriptions call. Provide this parameter to retrieve the subsequent page. When paginating, the filter value should match the call that provided the page token. Passing a different value might lead to unexpected results. - * pageToken: 'placeholder-value', + * const res = await workspaceevents.tasks.pushNotificationConfigs.delete({ + * // The resource name of the config to delete. Format: tasks/{task_id\}/pushNotificationConfigs/{config_id\} + * name: 'tasks/my-task/pushNotificationConfigs/my-pushNotificationConfig', * }); * console.log(res.data); * * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "subscriptions": [] - * // } + * // {} * } * * main().catch(e => { @@ -1032,57 +3023,53 @@ export namespace workspaceevents_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$Subscriptions$List, + delete( + params: Params$Resource$Tasks$Pushnotificationconfigs$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Subscriptions$List, + delete( + params?: Params$Resource$Tasks$Pushnotificationconfigs$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Subscriptions$List, + ): Promise>; + delete( + params: Params$Resource$Tasks$Pushnotificationconfigs$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Subscriptions$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Subscriptions$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Tasks$Pushnotificationconfigs$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Tasks$Pushnotificationconfigs$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Subscriptions$List - | BodyResponseCallback + | Params$Resource$Tasks$Pushnotificationconfigs$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Subscriptions$List; + {}) as Params$Resource$Tasks$Pushnotificationconfigs$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Subscriptions$List; + params = {} as Params$Resource$Tasks$Pushnotificationconfigs$Delete; options = {}; } @@ -1096,29 +3083,29 @@ export namespace workspaceevents_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/subscriptions').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', 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); } } /** - * Updates or renews a Google Workspace subscription. To learn how to use this method, see [Update or renew a Google Workspace subscription](https://developers.google.com/workspace/events/guides/update-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can update a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` andgetting one-time administrator approval ([Developer Preview](https://developers.google.com/workspace/preview)). To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). + * Get a push notification config for a task. * @example * ```js * // Before running the sample: @@ -1139,26 +3126,7 @@ export namespace workspaceevents_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/chat.app.memberships', - * 'https://www.googleapis.com/auth/chat.app.messages.readonly', - * 'https://www.googleapis.com/auth/chat.app.spaces', - * 'https://www.googleapis.com/auth/chat.memberships', - * 'https://www.googleapis.com/auth/chat.memberships.readonly', - * 'https://www.googleapis.com/auth/chat.messages', - * 'https://www.googleapis.com/auth/chat.messages.reactions', - * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', - * 'https://www.googleapis.com/auth/chat.messages.readonly', - * 'https://www.googleapis.com/auth/chat.spaces', - * 'https://www.googleapis.com/auth/chat.spaces.readonly', - * 'https://www.googleapis.com/auth/drive', - * 'https://www.googleapis.com/auth/drive.file', - * 'https://www.googleapis.com/auth/drive.metadata', - * 'https://www.googleapis.com/auth/drive.metadata.readonly', - * 'https://www.googleapis.com/auth/drive.readonly', - * 'https://www.googleapis.com/auth/meetings.space.created', - * 'https://www.googleapis.com/auth/meetings.space.readonly', - * ], + * scopes: [], * }); * * // Acquire an auth client, and bind it to all future calls @@ -1166,45 +3134,16 @@ export namespace workspaceevents_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await workspaceevents.subscriptions.patch({ - * // Identifier. Resource name of the subscription. Format: `subscriptions/{subscription\}` - * name: 'subscriptions/my-subscription', - * // Optional. The field to update. If omitted, updates any fields included in the request. You can update one of the following fields in a subscription: * `expire_time`: The timestamp when the subscription expires. * `ttl`: The time-to-live (TTL) or duration of the subscription. * `event_types`: The list of event types to receive about the target resource. When using the `*` wildcard (equivalent to `PUT`), omitted fields are set to empty values and rejected if they're invalid. - * updateMask: 'placeholder-value', - * // Optional. If set to `true`, validates and previews the request, but doesn't update the subscription. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "authority": "my_authority", - * // "createTime": "my_createTime", - * // "etag": "my_etag", - * // "eventTypes": [], - * // "expireTime": "my_expireTime", - * // "name": "my_name", - * // "notificationEndpoint": {}, - * // "payloadOptions": {}, - * // "reconciling": false, - * // "state": "my_state", - * // "suspensionReason": "my_suspensionReason", - * // "targetResource": "my_targetResource", - * // "ttl": "my_ttl", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, + * const res = await workspaceevents.tasks.pushNotificationConfigs.get({ + * // The resource name of the config to retrieve. Format: tasks/{task_id\}/pushNotificationConfigs/{config_id\} + * name: 'tasks/my-task/pushNotificationConfigs/my-pushNotificationConfig', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, * // "name": "my_name", - * // "response": {} + * // "pushNotificationConfig": {} * // } * } * @@ -1220,53 +3159,57 @@ export namespace workspaceevents_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$Subscriptions$Patch, + get( + params: Params$Resource$Tasks$Pushnotificationconfigs$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Subscriptions$Patch, + get( + params?: Params$Resource$Tasks$Pushnotificationconfigs$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Subscriptions$Patch, + ): Promise>; + get( + params: Params$Resource$Tasks$Pushnotificationconfigs$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Subscriptions$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Tasks$Pushnotificationconfigs$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Tasks$Pushnotificationconfigs$Get, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Subscriptions$Patch, - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + get( paramsOrCallback?: - | Params$Resource$Subscriptions$Patch - | BodyResponseCallback + | Params$Resource$Tasks$Pushnotificationconfigs$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Subscriptions$Patch; + {}) as Params$Resource$Tasks$Pushnotificationconfigs$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Subscriptions$Patch; + params = {} as Params$Resource$Tasks$Pushnotificationconfigs$Get; options = {}; } @@ -1281,7 +3224,7 @@ export namespace workspaceevents_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -1292,17 +3235,17 @@ export namespace workspaceevents_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Reactivates a suspended Google Workspace subscription. This method resets your subscription's `State` field to `ACTIVE`. Before you use this method, you must fix the error that suspended the subscription. This method will ignore or reject any subscription that isn't currently in a suspended state. To learn how to use this method, see [Reactivate a Google Workspace subscription](https://developers.google.com/workspace/events/guides/reactivate-subscription). For a subscription on a [Chat target resource](https://developers.google.com/workspace/events/guides/events-chat), you can reactivate a subscription as: - A Chat app by specifying an authorization scope that begins with `chat.app` andgetting one-time administrator approval ([Developer Preview](https://developers.google.com/workspace/preview)). To learn more, see [Authorize as a Chat app with administrator approval](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app). - A user by specifying an authorization scope that doesn't include `app` in its name. To learn more, see [Authorize as a Chat user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). + * Get a list of push notifications configured for a task. * @example * ```js * // Before running the sample: @@ -1323,26 +3266,7 @@ export namespace workspaceevents_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/chat.app.memberships', - * 'https://www.googleapis.com/auth/chat.app.messages.readonly', - * 'https://www.googleapis.com/auth/chat.app.spaces', - * 'https://www.googleapis.com/auth/chat.memberships', - * 'https://www.googleapis.com/auth/chat.memberships.readonly', - * 'https://www.googleapis.com/auth/chat.messages', - * 'https://www.googleapis.com/auth/chat.messages.reactions', - * 'https://www.googleapis.com/auth/chat.messages.reactions.readonly', - * 'https://www.googleapis.com/auth/chat.messages.readonly', - * 'https://www.googleapis.com/auth/chat.spaces', - * 'https://www.googleapis.com/auth/chat.spaces.readonly', - * 'https://www.googleapis.com/auth/drive', - * 'https://www.googleapis.com/auth/drive.file', - * 'https://www.googleapis.com/auth/drive.metadata', - * 'https://www.googleapis.com/auth/drive.metadata.readonly', - * 'https://www.googleapis.com/auth/drive.readonly', - * 'https://www.googleapis.com/auth/meetings.space.created', - * 'https://www.googleapis.com/auth/meetings.space.readonly', - * ], + * scopes: [], * }); * * // Acquire an auth client, and bind it to all future calls @@ -1350,25 +3274,20 @@ export namespace workspaceevents_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await workspaceevents.subscriptions.reactivate({ - * // Required. Resource name of the subscription. Format: `subscriptions/{subscription\}` - * name: 'subscriptions/my-subscription', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, + * const res = await workspaceevents.tasks.pushNotificationConfigs.list({ + * // For AIP-158 these fields are present. Usually not used/needed. The maximum number of configurations to return. If unspecified, all configs will be returned. + * pageSize: 'placeholder-value', + * // A page token received from a previous ListTaskPushNotificationConfigRequest call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTaskPushNotificationConfigRequest` must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // The parent task resource. Format: tasks/{task_id\} + * parent: 'tasks/my-task', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "configs": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -1384,53 +3303,61 @@ export namespace workspaceevents_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - reactivate( - params: Params$Resource$Subscriptions$Reactivate, + list( + params: Params$Resource$Tasks$Pushnotificationconfigs$List, options: StreamMethodOptions ): Promise>; - reactivate( - params?: Params$Resource$Subscriptions$Reactivate, + list( + params?: Params$Resource$Tasks$Pushnotificationconfigs$List, options?: MethodOptions - ): Promise>; - reactivate( - params: Params$Resource$Subscriptions$Reactivate, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Tasks$Pushnotificationconfigs$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reactivate( - params: Params$Resource$Subscriptions$Reactivate, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Tasks$Pushnotificationconfigs$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - reactivate( - params: Params$Resource$Subscriptions$Reactivate, - callback: BodyResponseCallback + list( + params: Params$Resource$Tasks$Pushnotificationconfigs$List, + callback: BodyResponseCallback ): void; - reactivate(callback: BodyResponseCallback): void; - reactivate( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Subscriptions$Reactivate - | BodyResponseCallback + | Params$Resource$Tasks$Pushnotificationconfigs$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Subscriptions$Reactivate; + {}) as Params$Resource$Tasks$Pushnotificationconfigs$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Subscriptions$Reactivate; + params = {} as Params$Resource$Tasks$Pushnotificationconfigs$List; options = {}; } @@ -1444,114 +3371,233 @@ export namespace workspaceevents_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:reactivate').replace( + url: (rootUrl + '/v1/{+parent}/pushNotificationConfigs').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + 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$Subscriptions$Create + export interface Params$Resource$Tasks$Pushnotificationconfigs$Create extends StandardParameters { /** - * Optional. If set to `true`, validates and previews the request, but doesn't create the subscription. + * Required. The ID for the new config. */ - validateOnly?: boolean; + configId?: string; + /** + * Required. The parent task resource for this config. Format: tasks/{task_id\} + */ + parent?: string; /** * Request body metadata */ - requestBody?: Schema$Subscription; + requestBody?: Schema$TaskPushNotificationConfig; } - export interface Params$Resource$Subscriptions$Delete + export interface Params$Resource$Tasks$Pushnotificationconfigs$Delete extends StandardParameters { /** - * Optional. If set to `true` and the subscription isn't found, the request succeeds but doesn't delete the subscription. - */ - allowMissing?: boolean; - /** - * Optional. Etag of the subscription. If present, it must match with the server's etag. Otherwise, request fails with the status `ABORTED`. - */ - etag?: string; - /** - * Required. Resource name of the subscription to delete. Format: `subscriptions/{subscription\}` + * The resource name of the config to delete. Format: tasks/{task_id\}/pushNotificationConfigs/{config_id\} */ name?: string; - /** - * Optional. If set to `true`, validates and previews the request, but doesn't delete the subscription. - */ - validateOnly?: boolean; } - export interface Params$Resource$Subscriptions$Get + export interface Params$Resource$Tasks$Pushnotificationconfigs$Get extends StandardParameters { /** - * Required. Resource name of the subscription. Format: `subscriptions/{subscription\}` + * The resource name of the config to retrieve. Format: tasks/{task_id\}/pushNotificationConfigs/{config_id\} */ name?: string; } - export interface Params$Resource$Subscriptions$List + export interface Params$Resource$Tasks$Pushnotificationconfigs$List extends StandardParameters { /** - * Required. A query filter. You can filter subscriptions by event type (`event_types`) and target resource (`target_resource`). You must specify at least one event type in your query. To filter for multiple event types, use the `OR` operator. To filter by both event type and target resource, use the `AND` operator and specify the full resource name, such as `//chat.googleapis.com/spaces/{space\}`. For example, the following queries are valid: ``` event_types:"google.workspace.chat.membership.v1.updated" OR event_types:"google.workspace.chat.message.v1.created" event_types:"google.workspace.chat.message.v1.created" AND target_resource="//chat.googleapis.com/spaces/{space\}" ( event_types:"google.workspace.chat.membership.v1.updated" OR event_types:"google.workspace.chat.message.v1.created" ) AND target_resource="//chat.googleapis.com/spaces/{space\}" ``` The server rejects invalid queries with an `INVALID_ARGUMENT` error. - */ - filter?: string; - /** - * Optional. The maximum number of subscriptions to return. The service might return fewer than this value. If unspecified or set to `0`, up to 50 subscriptions are returned. The maximum value is 100. If you specify a value more than 100, the system only returns 100 subscriptions. + * For AIP-158 these fields are present. Usually not used/needed. The maximum number of configurations to return. If unspecified, all configs will be returned. */ pageSize?: number; /** - * Optional. A page token, received from a previous list subscriptions call. Provide this parameter to retrieve the subsequent page. When paginating, the filter value should match the call that provided the page token. Passing a different value might lead to unexpected results. + * A page token received from a previous ListTaskPushNotificationConfigRequest call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTaskPushNotificationConfigRequest` must match the call that provided the page token. */ pageToken?: string; - } - export interface Params$Resource$Subscriptions$Patch - extends StandardParameters { /** - * Identifier. Resource name of the subscription. Format: `subscriptions/{subscription\}` - */ - name?: string; - /** - * Optional. The field to update. If omitted, updates any fields included in the request. You can update one of the following fields in a subscription: * `expire_time`: The timestamp when the subscription expires. * `ttl`: The time-to-live (TTL) or duration of the subscription. * `event_types`: The list of event types to receive about the target resource. When using the `*` wildcard (equivalent to `PUT`), omitted fields are set to empty values and rejected if they're invalid. - */ - updateMask?: string; - /** - * Optional. If set to `true`, validates and previews the request, but doesn't update the subscription. - */ - validateOnly?: boolean; - - /** - * Request body metadata + * The parent task resource. Format: tasks/{task_id\} */ - requestBody?: Schema$Subscription; + parent?: string; } - export interface Params$Resource$Subscriptions$Reactivate - extends StandardParameters { - /** - * Required. Resource name of the subscription. Format: `subscriptions/{subscription\}` - */ - name?: string; + + export class Resource$V1 { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Request body metadata + * GetAgentCard returns the agent card for the agent. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/workspaceevents.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 workspaceevents = google.workspaceevents('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: [], + * }); + * + * // 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 workspaceevents.getCard({}); + * console.log(res.data); + * + * // Example response + * // { + * // "additionalInterfaces": [], + * // "capabilities": {}, + * // "defaultInputModes": [], + * // "defaultOutputModes": [], + * // "description": "my_description", + * // "documentationUrl": "my_documentationUrl", + * // "iconUrl": "my_iconUrl", + * // "name": "my_name", + * // "preferredTransport": "my_preferredTransport", + * // "protocolVersion": "my_protocolVersion", + * // "provider": {}, + * // "security": [], + * // "securitySchemes": {}, + * // "signatures": [], + * // "skills": [], + * // "supportsAuthenticatedExtendedCard": false, + * // "url": "my_url", + * // "version": "my_version" + * // } + * } + * + * 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. */ - requestBody?: Schema$ReactivateSubscriptionRequest; + getCard( + params: Params$Resource$V1$Getcard, + options: StreamMethodOptions + ): Promise>; + getCard( + params?: Params$Resource$V1$Getcard, + options?: MethodOptions + ): Promise>; + getCard( + params: Params$Resource$V1$Getcard, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getCard( + params: Params$Resource$V1$Getcard, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getCard( + params: Params$Resource$V1$Getcard, + callback: BodyResponseCallback + ): void; + getCard(callback: BodyResponseCallback): void; + getCard( + paramsOrCallback?: + | Params$Resource$V1$Getcard + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$V1$Getcard; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$V1$Getcard; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://workspaceevents.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/card').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$V1$Getcard extends StandardParameters {} }