From 2e9bf888d35b20059deca48253e11177be49aec3 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:22 +0000 Subject: [PATCH 01/23] fix(aiplatform): update the API --- src/apis/aiplatform/index.ts | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/apis/aiplatform/index.ts b/src/apis/aiplatform/index.ts index fb2e0512a75..112d16fe81a 100644 --- a/src/apis/aiplatform/index.ts +++ b/src/apis/aiplatform/index.ts @@ -35,10 +35,7 @@ export function aiplatform< >( this: GoogleConfigurable, versionOrOptions: - | 'v1' - | aiplatform_v1.Options - | 'v1beta1' - | aiplatform_v1beta1.Options + 'v1' | aiplatform_v1.Options | 'v1beta1' | aiplatform_v1beta1.Options ) { return getAPI('aiplatform', versionOrOptions, VERSIONS, this); } From c3121c4c6ee0706bdb39ceacddee41a5b438cdbd Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:22 +0000 Subject: [PATCH 02/23] fix(analytics): update the API --- src/apis/analytics/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/apis/analytics/README.md b/src/apis/analytics/README.md index 59a78d582d2..dc267db247a 100644 --- a/src/apis/analytics/README.md +++ b/src/apis/analytics/README.md @@ -2,7 +2,7 @@ # analytics -> The Analytics API provides access to Analytics configuration and report data. +> ## Installation From 7f79e865262fba91a413c8751a03cd2105cd1d0f Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:22 +0000 Subject: [PATCH 03/23] fix(analyticsadmin): update the API #### analyticsadmin:v1alpha The following keys were changed: - resources.properties.resources.customDimensions.methods.create.description #### analyticsadmin:v1beta The following keys were changed: - resources.properties.resources.customDimensions.methods.create.description --- discovery/analyticsadmin-v1alpha.json | 4 ++-- discovery/analyticsadmin-v1beta.json | 4 ++-- src/apis/analyticsadmin/v1alpha.ts | 2 +- src/apis/analyticsadmin/v1beta.ts | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/discovery/analyticsadmin-v1alpha.json b/discovery/analyticsadmin-v1alpha.json index eff9e1fbeeb..44410883563 100644 --- a/discovery/analyticsadmin-v1alpha.json +++ b/discovery/analyticsadmin-v1alpha.json @@ -2366,7 +2366,7 @@ ] }, "create": { - "description": "Creates a CustomDimension.", + "description": "Creates a CustomDimension. Warning: It's not permissible to use this method to collect data on individual users. In particular, sending user IDs in custom dimensions violates the [Google Analytics Terms of Service](https://www.google.com/analytics/terms/).", "flatPath": "v1alpha/properties/{propertiesId}/customDimensions", "httpMethod": "POST", "id": "analyticsadmin.properties.customDimensions.create", @@ -5146,7 +5146,7 @@ } } }, - "revision": "20260628", + "revision": "20260802", "rootUrl": "https://analyticsadmin.googleapis.com/", "schemas": { "GoogleAnalyticsAdminV1alphaAccessBetweenFilter": { diff --git a/discovery/analyticsadmin-v1beta.json b/discovery/analyticsadmin-v1beta.json index f847e3ae4f7..4a3ec1535f7 100644 --- a/discovery/analyticsadmin-v1beta.json +++ b/discovery/analyticsadmin-v1beta.json @@ -816,7 +816,7 @@ ] }, "create": { - "description": "Creates a CustomDimension.", + "description": "Creates a CustomDimension. Warning: It's not permissible to use this method to collect data on individual users. In particular, sending user IDs in custom dimensions violates the [Google Analytics Terms of Service](https://www.google.com/analytics/terms/).", "flatPath": "v1beta/properties/{propertiesId}/customDimensions", "httpMethod": "POST", "id": "analyticsadmin.properties.customDimensions.create", @@ -1788,7 +1788,7 @@ } } }, - "revision": "20260628", + "revision": "20260802", "rootUrl": "https://analyticsadmin.googleapis.com/", "schemas": { "GoogleAnalyticsAdminV1betaAccessBetweenFilter": { diff --git a/src/apis/analyticsadmin/v1alpha.ts b/src/apis/analyticsadmin/v1alpha.ts index 8377c19bce7..cb45dfcc3f0 100644 --- a/src/apis/analyticsadmin/v1alpha.ts +++ b/src/apis/analyticsadmin/v1alpha.ts @@ -15767,7 +15767,7 @@ export namespace analyticsadmin_v1alpha { } /** - * Creates a CustomDimension. + * Creates a CustomDimension. Warning: It's not permissible to use this method to collect data on individual users. In particular, sending user IDs in custom dimensions violates the [Google Analytics Terms of Service](https://www.google.com/analytics/terms/). * @example * ```js * // Before running the sample: diff --git a/src/apis/analyticsadmin/v1beta.ts b/src/apis/analyticsadmin/v1beta.ts index f0196a30da0..dc2e587f129 100644 --- a/src/apis/analyticsadmin/v1beta.ts +++ b/src/apis/analyticsadmin/v1beta.ts @@ -5374,7 +5374,7 @@ export namespace analyticsadmin_v1beta { } /** - * Creates a CustomDimension. + * Creates a CustomDimension. Warning: It's not permissible to use this method to collect data on individual users. In particular, sending user IDs in custom dimensions violates the [Google Analytics Terms of Service](https://www.google.com/analytics/terms/). * @example * ```js * // Before running the sample: From 8877e12930eefd1525c7a63efbf4fcccadd6b9d2 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:22 +0000 Subject: [PATCH 04/23] fix(androiddeviceprovisioning): update the API #### androiddeviceprovisioning:v1 The following keys were changed: - resources.customers.resources.devices.methods.list.parameters.pageSize.description --- discovery/androiddeviceprovisioning-v1.json | 4 ++-- src/apis/androiddeviceprovisioning/v1.ts | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/discovery/androiddeviceprovisioning-v1.json b/discovery/androiddeviceprovisioning-v1.json index 8be4076d0fc..2f399011236 100644 --- a/discovery/androiddeviceprovisioning-v1.json +++ b/discovery/androiddeviceprovisioning-v1.json @@ -309,7 +309,7 @@ ], "parameters": { "pageSize": { - "description": "Optional. The maximum number of devices to show in a page of results. If unset or 0, defaults to 1000. If a value greater than 1000 is specified, it will be coerced to 1000.", + "description": "Optional. The maximum number of devices to show in a page of results. If unset or `0`, defaults to `5000`. If a value greater than `10000` is specified, it will be coerced to `10000`.", "format": "int64", "location": "query", "type": "string" @@ -851,7 +851,7 @@ } } }, - "revision": "20260712", + "revision": "20260803", "rootUrl": "https://androiddeviceprovisioning.googleapis.com/", "schemas": { "ClaimDeviceRequest": { diff --git a/src/apis/androiddeviceprovisioning/v1.ts b/src/apis/androiddeviceprovisioning/v1.ts index 4afb36a7722..19d09e22284 100644 --- a/src/apis/androiddeviceprovisioning/v1.ts +++ b/src/apis/androiddeviceprovisioning/v1.ts @@ -2204,7 +2204,7 @@ export namespace androiddeviceprovisioning_v1 { * * // Do the magic * const res = await androiddeviceprovisioning.customers.devices.list({ - * // Optional. The maximum number of devices to show in a page of results. If unset or 0, defaults to 1000. If a value greater than 1000 is specified, it will be coerced to 1000. + * // Optional. The maximum number of devices to show in a page of results. If unset or `0`, defaults to `5000`. If a value greater than `10000` is specified, it will be coerced to `10000`. * pageSize: 'placeholder-value', * // A token specifying which result page to return. * pageToken: 'placeholder-value', @@ -2626,7 +2626,7 @@ export namespace androiddeviceprovisioning_v1 { } export interface Params$Resource$Customers$Devices$List extends StandardParameters { /** - * Optional. The maximum number of devices to show in a page of results. If unset or 0, defaults to 1000. If a value greater than 1000 is specified, it will be coerced to 1000. + * Optional. The maximum number of devices to show in a page of results. If unset or `0`, defaults to `5000`. If a value greater than `10000` is specified, it will be coerced to `10000`. */ pageSize?: string; /** From 59b6ca2569ba26e5820fae959d2d01c6ee02620f Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:22 +0000 Subject: [PATCH 05/23] fix(apihub): update the API #### apihub:v1 The following keys were changed: - schemas.GoogleCloudApihubV1Plugin.properties.gatewayType.enum - schemas.GoogleCloudApihubV1Plugin.properties.gatewayType.enumDescriptions - schemas.GoogleCloudApihubV1Version.properties.deployments.description --- discovery/apihub-v1.json | 10 ++++++---- src/apis/apihub/v1.ts | 2 +- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/discovery/apihub-v1.json b/discovery/apihub-v1.json index fc8a6ab4264..e3f67922063 100644 --- a/discovery/apihub-v1.json +++ b/discovery/apihub-v1.json @@ -3435,7 +3435,7 @@ } } }, - "revision": "20260720", + "revision": "20260729", "rootUrl": "https://apihub.googleapis.com/", "schemas": { "Empty": { @@ -6500,7 +6500,8 @@ "CLOUD_ENDPOINTS", "API_DISCOVERY", "OTHERS", - "AWS_API_GATEWAY" + "AWS_API_GATEWAY", + "AZURE_API_MANAGEMENT" ], "enumDescriptions": [ "The gateway type is not specified.", @@ -6511,7 +6512,8 @@ "The gateway type is Cloud Endpoints.", "The gateway type is API Discovery.", "The gateway type for any other types of gateways.", - "The gateway type is AWS API Gateway." + "The gateway type is AWS API Gateway.", + "The gateway type is Azure API Management." ], "type": "string" }, @@ -7401,7 +7403,7 @@ "type": "array" }, "deployments": { - "description": "Optional. The deployments linked to this API version. Note: A particular API version could be deployed to multiple deployments (for dev deployment, UAT deployment, etc) Format is `projects/{project}/locations/{location}/deployments/{deployment}`", + "description": "Optional. The deployments linked directly to this API version. Only directly-linked deployments are returned; deployments linked to this version's specs or operations are not included. Note: A particular API version could be deployed to multiple deployments (for dev deployment, UAT deployment, etc) Format is `projects/{project}/locations/{location}/deployments/{deployment}`", "items": { "type": "string" }, diff --git a/src/apis/apihub/v1.ts b/src/apis/apihub/v1.ts index ccc7cd488b9..365cd7f0628 100644 --- a/src/apis/apihub/v1.ts +++ b/src/apis/apihub/v1.ts @@ -2800,7 +2800,7 @@ export namespace apihub_v1 { */ definitions?: string[] | null; /** - * Optional. The deployments linked to this API version. Note: A particular API version could be deployed to multiple deployments (for dev deployment, UAT deployment, etc) Format is `projects/{project\}/locations/{location\}/deployments/{deployment\}` + * Optional. The deployments linked directly to this API version. Only directly-linked deployments are returned; deployments linked to this version's specs or operations are not included. Note: A particular API version could be deployed to multiple deployments (for dev deployment, UAT deployment, etc) Format is `projects/{project\}/locations/{location\}/deployments/{deployment\}` */ deployments?: string[] | null; /** From b5fc657b4dd3009b7c7188b02f04ae5291daa2a1 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:22 +0000 Subject: [PATCH 06/23] feat(apikeys): update the API #### apikeys:v2 The following keys were added: - resources.projects.resources.locations.resources.keys.methods.patch.parameters.checkExistingUsage.description - resources.projects.resources.locations.resources.keys.methods.patch.parameters.checkExistingUsage.enum - resources.projects.resources.locations.resources.keys.methods.patch.parameters.checkExistingUsage.enumDescriptions - resources.projects.resources.locations.resources.keys.methods.patch.parameters.checkExistingUsage.location - resources.projects.resources.locations.resources.keys.methods.patch.parameters.checkExistingUsage.type --- discovery/apikeys-v2.json | 17 ++++++++++++++++- src/apis/apikeys/v2.ts | 6 ++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/discovery/apikeys-v2.json b/discovery/apikeys-v2.json index 978838122d2..1e4b53e0e7a 100644 --- a/discovery/apikeys-v2.json +++ b/discovery/apikeys-v2.json @@ -336,6 +336,21 @@ "name" ], "parameters": { + "checkExistingUsage": { + "description": "Optional. Defines the behavior for checking existing usage when updating a key.", + "enum": [ + "CHECK_EXISTING_USAGE_UNSPECIFIED", + "SKIP", + "CHECK" + ], + "enumDescriptions": [ + "When unset, the default behavior is used, which is SKIP.", + "If set, skip checking existing usage when updating a key.", + "If set, existing usage is checked when updating the key. If the key has usage in the last 7 days, the request returns a FAILED_PRECONDITION error." + ], + "location": "query", + "type": "string" + }, "name": { "description": "Identifier. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`.", "location": "path", @@ -396,7 +411,7 @@ } } }, - "revision": "20260317", + "revision": "20260721", "rootUrl": "https://apikeys.googleapis.com/", "schemas": { "Operation": { diff --git a/src/apis/apikeys/v2.ts b/src/apis/apikeys/v2.ts index 3ff469a53e4..bfe754e9509 100644 --- a/src/apis/apikeys/v2.ts +++ b/src/apis/apikeys/v2.ts @@ -1434,6 +1434,8 @@ export namespace apikeys_v2 { * * // Do the magic * const res = await apikeys.projects.locations.keys.patch({ + * // Optional. Defines the behavior for checking existing usage when updating a key. + * checkExistingUsage: 'placeholder-value', * // Identifier. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`. * name: 'projects/my-project/locations/my-location/keys/my-key', * // The field mask specifies which fields to be updated as part of this request. All other fields are ignored. Mutable fields are: `display_name`, `restrictions`, and `annotations`. If an update mask is not provided, the service treats it as an implied mask equivalent to all allowed fields that are set on the wire. If the field mask has a special value "*", the service treats it equivalent to replace all allowed mutable fields. @@ -1763,6 +1765,10 @@ export namespace apikeys_v2 { showDeleted?: boolean; } export interface Params$Resource$Projects$Locations$Keys$Patch extends StandardParameters { + /** + * Optional. Defines the behavior for checking existing usage when updating a key. + */ + checkExistingUsage?: string; /** * Identifier. The resource name of the key. The `name` has the form: `projects//locations/global/keys/`. For example: `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2` NOTE: Key is a global resource; hence the only supported value for location is `global`. */ From 7e30edf61eb83da36af970a6f12ee33839e20856 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:23 +0000 Subject: [PATCH 07/23] fix(cloudidentity): update the API #### cloudidentity:v1beta1 The following keys were changed: - schemas.Setting.properties.type.description #### cloudidentity:v1 The following keys were changed: - schemas.Setting.properties.type.description --- discovery/cloudidentity-v1.json | 4 ++-- discovery/cloudidentity-v1beta1.json | 4 ++-- src/apis/cloudidentity/v1.ts | 2 +- src/apis/cloudidentity/v1beta1.ts | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/discovery/cloudidentity-v1.json b/discovery/cloudidentity-v1.json index 75c43df0526..59786fb331b 100644 --- a/discovery/cloudidentity-v1.json +++ b/discovery/cloudidentity-v1.json @@ -2311,7 +2311,7 @@ } } }, - "revision": "20260617", + "revision": "20260803", "rootUrl": "https://cloudidentity.googleapis.com/", "schemas": { "AddIdpCredentialOperationMetadata": { @@ -4657,7 +4657,7 @@ "id": "Setting", "properties": { "type": { - "description": "Required. Immutable. The type of the Setting. .", + "description": "Required. Immutable. The type of the Setting.", "type": "string" }, "value": { diff --git a/discovery/cloudidentity-v1beta1.json b/discovery/cloudidentity-v1beta1.json index f242fb891fa..0bc44d8bb58 100644 --- a/discovery/cloudidentity-v1beta1.json +++ b/discovery/cloudidentity-v1beta1.json @@ -2349,7 +2349,7 @@ } } }, - "revision": "20260722", + "revision": "20260803", "rootUrl": "https://cloudidentity.googleapis.com/", "schemas": { "AddIdpCredentialOperationMetadata": { @@ -5794,7 +5794,7 @@ "id": "Setting", "properties": { "type": { - "description": "Required. Immutable. The type of the Setting. .", + "description": "Required. Immutable. The type of the Setting.", "type": "string" }, "value": { diff --git a/src/apis/cloudidentity/v1.ts b/src/apis/cloudidentity/v1.ts index 55737feaa9d..f78b1c4b394 100644 --- a/src/apis/cloudidentity/v1.ts +++ b/src/apis/cloudidentity/v1.ts @@ -1712,7 +1712,7 @@ export namespace cloudidentity_v1 { */ export interface Schema$Setting { /** - * Required. Immutable. The type of the Setting. . + * Required. Immutable. The type of the Setting. */ type?: string | null; /** diff --git a/src/apis/cloudidentity/v1beta1.ts b/src/apis/cloudidentity/v1beta1.ts index 6b611aed3bd..a5413217ea2 100644 --- a/src/apis/cloudidentity/v1beta1.ts +++ b/src/apis/cloudidentity/v1beta1.ts @@ -2328,7 +2328,7 @@ export namespace cloudidentity_v1beta1 { */ export interface Schema$Setting { /** - * Required. Immutable. The type of the Setting. . + * Required. Immutable. The type of the Setting. */ type?: string | null; /** From 7152703b1c3b18f0afc6025d1f9b667c8ec43305 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:23 +0000 Subject: [PATCH 08/23] feat(cloudsearch): update the API #### cloudsearch:v1 The following keys were added: - resources.query.resources.sources.methods.list.parameters.requestOptions.countryCode.description - resources.query.resources.sources.methods.list.parameters.requestOptions.countryCode.location - resources.query.resources.sources.methods.list.parameters.requestOptions.countryCode.type - schemas.RequestOptions.properties.countryCode.description - schemas.RequestOptions.properties.countryCode.type --- discovery/cloudsearch-v1.json | 11 ++++++++++- src/apis/cloudsearch/v1.ts | 10 ++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/discovery/cloudsearch-v1.json b/discovery/cloudsearch-v1.json index 8c36a873116..73237c497b2 100644 --- a/discovery/cloudsearch-v1.json +++ b/discovery/cloudsearch-v1.json @@ -1020,6 +1020,11 @@ "location": "query", "type": "string" }, + "requestOptions.countryCode": { + "description": "Optional. Specifies the country/region where the query originated, as a lowercase ISO 3166-1 alpha-2 region code (using 'uk' instead of 'gb' for the United Kingdom).", + "location": "query", + "type": "string" + }, "requestOptions.debugOptions.enableDebugging": { "description": "If you are asked by Google to help with debugging, set this field. Otherwise, ignore this field.", "location": "query", @@ -2106,7 +2111,7 @@ } } }, - "revision": "20260610", + "revision": "20260729", "rootUrl": "https://cloudsearch.googleapis.com/", "schemas": { "Action": { @@ -6894,6 +6899,10 @@ "description": "The BCP-47 language code, such as \"pt\" or \"en\". It represents the user's preferred Display Language.", "type": "string" }, + "countryCode": { + "description": "Optional. Specifies the country/region where the query originated, as a lowercase ISO 3166-1 alpha-2 region code (using 'uk' instead of 'gb' for the United Kingdom).", + "type": "string" + }, "debugOptions": { "$ref": "DebugOptions", "description": "Debug options of the request" diff --git a/src/apis/cloudsearch/v1.ts b/src/apis/cloudsearch/v1.ts index 747106e9fed..9e57e3c2839 100644 --- a/src/apis/cloudsearch/v1.ts +++ b/src/apis/cloudsearch/v1.ts @@ -2986,6 +2986,10 @@ export namespace cloudsearch_v1 { * The BCP-47 language code, such as "pt" or "en". It represents the user's preferred Display Language. */ clientDisplayLanguageCode?: string | null; + /** + * Optional. Specifies the country/region where the query originated, as a lowercase ISO 3166-1 alpha-2 region code (using 'uk' instead of 'gb' for the United Kingdom). + */ + countryCode?: string | null; /** * Debug options of the request */ @@ -7756,6 +7760,8 @@ export namespace cloudsearch_v1 { * pageToken: 'placeholder-value', * // The BCP-47 language code, such as "pt" or "en". It represents the user's preferred Display Language. * 'requestOptions.clientDisplayLanguageCode': 'placeholder-value', + * // Optional. Specifies the country/region where the query originated, as a lowercase ISO 3166-1 alpha-2 region code (using 'uk' instead of 'gb' for the United Kingdom). + * 'requestOptions.countryCode': 'placeholder-value', * // If you are asked by Google to help with debugging, set this field. Otherwise, ignore this field. * 'requestOptions.debugOptions.enableDebugging': 'placeholder-value', * // The BCP-47 language code, such as "en-US" or "sr-Latn". For more information, see http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. For translations. Set this field using the language set in browser or for the page. In the event that the user's language preference is known, set this field to the known user language. When specified, the documents in search results are biased towards the specified language. The Suggest API uses this field as a hint to make better third-party autocomplete predictions. @@ -7877,6 +7883,10 @@ export namespace cloudsearch_v1 { * The BCP-47 language code, such as "pt" or "en". It represents the user's preferred Display Language. */ 'requestOptions.clientDisplayLanguageCode'?: string; + /** + * Optional. Specifies the country/region where the query originated, as a lowercase ISO 3166-1 alpha-2 region code (using 'uk' instead of 'gb' for the United Kingdom). + */ + 'requestOptions.countryCode'?: string; /** * If you are asked by Google to help with debugging, set this field. Otherwise, ignore this field. */ From 467d2aaf99dae31095e0d1a7fa1e9181cd0667e1 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:23 +0000 Subject: [PATCH 09/23] feat(developerknowledge): update the API #### developerknowledge:v1alpha The following keys were added: - schemas.AnswerQueryRequest.properties.filter.description - schemas.AnswerQueryRequest.properties.filter.type - schemas.DocumentChunk.properties.relevanceScore.description - schemas.DocumentChunk.properties.relevanceScore.format - schemas.DocumentChunk.properties.relevanceScore.readOnly - schemas.DocumentChunk.properties.relevanceScore.type The following keys were changed: - resources.documents.methods.batchGet.parameters.names.description - resources.documents.methods.get.parameters.name.description - resources.documents.methods.searchDocumentChunks.parameters.query.description - schemas.Document.description - schemas.SearchDocumentChunksResponse.properties.nextPageToken.description #### developerknowledge:v1 The following keys were changed: - resources.documents.methods.batchGet.parameters.names.description - resources.documents.methods.get.parameters.name.description - resources.documents.methods.searchDocumentChunks.parameters.query.description - schemas.Document.description - schemas.SearchDocumentChunksResponse.properties.nextPageToken.description --- discovery/developerknowledge-v1.json | 12 +++++------ discovery/developerknowledge-v1alpha.json | 22 ++++++++++++++------ src/apis/developerknowledge/v1.ts | 16 +++++++-------- src/apis/developerknowledge/v1alpha.ts | 25 +++++++++++++++-------- 4 files changed, 47 insertions(+), 28 deletions(-) diff --git a/discovery/developerknowledge-v1.json b/discovery/developerknowledge-v1.json index 50c6ddb2398..187c7c526b2 100644 --- a/discovery/developerknowledge-v1.json +++ b/discovery/developerknowledge-v1.json @@ -115,7 +115,7 @@ "parameterOrder": [], "parameters": { "names": { - "description": "Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` ", + "description": "Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` Each name must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. ", "location": "query", "repeated": true, "type": "string" @@ -156,7 +156,7 @@ ], "parameters": { "name": { - "description": "Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`", + "description": "Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` The name must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error.", "location": "path", "pattern": "^documents/.*$", "required": true, @@ -212,7 +212,7 @@ "type": "string" }, "query": { - "description": "Required. Provides the raw query string provided by the user, such as \"How to create a Cloud Storage bucket?\".", + "description": "Required. Provides the raw query string provided by the user, such as \"How to create a Cloud Storage bucket?\". The query must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error.", "location": "query", "type": "string" } @@ -250,7 +250,7 @@ } } }, - "revision": "20260719", + "revision": "20260802", "rootUrl": "https://developerknowledge.googleapis.com/", "schemas": { "Answer": { @@ -369,7 +369,7 @@ "type": "object" }, "Document": { - "description": "A Document represents a piece of content from the Developer Knowledge corpus.", + "description": "A Document represents a page of documentation in the Developer Knowledge corpus, like the page at https://docs.cloud.google.com/storage/docs/creating-buckets.", "id": "Document", "properties": { "content": { @@ -477,7 +477,7 @@ "id": "SearchDocumentChunksResponse", "properties": { "nextPageToken": { - "description": "Optional. Provides a token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "description": "Provides a token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" }, "results": { diff --git a/discovery/developerknowledge-v1alpha.json b/discovery/developerknowledge-v1alpha.json index e1c63305eac..7c4fc4a2151 100644 --- a/discovery/developerknowledge-v1alpha.json +++ b/discovery/developerknowledge-v1alpha.json @@ -115,7 +115,7 @@ "parameterOrder": [], "parameters": { "names": { - "description": "Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` ", + "description": "Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` Each name must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. ", "location": "query", "repeated": true, "type": "string" @@ -156,7 +156,7 @@ ], "parameters": { "name": { - "description": "Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`", + "description": "Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` The name must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error.", "location": "path", "pattern": "^documents/.*$", "required": true, @@ -212,7 +212,7 @@ "type": "string" }, "query": { - "description": "Required. Provides the raw query string provided by the user, such as \"How to create a Cloud Storage bucket?\".", + "description": "Required. Provides the raw query string provided by the user, such as \"How to create a Cloud Storage bucket?\". The query must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error.", "location": "query", "type": "string" } @@ -250,7 +250,7 @@ } } }, - "revision": "20260719", + "revision": "20260802", "rootUrl": "https://developerknowledge.googleapis.com/", "schemas": { "Answer": { @@ -311,6 +311,10 @@ "description": "Request message for DeveloperKnowledge.AnswerQuery.", "id": "AnswerQueryRequest", "properties": { + "filter": { + "description": "Optional. Applies a strict filter to the search results used to ground the answer. The expression supports a subset of the syntax described at https://google.aip.dev/160. Supported fields for filtering: * `content_length_bytes` (INTEGER): The length of the `Document.content` field in bytes. * `data_source` (STRING): The source of the document, e.g. `docs.cloud.google.com`. See https://developers.google.com/knowledge/reference/corpus-reference for the complete list of data sources in the corpus. * `update_time` (TIMESTAMP): The timestamp of when the document was last meaningfully updated. A meaningful update is one that changes document's markdown content or metadata. * `uri` (STRING): The document URI, e.g. `https://docs.cloud.google.com/bigquery/docs/tables`. INTEGER fields support `=`, `<`, `<=`, `>`, and `>=` operators. STRING fields support `=` (equals) and `!=` (not equals) operators for **exact match** on the whole string. Partial match, prefix match, and regexp match are not supported. TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators. Timestamps must be in RFC-3339 format, e.g., `\"2025-01-01T00:00:00Z\"`. You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical operators. `OR` has higher precedence than `AND`. Use parentheses for explicit precedence grouping. Examples: * Filter by `Document.content_length_bytes`: `content_length_bytes < 50000` * `data_source = \"docs.cloud.google.com\" OR data_source = \"firebase.google.com\"` * `data_source != \"firebase.google.com\"` * `update_time < \"2024-01-01T00:00:00Z\"` * `update_time >= \"2025-01-22T00:00:00Z\" AND (data_source = \"developer.chrome.com\" OR data_source = \"web.dev\")` * `uri = \"https://docs.cloud.google.com/release-notes\"` The `filter` string must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error.", + "type": "string" + }, "query": { "description": "Required. The query to answer.", "type": "string" @@ -369,7 +373,7 @@ "type": "object" }, "Document": { - "description": "A Document represents a piece of content from the Developer Knowledge corpus.", + "description": "A Document represents a page of documentation in the Developer Knowledge corpus, like the page at https://docs.cloud.google.com/storage/docs/creating-buckets.", "id": "Document", "properties": { "content": { @@ -456,6 +460,12 @@ "description": "Output only. Contains the resource name of the document this chunk is from. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`", "readOnly": true, "type": "string" + }, + "relevanceScore": { + "description": "Output only. Represents the relevance score of the chunk to the search query. Higher score indicates higher chunk relevance. The score is in range [0.0, 1.0].", + "format": "double", + "readOnly": true, + "type": "number" } }, "type": "object" @@ -477,7 +487,7 @@ "id": "SearchDocumentChunksResponse", "properties": { "nextPageToken": { - "description": "Optional. Provides a token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "description": "Provides a token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" }, "results": { diff --git a/src/apis/developerknowledge/v1.ts b/src/apis/developerknowledge/v1.ts index 860aaea4705..c5844fab9dd 100644 --- a/src/apis/developerknowledge/v1.ts +++ b/src/apis/developerknowledge/v1.ts @@ -206,7 +206,7 @@ export namespace developerknowledge_v1 { referenceIndex?: number | null; } /** - * A Document represents a piece of content from the Developer Knowledge corpus. + * A Document represents a page of documentation in the Developer Knowledge corpus, like the page at https://docs.cloud.google.com/storage/docs/creating-buckets. */ export interface Schema$Document { /** @@ -281,7 +281,7 @@ export namespace developerknowledge_v1 { */ export interface Schema$SearchDocumentChunksResponse { /** - * Optional. Provides a token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + * Provides a token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. */ nextPageToken?: string | null; /** @@ -327,7 +327,7 @@ export namespace developerknowledge_v1 { * * // Do the magic * const res = await developerknowledge.documents.batchGet({ - * // Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * // Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` Each name must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. * names: 'placeholder-value', * // Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.BatchGetDocuments defaults to `DOCUMENT_VIEW_CONTENT`. * view: 'placeholder-value', @@ -470,7 +470,7 @@ export namespace developerknowledge_v1 { * * // Do the magic * const res = await developerknowledge.documents.get({ - * // Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * // Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` The name must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. * name: 'documents/.*', * // Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.GetDocument defaults to `DOCUMENT_VIEW_CONTENT`. * view: 'placeholder-value', @@ -619,7 +619,7 @@ export namespace developerknowledge_v1 { * pageSize: 'placeholder-value', * // Optional. Contains a page token, received from a previous `SearchDocumentChunks` call. Provide this to retrieve the subsequent page. * pageToken: 'placeholder-value', - * // Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?". + * // Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?". The query must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. * query: 'placeholder-value', * }); * console.log(res.data); @@ -736,7 +736,7 @@ export namespace developerknowledge_v1 { export interface Params$Resource$Documents$Batchget extends StandardParameters { /** - * Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` Each name must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. */ names?: string[]; /** @@ -746,7 +746,7 @@ export namespace developerknowledge_v1 { } export interface Params$Resource$Documents$Get extends StandardParameters { /** - * Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` The name must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. */ name?: string; /** @@ -768,7 +768,7 @@ export namespace developerknowledge_v1 { */ pageToken?: string; /** - * Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?". + * Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?". The query must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. */ query?: string; } diff --git a/src/apis/developerknowledge/v1alpha.ts b/src/apis/developerknowledge/v1alpha.ts index c55907967a3..7768b479c6a 100644 --- a/src/apis/developerknowledge/v1alpha.ts +++ b/src/apis/developerknowledge/v1alpha.ts @@ -164,6 +164,10 @@ export namespace developerknowledge_v1alpha { * Request message for DeveloperKnowledge.AnswerQuery. */ export interface Schema$AnswerQueryRequest { + /** + * Optional. Applies a strict filter to the search results used to ground the answer. The expression supports a subset of the syntax described at https://google.aip.dev/160. Supported fields for filtering: * `content_length_bytes` (INTEGER): The length of the `Document.content` field in bytes. * `data_source` (STRING): The source of the document, e.g. `docs.cloud.google.com`. See https://developers.google.com/knowledge/reference/corpus-reference for the complete list of data sources in the corpus. * `update_time` (TIMESTAMP): The timestamp of when the document was last meaningfully updated. A meaningful update is one that changes document's markdown content or metadata. * `uri` (STRING): The document URI, e.g. `https://docs.cloud.google.com/bigquery/docs/tables`. INTEGER fields support `=`, `<`, `<=`, `\>`, and `\>=` operators. STRING fields support `=` (equals) and `!=` (not equals) operators for **exact match** on the whole string. Partial match, prefix match, and regexp match are not supported. TIMESTAMP fields support `=`, `<`, `<=`, `\>`, and `\>=` operators. Timestamps must be in RFC-3339 format, e.g., `"2025-01-01T00:00:00Z"`. You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical operators. `OR` has higher precedence than `AND`. Use parentheses for explicit precedence grouping. Examples: * Filter by `Document.content_length_bytes`: `content_length_bytes < 50000` * `data_source = "docs.cloud.google.com" OR data_source = "firebase.google.com"` * `data_source != "firebase.google.com"` * `update_time < "2024-01-01T00:00:00Z"` * `update_time \>= "2025-01-22T00:00:00Z" AND (data_source = "developer.chrome.com" OR data_source = "web.dev")` * `uri = "https://docs.cloud.google.com/release-notes"` The `filter` string must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. + */ + filter?: string | null; /** * Required. The query to answer. */ @@ -206,7 +210,7 @@ export namespace developerknowledge_v1alpha { referenceIndex?: number | null; } /** - * A Document represents a piece of content from the Developer Knowledge corpus. + * A Document represents a page of documentation in the Developer Knowledge corpus, like the page at https://docs.cloud.google.com/storage/docs/creating-buckets. */ export interface Schema$Document { /** @@ -266,6 +270,10 @@ export namespace developerknowledge_v1alpha { * Output only. Contains the resource name of the document this chunk is from. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` */ parent?: string | null; + /** + * Output only. Represents the relevance score of the chunk to the search query. Higher score indicates higher chunk relevance. The score is in range [0.0, 1.0]. + */ + relevanceScore?: number | null; } /** * Represents a reference to a document. @@ -281,7 +289,7 @@ export namespace developerknowledge_v1alpha { */ export interface Schema$SearchDocumentChunksResponse { /** - * Optional. Provides a token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + * Provides a token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. */ nextPageToken?: string | null; /** @@ -327,7 +335,7 @@ export namespace developerknowledge_v1alpha { * * // Do the magic * const res = await developerknowledge.documents.batchGet({ - * // Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * // Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` Each name must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. * names: 'placeholder-value', * // Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.BatchGetDocuments defaults to `DOCUMENT_VIEW_CONTENT`. * view: 'placeholder-value', @@ -470,7 +478,7 @@ export namespace developerknowledge_v1alpha { * * // Do the magic * const res = await developerknowledge.documents.get({ - * // Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * // Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` The name must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. * name: 'documents/.*', * // Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.GetDocument defaults to `DOCUMENT_VIEW_CONTENT`. * view: 'placeholder-value', @@ -619,7 +627,7 @@ export namespace developerknowledge_v1alpha { * pageSize: 'placeholder-value', * // Optional. Contains a page token, received from a previous `SearchDocumentChunks` call. Provide this to retrieve the subsequent page. * pageToken: 'placeholder-value', - * // Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?". + * // Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?". The query must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. * query: 'placeholder-value', * }); * console.log(res.data); @@ -736,7 +744,7 @@ export namespace developerknowledge_v1alpha { export interface Params$Resource$Documents$Batchget extends StandardParameters { /** - * Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` Each name must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. */ names?: string[]; /** @@ -746,7 +754,7 @@ export namespace developerknowledge_v1alpha { } export interface Params$Resource$Documents$Get extends StandardParameters { /** - * Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` + * Required. Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` The name must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. */ name?: string; /** @@ -768,7 +776,7 @@ export namespace developerknowledge_v1alpha { */ pageToken?: string; /** - * Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?". + * Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?". The query must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error. */ query?: string; } @@ -814,6 +822,7 @@ export namespace developerknowledge_v1alpha { * requestBody: { * // request body parameters * // { + * // "filter": "my_filter", * // "query": "my_query" * // } * }, From a659147c07c4dc1724b61105b9356e5e6059add3 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:23 +0000 Subject: [PATCH 10/23] feat(firebaseml): update the API #### firebaseml:v2beta The following keys were added: - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfig.properties.languageAuto.deprecated - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfig.properties.languageCodes.description - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfig.properties.languageCodes.items.type - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfig.properties.languageCodes.type - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfig.properties.languageHints.deprecated - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageAuto.deprecated - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageHints.deprecated - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageHints.properties.languageCodes.deprecated - schemas.GoogleCloudAiplatformV1beta1VideoResponseFormat.properties.resolution.description - schemas.GoogleCloudAiplatformV1beta1VideoResponseFormat.properties.resolution.type The following keys were changed: - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfig.properties.languageAuto.description - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfig.properties.languageHints.description - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageAuto.description - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageHints.description - schemas.GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageHints.properties.languageCodes.description - schemas.GoogleCloudAiplatformV1beta1GenerateContentResponseUsageMetadata.properties.trafficType.enum - schemas.GoogleCloudAiplatformV1beta1GenerateContentResponseUsageMetadata.properties.trafficType.enumDescriptions --- discovery/firebaseml-v2beta.json | 30 ++++++++++++++++++++++++------ src/apis/firebaseml/v2beta.ts | 18 +++++++++++++----- 2 files changed, 37 insertions(+), 11 deletions(-) diff --git a/discovery/firebaseml-v2beta.json b/discovery/firebaseml-v2beta.json index 831ddf9a8eb..eda8d065ee7 100644 --- a/discovery/firebaseml-v2beta.json +++ b/discovery/firebaseml-v2beta.json @@ -206,7 +206,7 @@ } } }, - "revision": "20260726", + "revision": "20260802", "rootUrl": "https://firebaseml.googleapis.com/", "schemas": { "Date": { @@ -357,11 +357,20 @@ }, "languageAuto": { "$ref": "GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageAuto", - "description": "Optional. The model will detect the language automatically." + "deprecated": true, + "description": "Optional. Deprecated: Use top-level `language_codes` instead. The model will detect the language automatically." + }, + "languageCodes": { + "description": "Optional. BCP-47 language codes providing hints about the languages present in the audio. If omitted or empty, defaults to automatic language detection.", + "items": { + "type": "string" + }, + "type": "array" }, "languageHints": { "$ref": "GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageHints", - "description": "Optional. Specifies one or more languages in the audio." + "deprecated": true, + "description": "Optional. Deprecated: Use top-level `language_codes` instead. Specifies one or more languages in the audio." }, "wordTimestamp": { "description": "Optional. Configures word-level timestamp generation.", @@ -371,17 +380,20 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageAuto": { - "description": "Indicates the language of the audio should be automatically detected.", + "deprecated": true, + "description": "Deprecated: Use top-level `language_codes` instead. Indicates the language of the audio should be automatically detected.", "id": "GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageAuto", "properties": {}, "type": "object" }, "GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageHints": { - "description": "Provides hints to the model about possible languages present in the audio.", + "deprecated": true, + "description": "Deprecated: Use top-level `language_codes` instead. Provides hints to the model about possible languages present in the audio.", "id": "GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageHints", "properties": { "languageCodes": { - "description": "Required. BCP-47 language codes. At least one must be specified.", + "deprecated": true, + "description": "Required. Deprecated: Use top-level `language_codes` instead. BCP-47 language codes. At least one must be specified.", "items": { "type": "string" }, @@ -1444,6 +1456,7 @@ "ON_DEMAND", "ON_DEMAND_PRIORITY", "ON_DEMAND_FLEX", + "ON_DEMAND_OFFPEAK", "PROVISIONED_THROUGHPUT" ], "enumDescriptions": [ @@ -1451,6 +1464,7 @@ "The request was processed using Pay-As-You-Go quota.", "Type for Priority Pay-As-You-Go traffic.", "Type for Flex traffic.", + "Type for Off-Peak Pay-As-You-Go traffic.", "Type for Provisioned Throughput traffic." ], "readOnly": true, @@ -3601,6 +3615,10 @@ "gcsUri": { "description": "Optional. The Google Cloud Storage URI to store the video output. Required for Vertex if delivery is URI.", "type": "string" + }, + "resolution": { + "description": "Optional. The video output resolution. Supported values: \"360p\", \"720p\", \"1080p\", \"4k\".", + "type": "string" } }, "type": "object" diff --git a/src/apis/firebaseml/v2beta.ts b/src/apis/firebaseml/v2beta.ts index 0962a8017f5..c856d594a09 100644 --- a/src/apis/firebaseml/v2beta.ts +++ b/src/apis/firebaseml/v2beta.ts @@ -218,11 +218,15 @@ export namespace firebaseml_v2beta { */ diarization?: boolean | null; /** - * Optional. The model will detect the language automatically. + * Optional. Deprecated: Use top-level `language_codes` instead. The model will detect the language automatically. */ languageAuto?: Schema$GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageAuto; /** - * Optional. Specifies one or more languages in the audio. + * Optional. BCP-47 language codes providing hints about the languages present in the audio. If omitted or empty, defaults to automatic language detection. + */ + languageCodes?: string[] | null; + /** + * Optional. Deprecated: Use top-level `language_codes` instead. Specifies one or more languages in the audio. */ languageHints?: Schema$GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageHints; /** @@ -231,15 +235,15 @@ export namespace firebaseml_v2beta { wordTimestamp?: boolean | null; } /** - * Indicates the language of the audio should be automatically detected. + * Deprecated: Use top-level `language_codes` instead. Indicates the language of the audio should be automatically detected. */ export interface Schema$GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageAuto {} /** - * Provides hints to the model about possible languages present in the audio. + * Deprecated: Use top-level `language_codes` instead. Provides hints to the model about possible languages present in the audio. */ export interface Schema$GoogleCloudAiplatformV1beta1AudioTranscriptionConfigLanguageHints { /** - * Required. BCP-47 language codes. At least one must be specified. + * Required. Deprecated: Use top-level `language_codes` instead. BCP-47 language codes. At least one must be specified. */ languageCodes?: string[] | null; } @@ -2313,6 +2317,10 @@ export namespace firebaseml_v2beta { * Optional. The Google Cloud Storage URI to store the video output. Required for Vertex if delivery is URI. */ gcsUri?: string | null; + /** + * Optional. The video output resolution. Supported values: "360p", "720p", "1080p", "4k". + */ + resolution?: string | null; } /** * Configuration for a voice. From 6fc0971f715fdb281e6932c9c19a54824f59425c Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:23 +0000 Subject: [PATCH 11/23] fix(ftp): update the API --- discovery/ftp-v1.json | 1402 +++++++++++++ discovery/ftp-v1alpha.json | 1402 +++++++++++++ src/apis/ftp/README.md | 28 + src/apis/ftp/index.ts | 48 + src/apis/ftp/package.json | 43 + src/apis/ftp/tsconfig.json | 10 + src/apis/ftp/v1.ts | 3446 +++++++++++++++++++++++++++++++ src/apis/ftp/v1alpha.ts | 3455 ++++++++++++++++++++++++++++++++ src/apis/ftp/webpack.config.js | 79 + 9 files changed, 9913 insertions(+) create mode 100644 discovery/ftp-v1.json create mode 100644 discovery/ftp-v1alpha.json create mode 100644 src/apis/ftp/README.md create mode 100644 src/apis/ftp/index.ts create mode 100644 src/apis/ftp/package.json create mode 100644 src/apis/ftp/tsconfig.json create mode 100644 src/apis/ftp/v1.ts create mode 100644 src/apis/ftp/v1alpha.ts create mode 100644 src/apis/ftp/webpack.config.js diff --git a/discovery/ftp-v1.json b/discovery/ftp-v1.json new file mode 100644 index 00000000000..6d0954857c7 --- /dev/null +++ b/discovery/ftp-v1.json @@ -0,0 +1,1402 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account." + } + } + } + }, + "basePath": "", + "baseUrl": "https://ftp.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud FTP", + "description": "", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "ftp:v1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://ftp.mtls.googleapis.com/", + "name": "ftp", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, + "key": { + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "locations": { + "methods": { + "get": { + "description": "Gets information about a location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "ftp.projects.locations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the location.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", + "flatPath": "v1/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "ftp.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "extraLocationTypes": { + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", + "location": "query", + "repeated": true, + "type": "string" + }, + "filter": { + "description": "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).", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return. If not set, the service selects a default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "ftp.projects.locations.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "ftp.projects.locations.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "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.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "ftp.projects.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "ftp.projects.locations.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "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. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default 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", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "servers": { + "methods": { + "create": { + "description": "Creates a new Server in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/servers", + "httpMethod": "POST", + "id": "ftp.projects.locations.servers.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Value for parent.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "serverId": { + "description": "Required. Id of the requesting object If auto-generating Id server-side, remove this field and server_id from the method_signature of Create RPC", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/servers", + "request": { + "$ref": "Server" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Server.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/servers/{serversId}", + "httpMethod": "DELETE", + "id": "ftp.projects.locations.servers.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Server.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/servers/{serversId}", + "httpMethod": "GET", + "id": "ftp.projects.locations.servers.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. The view of the Server resource to return.", + "enum": [ + "SERVER_VIEW_UNSPECIFIED", + "SERVER_VIEW_BASIC", + "SERVER_VIEW_FULL" + ], + "enumDescriptions": [ + "Default value. Equivalent to SERVER_VIEW_BASIC.", + "Basic view. Excludes heavy configurations (internal_config, external_config, google_managed_server_credential).", + "Full view. Includes all fields." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Server" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Servers in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/servers", + "httpMethod": "GET", + "id": "ftp.projects.locations.servers.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for ListServersRequest", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. The view of the Server resource to return.", + "enum": [ + "SERVER_VIEW_UNSPECIFIED", + "SERVER_VIEW_BASIC", + "SERVER_VIEW_FULL" + ], + "enumDescriptions": [ + "Default value. Equivalent to SERVER_VIEW_BASIC.", + "Basic view. Excludes heavy configurations (internal_config, external_config, google_managed_server_credential).", + "Full view. Includes all fields." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/servers", + "response": { + "$ref": "ListServersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Server.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/servers/{serversId}", + "httpMethod": "PATCH", + "id": "ftp.projects.locations.servers.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. name of resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Server 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 present in the request will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Server" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "start": { + "description": "Starts a stopping/stopped Server.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/servers/{serversId}:start", + "httpMethod": "POST", + "id": "ftp.projects.locations.servers.start", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource Format: `projects/{project}/locations/{location}/servers/{server}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:start", + "request": { + "$ref": "StartServerRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "stop": { + "description": "Stops an active Server.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/servers/{serversId}:stop", + "httpMethod": "POST", + "id": "ftp.projects.locations.servers.stop", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource. Format: `projects/{project}/locations/{location}/servers/{server}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:stop", + "request": { + "$ref": "StopServerRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "users": { + "methods": { + "create": { + "description": "Creates a new User in a given project and location and Server.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/servers/{serversId}/users", + "httpMethod": "POST", + "id": "ftp.projects.locations.servers.users.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Value for parent.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "userId": { + "description": "Required. Id of the requesting object If auto-generating Id server-side, remove this field and server_id from the method_signature of Create RPC", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single User.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/servers/{serversId}/users/{usersId}", + "httpMethod": "DELETE", + "id": "ftp.projects.locations.servers.users.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "force": { + "description": "Optional. If set to true, the request will force the deletion of the User.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single User.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/servers/{serversId}/users/{usersId}", + "httpMethod": "GET", + "id": "ftp.projects.locations.servers.users.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. The view of the User resource to return.", + "enum": [ + "USER_VIEW_UNSPECIFIED", + "USER_VIEW_BASIC", + "USER_VIEW_FULL" + ], + "enumDescriptions": [ + "Default value. Equivalent to USER_VIEW_BASIC.", + "Basic view. Excludes heavy configurations (user_credentials, storage_directory_mappings).", + "Full view. Includes all fields." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Users in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/servers/{serversId}/users", + "httpMethod": "GET", + "id": "ftp.projects.locations.servers.users.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. User may return fewer items than requested. The maximum value is 1000; The default value is 50 if the field is omitted (or set to 0).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the user should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for ListUsersRequest", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. The view of the User resource to return.", + "enum": [ + "USER_VIEW_UNSPECIFIED", + "USER_VIEW_BASIC", + "USER_VIEW_FULL" + ], + "enumDescriptions": [ + "Default value. Equivalent to USER_VIEW_BASIC.", + "Basic view. Excludes heavy configurations (user_credentials, storage_directory_mappings).", + "Full view. Includes all fields." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/users", + "response": { + "$ref": "ListUsersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single User.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/servers/{serversId}/users/{usersId}", + "httpMethod": "PATCH", + "id": "ftp.projects.locations.servers.users.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. User-friendly name via which User will be identified. projects/{project}/locations/{location}/servers/{server}/users/{user}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the User 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 present in the request will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + } + } + }, + "revision": "20260722", + "rootUrl": "https://ftp.googleapis.com/", + "schemas": { + "AllowedConsumer": { + "description": "A consumer project or network that is permitted to connect to the server via PSC.", + "id": "AllowedConsumer", + "properties": { + "connectionLimit": { + "description": "Required. The connection limit for the consumer. Value must be greater than 0.", + "format": "int64", + "type": "string" + }, + "project": { + "description": "The project ID or number of the consumer project. Must be in the format: `projects/{project}`.", + "type": "string" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" + }, + "DeniedConsumer": { + "description": "A consumer project or network that is denied to connect to the server via PSC.", + "id": "DeniedConsumer", + "properties": { + "project": { + "description": "The project ID or number of the consumer project. Must be in the format: `projects/{project}`.", + "type": "string" + } + }, + "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" + }, + "ExternalServerConfig": { + "description": "Configuration for external server.", + "id": "ExternalServerConfig", + "properties": { + "allowedCidrBlocks": { + "description": "Optional. List of CIDR blocks that are allowed to access the Server. A CIDR range consists of an IP Address and a prefix length to construct the subnet mask. By default, the prefix length is 32 (i.e. matches a single IP address). For now, only IPV4 addresses are supported. Examples: \"203.0.113.0/24\" - matches with the IP addresses in the range 203.0.113.0 - 203.0.113.255. \"0.0.0.0/0\" - matches against any IP address. This field must contain at least one entry if the access type is EXTERNAL. The number of allowed CIDR blocks cannot exceed 500. Example: 192.168.0.0/16", + "items": { + "type": "string" + }, + "type": "array" + }, + "ipAddress": { + "description": "Output only. IP address of the LB via which clients will connect.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "InternalServerConfig": { + "description": "Configuration for private server accessible via PSC.", + "id": "InternalServerConfig", + "properties": { + "consumerAcceptList": { + "description": "Required. A list of projects that are permitted to connect. At least one project is required in the allow list.", + "items": { + "$ref": "AllowedConsumer" + }, + "type": "array" + }, + "consumerRejectList": { + "description": "Optional. A list of projects that are denied connection. Format: \"projects/sample_project_id\" or \"projects/1234567890\" Projects in this list will be denied access, even if they are included in the `allow_list`. If this list is empty, no projects are explicitly rejected.", + "items": { + "$ref": "DeniedConsumer" + }, + "type": "array" + }, + "pscEndpoints": { + "description": "Output only. Details of endpoints created by the customer.", + "items": { + "$ref": "PscEndpoint" + }, + "readOnly": true, + "type": "array" + }, + "serviceAttachment": { + "description": "Output only. The resource name of the service attachment. Format: `projects/{project}/regions/{region}/serviceAttachments/{service_attachment}`", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "unreachable": { + "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListServersResponse": { + "description": "Message for response to listing Servers", + "id": "ListServersResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "servers": { + "description": "The list of Server", + "items": { + "$ref": "Server" + }, + "type": "array" + }, + "unreachable": { + "description": "Unordered list. Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUsersResponse": { + "description": "Message for response to listing Users", + "id": "ListUsersResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the user should return.", + "type": "string" + }, + "unreachable": { + "description": "Unordered list. Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + }, + "users": { + "description": "The list of User", + "items": { + "$ref": "User" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents a Google Cloud location.", + "id": "Location", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`", + "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" + }, + "OperationMetadata": { + "description": "Represents the metadata of the long-running operation.", + "id": "OperationMetadata", + "properties": { + "apiVersion": { + "description": "Output only. API version used to start the operation.", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "requestedCancellation": { + "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.", + "readOnly": true, + "type": "boolean" + }, + "statusMessage": { + "description": "Output only. Human-readable status of the operation, if any.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Server-defined resource path for the target of the operation.", + "readOnly": true, + "type": "string" + }, + "verb": { + "description": "Output only. Name of the verb executed by the operation.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "PscEndpoint": { + "description": "Details of PSC endpoint created by customer.", + "id": "PscEndpoint", + "properties": { + "endpoint": { + "description": "Output only. This is a Resource name for Private Service Connect endpoint. Format: `projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}`", + "readOnly": true, + "type": "string" + }, + "network": { + "description": "Output only. The consumer network. Format: `projects/{project}/locations/{location}/networks/{network}`", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Output only. The status of the connected endpoint.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Server": { + "description": "Message describing Server object", + "id": "Server", + "properties": { + "accessType": { + "description": "Required. The access type of the Server.", + "enum": [ + "ACCESS_TYPE_UNSPECIFIED", + "EXTERNAL", + "INTERNAL" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Server is assigned a public IP.", + "Server is assigned an internal IP." + ], + "type": "string" + }, + "createTime": { + "description": "Output only. [Output only] Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Optional. Display name of the Server", + "type": "string" + }, + "externalConfig": { + "$ref": "ExternalServerConfig", + "description": "Configuration for external access." + }, + "googleManagedServerCredential": { + "$ref": "ServerCredential", + "description": "Output only. Credentials of the FTP Server.", + "readOnly": true + }, + "internalConfig": { + "$ref": "InternalServerConfig", + "description": "Configuration for internal access." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Labels as key value pairs", + "type": "object" + }, + "name": { + "description": "Identifier. name of resource", + "type": "string" + }, + "serviceAgent": { + "description": "Output only. Service agent used to access the customer bucket.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The state of the server.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "STARTING", + "ACTIVE", + "STOPPING", + "STOPPED", + "DELETING", + "ERROR", + "UPDATING" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Server is being created.", + "Server is starting.", + "Server is ready to be used.", + "Server is stopping.", + "Server is stopped.", + "Server is being deleted.", + "Server is in error state.", + "Server is being updated." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. [Output only] Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ServerCredential": { + "description": "Represents credentials of an FTP Server.", + "id": "ServerCredential", + "properties": { + "asymmetricAlgorithm": { + "description": "Output only. Asymmetric algorithm used by the public key. Possible values (can be expanded in future): - ssh-ed25519", + "readOnly": true, + "type": "string" + }, + "fingerprint": { + "description": "Output only. The fingerprint is a hash of the public key, and is displayed when clients access the server for the first time to verify the server's identity.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "StartServerRequest": { + "description": "Request message for starting a Server.", + "id": "StartServerRequest", + "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", + "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" + }, + "StopServerRequest": { + "description": "Request message for stopping a Server.", + "id": "StopServerRequest", + "properties": {}, + "type": "object" + }, + "StorageDirectoryMapping": { + "description": "Mapping of backing Cloud Storage path to the directory where the user lands in the SFTP server. If directory is not specified, it'll default to '/'. Eg 1 - (bucket_name: bucket, bucket_prefix: path1/path2, directory: /abc/def/username) The user will land at /abcd/def/username, and the view there will match that of /bucket/path1/path2. The user will not be aware of Cloud Storage prefix '/bucket/path1' and there will be no such directory in the view. Eg 2 - (bucket_name: bucket, bucket_prefix: path1/path2, directory: '') The user will land at '/', and the view there will match that of /bucket/path1/path2. The user will not be aware of Cloud Storage prefix '/bucket/path1/path2' and there will be no such directory in the view.", + "id": "StorageDirectoryMapping", + "properties": { + "bucket": { + "description": "Required. Name of the bucket.", + "type": "string" + }, + "bucketPrefix": { + "description": "Optional. Prefix inside the bucket.", + "type": "string" + }, + "directory": { + "description": "Required. Directory where the user lands in the SFTP server.", + "type": "string" + }, + "permission": { + "description": "Required. Permission to the bucket.", + "enum": [ + "PERMISSION_UNSPECIFIED", + "READ_ONLY", + "READ_WRITE" + ], + "enumDescriptions": [ + "Permission unspecified.", + "Read only permission.", + "Read write permission." + ], + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "Message describing User object", + "id": "User", + "properties": { + "createTime": { + "description": "Output only. [Output only] Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "customerServiceAccount": { + "description": "Required. Service account in customer project attached to this SFTP User.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Labels as key value pairs", + "type": "object" + }, + "name": { + "description": "Identifier. User-friendly name via which User will be identified. projects/{project}/locations/{location}/servers/{server}/users/{user}", + "type": "string" + }, + "state": { + "description": "Output only. Tracks user creation.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "ACTIVE", + "ERROR", + "UPDATING", + "DELETING" + ], + "enumDescriptions": [ + "State unspecified.", + "User is being created.", + "User is ready to be used.", + "User creation failed.", + "The resource is being updated.", + "The resource is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "storageDirectoryMappings": { + "description": "Required. Mapping of Cloud Storage buckets to directories where the user will land in the SFTP server.", + "items": { + "$ref": "StorageDirectoryMapping" + }, + "type": "array" + }, + "updateTime": { + "description": "Output only. [Output only] Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "userCredentials": { + "description": "Required. User credential for the user. The maximum number of user credentials is 10.", + "items": { + "$ref": "UserCredential" + }, + "type": "array" + }, + "username": { + "description": "Output only. [Output only] The username of the user.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "UserCredential": { + "description": "Message describing UserCredential object", + "id": "UserCredential", + "properties": { + "credentialName": { + "description": "Required. Name of the user credential.", + "type": "string" + }, + "credentialType": { + "description": "Required. Type of credential.", + "enum": [ + "TYPE_UNSPECIFIED", + "PUBLIC_KEY" + ], + "enumDescriptions": [ + "Type unspecified.", + "Public key credential." + ], + "type": "string" + }, + "sshPublicKeyBody": { + "description": "Optional. SSH public key body in OpenSSH format. Example: \"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ...\"", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Cloud FTP API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/discovery/ftp-v1alpha.json b/discovery/ftp-v1alpha.json new file mode 100644 index 00000000000..5f7f13cc067 --- /dev/null +++ b/discovery/ftp-v1alpha.json @@ -0,0 +1,1402 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account." + } + } + } + }, + "basePath": "", + "baseUrl": "https://ftp.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud FTP", + "description": "", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "ftp:v1alpha", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://ftp.mtls.googleapis.com/", + "name": "ftp", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, + "key": { + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "locations": { + "methods": { + "get": { + "description": "Gets information about a location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "ftp.projects.locations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the location.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", + "flatPath": "v1alpha/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "ftp.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "extraLocationTypes": { + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", + "location": "query", + "repeated": true, + "type": "string" + }, + "filter": { + "description": "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).", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return. If not set, the service selects a default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "ftp.projects.locations.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "ftp.projects.locations.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "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.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "ftp.projects.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "ftp.projects.locations.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "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. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+name}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "servers": { + "methods": { + "create": { + "description": "Creates a new Server in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/servers", + "httpMethod": "POST", + "id": "ftp.projects.locations.servers.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Value for parent.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "serverId": { + "description": "Required. Id of the requesting object If auto-generating Id server-side, remove this field and server_id from the method_signature of Create RPC", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+parent}/servers", + "request": { + "$ref": "Server" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Server.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/servers/{serversId}", + "httpMethod": "DELETE", + "id": "ftp.projects.locations.servers.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Server.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/servers/{serversId}", + "httpMethod": "GET", + "id": "ftp.projects.locations.servers.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. The view of the Server resource to return.", + "enum": [ + "SERVER_VIEW_UNSPECIFIED", + "SERVER_VIEW_BASIC", + "SERVER_VIEW_FULL" + ], + "enumDescriptions": [ + "Default value. Equivalent to SERVER_VIEW_BASIC.", + "Basic view. Excludes heavy configurations (internal_config, external_config, google_managed_server_credential).", + "Full view. Includes all fields." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Server" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Servers in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/servers", + "httpMethod": "GET", + "id": "ftp.projects.locations.servers.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for ListServersRequest", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. The view of the Server resource to return.", + "enum": [ + "SERVER_VIEW_UNSPECIFIED", + "SERVER_VIEW_BASIC", + "SERVER_VIEW_FULL" + ], + "enumDescriptions": [ + "Default value. Equivalent to SERVER_VIEW_BASIC.", + "Basic view. Excludes heavy configurations (internal_config, external_config, google_managed_server_credential).", + "Full view. Includes all fields." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+parent}/servers", + "response": { + "$ref": "ListServersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Server.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/servers/{serversId}", + "httpMethod": "PATCH", + "id": "ftp.projects.locations.servers.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. name of resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Server 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 present in the request will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "request": { + "$ref": "Server" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "start": { + "description": "Starts a stopping/stopped Server.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/servers/{serversId}:start", + "httpMethod": "POST", + "id": "ftp.projects.locations.servers.start", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource Format: `projects/{project}/locations/{location}/servers/{server}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}:start", + "request": { + "$ref": "StartServerRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "stop": { + "description": "Stops an active Server.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/servers/{serversId}:stop", + "httpMethod": "POST", + "id": "ftp.projects.locations.servers.stop", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource. Format: `projects/{project}/locations/{location}/servers/{server}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}:stop", + "request": { + "$ref": "StopServerRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "users": { + "methods": { + "create": { + "description": "Creates a new User in a given project and location and Server.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/servers/{serversId}/users", + "httpMethod": "POST", + "id": "ftp.projects.locations.servers.users.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Value for parent.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "userId": { + "description": "Required. Id of the requesting object If auto-generating Id server-side, remove this field and server_id from the method_signature of Create RPC", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+parent}/users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single User.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/servers/{serversId}/users/{usersId}", + "httpMethod": "DELETE", + "id": "ftp.projects.locations.servers.users.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "force": { + "description": "Optional. If set to true, the request will force the deletion of the User.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single User.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/servers/{serversId}/users/{usersId}", + "httpMethod": "GET", + "id": "ftp.projects.locations.servers.users.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. The view of the User resource to return.", + "enum": [ + "USER_VIEW_UNSPECIFIED", + "USER_VIEW_BASIC", + "USER_VIEW_FULL" + ], + "enumDescriptions": [ + "Default value. Equivalent to USER_VIEW_BASIC.", + "Basic view. Excludes heavy configurations (user_credentials, storage_directory_mappings).", + "Full view. Includes all fields." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Users in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/servers/{serversId}/users", + "httpMethod": "GET", + "id": "ftp.projects.locations.servers.users.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. User may return fewer items than requested. The maximum value is 1000; The default value is 50 if the field is omitted (or set to 0).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the user should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for ListUsersRequest", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. The view of the User resource to return.", + "enum": [ + "USER_VIEW_UNSPECIFIED", + "USER_VIEW_BASIC", + "USER_VIEW_FULL" + ], + "enumDescriptions": [ + "Default value. Equivalent to USER_VIEW_BASIC.", + "Basic view. Excludes heavy configurations (user_credentials, storage_directory_mappings).", + "Full view. Includes all fields." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+parent}/users", + "response": { + "$ref": "ListUsersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single User.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/servers/{serversId}/users/{usersId}", + "httpMethod": "PATCH", + "id": "ftp.projects.locations.servers.users.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. User-friendly name via which User will be identified. projects/{project}/locations/{location}/servers/{server}/users/{user}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/servers/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the User 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 present in the request will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + } + } + }, + "revision": "20260722", + "rootUrl": "https://ftp.googleapis.com/", + "schemas": { + "AllowedConsumer": { + "description": "A consumer project or network that is permitted to connect to the server via PSC.", + "id": "AllowedConsumer", + "properties": { + "connectionLimit": { + "description": "Required. The connection limit for the consumer. Value must be greater than 0.", + "format": "int64", + "type": "string" + }, + "project": { + "description": "The project ID or number of the consumer project. Must be in the format: `projects/{project}`.", + "type": "string" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" + }, + "DeniedConsumer": { + "description": "A consumer project or network that is denied to connect to the server via PSC.", + "id": "DeniedConsumer", + "properties": { + "project": { + "description": "The project ID or number of the consumer project. Must be in the format: `projects/{project}`.", + "type": "string" + } + }, + "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" + }, + "ExternalServerConfig": { + "description": "Configuration for external server.", + "id": "ExternalServerConfig", + "properties": { + "allowedCidrBlocks": { + "description": "Optional. List of CIDR blocks that are allowed to access the Server. A CIDR range consists of an IP Address and a prefix length to construct the subnet mask. By default, the prefix length is 32 (i.e. matches a single IP address). For now, only IPV4 addresses are supported. Examples: \"203.0.113.0/24\" - matches with the IP addresses in the range 203.0.113.0 - 203.0.113.255. \"0.0.0.0/0\" - matches against any IP address. This field must contain at least one entry if the access type is EXTERNAL. The number of allowed CIDR blocks cannot exceed 500. Example: 192.168.0.0/16", + "items": { + "type": "string" + }, + "type": "array" + }, + "ipAddress": { + "description": "Output only. IP address of the LB via which clients will connect.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "InternalServerConfig": { + "description": "Configuration for private server accessible via PSC.", + "id": "InternalServerConfig", + "properties": { + "consumerAcceptList": { + "description": "Required. A list of projects that are permitted to connect. At least one project is required in the allow list.", + "items": { + "$ref": "AllowedConsumer" + }, + "type": "array" + }, + "consumerRejectList": { + "description": "Optional. A list of projects that are denied connection. Format: \"projects/sample_project_id\" or \"projects/1234567890\" Projects in this list will be denied access, even if they are included in the `allow_list`. If this list is empty, no projects are explicitly rejected.", + "items": { + "$ref": "DeniedConsumer" + }, + "type": "array" + }, + "pscEndpoints": { + "description": "Output only. Details of endpoints created by the customer.", + "items": { + "$ref": "PscEndpoint" + }, + "readOnly": true, + "type": "array" + }, + "serviceAttachment": { + "description": "Output only. The resource name of the service attachment. Format: `projects/{project}/regions/{region}/serviceAttachments/{service_attachment}`", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "unreachable": { + "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListServersResponse": { + "description": "Message for response to listing Servers", + "id": "ListServersResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "servers": { + "description": "The list of Server", + "items": { + "$ref": "Server" + }, + "type": "array" + }, + "unreachable": { + "description": "Unordered list. Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUsersResponse": { + "description": "Message for response to listing Users", + "id": "ListUsersResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the user should return.", + "type": "string" + }, + "unreachable": { + "description": "Unordered list. Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + }, + "users": { + "description": "The list of User", + "items": { + "$ref": "User" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents a Google Cloud location.", + "id": "Location", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`", + "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" + }, + "OperationMetadata": { + "description": "Represents the metadata of the long-running operation.", + "id": "OperationMetadata", + "properties": { + "apiVersion": { + "description": "Output only. API version used to start the operation.", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "requestedCancellation": { + "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.", + "readOnly": true, + "type": "boolean" + }, + "statusMessage": { + "description": "Output only. Human-readable status of the operation, if any.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Server-defined resource path for the target of the operation.", + "readOnly": true, + "type": "string" + }, + "verb": { + "description": "Output only. Name of the verb executed by the operation.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "PscEndpoint": { + "description": "Details of PSC endpoint created by customer.", + "id": "PscEndpoint", + "properties": { + "endpoint": { + "description": "Output only. This is a Resource name for Private Service Connect endpoint. Format: `projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}`", + "readOnly": true, + "type": "string" + }, + "network": { + "description": "Output only. The consumer network. Format: `projects/{project}/locations/{location}/networks/{network}`", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Output only. The status of the connected endpoint.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Server": { + "description": "Message describing Server object", + "id": "Server", + "properties": { + "accessType": { + "description": "Required. The access type of the Server.", + "enum": [ + "ACCESS_TYPE_UNSPECIFIED", + "EXTERNAL", + "INTERNAL" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Server is assigned a public IP.", + "Server is assigned an internal IP." + ], + "type": "string" + }, + "createTime": { + "description": "Output only. [Output only] Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Optional. Display name of the Server", + "type": "string" + }, + "externalConfig": { + "$ref": "ExternalServerConfig", + "description": "Configuration for external access." + }, + "googleManagedServerCredential": { + "$ref": "ServerCredential", + "description": "Output only. Credentials of the FTP Server.", + "readOnly": true + }, + "internalConfig": { + "$ref": "InternalServerConfig", + "description": "Configuration for internal access." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Labels as key value pairs", + "type": "object" + }, + "name": { + "description": "Identifier. name of resource", + "type": "string" + }, + "serviceAgent": { + "description": "Output only. Service agent used to access the customer bucket.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The state of the server.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "STARTING", + "ACTIVE", + "STOPPING", + "STOPPED", + "DELETING", + "ERROR", + "UPDATING" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "Server is being created.", + "Server is starting.", + "Server is ready to be used.", + "Server is stopping.", + "Server is stopped.", + "Server is being deleted.", + "Server is in error state.", + "Server is being updated." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. [Output only] Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ServerCredential": { + "description": "Represents credentials of an FTP Server.", + "id": "ServerCredential", + "properties": { + "asymmetricAlgorithm": { + "description": "Output only. Asymmetric algorithm used by the public key. Possible values (can be expanded in future): - ssh-ed25519", + "readOnly": true, + "type": "string" + }, + "fingerprint": { + "description": "Output only. The fingerprint is a hash of the public key, and is displayed when clients access the server for the first time to verify the server's identity.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "StartServerRequest": { + "description": "Request message for starting a Server.", + "id": "StartServerRequest", + "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", + "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" + }, + "StopServerRequest": { + "description": "Request message for stopping a Server.", + "id": "StopServerRequest", + "properties": {}, + "type": "object" + }, + "StorageDirectoryMapping": { + "description": "Mapping of backing Cloud Storage path to the directory where the user lands in the SFTP server. If directory is not specified, it'll default to '/'. Eg 1 - (bucket_name: bucket, bucket_prefix: path1/path2, directory: /abc/def/username) The user will land at /abcd/def/username, and the view there will match that of /bucket/path1/path2. The user will not be aware of Cloud Storage prefix '/bucket/path1' and there will be no such directory in the view. Eg 2 - (bucket_name: bucket, bucket_prefix: path1/path2, directory: '') The user will land at '/', and the view there will match that of /bucket/path1/path2. The user will not be aware of Cloud Storage prefix '/bucket/path1/path2' and there will be no such directory in the view.", + "id": "StorageDirectoryMapping", + "properties": { + "bucket": { + "description": "Required. Name of the bucket.", + "type": "string" + }, + "bucketPrefix": { + "description": "Optional. Prefix inside the bucket.", + "type": "string" + }, + "directory": { + "description": "Required. Directory where the user lands in the SFTP server.", + "type": "string" + }, + "permission": { + "description": "Required. Permission to the bucket.", + "enum": [ + "PERMISSION_UNSPECIFIED", + "READ_ONLY", + "READ_WRITE" + ], + "enumDescriptions": [ + "Permission unspecified.", + "Read only permission.", + "Read write permission." + ], + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "Message describing User object", + "id": "User", + "properties": { + "createTime": { + "description": "Output only. [Output only] Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "customerServiceAccount": { + "description": "Required. Service account in customer project attached to this SFTP User.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Labels as key value pairs", + "type": "object" + }, + "name": { + "description": "Identifier. User-friendly name via which User will be identified. projects/{project}/locations/{location}/servers/{server}/users/{user}", + "type": "string" + }, + "state": { + "description": "Output only. Tracks user creation.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "ACTIVE", + "ERROR", + "UPDATING", + "DELETING" + ], + "enumDescriptions": [ + "State unspecified.", + "User is being created.", + "User is ready to be used.", + "User creation failed.", + "The resource is being updated.", + "The resource is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "storageDirectoryMappings": { + "description": "Required. Mapping of Cloud Storage buckets to directories where the user will land in the SFTP server.", + "items": { + "$ref": "StorageDirectoryMapping" + }, + "type": "array" + }, + "updateTime": { + "description": "Output only. [Output only] Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "userCredentials": { + "description": "Required. User credential for the user. The maximum number of user credentials is 10.", + "items": { + "$ref": "UserCredential" + }, + "type": "array" + }, + "username": { + "description": "Output only. [Output only] The username of the user.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "UserCredential": { + "description": "Message describing UserCredential object", + "id": "UserCredential", + "properties": { + "credentialName": { + "description": "Required. Name of the user credential.", + "type": "string" + }, + "credentialType": { + "description": "Required. Type of credential.", + "enum": [ + "TYPE_UNSPECIFIED", + "PUBLIC_KEY" + ], + "enumDescriptions": [ + "Type unspecified.", + "Public key credential." + ], + "type": "string" + }, + "sshPublicKeyBody": { + "description": "Optional. SSH public key body in OpenSSH format. Example: \"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ...\"", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Cloud FTP API", + "version": "v1alpha", + "version_module": true +} \ No newline at end of file diff --git a/src/apis/ftp/README.md b/src/apis/ftp/README.md new file mode 100644 index 00000000000..7bfc103f4d2 --- /dev/null +++ b/src/apis/ftp/README.md @@ -0,0 +1,28 @@ +Google Inc. logo + +# ftp + +> Cloud FTP is a managed service that allows transferring files directly to Google Cloud Storage using SFTP. + +## Installation + +```sh +$ npm install @googleapis/ftp +``` + +## Usage +All documentation and usage information can be found on [GitHub](https://github.com/googleapis/google-api-nodejs-client). +Information on classes can be found in [Googleapis Documentation](https://googleapis.dev/nodejs/googleapis/latest/ftp/classes/Ftp.html). + +## License +This library is licensed under Apache 2.0. Full license text is available in [LICENSE](https://github.com/googleapis/google-api-nodejs-client/blob/main/LICENSE). + +## Contributing +We love contributions! Before submitting a Pull Request, it's always good to start with a new issue first. To learn more, see [CONTRIBUTING](https://github.com/google/google-api-nodejs-client/blob/main/.github/CONTRIBUTING.md). + +## Questions/problems? +* Ask your development related questions on [StackOverflow](http://stackoverflow.com/questions/tagged/google-api-nodejs-client). +* If you've found an bug/issue, please [file it on GitHub](https://github.com/googleapis/google-api-nodejs-client/issues). + + +*Crafted with ❤️ by the Google Node.js team* diff --git a/src/apis/ftp/index.ts b/src/apis/ftp/index.ts new file mode 100644 index 00000000000..7a81f1e08bb --- /dev/null +++ b/src/apis/ftp/index.ts @@ -0,0 +1,48 @@ +// Copyright 2020 Google LLC +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/*! THIS FILE IS AUTO-GENERATED */ + +import {AuthPlus, getAPI, GoogleConfigurable} from 'googleapis-common'; +import {ftp_v1} from './v1'; +import {ftp_v1alpha} from './v1alpha'; + +export const VERSIONS = { + v1: ftp_v1.Ftp, + v1alpha: ftp_v1alpha.Ftp, +}; + +export function ftp(version: 'v1'): ftp_v1.Ftp; +export function ftp(options: ftp_v1.Options): ftp_v1.Ftp; +export function ftp(version: 'v1alpha'): ftp_v1alpha.Ftp; +export function ftp(options: ftp_v1alpha.Options): ftp_v1alpha.Ftp; +export function ftp( + this: GoogleConfigurable, + versionOrOptions: 'v1' | ftp_v1.Options | 'v1alpha' | ftp_v1alpha.Options +) { + return getAPI('ftp', versionOrOptions, VERSIONS, this); +} + +const auth = new AuthPlus(); +export {auth}; +export {ftp_v1}; +export {ftp_v1alpha}; +export { + AuthPlus, + GlobalOptions, + APIRequestContext, + GoogleConfigurable, + StreamMethodOptions, + MethodOptions, + BodyResponseCallback, +} from 'googleapis-common'; diff --git a/src/apis/ftp/package.json b/src/apis/ftp/package.json new file mode 100644 index 00000000000..389ed04afd7 --- /dev/null +++ b/src/apis/ftp/package.json @@ -0,0 +1,43 @@ +{ + "name": "@googleapis/ftp", + "version": "0.1.0", + "description": "ftp", + "main": "build/index.js", + "types": "build/index.d.ts", + "keywords": [ + "google" + ], + "author": "Google LLC", + "license": "Apache-2.0", + "homepage": "https://github.com/googleapis/google-api-nodejs-client", + "bugs": { + "url": "https://github.com/googleapis/google-api-nodejs-client/issues" + }, + "repository": { + "type": "git", + "url": "https://github.com/googleapis/google-api-nodejs-client.git" + }, + "engines": { + "node": ">=12.0.0" + }, + "scripts": { + "fix": "gts fix", + "lint": "gts check", + "compile": "tsc -p .", + "prepare": "npm run compile", + "webpack": "webpack" + }, + "dependencies": { + "googleapis-common": "^8.0.0" + }, + "devDependencies": { + "@microsoft/api-documenter": "^7.8.10", + "@microsoft/api-extractor": "^7.8.10", + "gts": "^6.0.0", + "null-loader": "^4.0.0", + "ts-loader": "^9.0.0", + "typescript": "5.7.3", + "webpack": "^5.0.0", + "webpack-cli": "^5.0.0" + } +} diff --git a/src/apis/ftp/tsconfig.json b/src/apis/ftp/tsconfig.json new file mode 100644 index 00000000000..e0810904968 --- /dev/null +++ b/src/apis/ftp/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "./node_modules/gts/tsconfig-google.json", + "compilerOptions": { + "rootDir": ".", + "outDir": "build" + }, + "include": [ + "*.ts", + ] +} diff --git a/src/apis/ftp/v1.ts b/src/apis/ftp/v1.ts new file mode 100644 index 00000000000..9249e5004c5 --- /dev/null +++ b/src/apis/ftp/v1.ts @@ -0,0 +1,3446 @@ +// Copyright 2020 Google LLC +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/* eslint-disable @typescript-eslint/no-explicit-any */ +/* eslint-disable @typescript-eslint/no-unused-vars */ +/* eslint-disable @typescript-eslint/no-empty-interface */ +/* eslint-disable @typescript-eslint/no-namespace */ +/* eslint-disable no-irregular-whitespace */ + +import { + OAuth2Client, + JWT, + Compute, + UserRefreshClient, + BaseExternalAccountClient, + GaxiosResponseWithHTTP2, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace ftp_v1 { + export interface Options extends GlobalOptions { + version: 'v1'; + } + + interface StandardParameters { + /** + * Auth client or API Key for the request + */ + auth?: + | string + | OAuth2Client + | JWT + | Compute + | UserRefreshClient + | BaseExternalAccountClient + | GoogleAuth; + + /** + * V1 error format. + */ + '$.xgafv'?: string; + /** + * OAuth access token. + */ + access_token?: string; + /** + * Data format for response. + */ + alt?: string; + /** + * JSONP + */ + callback?: string; + /** + * Selector specifying which fields to include in a partial response. + */ + fields?: string; + /** + * API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. + */ + key?: string; + /** + * OAuth 2.0 token for the current user. + */ + oauth_token?: string; + /** + * Returns response with indentations and line breaks. + */ + prettyPrint?: boolean; + /** + * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. + */ + quotaUser?: string; + /** + * Legacy upload protocol for media (e.g. "media", "multipart"). + */ + uploadType?: string; + /** + * Upload protocol for media (e.g. "raw", "multipart"). + */ + upload_protocol?: string; + } + + /** + * Cloud FTP API + * + * + * + * @example + * ```js + * const {google} = require('googleapis'); + * const ftp = google.ftp('v1'); + * ``` + */ + export class Ftp { + context: APIRequestContext; + projects: Resource$Projects; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + + this.projects = new Resource$Projects(this.context); + } + } + + /** + * A consumer project or network that is permitted to connect to the server via PSC. + */ + export interface Schema$AllowedConsumer { + /** + * Required. The connection limit for the consumer. Value must be greater than 0. + */ + connectionLimit?: string | null; + /** + * The project ID or number of the consumer project. Must be in the format: `projects/{project\}`. + */ + project?: string | null; + } + /** + * The request message for Operations.CancelOperation. + */ + export interface Schema$CancelOperationRequest {} + /** + * A consumer project or network that is denied to connect to the server via PSC. + */ + export interface Schema$DeniedConsumer { + /** + * The project ID or number of the consumer project. Must be in the format: `projects/{project\}`. + */ + project?: string | 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 {} + /** + * Configuration for external server. + */ + export interface Schema$ExternalServerConfig { + /** + * Optional. List of CIDR blocks that are allowed to access the Server. A CIDR range consists of an IP Address and a prefix length to construct the subnet mask. By default, the prefix length is 32 (i.e. matches a single IP address). For now, only IPV4 addresses are supported. Examples: "203.0.113.0/24" - matches with the IP addresses in the range 203.0.113.0 - 203.0.113.255. "0.0.0.0/0" - matches against any IP address. This field must contain at least one entry if the access type is EXTERNAL. The number of allowed CIDR blocks cannot exceed 500. Example: 192.168.0.0/16 + */ + allowedCidrBlocks?: string[] | null; + /** + * Output only. IP address of the LB via which clients will connect. + */ + ipAddress?: string | null; + } + /** + * Configuration for private server accessible via PSC. + */ + export interface Schema$InternalServerConfig { + /** + * Required. A list of projects that are permitted to connect. At least one project is required in the allow list. + */ + consumerAcceptList?: Schema$AllowedConsumer[]; + /** + * Optional. A list of projects that are denied connection. Format: "projects/sample_project_id" or "projects/1234567890" Projects in this list will be denied access, even if they are included in the `allow_list`. If this list is empty, no projects are explicitly rejected. + */ + consumerRejectList?: Schema$DeniedConsumer[]; + /** + * Output only. Details of endpoints created by the customer. + */ + pscEndpoints?: Schema$PscEndpoint[]; + /** + * Output only. The resource name of the service attachment. Format: `projects/{project\}/regions/{region\}/serviceAttachments/{service_attachment\}` + */ + serviceAttachment?: string | null; + } + /** + * The response message for Locations.ListLocations. + */ + export interface Schema$ListLocationsResponse { + /** + * A list of locations that matches the specified filter in the request. + */ + locations?: Schema$Location[]; + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + } + /** + * The response message for Operations.ListOperations. + */ + export interface Schema$ListOperationsResponse { + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + /** + * 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. For example, when attempting to list all resources across all supported locations. + */ + unreachable?: string[] | null; + } + /** + * Message for response to listing Servers + */ + export interface Schema$ListServersResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * The list of Server + */ + servers?: Schema$Server[]; + /** + * Unordered list. Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Message for response to listing Users + */ + export interface Schema$ListUsersResponse { + /** + * A token identifying a page of results the user should return. + */ + nextPageToken?: string | null; + /** + * Unordered list. Locations that could not be reached. + */ + unreachable?: string[] | null; + /** + * The list of User + */ + users?: Schema$User[]; + } + /** + * A resource that represents a Google Cloud location. + */ + export interface Schema$Location { + /** + * The friendly name for this location, typically a nearby city name. For example, "Tokyo". + */ + displayName?: string | null; + /** + * Cross-service attributes for the location. For example {"cloud.googleapis.com/region": "us-east1"\} + */ + labels?: {[key: string]: string} | null; + /** + * The canonical id for this location. For example: `"us-east1"`. + */ + locationId?: string | null; + /** + * Service-specific metadata. For example the available capacity at the given location. + */ + metadata?: {[key: string]: any} | null; + /** + * Resource name for the location, which may vary between implementations. For example: `"projects/example-project/locations/us-east1"` + */ + name?: string | null; + } + /** + * This resource represents a long-running operation that is the result of a network API call. + */ + export interface Schema$Operation { + /** + * If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available. + */ + done?: boolean | null; + /** + * The error result of the operation in case of failure or cancellation. + */ + error?: Schema$Status; + /** + * Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. + */ + metadata?: {[key: string]: any} | null; + /** + * The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id\}`. + */ + name?: string | null; + /** + * The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. + */ + response?: {[key: string]: any} | null; + } + /** + * Represents the metadata of the long-running operation. + */ + export interface Schema$OperationMetadata { + /** + * Output only. API version used to start the operation. + */ + apiVersion?: string | null; + /** + * Output only. The time the operation was created. + */ + createTime?: string | null; + /** + * Output only. The time the operation finished running. + */ + endTime?: string | null; + /** + * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`. + */ + requestedCancellation?: boolean | null; + /** + * Output only. Human-readable status of the operation, if any. + */ + statusMessage?: string | null; + /** + * Output only. Server-defined resource path for the target of the operation. + */ + target?: string | null; + /** + * Output only. Name of the verb executed by the operation. + */ + verb?: string | null; + } + /** + * Details of PSC endpoint created by customer. + */ + export interface Schema$PscEndpoint { + /** + * Output only. This is a Resource name for Private Service Connect endpoint. Format: `projects/{project\}/regions/{region\}/forwardingRules/{forwarding_rule\}` + */ + endpoint?: string | null; + /** + * Output only. The consumer network. Format: `projects/{project\}/locations/{location\}/networks/{network\}` + */ + network?: string | null; + /** + * Output only. The status of the connected endpoint. + */ + status?: string | null; + } + /** + * Message describing Server object + */ + export interface Schema$Server { + /** + * Required. The access type of the Server. + */ + accessType?: string | null; + /** + * Output only. [Output only] Create time stamp + */ + createTime?: string | null; + /** + * Optional. Display name of the Server + */ + displayName?: string | null; + /** + * Configuration for external access. + */ + externalConfig?: Schema$ExternalServerConfig; + /** + * Output only. Credentials of the FTP Server. + */ + googleManagedServerCredential?: Schema$ServerCredential; + /** + * Configuration for internal access. + */ + internalConfig?: Schema$InternalServerConfig; + /** + * Optional. Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. name of resource + */ + name?: string | null; + /** + * Output only. Service agent used to access the customer bucket. + */ + serviceAgent?: string | null; + /** + * Output only. The state of the server. + */ + state?: string | null; + /** + * Output only. [Output only] Update time stamp + */ + updateTime?: string | null; + } + /** + * Represents credentials of an FTP Server. + */ + export interface Schema$ServerCredential { + /** + * Output only. Asymmetric algorithm used by the public key. Possible values (can be expanded in future): - ssh-ed25519 + */ + asymmetricAlgorithm?: string | null; + /** + * Output only. The fingerprint is a hash of the public key, and is displayed when clients access the server for the first time to verify the server's identity. + */ + fingerprint?: string | null; + } + /** + * Request message for starting a Server. + */ + export interface Schema$StartServerRequest {} + /** + * 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; + } + /** + * Request message for stopping a Server. + */ + export interface Schema$StopServerRequest {} + /** + * Mapping of backing Cloud Storage path to the directory where the user lands in the SFTP server. If directory is not specified, it'll default to '/'. Eg 1 - (bucket_name: bucket, bucket_prefix: path1/path2, directory: /abc/def/username) The user will land at /abcd/def/username, and the view there will match that of /bucket/path1/path2. The user will not be aware of Cloud Storage prefix '/bucket/path1' and there will be no such directory in the view. Eg 2 - (bucket_name: bucket, bucket_prefix: path1/path2, directory: '') The user will land at '/', and the view there will match that of /bucket/path1/path2. The user will not be aware of Cloud Storage prefix '/bucket/path1/path2' and there will be no such directory in the view. + */ + export interface Schema$StorageDirectoryMapping { + /** + * Required. Name of the bucket. + */ + bucket?: string | null; + /** + * Optional. Prefix inside the bucket. + */ + bucketPrefix?: string | null; + /** + * Required. Directory where the user lands in the SFTP server. + */ + directory?: string | null; + /** + * Required. Permission to the bucket. + */ + permission?: string | null; + } + /** + * Message describing User object + */ + export interface Schema$User { + /** + * Output only. [Output only] Create time stamp + */ + createTime?: string | null; + /** + * Required. Service account in customer project attached to this SFTP User. + */ + customerServiceAccount?: string | null; + /** + * Optional. Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. User-friendly name via which User will be identified. projects/{project\}/locations/{location\}/servers/{server\}/users/{user\} + */ + name?: string | null; + /** + * Output only. Tracks user creation. + */ + state?: string | null; + /** + * Required. Mapping of Cloud Storage buckets to directories where the user will land in the SFTP server. + */ + storageDirectoryMappings?: Schema$StorageDirectoryMapping[]; + /** + * Output only. [Output only] Update time stamp + */ + updateTime?: string | null; + /** + * Required. User credential for the user. The maximum number of user credentials is 10. + */ + userCredentials?: Schema$UserCredential[]; + /** + * Output only. [Output only] The username of the user. + */ + username?: string | null; + } + /** + * Message describing UserCredential object + */ + export interface Schema$UserCredential { + /** + * Required. Name of the user credential. + */ + credentialName?: string | null; + /** + * Required. Type of credential. + */ + credentialType?: string | null; + /** + * Optional. SSH public key body in OpenSSH format. Example: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ..." + */ + sshPublicKeyBody?: string | null; + } + + export class Resource$Projects { + context: APIRequestContext; + locations: Resource$Projects$Locations; + constructor(context: APIRequestContext) { + this.context = context; + this.locations = new Resource$Projects$Locations(this.context); + } + } + + export class Resource$Projects$Locations { + context: APIRequestContext; + operations: Resource$Projects$Locations$Operations; + servers: Resource$Projects$Locations$Servers; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = new Resource$Projects$Locations$Operations( + this.context + ); + this.servers = new Resource$Projects$Locations$Servers(this.context); + } + + /** + * Gets information about a location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.get({ + * // Resource name for the location. + * name: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "displayName": "my_displayName", + * // "labels": {}, + * // "locationId": "my_locationId", + * // "metadata": {}, + * // "name": "my_name" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.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 information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.list({ + * // Optional. Do not use this field 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', + * // The resource that owns the locations collection, if applicable. + * name: 'projects/my-project', + * // The maximum number of results to return. If not set, the service selects a default. + * pageSize: 'placeholder-value', + * // A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "locations": [], + * // "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$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}/locations').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$Get extends StandardParameters { + /** + * Resource name for the location. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$List extends StandardParameters { + /** + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. + */ + extraLocationTypes?: string[]; + /** + * 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?: string; + /** + * The resource that owns the locations collection, if applicable. + */ + name?: string; + /** + * The maximum number of results to return. If not set, the service selects a default. + */ + pageSize?: number; + /** + * A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + */ + pageToken?: string; + } + + export class Resource$Projects$Locations$Operations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Projects$Locations$Operations$Cancel, + options?: MethodOptions + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:cancel').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); + } + } + + /** + * Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Operations$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.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 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/ftp.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 ftp = google.ftp('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 ftp.projects.locations.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Operations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.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 operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location', + * // The standard list page size. + * 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. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default 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": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Operations$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Operations$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}/operations').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$Operations$Cancel extends StandardParameters { + /** + * The name of the operation resource to be cancelled. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CancelOperationRequest; + } + export interface Params$Resource$Projects$Locations$Operations$Delete extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$List extends StandardParameters { + /** + * The standard list filter. + */ + filter?: string; + /** + * The name of the operation's parent resource. + */ + name?: string; + /** + * The standard list page size. + */ + pageSize?: number; + /** + * 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. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default 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$Servers { + context: APIRequestContext; + users: Resource$Projects$Locations$Servers$Users; + constructor(context: APIRequestContext) { + this.context = context; + this.users = new Resource$Projects$Locations$Servers$Users(this.context); + } + + /** + * Creates a new Server in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.servers.create({ + * // Required. Value for parent. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Required. Id of the requesting object If auto-generating Id server-side, remove this field and server_id from the method_signature of Create RPC + * serverId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessType": "my_accessType", + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "externalConfig": {}, + * // "googleManagedServerCredential": {}, + * // "internalConfig": {}, + * // "labels": {}, + * // "name": "my_name", + * // "serviceAgent": "my_serviceAgent", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Servers$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Servers$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Servers$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Servers$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Servers$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/servers').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Server. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.servers.delete({ + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/servers/my-server', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Servers$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Servers$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Servers$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Servers$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Servers$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single Server. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.servers.get({ + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/servers/my-server', + * // Optional. The view of the Server resource to return. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "accessType": "my_accessType", + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "externalConfig": {}, + * // "googleManagedServerCredential": {}, + * // "internalConfig": {}, + * // "labels": {}, + * // "name": "my_name", + * // "serviceAgent": "my_serviceAgent", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Servers$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Servers$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Servers$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Servers$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Servers$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.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 Servers in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.servers.list({ + * // Optional. Filtering results + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListServersRequest + * parent: 'projects/my-project/locations/my-location', + * // Optional. The view of the Server resource to return. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "servers": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Servers$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Servers$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Servers$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Servers$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Servers$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/servers').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single Server. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.servers.patch({ + * // Identifier. name of resource + * name: 'projects/my-project/locations/my-location/servers/my-server', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Optional. Field mask is used to specify the fields to be overwritten in the Server 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 present in the request will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessType": "my_accessType", + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "externalConfig": {}, + * // "googleManagedServerCredential": {}, + * // "internalConfig": {}, + * // "labels": {}, + * // "name": "my_name", + * // "serviceAgent": "my_serviceAgent", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Servers$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Servers$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Servers$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Servers$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Servers$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.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); + } + } + + /** + * Starts a stopping/stopped Server. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.servers.start({ + * // Required. Name of the resource Format: `projects/{project\}/locations/{location\}/servers/{server\}` + * name: 'projects/my-project/locations/my-location/servers/my-server', + * + * // 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. + */ + start( + params: Params$Resource$Projects$Locations$Servers$Start, + options: StreamMethodOptions + ): Promise>; + start( + params?: Params$Resource$Projects$Locations$Servers$Start, + options?: MethodOptions + ): Promise>; + start( + params: Params$Resource$Projects$Locations$Servers$Start, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + start( + params: Params$Resource$Projects$Locations$Servers$Start, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + start( + params: Params$Resource$Projects$Locations$Servers$Start, + callback: BodyResponseCallback + ): void; + start(callback: BodyResponseCallback): void; + start( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Start + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Start; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Start; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:start').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); + } + } + + /** + * Stops an active Server. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.servers.stop({ + * // Required. Name of the resource. Format: `projects/{project\}/locations/{location\}/servers/{server\}` + * name: 'projects/my-project/locations/my-location/servers/my-server', + * + * // 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. + */ + stop( + params: Params$Resource$Projects$Locations$Servers$Stop, + options: StreamMethodOptions + ): Promise>; + stop( + params?: Params$Resource$Projects$Locations$Servers$Stop, + options?: MethodOptions + ): Promise>; + stop( + params: Params$Resource$Projects$Locations$Servers$Stop, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stop( + params: Params$Resource$Projects$Locations$Servers$Stop, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stop( + params: Params$Resource$Projects$Locations$Servers$Stop, + callback: BodyResponseCallback + ): void; + stop(callback: BodyResponseCallback): void; + stop( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Stop + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Stop; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Stop; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:stop').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$Projects$Locations$Servers$Create extends StandardParameters { + /** + * Required. Value for parent. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Required. Id of the requesting object If auto-generating Id server-side, remove this field and server_id from the method_signature of Create RPC + */ + serverId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Server; + } + export interface Params$Resource$Projects$Locations$Servers$Delete extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Servers$Get extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + /** + * Optional. The view of the Server resource to return. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Servers$List extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListServersRequest + */ + parent?: string; + /** + * Optional. The view of the Server resource to return. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Servers$Patch extends StandardParameters { + /** + * Identifier. name of resource + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the Server 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 present in the request will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Server; + } + export interface Params$Resource$Projects$Locations$Servers$Start extends StandardParameters { + /** + * Required. Name of the resource Format: `projects/{project\}/locations/{location\}/servers/{server\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$StartServerRequest; + } + export interface Params$Resource$Projects$Locations$Servers$Stop extends StandardParameters { + /** + * Required. Name of the resource. Format: `projects/{project\}/locations/{location\}/servers/{server\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$StopServerRequest; + } + + export class Resource$Projects$Locations$Servers$Users { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new User in a given project and location and Server. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.servers.users.create({ + * // Required. Value for parent. + * parent: 'projects/my-project/locations/my-location/servers/my-server', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Required. Id of the requesting object If auto-generating Id server-side, remove this field and server_id from the method_signature of Create RPC + * userId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customerServiceAccount": "my_customerServiceAccount", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "storageDirectoryMappings": [], + * // "updateTime": "my_updateTime", + * // "userCredentials": [], + * // "username": "my_username" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Servers$Users$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Servers$Users$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Servers$Users$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Servers$Users$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Servers$Users$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Users$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Users$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Users$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/users').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single User. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.servers.users.delete({ + * // Optional. If set to true, the request will force the deletion of the User. + * force: 'placeholder-value', + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/servers/my-server/users/my-user', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Servers$Users$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Servers$Users$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Servers$Users$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Servers$Users$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Servers$Users$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Users$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Users$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Users$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single User. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.servers.users.get({ + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/servers/my-server/users/my-user', + * // Optional. The view of the User resource to return. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "customerServiceAccount": "my_customerServiceAccount", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "storageDirectoryMappings": [], + * // "updateTime": "my_updateTime", + * // "userCredentials": [], + * // "username": "my_username" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Servers$Users$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Servers$Users$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Servers$Users$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Servers$Users$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Servers$Users$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Users$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Users$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Users$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.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 Users in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.servers.users.list({ + * // Optional. Filtering results + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results + * orderBy: 'placeholder-value', + * // Optional. Requested page size. User may return fewer items than requested. The maximum value is 1000; The default value is 50 if the field is omitted (or set to 0). + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the user should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListUsersRequest + * parent: 'projects/my-project/locations/my-location/servers/my-server', + * // Optional. The view of the User resource to return. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [], + * // "users": [] + * // } + * } + * + * 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$Servers$Users$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Servers$Users$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Servers$Users$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Servers$Users$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Servers$Users$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Users$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Users$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Users$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/users').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single User. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('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 ftp.projects.locations.servers.users.patch({ + * // Identifier. User-friendly name via which User will be identified. projects/{project\}/locations/{location\}/servers/{server\}/users/{user\} + * name: 'projects/my-project/locations/my-location/servers/my-server/users/my-user', + * // Optional. Field mask is used to specify the fields to be overwritten in the User 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 present in the request will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customerServiceAccount": "my_customerServiceAccount", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "storageDirectoryMappings": [], + * // "updateTime": "my_updateTime", + * // "userCredentials": [], + * // "username": "my_username" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Servers$Users$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Servers$Users$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Servers$Users$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Servers$Users$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Servers$Users$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Users$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Users$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Users$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Servers$Users$Create extends StandardParameters { + /** + * Required. Value for parent. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Required. Id of the requesting object If auto-generating Id server-side, remove this field and server_id from the method_signature of Create RPC + */ + userId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$User; + } + export interface Params$Resource$Projects$Locations$Servers$Users$Delete extends StandardParameters { + /** + * Optional. If set to true, the request will force the deletion of the User. + */ + force?: boolean; + /** + * Required. Name of the resource + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Servers$Users$Get extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + /** + * Optional. The view of the User resource to return. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Servers$Users$List extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. User may return fewer items than requested. The maximum value is 1000; The default value is 50 if the field is omitted (or set to 0). + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the user should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListUsersRequest + */ + parent?: string; + /** + * Optional. The view of the User resource to return. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Servers$Users$Patch extends StandardParameters { + /** + * Identifier. User-friendly name via which User will be identified. projects/{project\}/locations/{location\}/servers/{server\}/users/{user\} + */ + name?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the User 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 present in the request will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$User; + } +} diff --git a/src/apis/ftp/v1alpha.ts b/src/apis/ftp/v1alpha.ts new file mode 100644 index 00000000000..7bea20aa8ab --- /dev/null +++ b/src/apis/ftp/v1alpha.ts @@ -0,0 +1,3455 @@ +// Copyright 2020 Google LLC +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/* eslint-disable @typescript-eslint/no-explicit-any */ +/* eslint-disable @typescript-eslint/no-unused-vars */ +/* eslint-disable @typescript-eslint/no-empty-interface */ +/* eslint-disable @typescript-eslint/no-namespace */ +/* eslint-disable no-irregular-whitespace */ + +import { + OAuth2Client, + JWT, + Compute, + UserRefreshClient, + BaseExternalAccountClient, + GaxiosResponseWithHTTP2, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace ftp_v1alpha { + export interface Options extends GlobalOptions { + version: 'v1alpha'; + } + + interface StandardParameters { + /** + * Auth client or API Key for the request + */ + auth?: + | string + | OAuth2Client + | JWT + | Compute + | UserRefreshClient + | BaseExternalAccountClient + | GoogleAuth; + + /** + * V1 error format. + */ + '$.xgafv'?: string; + /** + * OAuth access token. + */ + access_token?: string; + /** + * Data format for response. + */ + alt?: string; + /** + * JSONP + */ + callback?: string; + /** + * Selector specifying which fields to include in a partial response. + */ + fields?: string; + /** + * API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. + */ + key?: string; + /** + * OAuth 2.0 token for the current user. + */ + oauth_token?: string; + /** + * Returns response with indentations and line breaks. + */ + prettyPrint?: boolean; + /** + * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. + */ + quotaUser?: string; + /** + * Legacy upload protocol for media (e.g. "media", "multipart"). + */ + uploadType?: string; + /** + * Upload protocol for media (e.g. "raw", "multipart"). + */ + upload_protocol?: string; + } + + /** + * Cloud FTP API + * + * + * + * @example + * ```js + * const {google} = require('googleapis'); + * const ftp = google.ftp('v1alpha'); + * ``` + */ + export class Ftp { + context: APIRequestContext; + projects: Resource$Projects; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + + this.projects = new Resource$Projects(this.context); + } + } + + /** + * A consumer project or network that is permitted to connect to the server via PSC. + */ + export interface Schema$AllowedConsumer { + /** + * Required. The connection limit for the consumer. Value must be greater than 0. + */ + connectionLimit?: string | null; + /** + * The project ID or number of the consumer project. Must be in the format: `projects/{project\}`. + */ + project?: string | null; + } + /** + * The request message for Operations.CancelOperation. + */ + export interface Schema$CancelOperationRequest {} + /** + * A consumer project or network that is denied to connect to the server via PSC. + */ + export interface Schema$DeniedConsumer { + /** + * The project ID or number of the consumer project. Must be in the format: `projects/{project\}`. + */ + project?: string | 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 {} + /** + * Configuration for external server. + */ + export interface Schema$ExternalServerConfig { + /** + * Optional. List of CIDR blocks that are allowed to access the Server. A CIDR range consists of an IP Address and a prefix length to construct the subnet mask. By default, the prefix length is 32 (i.e. matches a single IP address). For now, only IPV4 addresses are supported. Examples: "203.0.113.0/24" - matches with the IP addresses in the range 203.0.113.0 - 203.0.113.255. "0.0.0.0/0" - matches against any IP address. This field must contain at least one entry if the access type is EXTERNAL. The number of allowed CIDR blocks cannot exceed 500. Example: 192.168.0.0/16 + */ + allowedCidrBlocks?: string[] | null; + /** + * Output only. IP address of the LB via which clients will connect. + */ + ipAddress?: string | null; + } + /** + * Configuration for private server accessible via PSC. + */ + export interface Schema$InternalServerConfig { + /** + * Required. A list of projects that are permitted to connect. At least one project is required in the allow list. + */ + consumerAcceptList?: Schema$AllowedConsumer[]; + /** + * Optional. A list of projects that are denied connection. Format: "projects/sample_project_id" or "projects/1234567890" Projects in this list will be denied access, even if they are included in the `allow_list`. If this list is empty, no projects are explicitly rejected. + */ + consumerRejectList?: Schema$DeniedConsumer[]; + /** + * Output only. Details of endpoints created by the customer. + */ + pscEndpoints?: Schema$PscEndpoint[]; + /** + * Output only. The resource name of the service attachment. Format: `projects/{project\}/regions/{region\}/serviceAttachments/{service_attachment\}` + */ + serviceAttachment?: string | null; + } + /** + * The response message for Locations.ListLocations. + */ + export interface Schema$ListLocationsResponse { + /** + * A list of locations that matches the specified filter in the request. + */ + locations?: Schema$Location[]; + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + } + /** + * The response message for Operations.ListOperations. + */ + export interface Schema$ListOperationsResponse { + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + /** + * 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. For example, when attempting to list all resources across all supported locations. + */ + unreachable?: string[] | null; + } + /** + * Message for response to listing Servers + */ + export interface Schema$ListServersResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * The list of Server + */ + servers?: Schema$Server[]; + /** + * Unordered list. Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Message for response to listing Users + */ + export interface Schema$ListUsersResponse { + /** + * A token identifying a page of results the user should return. + */ + nextPageToken?: string | null; + /** + * Unordered list. Locations that could not be reached. + */ + unreachable?: string[] | null; + /** + * The list of User + */ + users?: Schema$User[]; + } + /** + * A resource that represents a Google Cloud location. + */ + export interface Schema$Location { + /** + * The friendly name for this location, typically a nearby city name. For example, "Tokyo". + */ + displayName?: string | null; + /** + * Cross-service attributes for the location. For example {"cloud.googleapis.com/region": "us-east1"\} + */ + labels?: {[key: string]: string} | null; + /** + * The canonical id for this location. For example: `"us-east1"`. + */ + locationId?: string | null; + /** + * Service-specific metadata. For example the available capacity at the given location. + */ + metadata?: {[key: string]: any} | null; + /** + * Resource name for the location, which may vary between implementations. For example: `"projects/example-project/locations/us-east1"` + */ + name?: string | null; + } + /** + * This resource represents a long-running operation that is the result of a network API call. + */ + export interface Schema$Operation { + /** + * If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available. + */ + done?: boolean | null; + /** + * The error result of the operation in case of failure or cancellation. + */ + error?: Schema$Status; + /** + * Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. + */ + metadata?: {[key: string]: any} | null; + /** + * The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id\}`. + */ + name?: string | null; + /** + * The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. + */ + response?: {[key: string]: any} | null; + } + /** + * Represents the metadata of the long-running operation. + */ + export interface Schema$OperationMetadata { + /** + * Output only. API version used to start the operation. + */ + apiVersion?: string | null; + /** + * Output only. The time the operation was created. + */ + createTime?: string | null; + /** + * Output only. The time the operation finished running. + */ + endTime?: string | null; + /** + * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`. + */ + requestedCancellation?: boolean | null; + /** + * Output only. Human-readable status of the operation, if any. + */ + statusMessage?: string | null; + /** + * Output only. Server-defined resource path for the target of the operation. + */ + target?: string | null; + /** + * Output only. Name of the verb executed by the operation. + */ + verb?: string | null; + } + /** + * Details of PSC endpoint created by customer. + */ + export interface Schema$PscEndpoint { + /** + * Output only. This is a Resource name for Private Service Connect endpoint. Format: `projects/{project\}/regions/{region\}/forwardingRules/{forwarding_rule\}` + */ + endpoint?: string | null; + /** + * Output only. The consumer network. Format: `projects/{project\}/locations/{location\}/networks/{network\}` + */ + network?: string | null; + /** + * Output only. The status of the connected endpoint. + */ + status?: string | null; + } + /** + * Message describing Server object + */ + export interface Schema$Server { + /** + * Required. The access type of the Server. + */ + accessType?: string | null; + /** + * Output only. [Output only] Create time stamp + */ + createTime?: string | null; + /** + * Optional. Display name of the Server + */ + displayName?: string | null; + /** + * Configuration for external access. + */ + externalConfig?: Schema$ExternalServerConfig; + /** + * Output only. Credentials of the FTP Server. + */ + googleManagedServerCredential?: Schema$ServerCredential; + /** + * Configuration for internal access. + */ + internalConfig?: Schema$InternalServerConfig; + /** + * Optional. Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. name of resource + */ + name?: string | null; + /** + * Output only. Service agent used to access the customer bucket. + */ + serviceAgent?: string | null; + /** + * Output only. The state of the server. + */ + state?: string | null; + /** + * Output only. [Output only] Update time stamp + */ + updateTime?: string | null; + } + /** + * Represents credentials of an FTP Server. + */ + export interface Schema$ServerCredential { + /** + * Output only. Asymmetric algorithm used by the public key. Possible values (can be expanded in future): - ssh-ed25519 + */ + asymmetricAlgorithm?: string | null; + /** + * Output only. The fingerprint is a hash of the public key, and is displayed when clients access the server for the first time to verify the server's identity. + */ + fingerprint?: string | null; + } + /** + * Request message for starting a Server. + */ + export interface Schema$StartServerRequest {} + /** + * 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; + } + /** + * Request message for stopping a Server. + */ + export interface Schema$StopServerRequest {} + /** + * Mapping of backing Cloud Storage path to the directory where the user lands in the SFTP server. If directory is not specified, it'll default to '/'. Eg 1 - (bucket_name: bucket, bucket_prefix: path1/path2, directory: /abc/def/username) The user will land at /abcd/def/username, and the view there will match that of /bucket/path1/path2. The user will not be aware of Cloud Storage prefix '/bucket/path1' and there will be no such directory in the view. Eg 2 - (bucket_name: bucket, bucket_prefix: path1/path2, directory: '') The user will land at '/', and the view there will match that of /bucket/path1/path2. The user will not be aware of Cloud Storage prefix '/bucket/path1/path2' and there will be no such directory in the view. + */ + export interface Schema$StorageDirectoryMapping { + /** + * Required. Name of the bucket. + */ + bucket?: string | null; + /** + * Optional. Prefix inside the bucket. + */ + bucketPrefix?: string | null; + /** + * Required. Directory where the user lands in the SFTP server. + */ + directory?: string | null; + /** + * Required. Permission to the bucket. + */ + permission?: string | null; + } + /** + * Message describing User object + */ + export interface Schema$User { + /** + * Output only. [Output only] Create time stamp + */ + createTime?: string | null; + /** + * Required. Service account in customer project attached to this SFTP User. + */ + customerServiceAccount?: string | null; + /** + * Optional. Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. User-friendly name via which User will be identified. projects/{project\}/locations/{location\}/servers/{server\}/users/{user\} + */ + name?: string | null; + /** + * Output only. Tracks user creation. + */ + state?: string | null; + /** + * Required. Mapping of Cloud Storage buckets to directories where the user will land in the SFTP server. + */ + storageDirectoryMappings?: Schema$StorageDirectoryMapping[]; + /** + * Output only. [Output only] Update time stamp + */ + updateTime?: string | null; + /** + * Required. User credential for the user. The maximum number of user credentials is 10. + */ + userCredentials?: Schema$UserCredential[]; + /** + * Output only. [Output only] The username of the user. + */ + username?: string | null; + } + /** + * Message describing UserCredential object + */ + export interface Schema$UserCredential { + /** + * Required. Name of the user credential. + */ + credentialName?: string | null; + /** + * Required. Type of credential. + */ + credentialType?: string | null; + /** + * Optional. SSH public key body in OpenSSH format. Example: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ..." + */ + sshPublicKeyBody?: string | null; + } + + export class Resource$Projects { + context: APIRequestContext; + locations: Resource$Projects$Locations; + constructor(context: APIRequestContext) { + this.context = context; + this.locations = new Resource$Projects$Locations(this.context); + } + } + + export class Resource$Projects$Locations { + context: APIRequestContext; + operations: Resource$Projects$Locations$Operations; + servers: Resource$Projects$Locations$Servers; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = new Resource$Projects$Locations$Operations( + this.context + ); + this.servers = new Resource$Projects$Locations$Servers(this.context); + } + + /** + * Gets information about a location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.get({ + * // Resource name for the location. + * name: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "displayName": "my_displayName", + * // "labels": {}, + * // "locationId": "my_locationId", + * // "metadata": {}, + * // "name": "my_name" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.list({ + * // Optional. Do not use this field 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', + * // The resource that owns the locations collection, if applicable. + * name: 'projects/my-project', + * // The maximum number of results to return. If not set, the service selects a default. + * pageSize: 'placeholder-value', + * // A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "locations": [], + * // "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$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}/locations').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$Get extends StandardParameters { + /** + * Resource name for the location. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$List extends StandardParameters { + /** + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. + */ + extraLocationTypes?: string[]; + /** + * 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?: string; + /** + * The resource that owns the locations collection, if applicable. + */ + name?: string; + /** + * The maximum number of results to return. If not set, the service selects a default. + */ + pageSize?: number; + /** + * A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + */ + pageToken?: string; + } + + export class Resource$Projects$Locations$Operations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Projects$Locations$Operations$Cancel, + options?: MethodOptions + ): Promise>; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}:cancel').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); + } + } + + /** + * Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Operations$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets 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/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Operations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location', + * // The standard list page size. + * 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. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default 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": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Operations$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Operations$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}/operations').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$Operations$Cancel extends StandardParameters { + /** + * The name of the operation resource to be cancelled. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CancelOperationRequest; + } + export interface Params$Resource$Projects$Locations$Operations$Delete extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$List extends StandardParameters { + /** + * The standard list filter. + */ + filter?: string; + /** + * The name of the operation's parent resource. + */ + name?: string; + /** + * The standard list page size. + */ + pageSize?: number; + /** + * 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. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default 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$Servers { + context: APIRequestContext; + users: Resource$Projects$Locations$Servers$Users; + constructor(context: APIRequestContext) { + this.context = context; + this.users = new Resource$Projects$Locations$Servers$Users(this.context); + } + + /** + * Creates a new Server in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.servers.create({ + * // Required. Value for parent. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Required. Id of the requesting object If auto-generating Id server-side, remove this field and server_id from the method_signature of Create RPC + * serverId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessType": "my_accessType", + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "externalConfig": {}, + * // "googleManagedServerCredential": {}, + * // "internalConfig": {}, + * // "labels": {}, + * // "name": "my_name", + * // "serviceAgent": "my_serviceAgent", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Servers$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Servers$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Servers$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Servers$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Servers$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/servers').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Server. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.servers.delete({ + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/servers/my-server', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Servers$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Servers$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Servers$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Servers$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Servers$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single Server. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.servers.get({ + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/servers/my-server', + * // Optional. The view of the Server resource to return. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "accessType": "my_accessType", + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "externalConfig": {}, + * // "googleManagedServerCredential": {}, + * // "internalConfig": {}, + * // "labels": {}, + * // "name": "my_name", + * // "serviceAgent": "my_serviceAgent", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Servers$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Servers$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Servers$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Servers$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Servers$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Servers in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.servers.list({ + * // Optional. Filtering results + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListServersRequest + * parent: 'projects/my-project/locations/my-location', + * // Optional. The view of the Server resource to return. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "servers": [], + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Servers$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Servers$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Servers$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Servers$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Servers$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/servers').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single Server. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.servers.patch({ + * // Identifier. name of resource + * name: 'projects/my-project/locations/my-location/servers/my-server', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Optional. Field mask is used to specify the fields to be overwritten in the Server 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 present in the request will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessType": "my_accessType", + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "externalConfig": {}, + * // "googleManagedServerCredential": {}, + * // "internalConfig": {}, + * // "labels": {}, + * // "name": "my_name", + * // "serviceAgent": "my_serviceAgent", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Servers$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Servers$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Servers$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Servers$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Servers$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Starts a stopping/stopped Server. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.servers.start({ + * // Required. Name of the resource Format: `projects/{project\}/locations/{location\}/servers/{server\}` + * name: 'projects/my-project/locations/my-location/servers/my-server', + * + * // 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. + */ + start( + params: Params$Resource$Projects$Locations$Servers$Start, + options: StreamMethodOptions + ): Promise>; + start( + params?: Params$Resource$Projects$Locations$Servers$Start, + options?: MethodOptions + ): Promise>; + start( + params: Params$Resource$Projects$Locations$Servers$Start, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + start( + params: Params$Resource$Projects$Locations$Servers$Start, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + start( + params: Params$Resource$Projects$Locations$Servers$Start, + callback: BodyResponseCallback + ): void; + start(callback: BodyResponseCallback): void; + start( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Start + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Start; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Start; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}:start').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); + } + } + + /** + * Stops an active Server. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.servers.stop({ + * // Required. Name of the resource. Format: `projects/{project\}/locations/{location\}/servers/{server\}` + * name: 'projects/my-project/locations/my-location/servers/my-server', + * + * // 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. + */ + stop( + params: Params$Resource$Projects$Locations$Servers$Stop, + options: StreamMethodOptions + ): Promise>; + stop( + params?: Params$Resource$Projects$Locations$Servers$Stop, + options?: MethodOptions + ): Promise>; + stop( + params: Params$Resource$Projects$Locations$Servers$Stop, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stop( + params: Params$Resource$Projects$Locations$Servers$Stop, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stop( + params: Params$Resource$Projects$Locations$Servers$Stop, + callback: BodyResponseCallback + ): void; + stop(callback: BodyResponseCallback): void; + stop( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Stop + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Stop; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Stop; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}:stop').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$Projects$Locations$Servers$Create extends StandardParameters { + /** + * Required. Value for parent. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Required. Id of the requesting object If auto-generating Id server-side, remove this field and server_id from the method_signature of Create RPC + */ + serverId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Server; + } + export interface Params$Resource$Projects$Locations$Servers$Delete extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Servers$Get extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + /** + * Optional. The view of the Server resource to return. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Servers$List extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListServersRequest + */ + parent?: string; + /** + * Optional. The view of the Server resource to return. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Servers$Patch extends StandardParameters { + /** + * Identifier. name of resource + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the Server 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 present in the request will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Server; + } + export interface Params$Resource$Projects$Locations$Servers$Start extends StandardParameters { + /** + * Required. Name of the resource Format: `projects/{project\}/locations/{location\}/servers/{server\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$StartServerRequest; + } + export interface Params$Resource$Projects$Locations$Servers$Stop extends StandardParameters { + /** + * Required. Name of the resource. Format: `projects/{project\}/locations/{location\}/servers/{server\}` + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$StopServerRequest; + } + + export class Resource$Projects$Locations$Servers$Users { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new User in a given project and location and Server. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.servers.users.create({ + * // Required. Value for parent. + * parent: 'projects/my-project/locations/my-location/servers/my-server', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Required. Id of the requesting object If auto-generating Id server-side, remove this field and server_id from the method_signature of Create RPC + * userId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customerServiceAccount": "my_customerServiceAccount", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "storageDirectoryMappings": [], + * // "updateTime": "my_updateTime", + * // "userCredentials": [], + * // "username": "my_username" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Servers$Users$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Servers$Users$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Servers$Users$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Servers$Users$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Servers$Users$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Users$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Users$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Users$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/users').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single User. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.servers.users.delete({ + * // Optional. If set to true, the request will force the deletion of the User. + * force: 'placeholder-value', + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/servers/my-server/users/my-user', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Servers$Users$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Servers$Users$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Servers$Users$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Servers$Users$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Servers$Users$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Users$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Users$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Users$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single User. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.servers.users.get({ + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/servers/my-server/users/my-user', + * // Optional. The view of the User resource to return. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "customerServiceAccount": "my_customerServiceAccount", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "storageDirectoryMappings": [], + * // "updateTime": "my_updateTime", + * // "userCredentials": [], + * // "username": "my_username" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Servers$Users$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Servers$Users$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Servers$Users$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Servers$Users$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Servers$Users$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Users$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Users$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Users$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Users in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.servers.users.list({ + * // Optional. Filtering results + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results + * orderBy: 'placeholder-value', + * // Optional. Requested page size. User may return fewer items than requested. The maximum value is 1000; The default value is 50 if the field is omitted (or set to 0). + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the user should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListUsersRequest + * parent: 'projects/my-project/locations/my-location/servers/my-server', + * // Optional. The view of the User resource to return. + * view: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [], + * // "users": [] + * // } + * } + * + * 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$Servers$Users$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Servers$Users$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Servers$Users$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Servers$Users$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Servers$Users$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Users$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Users$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Users$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/users').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single User. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/ftp.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 ftp = google.ftp('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await ftp.projects.locations.servers.users.patch({ + * // Identifier. User-friendly name via which User will be identified. projects/{project\}/locations/{location\}/servers/{server\}/users/{user\} + * name: 'projects/my-project/locations/my-location/servers/my-server/users/my-user', + * // Optional. Field mask is used to specify the fields to be overwritten in the User 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 present in the request will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customerServiceAccount": "my_customerServiceAccount", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "storageDirectoryMappings": [], + * // "updateTime": "my_updateTime", + * // "userCredentials": [], + * // "username": "my_username" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Servers$Users$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Servers$Users$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Servers$Users$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Servers$Users$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Servers$Users$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servers$Users$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servers$Users$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servers$Users$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://ftp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Servers$Users$Create extends StandardParameters { + /** + * Required. Value for parent. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Required. Id of the requesting object If auto-generating Id server-side, remove this field and server_id from the method_signature of Create RPC + */ + userId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$User; + } + export interface Params$Resource$Projects$Locations$Servers$Users$Delete extends StandardParameters { + /** + * Optional. If set to true, the request will force the deletion of the User. + */ + force?: boolean; + /** + * Required. Name of the resource + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Servers$Users$Get extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + /** + * Optional. The view of the User resource to return. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Servers$Users$List extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. User may return fewer items than requested. The maximum value is 1000; The default value is 50 if the field is omitted (or set to 0). + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the user should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListUsersRequest + */ + parent?: string; + /** + * Optional. The view of the User resource to return. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Servers$Users$Patch extends StandardParameters { + /** + * Identifier. User-friendly name via which User will be identified. projects/{project\}/locations/{location\}/servers/{server\}/users/{user\} + */ + name?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the User 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 present in the request will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$User; + } +} diff --git a/src/apis/ftp/webpack.config.js b/src/apis/ftp/webpack.config.js new file mode 100644 index 00000000000..918453175f9 --- /dev/null +++ b/src/apis/ftp/webpack.config.js @@ -0,0 +1,79 @@ +// Copyright 2019 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Use `npm run webpack` to produce Webpack bundle for this library. + +const path = require('path'); + +module.exports = { + entry: './index.ts', + resolve: { + extensions: ['.ts', '.js', '.json'], + fallback: { + crypto: false, + child_process: false, + fs: false, + http2: false, + buffer: 'browserify', + process: false, + os: false, + querystring: false, + path: false, + stream: 'stream-browserify', + url: false, + util: false, + zlib: false, + }, + }, + output: { + library: 'Ftp', + filename: 'ftp.min.js', + path: path.resolve(__dirname, 'dist'), + }, + module: { + rules: [ + { + test: /node_modules[\\/]google-auth-library[\\/]src[\\/]crypto[\\/]node[\\/]crypto/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]https-proxy-agent[\\/]/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]gcp-metadata[\\/]/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]gtoken[\\/]/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]pkginfo[\\/]/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]semver[\\/]/, + use: 'null-loader', + }, + { + test: /\.ts$/, + use: 'ts-loader', + exclude: /node_modules/, + }, + ], + }, + mode: 'production', + plugins: [], +}; From 2f19212bade802457f122334e5eb21acab362810 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:23 +0000 Subject: [PATCH 12/23] feat(health): update the API #### health:v4 The following keys were added: - schemas.DataPoint.properties.menstrualPeriod.$ref - schemas.DataPoint.properties.menstrualPeriod.description - schemas.DataPoint.properties.moods.$ref - schemas.DataPoint.properties.moods.description - schemas.DataPoint.properties.ovulationTest.$ref - schemas.DataPoint.properties.ovulationTest.description - schemas.DataPoint.properties.symptoms.$ref - schemas.DataPoint.properties.symptoms.description - schemas.MenstrualPeriod.description - schemas.MenstrualPeriod.id - schemas.MenstrualPeriod.properties.interval.$ref - schemas.MenstrualPeriod.properties.interval.description - schemas.MenstrualPeriod.properties.notes.description - schemas.MenstrualPeriod.properties.notes.type - schemas.MenstrualPeriod.type - schemas.Moods.description - schemas.Moods.id - schemas.Moods.properties.moods.description - schemas.Moods.properties.moods.items.enum - schemas.Moods.properties.moods.items.enumDescriptions - schemas.Moods.properties.moods.items.type - schemas.Moods.properties.moods.type - schemas.Moods.properties.sampleTime.$ref - schemas.Moods.properties.sampleTime.description - schemas.Moods.properties.valences.description - schemas.Moods.properties.valences.items.enum - schemas.Moods.properties.valences.items.enumDescriptions - schemas.Moods.properties.valences.items.type - schemas.Moods.properties.valences.type - schemas.Moods.type - schemas.OvulationTest.description - schemas.OvulationTest.id - schemas.OvulationTest.properties.result.description - schemas.OvulationTest.properties.result.enum - schemas.OvulationTest.properties.result.enumDescriptions - schemas.OvulationTest.properties.result.type - schemas.OvulationTest.properties.sampleTime.$ref - schemas.OvulationTest.properties.sampleTime.description - schemas.OvulationTest.type - schemas.Sleep.properties.shortAwakenings.description - schemas.Sleep.properties.shortAwakenings.items.$ref - schemas.Sleep.properties.shortAwakenings.readOnly - schemas.Sleep.properties.shortAwakenings.type - schemas.Symptoms.description - schemas.Symptoms.id - schemas.Symptoms.properties.sampleTime.$ref - schemas.Symptoms.properties.sampleTime.description - schemas.Symptoms.properties.symptoms.description - schemas.Symptoms.properties.symptoms.items.enum - schemas.Symptoms.properties.symptoms.items.enumDescriptions - schemas.Symptoms.properties.symptoms.items.type - schemas.Symptoms.properties.symptoms.type - schemas.Symptoms.type The following keys were changed: - resources.users.resources.dataTypes.resources.dataPoints.methods.reconcile.parameters.dataSourceFamily.description - schemas.DailyRollUpDataPointsRequest.properties.dataSourceFamily.description - schemas.Exercise.properties.displayName.description - schemas.RollUpDataPointsRequest.properties.dataSourceFamily.description - schemas.Settings.properties.distanceUnit.description --- discovery/health-v4.json | 319 ++++++++++++++++++++++++++++++++++++++- src/apis/health/v4.ts | 100 +++++++++++- 2 files changed, 407 insertions(+), 12 deletions(-) diff --git a/discovery/health-v4.json b/discovery/health-v4.json index 3985ed43d9d..218a891d5bc 100644 --- a/discovery/health-v4.json +++ b/discovery/health-v4.json @@ -936,7 +936,7 @@ ], "parameters": { "dataSourceFamily": { - "description": "Optional. The data source family name to reconcile. If empty, data points from all data sources will be reconciled. Format: `users/me/dataSourceFamilies/{data_source_family}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources", + "description": "Optional. The data source family name to reconcile. If empty, data points from all data sources will be reconciled. Format: `users/me/dataSourceFamilies/{data_source_family}` - `users/me/dataSourceFamilies/all-sources` - Default value. Includes data from all available data sources. - `users/me/dataSourceFamilies/google-wearables` - Includes data from Google and Fitbit tracker devices (such as Fitbit trackers and Pixel Watch). Excludes manually logged data. - `users/me/dataSourceFamilies/google-sources` - Includes first-party Google data, such as data from tracker devices, manually logged data, and Health Connect.", "location": "query", "type": "string" }, @@ -1078,7 +1078,7 @@ } } }, - "revision": "20260729", + "revision": "20260804", "rootUrl": "https://health.googleapis.com/", "schemas": { "ActiveEnergyBurned": { @@ -1933,7 +1933,7 @@ "id": "DailyRollUpDataPointsRequest", "properties": { "dataSourceFamily": { - "description": "Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources", + "description": "Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - Default value. Includes data from all available data sources. - `users/me/dataSourceFamilies/google-wearables` - Includes data from Google and Fitbit tracker devices (such as Fitbit trackers and Pixel Watch). Excludes manually logged data. - `users/me/dataSourceFamilies/google-sources` - Includes first-party Google data, such as data from tracker devices, manually logged data, and Health Connect.", "type": "string" }, "pageSize": { @@ -2267,6 +2267,14 @@ "$ref": "IrregularRhythmNotification", "description": "Optional. Data for points in the `irregular-rhythm-notification` session data type collection." }, + "menstrualPeriod": { + "$ref": "MenstrualPeriod", + "description": "Optional. Data for points in the `menstrual-period` interval data type collection." + }, + "moods": { + "$ref": "Moods", + "description": "Optional. Data for points in the `moods` sample data type collection." + }, "name": { "description": "Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user}/dataTypes/{data_type}/dataPoints/{data_point}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `heart-rate` for the `heart_rate` field. The `{data_point}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens.", "type": "string" @@ -2275,6 +2283,10 @@ "$ref": "NutritionLog", "description": "Optional. Data for points in the `nutrition-log` session data type collection." }, + "ovulationTest": { + "$ref": "OvulationTest", + "description": "Optional. Data for points in the `ovulation-test` sample data type collection." + }, "oxygenSaturation": { "$ref": "OxygenSaturation", "description": "Optional. Data for points in the `oxygen-saturation` sample data type collection." @@ -2303,6 +2315,10 @@ "$ref": "SwimLengthsData", "description": "Optional. Data for points in the `swim-lengths-data` interval data type collection." }, + "symptoms": { + "$ref": "Symptoms", + "description": "Optional. Data for points in the `symptoms` sample data type collection." + }, "timeInHeartRateZone": { "$ref": "TimeInHeartRateZone", "description": "Optional. Data for points in the `time-in-heart-rate-zone` interval data type collection." @@ -2695,7 +2711,7 @@ "type": "string" }, "displayName": { - "description": "Required. Exercise display name.", + "description": "Required. The localized, human-readable name of the exercise. For all exercise types other than `OTHER`, the system ignores client input and overrides this field with a generated name based on `exercise_type` (e.g., \"Walking\" for `WALKING`). If `exercise_type` is `OTHER`, this field can contain the user's custom, free-form display name.", "type": "string" }, "exerciseEvents": { @@ -3908,6 +3924,21 @@ }, "type": "object" }, + "MenstrualPeriod": { + "description": "Menstrual period record.", + "id": "MenstrualPeriod", + "properties": { + "interval": { + "$ref": "ObservationTimeInterval", + "description": "Required. Observed interval." + }, + "notes": { + "description": "Optional. Standard free-form notes captured at manual logging.", + "type": "string" + } + }, + "type": "object" + }, "MetricsSummary": { "description": "Summary metrics for an exercise.", "id": "MetricsSummary", @@ -4005,6 +4036,161 @@ }, "type": "object" }, + "Moods": { + "description": "Moods record.", + "id": "Moods", + "properties": { + "moods": { + "description": "Required. The moods logged.", + "items": { + "enum": [ + "MOOD_UNSPECIFIED", + "AMAZED", + "AMUSED", + "ANGRY", + "ANNOYED", + "ANXIOUS", + "HAPPY", + "CONTENT", + "SAD", + "WORRIED", + "FRUSTRATED", + "EXCITED", + "CALM", + "STRESSED", + "ASHAMED", + "BRAVE", + "CONFIDENT", + "DISAPPOINTED", + "DISCOURAGED", + "DISGUSTED", + "DRAINED", + "EMBARRASSED", + "GRATEFUL", + "GUILTY", + "HOPEFUL", + "HOPELESS", + "INDIFFERENT", + "IRRITATED", + "JEALOUS", + "JOYFUL", + "LONELY", + "OVERWHELMED", + "PASSIONATE", + "PEACEFUL", + "PROUD", + "RELIEVED", + "SATISFIED", + "SCARED", + "SURPRISED", + "ENERGIZED", + "FATIGUED", + "VERY_CALM", + "VERY_STRESSED", + "NEUTRAL", + "AFRAID", + "HURTING", + "BORED", + "BITTER", + "ENVIOUS", + "CONFUSED", + "CURIOUS", + "AWESTRUCK", + "INSPIRED", + "LONGING", + "ACCOMPLISHED", + "LOVING", + "COMPASSIONATE" + ], + "enumDescriptions": [ + "Unspecified mood.", + "Amazed.", + "Amused.", + "Angry.", + "Annoyed.", + "Anxious.", + "Happy.", + "Content.", + "Sad.", + "Worried.", + "Frustrated.", + "Excited.", + "Calm.", + "Stressed.", + "Ashamed.", + "Brave.", + "Confident.", + "Disappointed.", + "Discouraged.", + "Disgusted.", + "Drained.", + "Embarrassed.", + "Grateful.", + "Guilty.", + "Hopeful.", + "Hopeless.", + "Indifferent.", + "Irritated.", + "Jealous.", + "Joyful.", + "Lonely.", + "Overwhelmed.", + "Passionate.", + "Peaceful.", + "Proud.", + "Relieved.", + "Satisfied.", + "Scared.", + "Surprised.", + "Energized.", + "Fatigued.", + "Very calm.", + "Very stressed.", + "Neutral.", + "Afraid.", + "Hurting.", + "Bored.", + "Bitter.", + "Envious.", + "Confused.", + "Curious.", + "Awestruck.", + "Inspired.", + "Longing.", + "Accomplished.", + "Loving.", + "Compassionate." + ], + "type": "string" + }, + "type": "array" + }, + "sampleTime": { + "$ref": "ObservationSampleTime", + "description": "Required. The time at which moods were measured." + }, + "valences": { + "description": "Optional. The valences.", + "items": { + "enum": [ + "VALENCE_UNSPECIFIED", + "UNPLEASANT", + "BASELINE", + "PLEASANT" + ], + "enumDescriptions": [ + "Unspecified valence.", + "Unpleasant.", + "Baseline.", + "Pleasant." + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "NutrientQuantity": { "description": "Represents the quantity of a nutrient.", "id": "NutrientQuantity", @@ -4428,6 +4614,37 @@ }, "type": "object" }, + "OvulationTest": { + "description": "Ovulation test record.", + "id": "OvulationTest", + "properties": { + "result": { + "description": "Required. The result of the ovulation test.", + "enum": [ + "OVULATION_TEST_RESULT_UNSPECIFIED", + "NEGATIVE", + "LUTEINIZING_HORMONE_SURGE", + "ESTROGEN_SURGE", + "POSITIVE", + "INDETERMINATE" + ], + "enumDescriptions": [ + "Unspecified result.", + "Negative result.", + "Luteinizing hormone surge.", + "Estrogen surge.", + "Positive result.", + "Indeterminate result." + ], + "type": "string" + }, + "sampleTime": { + "$ref": "ObservationSampleTime", + "description": "Required. The time at which ovulation test was measured." + } + }, + "type": "object" + }, "OxygenSaturation": { "description": "Captures the user's instantaneous oxygen saturation percentage (SpO2).", "id": "OxygenSaturation", @@ -4784,7 +5001,7 @@ "id": "RollUpDataPointsRequest", "properties": { "dataSourceFamily": { - "description": "Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources", + "description": "Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - Default value. Includes data from all available data sources. - `users/me/dataSourceFamilies/google-wearables` - Includes data from Google and Fitbit tracker devices (such as Fitbit trackers and Pixel Watch). Excludes manually logged data. - `users/me/dataSourceFamilies/google-sources` - Includes first-party Google data, such as data from tracker devices, manually logged data, and Health Connect.", "type": "string" }, "pageSize": { @@ -5055,7 +5272,7 @@ "type": "boolean" }, "distanceUnit": { - "description": "Optional. The measurement unit defined in the user's account settings. Updates to this field are currently not supported.", + "description": "Optional. The measurement unit defined in the user's account settings.", "enum": [ "DISTANCE_UNIT_UNSPECIFIED", "DISTANCE_UNIT_MILES", @@ -5238,6 +5455,14 @@ }, "type": "array" }, + "shortAwakenings": { + "description": "Output only. List of short awake segments (under a set threshold) that are part of the sleep session. These can overlap with sleep stages.", + "items": { + "$ref": "SleepStage" + }, + "readOnly": true, + "type": "array" + }, "stages": { "description": "Optional. List of non-overlapping contiguous sleep stage segments that cover the sleep period.", "items": { @@ -5742,6 +5967,88 @@ }, "type": "object" }, + "Symptoms": { + "description": "Symptoms logged by the user.", + "id": "Symptoms", + "properties": { + "sampleTime": { + "$ref": "ObservationSampleTime", + "description": "Required. Time when the symptoms were logged." + }, + "symptoms": { + "description": "Required. List of symptoms experienced.", + "items": { + "enum": [ + "SYMPTOM_VALUE_UNSPECIFIED", + "CRAMPS", + "HEADACHE", + "TENDER_BREASTS", + "ACNE", + "SICK", + "BLOATED", + "HOT_FLASHES", + "PMS", + "COUGH", + "FEVER", + "DIFFICULTY_BREATHING", + "BACK_PAIN", + "SHAKINESS", + "HUNGER", + "SWEATING", + "ANXIETY", + "THIRST", + "FREQUENT_URINATION", + "BLURRED_VISION", + "OTHER", + "SEX_DRIVE_HIGH", + "SEX_DRIVE_MEDIUM", + "SEX_DRIVE_LOW", + "HEART_PALPITATIONS", + "FAINTING", + "CHEST_PAIN", + "FATIGUE", + "CONFUSION", + "DIZZINESS" + ], + "enumDescriptions": [ + "Unspecified symptom value.", + "Abdominal cramps.", + "Headache.", + "Tender breasts.", + "Acne.", + "Feeling sick or unwell.", + "Bloating or abdominal swelling.", + "Hot flashes.", + "Premenstrual syndrome symptoms.", + "Coughing.", + "Fever or elevated body temperature.", + "Difficulty breathing or shortness of breath.", + "Back pain.", + "Shakiness or tremors.", + "Excessive hunger.", + "Excessive sweating.", + "Anxiety or nervousness.", + "Excessive thirst.", + "Frequent urination.", + "Blurred vision.", + "Other symptoms.", + "High sex drive.", + "Medium sex drive.", + "Low sex drive.", + "Heart palpitations or racing heart.", + "Fainting or loss of consciousness.", + "Chest pain or discomfort.", + "Fatigue or extreme tiredness.", + "Confusion or mental fogginess.", + "Dizziness or lightheadedness." + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "TimeInHeartRateZone": { "description": "Time in heart rate zone record. It's an interval spent in specific heart rate zone.", "id": "TimeInHeartRateZone", diff --git a/src/apis/health/v4.ts b/src/apis/health/v4.ts index 257047987ed..ecbe8fdc3fe 100644 --- a/src/apis/health/v4.ts +++ b/src/apis/health/v4.ts @@ -757,7 +757,7 @@ export namespace health_v4 { */ export interface Schema$DailyRollUpDataPointsRequest { /** - * Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family\}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources + * Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family\}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - Default value. Includes data from all available data sources. - `users/me/dataSourceFamilies/google-wearables` - Includes data from Google and Fitbit tracker devices (such as Fitbit trackers and Pixel Watch). Excludes manually logged data. - `users/me/dataSourceFamilies/google-sources` - Includes first-party Google data, such as data from tracker devices, manually logged data, and Health Connect. */ dataSourceFamily?: string | null; /** @@ -948,6 +948,14 @@ export namespace health_v4 { * Optional. Data for points in the `irregular-rhythm-notification` session data type collection. */ irregularRhythmNotification?: Schema$IrregularRhythmNotification; + /** + * Optional. Data for points in the `menstrual-period` interval data type collection. + */ + menstrualPeriod?: Schema$MenstrualPeriod; + /** + * Optional. Data for points in the `moods` sample data type collection. + */ + moods?: Schema$Moods; /** * Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user\}/dataTypes/{data_type\}/dataPoints/{data_point\}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user\}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type\}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `heart-rate` for the `heart_rate` field. The `{data_point\}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens. */ @@ -956,6 +964,10 @@ export namespace health_v4 { * Optional. Data for points in the `nutrition-log` session data type collection. */ nutritionLog?: Schema$NutritionLog; + /** + * Optional. Data for points in the `ovulation-test` sample data type collection. + */ + ovulationTest?: Schema$OvulationTest; /** * Optional. Data for points in the `oxygen-saturation` sample data type collection. */ @@ -984,6 +996,10 @@ export namespace health_v4 { * Optional. Data for points in the `swim-lengths-data` interval data type collection. */ swimLengthsData?: Schema$SwimLengthsData; + /** + * Optional. Data for points in the `symptoms` sample data type collection. + */ + symptoms?: Schema$Symptoms; /** * Optional. Data for points in the `time-in-heart-rate-zone` interval data type collection. */ @@ -1208,7 +1224,7 @@ export namespace health_v4 { */ createTime?: string | null; /** - * Required. Exercise display name. + * Required. The localized, human-readable name of the exercise. For all exercise types other than `OTHER`, the system ignores client input and overrides this field with a generated name based on `exercise_type` (e.g., "Walking" for `WALKING`). If `exercise_type` is `OTHER`, this field can contain the user's custom, free-form display name. */ displayName?: string | null; /** @@ -1806,6 +1822,19 @@ export namespace health_v4 { */ serviceVersion?: string | null; } + /** + * Menstrual period record. + */ + export interface Schema$MenstrualPeriod { + /** + * Required. Observed interval. + */ + interval?: Schema$ObservationTimeInterval; + /** + * Optional. Standard free-form notes captured at manual logging. + */ + notes?: string | null; + } /** * Summary metrics for an exercise. */ @@ -1884,6 +1913,23 @@ export namespace health_v4 { */ avgVerticalRatio?: number | null; } + /** + * Moods record. + */ + export interface Schema$Moods { + /** + * Required. The moods logged. + */ + moods?: string[] | null; + /** + * Required. The time at which moods were measured. + */ + sampleTime?: Schema$ObservationSampleTime; + /** + * Optional. The valences. + */ + valences?: string[] | null; + } /** * Represents the quantity of a nutrient. */ @@ -2072,6 +2118,19 @@ export namespace health_v4 { */ startUtcOffset?: string | null; } + /** + * Ovulation test record. + */ + export interface Schema$OvulationTest { + /** + * Required. The result of the ovulation test. + */ + result?: string | null; + /** + * Required. The time at which ovulation test was measured. + */ + sampleTime?: Schema$ObservationSampleTime; + } /** * Captures the user's instantaneous oxygen saturation percentage (SpO2). */ @@ -2470,7 +2529,7 @@ export namespace health_v4 { */ export interface Schema$RollUpDataPointsRequest { /** - * Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family\}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources + * Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family\}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - Default value. Includes data from all available data sources. - `users/me/dataSourceFamilies/google-wearables` - Includes data from Google and Fitbit tracker devices (such as Fitbit trackers and Pixel Watch). Excludes manually logged data. - `users/me/dataSourceFamilies/google-sources` - Includes first-party Google data, such as data from tracker devices, manually logged data, and Health Connect. */ dataSourceFamily?: string | null; /** @@ -2606,7 +2665,7 @@ export namespace health_v4 { */ autoStrideEnabled?: boolean | null; /** - * Optional. The measurement unit defined in the user's account settings. Updates to this field are currently not supported. + * Optional. The measurement unit defined in the user's account settings. */ distanceUnit?: string | null; /** @@ -2682,6 +2741,10 @@ export namespace health_v4 { * Optional. “Out of bed” segments that can overlap with sleep stages. */ outOfBedSegments?: Schema$OutOfBedSegment[]; + /** + * Output only. List of short awake segments (under a set threshold) that are part of the sleep session. These can overlap with sleep stages. + */ + shortAwakenings?: Schema$SleepStage[]; /** * Optional. List of non-overlapping contiguous sleep stage segments that cover the sleep period. */ @@ -2968,6 +3031,19 @@ export namespace health_v4 { */ strokeCountSum?: string | null; } + /** + * Symptoms logged by the user. + */ + export interface Schema$Symptoms { + /** + * Required. Time when the symptoms were logged. + */ + sampleTime?: Schema$ObservationSampleTime; + /** + * Required. List of symptoms experienced. + */ + symptoms?: string[] | null; + } /** * Time in heart rate zone record. It's an interval spent in specific heart rate zone. */ @@ -6003,8 +6079,11 @@ export namespace health_v4 { * // "height": {}, * // "hydrationLog": {}, * // "irregularRhythmNotification": {}, + * // "menstrualPeriod": {}, + * // "moods": {}, * // "name": "my_name", * // "nutritionLog": {}, + * // "ovulationTest": {}, * // "oxygenSaturation": {}, * // "respiratoryRateSleepSummary": {}, * // "runVo2Max": {}, @@ -6012,6 +6091,7 @@ export namespace health_v4 { * // "sleep": {}, * // "steps": {}, * // "swimLengthsData": {}, + * // "symptoms": {}, * // "timeInHeartRateZone": {}, * // "vo2Max": {}, * // "weight": {} @@ -6501,8 +6581,11 @@ export namespace health_v4 { * // "height": {}, * // "hydrationLog": {}, * // "irregularRhythmNotification": {}, + * // "menstrualPeriod": {}, + * // "moods": {}, * // "name": "my_name", * // "nutritionLog": {}, + * // "ovulationTest": {}, * // "oxygenSaturation": {}, * // "respiratoryRateSleepSummary": {}, * // "runVo2Max": {}, @@ -6510,6 +6593,7 @@ export namespace health_v4 { * // "sleep": {}, * // "steps": {}, * // "swimLengthsData": {}, + * // "symptoms": {}, * // "timeInHeartRateZone": {}, * // "vo2Max": {}, * // "weight": {} @@ -6832,8 +6916,11 @@ export namespace health_v4 { * // "height": {}, * // "hydrationLog": {}, * // "irregularRhythmNotification": {}, + * // "menstrualPeriod": {}, + * // "moods": {}, * // "name": "my_name", * // "nutritionLog": {}, + * // "ovulationTest": {}, * // "oxygenSaturation": {}, * // "respiratoryRateSleepSummary": {}, * // "runVo2Max": {}, @@ -6841,6 +6928,7 @@ export namespace health_v4 { * // "sleep": {}, * // "steps": {}, * // "swimLengthsData": {}, + * // "symptoms": {}, * // "timeInHeartRateZone": {}, * // "vo2Max": {}, * // "weight": {} @@ -6986,7 +7074,7 @@ export namespace health_v4 { * * // Do the magic * const res = await health.users.dataTypes.dataPoints.reconcile({ - * // Optional. The data source family name to reconcile. If empty, data points from all data sources will be reconciled. Format: `users/me/dataSourceFamilies/{data_source_family\}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources + * // Optional. The data source family name to reconcile. If empty, data points from all data sources will be reconciled. Format: `users/me/dataSourceFamilies/{data_source_family\}` - `users/me/dataSourceFamilies/all-sources` - Default value. Includes data from all available data sources. - `users/me/dataSourceFamilies/google-wearables` - Includes data from Google and Fitbit tracker devices (such as Fitbit trackers and Pixel Watch). Excludes manually logged data. - `users/me/dataSourceFamilies/google-sources` - Includes first-party Google data, such as data from tracker devices, manually logged data, and Health Connect. * dataSourceFamily: 'placeholder-value', * // Optional. Filter expression based on https://aip.dev/160. A time range, either physical or civil, can be specified. See the ListDataPointsRequest.filter for the supported fields and syntax. * filter: 'placeholder-value', @@ -7344,7 +7432,7 @@ export namespace health_v4 { } export interface Params$Resource$Users$Datatypes$Datapoints$Reconcile extends StandardParameters { /** - * Optional. The data source family name to reconcile. If empty, data points from all data sources will be reconciled. Format: `users/me/dataSourceFamilies/{data_source_family\}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources + * Optional. The data source family name to reconcile. If empty, data points from all data sources will be reconciled. Format: `users/me/dataSourceFamilies/{data_source_family\}` - `users/me/dataSourceFamilies/all-sources` - Default value. Includes data from all available data sources. - `users/me/dataSourceFamilies/google-wearables` - Includes data from Google and Fitbit tracker devices (such as Fitbit trackers and Pixel Watch). Excludes manually logged data. - `users/me/dataSourceFamilies/google-sources` - Includes first-party Google data, such as data from tracker devices, manually logged data, and Health Connect. */ dataSourceFamily?: string; /** From eea09e9a4ae6b0540a0cd2bc3d2c07150cbc2de2 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:23 +0000 Subject: [PATCH 13/23] feat(homegraph): update the API #### homegraph:v1 The following keys were added: - schemas.CameraEventStreamTrait.description - schemas.CameraEventStreamTrait.id - schemas.CameraEventStreamTrait.type - schemas.CommonEventDataStruct.description - schemas.CommonEventDataStruct.id - schemas.CommonEventDataStruct.properties.mediaUrls.$ref - schemas.CommonEventDataStruct.properties.mediaUrls.description - schemas.CommonEventDataStruct.properties.sessionId.description - schemas.CommonEventDataStruct.properties.sessionId.type - schemas.CommonEventDataStruct.properties.trackId.description - schemas.CommonEventDataStruct.properties.trackId.type - schemas.CommonEventDataStruct.type - schemas.DeviceBlameStruct.description - schemas.DeviceBlameStruct.id - schemas.DeviceBlameStruct.properties.blameType.description - schemas.DeviceBlameStruct.properties.blameType.enum - schemas.DeviceBlameStruct.properties.blameType.enumDescriptions - schemas.DeviceBlameStruct.properties.blameType.type - schemas.DeviceBlameStruct.type - schemas.EveUtilityTrait.id - schemas.EveUtilityTrait.properties.acceptedCommandList.description - schemas.EveUtilityTrait.properties.acceptedCommandList.items.enum - schemas.EveUtilityTrait.properties.acceptedCommandList.items.enumDeprecated - schemas.EveUtilityTrait.properties.acceptedCommandList.items.enumDescriptions - schemas.EveUtilityTrait.properties.acceptedCommandList.items.type - schemas.EveUtilityTrait.properties.acceptedCommandList.readOnly - schemas.EveUtilityTrait.properties.acceptedCommandList.type - schemas.EveUtilityTrait.properties.accumulatedControlPoint.format - schemas.EveUtilityTrait.properties.accumulatedControlPoint.type - schemas.EveUtilityTrait.properties.airPressure.format - schemas.EveUtilityTrait.properties.airPressure.readOnly - schemas.EveUtilityTrait.properties.airPressure.type - schemas.EveUtilityTrait.properties.altitude.format - schemas.EveUtilityTrait.properties.altitude.type - schemas.EveUtilityTrait.properties.childLock.type - schemas.EveUtilityTrait.properties.current.format - schemas.EveUtilityTrait.properties.current.readOnly - schemas.EveUtilityTrait.properties.current.type - schemas.EveUtilityTrait.properties.getConfig.format - schemas.EveUtilityTrait.properties.getConfig.readOnly - schemas.EveUtilityTrait.properties.getConfig.type - schemas.EveUtilityTrait.properties.holdPosition.type - schemas.EveUtilityTrait.properties.lastEventTime.format - schemas.EveUtilityTrait.properties.lastEventTime.readOnly - schemas.EveUtilityTrait.properties.lastEventTime.type - schemas.EveUtilityTrait.properties.loggingControlPoint.format - schemas.EveUtilityTrait.properties.loggingControlPoint.type - schemas.EveUtilityTrait.properties.loggingData.format - schemas.EveUtilityTrait.properties.loggingData.readOnly - schemas.EveUtilityTrait.properties.loggingData.type - schemas.EveUtilityTrait.properties.loggingMetadata.format - schemas.EveUtilityTrait.properties.loggingMetadata.readOnly - schemas.EveUtilityTrait.properties.loggingMetadata.type - schemas.EveUtilityTrait.properties.loggingTime.format - schemas.EveUtilityTrait.properties.loggingTime.type - schemas.EveUtilityTrait.properties.motionSensitivity.format - schemas.EveUtilityTrait.properties.motionSensitivity.type - schemas.EveUtilityTrait.properties.obstructionDetected.readOnly - schemas.EveUtilityTrait.properties.obstructionDetected.type - schemas.EveUtilityTrait.properties.openCount.format - schemas.EveUtilityTrait.properties.openCount.type - schemas.EveUtilityTrait.properties.rloc16.format - schemas.EveUtilityTrait.properties.rloc16.readOnly - schemas.EveUtilityTrait.properties.rloc16.type - schemas.EveUtilityTrait.properties.setConfig.format - schemas.EveUtilityTrait.properties.setConfig.type - schemas.EveUtilityTrait.properties.statusFault.format - schemas.EveUtilityTrait.properties.statusFault.readOnly - schemas.EveUtilityTrait.properties.statusFault.type - schemas.EveUtilityTrait.properties.voltage.format - schemas.EveUtilityTrait.properties.voltage.readOnly - schemas.EveUtilityTrait.properties.voltage.type - schemas.EveUtilityTrait.properties.watt.format - schemas.EveUtilityTrait.properties.watt.readOnly - schemas.EveUtilityTrait.properties.watt.type - schemas.EveUtilityTrait.properties.wattAccumulated.format - schemas.EveUtilityTrait.properties.wattAccumulated.readOnly - schemas.EveUtilityTrait.properties.wattAccumulated.type - schemas.EveUtilityTrait.properties.weatherTrend.format - schemas.EveUtilityTrait.properties.weatherTrend.readOnly - schemas.EveUtilityTrait.properties.weatherTrend.type - schemas.EveUtilityTrait.type - schemas.MediaUrlsStruct.id - schemas.MediaUrlsStruct.properties.dashManifestUrl.description - schemas.MediaUrlsStruct.properties.dashManifestUrl.type - schemas.MediaUrlsStruct.properties.hlsMasterPlaylistUrl.description - schemas.MediaUrlsStruct.properties.hlsMasterPlaylistUrl.type - schemas.MediaUrlsStruct.properties.previewUrl.description - schemas.MediaUrlsStruct.properties.previewUrl.type - schemas.MediaUrlsStruct.properties.thumbnailUrl.description - schemas.MediaUrlsStruct.properties.thumbnailUrl.type - schemas.MediaUrlsStruct.type - schemas.MotionEvent.description - schemas.MotionEvent.id - schemas.MotionEvent.properties.commonEventData.$ref - schemas.MotionEvent.properties.zones.description - schemas.MotionEvent.properties.zones.items.$ref - schemas.MotionEvent.properties.zones.type - schemas.MotionEvent.properties.zonesIsEmpty.description - schemas.MotionEvent.properties.zonesIsEmpty.type - schemas.MotionEvent.type - schemas.PartnerPresenceSignalTrait.description - schemas.PartnerPresenceSignalTrait.id - schemas.PartnerPresenceSignalTrait.type - schemas.PersonEvent.description - schemas.PersonEvent.id - schemas.PersonEvent.properties.commonEventData.$ref - schemas.PersonEvent.properties.zones.description - schemas.PersonEvent.properties.zones.items.$ref - schemas.PersonEvent.properties.zones.type - schemas.PersonEvent.properties.zonesIsEmpty.description - schemas.PersonEvent.properties.zonesIsEmpty.type - schemas.PersonEvent.type - schemas.StructurePresenceStateChangeEvent.description - schemas.StructurePresenceStateChangeEvent.id - schemas.StructurePresenceStateChangeEvent.properties.presenceState.description - schemas.StructurePresenceStateChangeEvent.properties.presenceState.enum - schemas.StructurePresenceStateChangeEvent.properties.presenceState.enumDescriptions - schemas.StructurePresenceStateChangeEvent.properties.presenceState.type - schemas.StructurePresenceStateChangeEvent.properties.reason.$ref - schemas.StructurePresenceStateChangeEvent.properties.reason.description - schemas.StructurePresenceStateChangeEvent.type - schemas.StructurePresenceStateChangeReasonStruct.description - schemas.StructurePresenceStateChangeReasonStruct.id - schemas.StructurePresenceStateChangeReasonStruct.properties.deviceBlame.$ref - schemas.StructurePresenceStateChangeReasonStruct.properties.deviceBlame.description - schemas.StructurePresenceStateChangeReasonStruct.properties.userBlame.$ref - schemas.StructurePresenceStateChangeReasonStruct.properties.userBlame.description - schemas.StructurePresenceStateChangeReasonStruct.type - schemas.ThermostatFanControlTrait.description - schemas.ThermostatFanControlTrait.id - schemas.ThermostatFanControlTrait.properties.timerDuration.format - schemas.ThermostatFanControlTrait.properties.timerDuration.type - schemas.ThermostatFanControlTrait.properties.timerEnd.format - schemas.ThermostatFanControlTrait.properties.timerEnd.type - schemas.ThermostatFanControlTrait.properties.timerSpeed.enum - schemas.ThermostatFanControlTrait.properties.timerSpeed.enumDescriptions - schemas.ThermostatFanControlTrait.properties.timerSpeed.type - schemas.ThermostatFanControlTrait.type - schemas.UserBlameStruct.description - schemas.UserBlameStruct.id - schemas.UserBlameStruct.properties.blameType.description - schemas.UserBlameStruct.properties.blameType.enum - schemas.UserBlameStruct.properties.blameType.enumDescriptions - schemas.UserBlameStruct.properties.blameType.type - schemas.UserBlameStruct.properties.userEmail.description - schemas.UserBlameStruct.properties.userEmail.type - schemas.UserBlameStruct.type - schemas.ZoneStruct.id - schemas.ZoneStruct.properties.label.description - schemas.ZoneStruct.properties.label.type - schemas.ZoneStruct.properties.zoneId.description - schemas.ZoneStruct.properties.zoneId.format - schemas.ZoneStruct.properties.zoneId.type - schemas.ZoneStruct.type --- discovery/homegraph-v1.json | 359 +++++++++++++++++++++++++++++++++++- src/apis/homegraph/v1.ts | 165 +++++++++++++++++ 2 files changed, 523 insertions(+), 1 deletion(-) diff --git a/discovery/homegraph-v1.json b/discovery/homegraph-v1.json index 0bde773d003..01eae12bb81 100644 --- a/discovery/homegraph-v1.json +++ b/discovery/homegraph-v1.json @@ -216,7 +216,7 @@ } } }, - "revision": "20260724", + "revision": "20260731", "rootUrl": "https://homegraph.googleapis.com/", "schemas": { "AgentDeviceId": { @@ -245,6 +245,31 @@ }, "type": "object" }, + "CameraEventStreamTrait": { + "description": "This cluster defines the camera event stream used by GHP for their Cloud-to-Cloud eventing flow", + "id": "CameraEventStreamTrait", + "properties": {}, + "type": "object" + }, + "CommonEventDataStruct": { + "description": "Common camera event data.", + "id": "CommonEventDataStruct", + "properties": { + "mediaUrls": { + "$ref": "MediaUrlsStruct", + "description": "Contains media urls for the event" + }, + "sessionId": { + "description": "Camera event session id. Used for identifying a unique event session", + "type": "string" + }, + "trackId": { + "description": "Id of the track this object belongs to", + "type": "string" + } + }, + "type": "object" + }, "Component": { "description": "Component of a provider device.", "id": "Component", @@ -364,6 +389,33 @@ }, "type": "object" }, + "DeviceBlameStruct": { + "description": "Contains metadata about the cause of presence state change attributed to a device.", + "id": "DeviceBlameStruct", + "properties": { + "blameType": { + "description": "Required. Specifies the device blame type.", + "enum": [ + "DEVICE_BLAME_TYPE_ENUM_UNSPECIFIED", + "LOCK", + "UNLOCK", + "MOTION_DETECTION", + "TOUCH_INTERACTION", + "VOICE_INTERACTION" + ], + "enumDescriptions": [ + "Indicates an unspecified device blame type.", + "Indicates lock interaction.", + "Indicates unlock interaction.", + "Indicates motion detection.", + "Indicates touch interaction.", + "Indicates voice interaction." + ], + "type": "string" + } + }, + "type": "object" + }, "DeviceInfo": { "description": "Device information.", "id": "DeviceInfo", @@ -433,6 +485,127 @@ "properties": {}, "type": "object" }, + "EveUtilityTrait": { + "id": "EveUtilityTrait", + "properties": { + "acceptedCommandList": { + "description": "Required. Output only. Accepted command list for this trait", + "items": { + "enum": [ + "COMMANDS_UNSPECIFIED" + ], + "enumDeprecated": [ + true + ], + "enumDescriptions": [ + "Deprecated: This enum exists only to conform to AIP guidelines and should never be used." + ], + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "accumulatedControlPoint": { + "format": "int64", + "type": "string" + }, + "airPressure": { + "format": "double", + "readOnly": true, + "type": "number" + }, + "altitude": { + "format": "double", + "type": "number" + }, + "childLock": { + "type": "boolean" + }, + "current": { + "format": "double", + "readOnly": true, + "type": "number" + }, + "getConfig": { + "format": "byte", + "readOnly": true, + "type": "string" + }, + "holdPosition": { + "type": "boolean" + }, + "lastEventTime": { + "format": "int64", + "readOnly": true, + "type": "string" + }, + "loggingControlPoint": { + "format": "byte", + "type": "string" + }, + "loggingData": { + "format": "byte", + "readOnly": true, + "type": "string" + }, + "loggingMetadata": { + "format": "byte", + "readOnly": true, + "type": "string" + }, + "loggingTime": { + "format": "byte", + "type": "string" + }, + "motionSensitivity": { + "format": "int32", + "type": "integer" + }, + "obstructionDetected": { + "readOnly": true, + "type": "boolean" + }, + "openCount": { + "format": "int64", + "type": "string" + }, + "rloc16": { + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "setConfig": { + "format": "byte", + "type": "string" + }, + "statusFault": { + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "voltage": { + "format": "double", + "readOnly": true, + "type": "number" + }, + "watt": { + "format": "double", + "readOnly": true, + "type": "number" + }, + "wattAccumulated": { + "format": "double", + "readOnly": true, + "type": "number" + }, + "weatherTrend": { + "format": "int32", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, "EventData": { "description": "Contains the details for a single event.", "id": "EventData", @@ -522,6 +695,76 @@ }, "type": "object" }, + "MediaUrlsStruct": { + "id": "MediaUrlsStruct", + "properties": { + "dashManifestUrl": { + "description": "URL for a dash manifest for playback", + "type": "string" + }, + "hlsMasterPlaylistUrl": { + "description": "URL for a hls master playlist for playback", + "type": "string" + }, + "previewUrl": { + "description": "URL for animated preview clip representing the event session", + "type": "string" + }, + "thumbnailUrl": { + "description": "URL for thumbnail image representing the event session", + "type": "string" + } + }, + "type": "object" + }, + "MotionEvent": { + "description": "Represents a newly detected motion event.", + "id": "MotionEvent", + "properties": { + "commonEventData": { + "$ref": "CommonEventDataStruct" + }, + "zones": { + "description": "Zones where events are detected in.", + "items": { + "$ref": "ZoneStruct" + }, + "type": "array" + }, + "zonesIsEmpty": { + "description": "If set, zones is an empty list.", + "type": "boolean" + } + }, + "type": "object" + }, + "PartnerPresenceSignalTrait": { + "description": "Provides attributes and events related to partner presence signals. See PartnerPresenceSignal trait:", + "id": "PartnerPresenceSignalTrait", + "properties": {}, + "type": "object" + }, + "PersonEvent": { + "description": "Represents a newly detected person event.", + "id": "PersonEvent", + "properties": { + "commonEventData": { + "$ref": "CommonEventDataStruct" + }, + "zones": { + "description": "Zones where events are detected in.", + "items": { + "$ref": "ZoneStruct" + }, + "type": "array" + }, + "zonesIsEmpty": { + "description": "If set, zones is an empty list.", + "type": "boolean" + } + }, + "type": "object" + }, "QueryRequest": { "description": "Request type for the [`Query`](#google.home.graph.v1.HomeGraphApiService.Query) call.", "id": "QueryRequest", @@ -763,6 +1006,46 @@ }, "type": "object" }, + "StructurePresenceStateChangeEvent": { + "description": "Sent when the structure presence state changes.", + "id": "StructurePresenceStateChangeEvent", + "properties": { + "presenceState": { + "description": "Required. Specifies the presence state.", + "enum": [ + "STRUCTURE_PRESENCE_STATE_ENUM_UNSPECIFIED", + "HOME", + "AWAY" + ], + "enumDescriptions": [ + "Indicates an unknown presence state.", + "Indicates home presence state.", + "Indicates away presence state." + ], + "type": "string" + }, + "reason": { + "$ref": "StructurePresenceStateChangeReasonStruct", + "description": "Optional. Specifies the presence state change reason." + } + }, + "type": "object" + }, + "StructurePresenceStateChangeReasonStruct": { + "description": "Contains the metadata about the cause of the structure presence state change.", + "id": "StructurePresenceStateChangeReasonStruct", + "properties": { + "deviceBlame": { + "$ref": "DeviceBlameStruct", + "description": "Optional. Contains metadata about the cause of presence state change attributed to a device." + }, + "userBlame": { + "$ref": "UserBlameStruct", + "description": "Optional. Contains metadata about the cause of presence state change attributed to a user." + } + }, + "type": "object" + }, "SyncRequest": { "description": "Request type for the [`Sync`](#google.home.graph.v1.HomeGraphApiService.Sync) call.", "id": "SyncRequest", @@ -811,6 +1094,40 @@ }, "type": "object" }, + "ThermostatFanControlTrait": { + "description": "This cluster provides fan control capabilities for thermostats.", + "id": "ThermostatFanControlTrait", + "properties": { + "timerDuration": { + "format": "int64", + "type": "string" + }, + "timerEnd": { + "format": "int64", + "type": "string" + }, + "timerSpeed": { + "enum": [ + "FAN_SPEED_SETTING_ENUM_UNSPECIFIED", + "FAN_SPEED_SETTING_OFF", + "FAN_SPEED_SETTING_STAGE1", + "FAN_SPEED_SETTING_STAGE2", + "FAN_SPEED_SETTING_STAGE3", + "FAN_SPEED_SETTING_AUTO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, "TraitData": { "description": "Contains the trait payload for a single trait.", "id": "TraitData", @@ -835,6 +1152,46 @@ } }, "type": "object" + }, + "UserBlameStruct": { + "description": "Contains metadata about the cause of presence state change attributed to a user.", + "id": "UserBlameStruct", + "properties": { + "blameType": { + "description": "Required. Specifies the user blame type.", + "enum": [ + "USER_BLAME_TYPE_ENUM_UNSPECIFIED", + "PHONE_LOCATION", + "MANUAL_CHANGE" + ], + "enumDescriptions": [ + "Indicates an unspecified user blame type.", + "Indicates phone location.", + "Indicates manual change." + ], + "type": "string" + }, + "userEmail": { + "description": "Required. Specifies the email of the user.", + "type": "string" + } + }, + "type": "object" + }, + "ZoneStruct": { + "id": "ZoneStruct", + "properties": { + "label": { + "description": "Name of the zone.", + "type": "string" + }, + "zoneId": { + "description": "Id of the zone", + "format": "int64", + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/src/apis/homegraph/v1.ts b/src/apis/homegraph/v1.ts index 0006b2a58e7..23d249304ec 100644 --- a/src/apis/homegraph/v1.ts +++ b/src/apis/homegraph/v1.ts @@ -148,6 +148,27 @@ export namespace homegraph_v1 { */ deviceId?: string | null; } + /** + * This cluster defines the camera event stream used by GHP for their Cloud-to-Cloud eventing flow + */ + export interface Schema$CameraEventStreamTrait {} + /** + * Common camera event data. + */ + export interface Schema$CommonEventDataStruct { + /** + * Contains media urls for the event + */ + mediaUrls?: Schema$MediaUrlsStruct; + /** + * Camera event session id. Used for identifying a unique event session + */ + sessionId?: string | null; + /** + * Id of the track this object belongs to + */ + trackId?: string | null; + } /** * Component of a provider device. */ @@ -235,6 +256,15 @@ export namespace homegraph_v1 { */ willReportState?: boolean | null; } + /** + * Contains metadata about the cause of presence state change attributed to a device. + */ + export interface Schema$DeviceBlameStruct { + /** + * Required. Specifies the device blame type. + */ + blameType?: string | null; + } /** * Device information. */ @@ -316,6 +346,34 @@ export namespace homegraph_v1 { */ events?: Schema$EventData[]; } + export interface Schema$EveUtilityTrait { + /** + * Required. Output only. Accepted command list for this trait + */ + acceptedCommandList?: string[] | null; + accumulatedControlPoint?: string | null; + airPressure?: number | null; + altitude?: number | null; + childLock?: boolean | null; + current?: number | null; + getConfig?: string | null; + holdPosition?: boolean | null; + lastEventTime?: string | null; + loggingControlPoint?: string | null; + loggingData?: string | null; + loggingMetadata?: string | null; + loggingTime?: string | null; + motionSensitivity?: number | null; + obstructionDetected?: boolean | null; + openCount?: string | null; + rloc16?: number | null; + setConfig?: string | null; + statusFault?: number | null; + voltage?: number | null; + watt?: number | null; + wattAccumulated?: number | null; + weatherTrend?: number | null; + } /** * Contains the set of events for an item. */ @@ -351,6 +409,56 @@ export namespace homegraph_v1 { */ deviceId?: string | null; } + export interface Schema$MediaUrlsStruct { + /** + * URL for a dash manifest for playback + */ + dashManifestUrl?: string | null; + /** + * URL for a hls master playlist for playback + */ + hlsMasterPlaylistUrl?: string | null; + /** + * URL for animated preview clip representing the event session + */ + previewUrl?: string | null; + /** + * URL for thumbnail image representing the event session + */ + thumbnailUrl?: string | null; + } + /** + * Represents a newly detected motion event. + */ + export interface Schema$MotionEvent { + commonEventData?: Schema$CommonEventDataStruct; + /** + * Zones where events are detected in. + */ + zones?: Schema$ZoneStruct[]; + /** + * If set, zones is an empty list. + */ + zonesIsEmpty?: boolean | null; + } + /** + * Provides attributes and events related to partner presence signals. See PartnerPresenceSignal trait: + */ + export interface Schema$PartnerPresenceSignalTrait {} + /** + * Represents a newly detected person event. + */ + export interface Schema$PersonEvent { + commonEventData?: Schema$CommonEventDataStruct; + /** + * Zones where events are detected in. + */ + zones?: Schema$ZoneStruct[]; + /** + * If set, zones is an empty list. + */ + zonesIsEmpty?: boolean | null; + } /** * Request type for the [`Query`](#google.home.graph.v1.HomeGraphApiService.Query) call. */ @@ -518,6 +626,32 @@ export namespace homegraph_v1 { */ devices?: Schema$ReportStateAndNotificationDevice; } + /** + * Sent when the structure presence state changes. + */ + export interface Schema$StructurePresenceStateChangeEvent { + /** + * Required. Specifies the presence state. + */ + presenceState?: string | null; + /** + * Optional. Specifies the presence state change reason. + */ + reason?: Schema$StructurePresenceStateChangeReasonStruct; + } + /** + * Contains the metadata about the cause of the structure presence state change. + */ + export interface Schema$StructurePresenceStateChangeReasonStruct { + /** + * Optional. Contains metadata about the cause of presence state change attributed to a device. + */ + deviceBlame?: Schema$DeviceBlameStruct; + /** + * Optional. Contains metadata about the cause of presence state change attributed to a user. + */ + userBlame?: Schema$UserBlameStruct; + } /** * Request type for the [`Sync`](#google.home.graph.v1.HomeGraphApiService.Sync) call. */ @@ -557,6 +691,14 @@ export namespace homegraph_v1 { */ devices?: Schema$Device[]; } + /** + * This cluster provides fan control capabilities for thermostats. + */ + export interface Schema$ThermostatFanControlTrait { + timerDuration?: string | null; + timerEnd?: string | null; + timerSpeed?: string | null; + } /** * Contains the trait payload for a single trait. */ @@ -574,6 +716,29 @@ export namespace homegraph_v1 { */ trait?: {[key: string]: any} | null; } + /** + * Contains metadata about the cause of presence state change attributed to a user. + */ + export interface Schema$UserBlameStruct { + /** + * Required. Specifies the user blame type. + */ + blameType?: string | null; + /** + * Required. Specifies the email of the user. + */ + userEmail?: string | null; + } + export interface Schema$ZoneStruct { + /** + * Name of the zone. + */ + label?: string | null; + /** + * Id of the zone + */ + zoneId?: string | null; + } export class Resource$Agentusers { context: APIRequestContext; From b57f7edf4f4d3b9ef5d9e4075cd5c2683957f94d Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:23 +0000 Subject: [PATCH 14/23] fix(looker): update the API #### looker:v1 The following keys were changed: - schemas.ListInstancesResponse.properties.instances.description - schemas.ListInstancesResponse.properties.nextPageToken.description --- discovery/looker-v1.json | 6 +++--- src/apis/looker/v1.ts | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/discovery/looker-v1.json b/discovery/looker-v1.json index 0133cff3987..08cd516e116 100644 --- a/discovery/looker-v1.json +++ b/discovery/looker-v1.json @@ -748,7 +748,7 @@ } } }, - "revision": "20260609", + "revision": "20260726", "rootUrl": "https://looker.googleapis.com/", "schemas": { "AdminSettings": { @@ -1391,14 +1391,14 @@ "id": "ListInstancesResponse", "properties": { "instances": { - "description": "The list of instances matching the request filters, up to the requested ListInstancesRequest.pageSize.", + "description": "The list of instances matching the request filters, up to the requested `pageSize`.", "items": { "$ref": "Instance" }, "type": "array" }, "nextPageToken": { - "description": "If provided, a page token that can look up the next ListInstancesRequest.pageSize results. If empty, the results list is exhausted.", + "description": "If provided, a page token that can look up the next `pageSize` results. If empty, the results list is exhausted.", "type": "string" }, "unreachable": { diff --git a/src/apis/looker/v1.ts b/src/apis/looker/v1.ts index 93d93cb3338..3c6a5e862be 100644 --- a/src/apis/looker/v1.ts +++ b/src/apis/looker/v1.ts @@ -541,11 +541,11 @@ export namespace looker_v1 { */ export interface Schema$ListInstancesResponse { /** - * The list of instances matching the request filters, up to the requested ListInstancesRequest.pageSize. + * The list of instances matching the request filters, up to the requested `pageSize`. */ instances?: Schema$Instance[]; /** - * If provided, a page token that can look up the next ListInstancesRequest.pageSize results. If empty, the results list is exhausted. + * If provided, a page token that can look up the next `pageSize` results. If empty, the results list is exhausted. */ nextPageToken?: string | null; /** From 1bf01d62f68f739fc7436ef247471edcaf0bcc2f Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:23 +0000 Subject: [PATCH 15/23] fix(migrationcenter): update the API #### migrationcenter:v1alpha1 The following keys were changed: - resources.projects.resources.locations.resources.reportConfigs.methods.create.parameters.reportConfigId.description - resources.projects.resources.locations.resources.reportConfigs.resources.reports.methods.create.parameters.reportId.description - schemas.ComputeEngineShapeDescriptor.properties.smtEnabled.description #### migrationcenter:v1 The following keys were changed: - resources.projects.resources.locations.resources.reportConfigs.methods.create.parameters.reportConfigId.description - resources.projects.resources.locations.resources.reportConfigs.resources.reports.methods.create.parameters.reportId.description --- discovery/migrationcenter-v1.json | 6 +++--- discovery/migrationcenter-v1alpha1.json | 8 ++++---- src/apis/migrationcenter/v1.ts | 8 ++++---- src/apis/migrationcenter/v1alpha1.ts | 10 +++++----- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/discovery/migrationcenter-v1.json b/discovery/migrationcenter-v1.json index 581d7ee1fcb..54bed93c519 100644 --- a/discovery/migrationcenter-v1.json +++ b/discovery/migrationcenter-v1.json @@ -1976,7 +1976,7 @@ "type": "string" }, "reportConfigId": { - "description": "Required. User specified ID for the report config. It will become the last component of the report config name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression: [a-z]([a-z0-9-]{0,61}[a-z0-9])?.", + "description": "Required. User specified ID for the report config. It will become the last component of the report config name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression: `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`.", "location": "query", "type": "string" }, @@ -2124,7 +2124,7 @@ "type": "string" }, "reportId": { - "description": "Required. User specified id for the report. It will become the last component of the report name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The id must match the regular expression: [a-z]([a-z0-9-]{0,61}[a-z0-9])?.", + "description": "Required. User specified id for the report. It will become the last component of the report name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The id must match the regular expression: `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`.", "location": "query", "type": "string" }, @@ -2568,7 +2568,7 @@ } } }, - "revision": "20260423", + "revision": "20260730", "rootUrl": "https://migrationcenter.googleapis.com/", "schemas": { "AddAssetsToGroupRequest": { diff --git a/discovery/migrationcenter-v1alpha1.json b/discovery/migrationcenter-v1alpha1.json index 4946773b3e9..a534f390d17 100644 --- a/discovery/migrationcenter-v1alpha1.json +++ b/discovery/migrationcenter-v1alpha1.json @@ -1967,7 +1967,7 @@ "type": "string" }, "reportConfigId": { - "description": "Required. User specified ID for the report config. It will become the last component of the report config name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression: [a-z]([a-z0-9-]{0,61}[a-z0-9])?.", + "description": "Required. User specified ID for the report config. It will become the last component of the report config name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression: `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`.", "location": "query", "type": "string" }, @@ -2115,7 +2115,7 @@ "type": "string" }, "reportId": { - "description": "Required. User specified id for the report. It will become the last component of the report name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The id must match the regular expression: [a-z]([a-z0-9-]{0,61}[a-z0-9])?.", + "description": "Required. User specified id for the report. It will become the last component of the report name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The id must match the regular expression: `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`.", "location": "query", "type": "string" }, @@ -2722,7 +2722,7 @@ } } }, - "revision": "20260621", + "revision": "20260730", "rootUrl": "https://migrationcenter.googleapis.com/", "schemas": { "AddAssetsToGroupRequest": { @@ -4440,7 +4440,7 @@ "type": "string" }, "smtEnabled": { - "description": "Output only. Whether simultaneous multithreading is enabled (see https://cloud.google.com/compute/docs/instances/set-threads-per-core).", + "description": "Output only. Whether simultaneous multithreading is enabled. See https://cloud.google.com/compute/docs/instances/set-threads-per-core.", "readOnly": true, "type": "boolean" }, diff --git a/src/apis/migrationcenter/v1.ts b/src/apis/migrationcenter/v1.ts index d2cba4799b3..ba1d2f35738 100644 --- a/src/apis/migrationcenter/v1.ts +++ b/src/apis/migrationcenter/v1.ts @@ -12325,7 +12325,7 @@ export namespace migrationcenter_v1 { * const res = await migrationcenter.projects.locations.reportConfigs.create({ * // Required. Value for parent. * parent: 'projects/my-project/locations/my-location', - * // Required. User specified ID for the report config. It will become the last component of the report config name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression: [a-z]([a-z0-9-]{0,61\}[a-z0-9])?. + * // Required. User specified ID for the report config. It will become the last component of the report config name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression: `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`. * reportConfigId: 'placeholder-value', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', @@ -12890,7 +12890,7 @@ export namespace migrationcenter_v1 { */ parent?: string; /** - * Required. User specified ID for the report config. It will become the last component of the report config name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression: [a-z]([a-z0-9-]{0,61\}[a-z0-9])?. + * Required. User specified ID for the report config. It will become the last component of the report config name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression: `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`. */ reportConfigId?: string; /** @@ -12987,7 +12987,7 @@ export namespace migrationcenter_v1 { * // Required. Value for parent. * parent: * 'projects/my-project/locations/my-location/reportConfigs/my-reportConfig', - * // Required. User specified id for the report. It will become the last component of the report name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The id must match the regular expression: [a-z]([a-z0-9-]{0,61\}[a-z0-9])?. + * // Required. User specified id for the report. It will become the last component of the report name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The id must match the regular expression: `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`. * reportId: 'placeholder-value', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', @@ -13562,7 +13562,7 @@ export namespace migrationcenter_v1 { */ parent?: string; /** - * Required. User specified id for the report. It will become the last component of the report name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The id must match the regular expression: [a-z]([a-z0-9-]{0,61\}[a-z0-9])?. + * Required. User specified id for the report. It will become the last component of the report name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The id must match the regular expression: `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`. */ reportId?: string; /** diff --git a/src/apis/migrationcenter/v1alpha1.ts b/src/apis/migrationcenter/v1alpha1.ts index 8698ab526fa..17200f4264e 100644 --- a/src/apis/migrationcenter/v1alpha1.ts +++ b/src/apis/migrationcenter/v1alpha1.ts @@ -1267,7 +1267,7 @@ export namespace migrationcenter_v1alpha1 { */ series?: string | null; /** - * Output only. Whether simultaneous multithreading is enabled (see https://cloud.google.com/compute/docs/instances/set-threads-per-core). + * Output only. Whether simultaneous multithreading is enabled. See https://cloud.google.com/compute/docs/instances/set-threads-per-core. */ smtEnabled?: boolean | null; /** @@ -13927,7 +13927,7 @@ export namespace migrationcenter_v1alpha1 { * const res = await migrationcenter.projects.locations.reportConfigs.create({ * // Required. Value for parent. * parent: 'projects/my-project/locations/my-location', - * // Required. User specified ID for the report config. It will become the last component of the report config name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression: [a-z]([a-z0-9-]{0,61\}[a-z0-9])?. + * // Required. User specified ID for the report config. It will become the last component of the report config name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression: `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`. * reportConfigId: 'placeholder-value', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', @@ -14492,7 +14492,7 @@ export namespace migrationcenter_v1alpha1 { */ parent?: string; /** - * Required. User specified ID for the report config. It will become the last component of the report config name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression: [a-z]([a-z0-9-]{0,61\}[a-z0-9])?. + * Required. User specified ID for the report config. It will become the last component of the report config name. The ID must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The ID must match the regular expression: `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`. */ reportConfigId?: string; /** @@ -14594,7 +14594,7 @@ export namespace migrationcenter_v1alpha1 { * // Required. Value for parent. * parent: * 'projects/my-project/locations/my-location/reportConfigs/my-reportConfig', - * // Required. User specified id for the report. It will become the last component of the report name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The id must match the regular expression: [a-z]([a-z0-9-]{0,61\}[a-z0-9])?. + * // Required. User specified id for the report. It will become the last component of the report name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The id must match the regular expression: `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`. * reportId: 'placeholder-value', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', @@ -15169,7 +15169,7 @@ export namespace migrationcenter_v1alpha1 { */ parent?: string; /** - * Required. User specified id for the report. It will become the last component of the report name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The id must match the regular expression: [a-z]([a-z0-9-]{0,61\}[a-z0-9])?. + * Required. User specified id for the report. It will become the last component of the report name. The id must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. The id must match the regular expression: `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`. */ reportId?: string; /** From b017b77bcd27dc464966978d4fb450fef9413bee Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:23 +0000 Subject: [PATCH 16/23] fix(mybusinessbusinessinformation): update the API #### mybusinessbusinessinformation:v1 The following keys were changed: - schemas.TimePeriod.properties.closeTime.description - schemas.TimePeriod.properties.openTime.description --- discovery/mybusinessbusinessinformation-v1.json | 6 +++--- src/apis/mybusinessbusinessinformation/v1.ts | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/discovery/mybusinessbusinessinformation-v1.json b/discovery/mybusinessbusinessinformation-v1.json index 360eb87a0c8..29abc75ecce 100644 --- a/discovery/mybusinessbusinessinformation-v1.json +++ b/discovery/mybusinessbusinessinformation-v1.json @@ -612,7 +612,7 @@ } } }, - "revision": "20260726", + "revision": "20260804", "rootUrl": "https://mybusinessbusinessinformation.googleapis.com/", "schemas": { "AdWordsLocationExtensions": { @@ -1754,7 +1754,7 @@ }, "closeTime": { "$ref": "TimeOfDay", - "description": "Required. Valid values are 00:00-24:00, where 24:00 represents midnight at the end of the specified day field." + "description": "Required. Valid values are 00:00-24:00, where 24:00 represents midnight at the end of the specified day field. Note: In Proto3 JSON mapping, default zero values (00:00) are omitted, producing `{}` for close_time." }, "openDay": { "description": "Required. Indicates the day of the week this period starts on.", @@ -1782,7 +1782,7 @@ }, "openTime": { "$ref": "TimeOfDay", - "description": "Required. Valid values are 00:00-24:00, where 24:00 represents midnight at the end of the specified day field." + "description": "Required. Valid values are 00:00-24:00, where 24:00 represents midnight at the end of the specified day field. Note: In Proto3 JSON mapping, default zero values (00:00) are omitted, producing `{}` for open_time." } }, "type": "object" diff --git a/src/apis/mybusinessbusinessinformation/v1.ts b/src/apis/mybusinessbusinessinformation/v1.ts index 54317817115..f7ade589fd8 100644 --- a/src/apis/mybusinessbusinessinformation/v1.ts +++ b/src/apis/mybusinessbusinessinformation/v1.ts @@ -972,7 +972,7 @@ export namespace mybusinessbusinessinformation_v1 { */ closeDay?: string | null; /** - * Required. Valid values are 00:00-24:00, where 24:00 represents midnight at the end of the specified day field. + * Required. Valid values are 00:00-24:00, where 24:00 represents midnight at the end of the specified day field. Note: In Proto3 JSON mapping, default zero values (00:00) are omitted, producing `{\}` for close_time. */ closeTime?: Schema$TimeOfDay; /** @@ -980,7 +980,7 @@ export namespace mybusinessbusinessinformation_v1 { */ openDay?: string | null; /** - * Required. Valid values are 00:00-24:00, where 24:00 represents midnight at the end of the specified day field. + * Required. Valid values are 00:00-24:00, where 24:00 represents midnight at the end of the specified day field. Note: In Proto3 JSON mapping, default zero values (00:00) are omitted, producing `{\}` for open_time. */ openTime?: Schema$TimeOfDay; } From dab863fadd0b0e64ee2e6c351fdd8a0d9edee4c6 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:23 +0000 Subject: [PATCH 17/23] feat(networkservices): update the API #### networkservices:v1beta1 The following keys were added: - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.flatPath - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.httpMethod - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.id - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameterOrder - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.agentConnectivityTemplateId.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.agentConnectivityTemplateId.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.agentConnectivityTemplateId.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.parent.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.parent.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.parent.pattern - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.parent.required - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.parent.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.path - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.request.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.response.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.scopes - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.flatPath - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.httpMethod - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.id - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameterOrder - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.etag.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.etag.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.etag.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.name.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.name.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.name.pattern - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.name.required - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.name.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.path - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.response.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.scopes - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.flatPath - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.httpMethod - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.id - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.parameterOrder - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.parameters.name.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.parameters.name.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.parameters.name.pattern - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.parameters.name.required - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.parameters.name.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.path - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.response.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.scopes - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.flatPath - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.httpMethod - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.id - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameterOrder - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageSize.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageSize.format - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageSize.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageSize.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageToken.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageToken.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageToken.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.parent.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.parent.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.parent.pattern - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.parent.required - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.parent.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.returnPartialSuccess.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.returnPartialSuccess.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.returnPartialSuccess.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.path - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.response.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.scopes - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.flatPath - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.httpMethod - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.id - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameterOrder - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.name.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.name.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.name.pattern - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.name.required - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.name.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.updateMask.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.updateMask.format - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.updateMask.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.updateMask.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.path - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.request.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.response.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.scopes - schemas.AgentConnectivityTemplate.description - schemas.AgentConnectivityTemplate.id - schemas.AgentConnectivityTemplate.properties.accessPath.description - schemas.AgentConnectivityTemplate.properties.accessPath.enum - schemas.AgentConnectivityTemplate.properties.accessPath.enumDescriptions - schemas.AgentConnectivityTemplate.properties.accessPath.type - schemas.AgentConnectivityTemplate.properties.accessTypes.description - schemas.AgentConnectivityTemplate.properties.accessTypes.items.enum - schemas.AgentConnectivityTemplate.properties.accessTypes.items.enumDescriptions - schemas.AgentConnectivityTemplate.properties.accessTypes.items.type - schemas.AgentConnectivityTemplate.properties.accessTypes.type - schemas.AgentConnectivityTemplate.properties.createTime.description - schemas.AgentConnectivityTemplate.properties.createTime.format - schemas.AgentConnectivityTemplate.properties.createTime.readOnly - schemas.AgentConnectivityTemplate.properties.createTime.type - schemas.AgentConnectivityTemplate.properties.description.description - schemas.AgentConnectivityTemplate.properties.description.type - schemas.AgentConnectivityTemplate.properties.egressNetworkConfig.$ref - schemas.AgentConnectivityTemplate.properties.egressNetworkConfig.description - schemas.AgentConnectivityTemplate.properties.etag.description - schemas.AgentConnectivityTemplate.properties.etag.type - schemas.AgentConnectivityTemplate.properties.labels.additionalProperties.type - schemas.AgentConnectivityTemplate.properties.labels.description - schemas.AgentConnectivityTemplate.properties.labels.type - schemas.AgentConnectivityTemplate.properties.name.description - schemas.AgentConnectivityTemplate.properties.name.type - schemas.AgentConnectivityTemplate.properties.updateTime.description - schemas.AgentConnectivityTemplate.properties.updateTime.format - schemas.AgentConnectivityTemplate.properties.updateTime.readOnly - schemas.AgentConnectivityTemplate.properties.updateTime.type - schemas.AgentConnectivityTemplate.type - schemas.DnsPeeringConfig.description - schemas.DnsPeeringConfig.id - schemas.DnsPeeringConfig.properties.domain.description - schemas.DnsPeeringConfig.properties.domain.type - schemas.DnsPeeringConfig.properties.targetNetwork.description - schemas.DnsPeeringConfig.properties.targetNetwork.type - schemas.DnsPeeringConfig.type - schemas.EgressNetworkConfig.id - schemas.EgressNetworkConfig.properties.dnsPeeringConfig.$ref - schemas.EgressNetworkConfig.properties.dnsPeeringConfig.description - schemas.EgressNetworkConfig.properties.networkAttachment.description - schemas.EgressNetworkConfig.properties.networkAttachment.type - schemas.EgressNetworkConfig.properties.tlsConfig.$ref - schemas.EgressNetworkConfig.properties.tlsConfig.description - schemas.EgressNetworkConfig.properties.trustConfig.description - schemas.EgressNetworkConfig.properties.trustConfig.type - schemas.EgressNetworkConfig.properties.vpcEgress.description - schemas.EgressNetworkConfig.properties.vpcEgress.enum - schemas.EgressNetworkConfig.properties.vpcEgress.enumDescriptions - schemas.EgressNetworkConfig.properties.vpcEgress.type - schemas.EgressNetworkConfig.type - schemas.EgressNetworkConfigTlsConfig.description - schemas.EgressNetworkConfigTlsConfig.id - schemas.EgressNetworkConfigTlsConfig.properties.additionalRoots.description - schemas.EgressNetworkConfigTlsConfig.properties.additionalRoots.enum - schemas.EgressNetworkConfigTlsConfig.properties.additionalRoots.enumDescriptions - schemas.EgressNetworkConfigTlsConfig.properties.additionalRoots.type - schemas.EgressNetworkConfigTlsConfig.properties.trustConfig.description - schemas.EgressNetworkConfigTlsConfig.properties.trustConfig.type - schemas.EgressNetworkConfigTlsConfig.type - schemas.ListAgentConnectivityTemplatesResponse.description - schemas.ListAgentConnectivityTemplatesResponse.id - schemas.ListAgentConnectivityTemplatesResponse.properties.agentConnectivityTemplates.description - schemas.ListAgentConnectivityTemplatesResponse.properties.agentConnectivityTemplates.items.$ref - schemas.ListAgentConnectivityTemplatesResponse.properties.agentConnectivityTemplates.type - schemas.ListAgentConnectivityTemplatesResponse.properties.nextPageToken.description - schemas.ListAgentConnectivityTemplatesResponse.properties.nextPageToken.type - schemas.ListAgentConnectivityTemplatesResponse.properties.unreachable.description - schemas.ListAgentConnectivityTemplatesResponse.properties.unreachable.items.type - schemas.ListAgentConnectivityTemplatesResponse.properties.unreachable.type - schemas.ListAgentConnectivityTemplatesResponse.type #### networkservices:v1 The following keys were added: - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.flatPath - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.httpMethod - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.id - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameterOrder - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.agentConnectivityTemplateId.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.agentConnectivityTemplateId.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.agentConnectivityTemplateId.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.parent.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.parent.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.parent.pattern - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.parent.required - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.parameters.parent.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.path - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.request.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.response.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.create.scopes - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.flatPath - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.httpMethod - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.id - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameterOrder - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.etag.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.etag.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.etag.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.name.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.name.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.name.pattern - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.name.required - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.parameters.name.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.path - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.response.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.delete.scopes - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.flatPath - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.httpMethod - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.id - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.parameterOrder - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.parameters.name.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.parameters.name.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.parameters.name.pattern - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.parameters.name.required - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.parameters.name.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.path - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.response.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.get.scopes - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.flatPath - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.httpMethod - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.id - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameterOrder - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageSize.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageSize.format - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageSize.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageSize.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageToken.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageToken.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.pageToken.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.parent.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.parent.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.parent.pattern - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.parent.required - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.parent.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.returnPartialSuccess.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.returnPartialSuccess.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.parameters.returnPartialSuccess.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.path - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.response.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.list.scopes - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.flatPath - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.httpMethod - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.id - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameterOrder - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.name.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.name.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.name.pattern - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.name.required - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.name.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.updateMask.description - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.updateMask.format - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.updateMask.location - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.parameters.updateMask.type - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.path - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.request.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.response.$ref - resources.projects.resources.locations.resources.agentConnectivityTemplates.methods.patch.scopes - schemas.AgentConnectivityTemplate.description - schemas.AgentConnectivityTemplate.id - schemas.AgentConnectivityTemplate.properties.accessPath.description - schemas.AgentConnectivityTemplate.properties.accessPath.enum - schemas.AgentConnectivityTemplate.properties.accessPath.enumDescriptions - schemas.AgentConnectivityTemplate.properties.accessPath.type - schemas.AgentConnectivityTemplate.properties.accessTypes.description - schemas.AgentConnectivityTemplate.properties.accessTypes.items.enum - schemas.AgentConnectivityTemplate.properties.accessTypes.items.enumDescriptions - schemas.AgentConnectivityTemplate.properties.accessTypes.items.type - schemas.AgentConnectivityTemplate.properties.accessTypes.type - schemas.AgentConnectivityTemplate.properties.createTime.description - schemas.AgentConnectivityTemplate.properties.createTime.format - schemas.AgentConnectivityTemplate.properties.createTime.readOnly - schemas.AgentConnectivityTemplate.properties.createTime.type - schemas.AgentConnectivityTemplate.properties.description.description - schemas.AgentConnectivityTemplate.properties.description.type - schemas.AgentConnectivityTemplate.properties.egressNetworkConfig.$ref - schemas.AgentConnectivityTemplate.properties.egressNetworkConfig.description - schemas.AgentConnectivityTemplate.properties.etag.description - schemas.AgentConnectivityTemplate.properties.etag.type - schemas.AgentConnectivityTemplate.properties.labels.additionalProperties.type - schemas.AgentConnectivityTemplate.properties.labels.description - schemas.AgentConnectivityTemplate.properties.labels.type - schemas.AgentConnectivityTemplate.properties.name.description - schemas.AgentConnectivityTemplate.properties.name.type - schemas.AgentConnectivityTemplate.properties.updateTime.description - schemas.AgentConnectivityTemplate.properties.updateTime.format - schemas.AgentConnectivityTemplate.properties.updateTime.readOnly - schemas.AgentConnectivityTemplate.properties.updateTime.type - schemas.AgentConnectivityTemplate.type - schemas.DnsPeeringConfig.description - schemas.DnsPeeringConfig.id - schemas.DnsPeeringConfig.properties.domain.description - schemas.DnsPeeringConfig.properties.domain.type - schemas.DnsPeeringConfig.properties.targetNetwork.description - schemas.DnsPeeringConfig.properties.targetNetwork.type - schemas.DnsPeeringConfig.type - schemas.EgressNetworkConfig.id - schemas.EgressNetworkConfig.properties.dnsPeeringConfig.$ref - schemas.EgressNetworkConfig.properties.dnsPeeringConfig.description - schemas.EgressNetworkConfig.properties.networkAttachment.description - schemas.EgressNetworkConfig.properties.networkAttachment.type - schemas.EgressNetworkConfig.properties.tlsConfig.$ref - schemas.EgressNetworkConfig.properties.tlsConfig.description - schemas.EgressNetworkConfig.properties.trustConfig.description - schemas.EgressNetworkConfig.properties.trustConfig.type - schemas.EgressNetworkConfig.properties.vpcEgress.description - schemas.EgressNetworkConfig.properties.vpcEgress.enum - schemas.EgressNetworkConfig.properties.vpcEgress.enumDescriptions - schemas.EgressNetworkConfig.properties.vpcEgress.type - schemas.EgressNetworkConfig.type - schemas.EgressNetworkConfigTlsConfig.description - schemas.EgressNetworkConfigTlsConfig.id - schemas.EgressNetworkConfigTlsConfig.properties.additionalRoots.description - schemas.EgressNetworkConfigTlsConfig.properties.additionalRoots.enum - schemas.EgressNetworkConfigTlsConfig.properties.additionalRoots.enumDescriptions - schemas.EgressNetworkConfigTlsConfig.properties.additionalRoots.type - schemas.EgressNetworkConfigTlsConfig.properties.trustConfig.description - schemas.EgressNetworkConfigTlsConfig.properties.trustConfig.type - schemas.EgressNetworkConfigTlsConfig.type - schemas.ListAgentConnectivityTemplatesResponse.description - schemas.ListAgentConnectivityTemplatesResponse.id - schemas.ListAgentConnectivityTemplatesResponse.properties.agentConnectivityTemplates.description - schemas.ListAgentConnectivityTemplatesResponse.properties.agentConnectivityTemplates.items.$ref - schemas.ListAgentConnectivityTemplatesResponse.properties.agentConnectivityTemplates.type - schemas.ListAgentConnectivityTemplatesResponse.properties.nextPageToken.description - schemas.ListAgentConnectivityTemplatesResponse.properties.nextPageToken.type - schemas.ListAgentConnectivityTemplatesResponse.properties.unreachable.description - schemas.ListAgentConnectivityTemplatesResponse.properties.unreachable.items.type - schemas.ListAgentConnectivityTemplatesResponse.properties.unreachable.type - schemas.ListAgentConnectivityTemplatesResponse.type --- discovery/networkservices-v1.json | 343 ++++++++- discovery/networkservices-v1beta1.json | 343 ++++++++- src/apis/networkservices/v1.ts | 948 +++++++++++++++++++++++++ src/apis/networkservices/v1beta1.ts | 946 ++++++++++++++++++++++++ 4 files changed, 2578 insertions(+), 2 deletions(-) diff --git a/discovery/networkservices-v1.json b/discovery/networkservices-v1.json index a07b110b974..7ea64e61552 100644 --- a/discovery/networkservices-v1.json +++ b/discovery/networkservices-v1.json @@ -183,6 +183,173 @@ } }, "resources": { + "agentConnectivityTemplates": { + "methods": { + "create": { + "description": "Creates a new AgentConnectivityTemplate in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/agentConnectivityTemplates", + "httpMethod": "POST", + "id": "networkservices.projects.locations.agentConnectivityTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "agentConnectivityTemplateId": { + "description": "Required. Short name of the AgentConnectivityTemplate resource to be created.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the AgentConnectivityTemplate. Must be in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/agentConnectivityTemplates", + "request": { + "$ref": "AgentConnectivityTemplate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single AgentConnectivityTemplate.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/agentConnectivityTemplates/{agentConnectivityTemplatesId}", + "httpMethod": "DELETE", + "id": "networkservices.projects.locations.agentConnectivityTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The etag of the AgentConnectivityTemplate to delete.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. A name of the AgentConnectivityTemplate to delete. Must be in the format `projects/*/locations/*/agentConnectivityTemplates/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/agentConnectivityTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single AgentConnectivityTemplate.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/agentConnectivityTemplates/{agentConnectivityTemplatesId}", + "httpMethod": "GET", + "id": "networkservices.projects.locations.agentConnectivityTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the AgentConnectivityTemplate to get. Must be in the format `projects/*/locations/*/agentConnectivityTemplates/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/agentConnectivityTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "AgentConnectivityTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists AgentConnectivityTemplates in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/agentConnectivityTemplates", + "httpMethod": "GET", + "id": "networkservices.projects.locations.agentConnectivityTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. Maximum number of AgentConnectivityTemplates to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListAgentConnectivityTemplatesResponse` Indicates that this is a continuation of a prior `ListAgentConnectivityTemplates` call, and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location from which the AgentConnectivityTemplates should be listed, specified in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "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.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/agentConnectivityTemplates", + "response": { + "$ref": "ListAgentConnectivityTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single AgentConnectivityTemplate.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/agentConnectivityTemplates/{agentConnectivityTemplatesId}", + "httpMethod": "PATCH", + "id": "networkservices.projects.locations.agentConnectivityTemplates.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. Name of the AgentConnectivityTemplate resource. It matches pattern `projects/*/locations/*/agentConnectivityTemplates/`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/agentConnectivityTemplates/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the AgentConnectivityTemplate resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "AgentConnectivityTemplate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "agentGateways": { "methods": { "create": { @@ -3732,9 +3899,82 @@ } } }, - "revision": "20260710", + "revision": "20260724", "rootUrl": "https://networkservices.googleapis.com/", "schemas": { + "AgentConnectivityTemplate": { + "description": "AgentConnectivityTemplate represents a reusable network configuration.", + "id": "AgentConnectivityTemplate", + "properties": { + "accessPath": { + "description": "Required. Immutable. The path of the access. Maps roughly to ingress/egress, though we keep CLIENT_TO_AGENT and AGENT_TO_ANYWHERE as carryovers from Agent Gateway's original resource model. The path is immutable once set. Exactly one path can be set.", + "enum": [ + "ACCESS_PATH_UNSPECIFIED", + "CLIENT_TO_AGENT", + "AGENT_TO_ANYWHERE" + ], + "enumDescriptions": [ + "Unspecified access path.", + "Protect connection to Agent or Tool.", + "Govern agent connections to destinations." + ], + "type": "string" + }, + "accessTypes": { + "description": "Optional. The types of network access provided to the gateway. Both PUBLIC and PRIVATE can be configured.", + "items": { + "enum": [ + "ACCESS_TYPE_UNSPECIFIED", + "PUBLIC", + "PRIVATE" + ], + "enumDescriptions": [ + "Unspecified access type.", + "Public network access.", + "Private network access." + ], + "type": "string" + }, + "type": "array" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. A free-text description of the resource. Max length 1024 characters.", + "type": "string" + }, + "egressNetworkConfig": { + "$ref": "EgressNetworkConfig", + "description": "Optional. Configuration for egress network traffic." + }, + "etag": { + "description": "Optional. Etag of the resource. If this is provided, it must match the server's etag. If the provided etag does not match the server's etag, the request will fail with a 409 ABORTED error.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Set of label tags associated with the AgentConnectivityTemplate resource.", + "type": "object" + }, + "name": { + "description": "Identifier. Name of the AgentConnectivityTemplate resource. It matches pattern `projects/*/locations/*/agentConnectivityTemplates/`.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "AgentGateway": { "description": "AgentGateway represents the agent gateway resource.", "id": "AgentGateway", @@ -4102,6 +4342,82 @@ "properties": {}, "type": "object" }, + "DnsPeeringConfig": { + "description": "DNS Peering configuration.", + "id": "DnsPeeringConfig", + "properties": { + "domain": { + "description": "Optional. The domain to peer.", + "type": "string" + }, + "targetNetwork": { + "description": "Optional. The target network resource name for DNS peering. Format: projects/{project}/global/networks/{network_id}", + "type": "string" + } + }, + "type": "object" + }, + "EgressNetworkConfig": { + "id": "EgressNetworkConfig", + "properties": { + "dnsPeeringConfig": { + "$ref": "DnsPeeringConfig", + "description": "Optional. DNS Peering configuration." + }, + "networkAttachment": { + "description": "Optional. The network attachment resource name. Format: projects/{project}/regions/{region}/networkAttachments/{network_attachment_id}", + "type": "string" + }, + "tlsConfig": { + "$ref": "EgressNetworkConfigTlsConfig", + "description": "Optional. The TLS configuration for the egress traffic." + }, + "trustConfig": { + "description": "Optional. The trust config resource name. Format: projects/{project}/locations/{location}/trustConfigs/{trust_config}", + "type": "string" + }, + "vpcEgress": { + "description": "Optional. The VPC egress setting.", + "enum": [ + "VPC_EGRESS_UNSPECIFIED", + "ALL_TRAFFIC", + "PRIVATE_RANGES_ONLY" + ], + "enumDescriptions": [ + "Unspecified", + "All outbound traffic is routed through the VPC connector.", + "Only private IP ranges are routed through the VPC connector." + ], + "type": "string" + } + }, + "type": "object" + }, + "EgressNetworkConfigTlsConfig": { + "description": "Configuration for TLS connections.", + "id": "EgressNetworkConfigTlsConfig", + "properties": { + "additionalRoots": { + "description": "Optional. The additional roots to trust.", + "enum": [ + "ADDITIONAL_ROOTS_UNSPECIFIED", + "NO_ADDITIONAL_ROOTS", + "PUBLICLY_TRUSTED_ROOTS" + ], + "enumDescriptions": [ + "Unspecified additional roots.", + "Trust only the certificates provided in `trust_config`.", + "Trust certificates provided in `trust_config` and publicly trusted roots." + ], + "type": "string" + }, + "trustConfig": { + "description": "Optional. The trust config resource name. Format: projects/{project}/locations/{location}/trustConfigs/{trust_config}", + "type": "string" + } + }, + "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", @@ -5629,6 +5945,31 @@ }, "type": "object" }, + "ListAgentConnectivityTemplatesResponse": { + "description": "Response returned by the ListAgentConnectivityTemplates method.", + "id": "ListAgentConnectivityTemplatesResponse", + "properties": { + "agentConnectivityTemplates": { + "description": "List of AgentConnectivityTemplate resources.", + "items": { + "$ref": "AgentConnectivityTemplate" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`.", + "type": "string" + }, + "unreachable": { + "description": "Unordered list. Unreachable resources. Populated when the request attempts to list all resources across all supported locations, while some locations are temporarily unavailable.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListAgentGatewaysResponse": { "description": "Response returned by the ListAgentGateways method.", "id": "ListAgentGatewaysResponse", diff --git a/discovery/networkservices-v1beta1.json b/discovery/networkservices-v1beta1.json index 62822a709d3..341daa3517a 100644 --- a/discovery/networkservices-v1beta1.json +++ b/discovery/networkservices-v1beta1.json @@ -183,6 +183,173 @@ } }, "resources": { + "agentConnectivityTemplates": { + "methods": { + "create": { + "description": "Creates a new AgentConnectivityTemplate in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agentConnectivityTemplates", + "httpMethod": "POST", + "id": "networkservices.projects.locations.agentConnectivityTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "agentConnectivityTemplateId": { + "description": "Required. Short name of the AgentConnectivityTemplate resource to be created.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the AgentConnectivityTemplate. Must be in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/agentConnectivityTemplates", + "request": { + "$ref": "AgentConnectivityTemplate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single AgentConnectivityTemplate.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agentConnectivityTemplates/{agentConnectivityTemplatesId}", + "httpMethod": "DELETE", + "id": "networkservices.projects.locations.agentConnectivityTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The etag of the AgentConnectivityTemplate to delete.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. A name of the AgentConnectivityTemplate to delete. Must be in the format `projects/*/locations/*/agentConnectivityTemplates/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/agentConnectivityTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single AgentConnectivityTemplate.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agentConnectivityTemplates/{agentConnectivityTemplatesId}", + "httpMethod": "GET", + "id": "networkservices.projects.locations.agentConnectivityTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the AgentConnectivityTemplate to get. Must be in the format `projects/*/locations/*/agentConnectivityTemplates/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/agentConnectivityTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "AgentConnectivityTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists AgentConnectivityTemplates in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agentConnectivityTemplates", + "httpMethod": "GET", + "id": "networkservices.projects.locations.agentConnectivityTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. Maximum number of AgentConnectivityTemplates to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListAgentConnectivityTemplatesResponse` Indicates that this is a continuation of a prior `ListAgentConnectivityTemplates` call, and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location from which the AgentConnectivityTemplates should be listed, specified in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "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.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta1/{+parent}/agentConnectivityTemplates", + "response": { + "$ref": "ListAgentConnectivityTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single AgentConnectivityTemplate.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agentConnectivityTemplates/{agentConnectivityTemplatesId}", + "httpMethod": "PATCH", + "id": "networkservices.projects.locations.agentConnectivityTemplates.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. Name of the AgentConnectivityTemplate resource. It matches pattern `projects/*/locations/*/agentConnectivityTemplates/`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/agentConnectivityTemplates/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the AgentConnectivityTemplate resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "AgentConnectivityTemplate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "agentGateways": { "methods": { "create": { @@ -3277,9 +3444,82 @@ } } }, - "revision": "20260710", + "revision": "20260724", "rootUrl": "https://networkservices.googleapis.com/", "schemas": { + "AgentConnectivityTemplate": { + "description": "AgentConnectivityTemplate represents a reusable network configuration.", + "id": "AgentConnectivityTemplate", + "properties": { + "accessPath": { + "description": "Required. Immutable. The path of the access. Maps roughly to ingress/egress, though we keep CLIENT_TO_AGENT and AGENT_TO_ANYWHERE as carryovers from Agent Gateway's original resource model. The path is immutable once set. Exactly one path can be set.", + "enum": [ + "ACCESS_PATH_UNSPECIFIED", + "CLIENT_TO_AGENT", + "AGENT_TO_ANYWHERE" + ], + "enumDescriptions": [ + "Unspecified access path.", + "Protect connection to Agent or Tool.", + "Govern agent connections to destinations." + ], + "type": "string" + }, + "accessTypes": { + "description": "Optional. The types of network access provided to the gateway. Both PUBLIC and PRIVATE can be configured.", + "items": { + "enum": [ + "ACCESS_TYPE_UNSPECIFIED", + "PUBLIC", + "PRIVATE" + ], + "enumDescriptions": [ + "Unspecified access type.", + "Public network access.", + "Private network access." + ], + "type": "string" + }, + "type": "array" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. A free-text description of the resource. Max length 1024 characters.", + "type": "string" + }, + "egressNetworkConfig": { + "$ref": "EgressNetworkConfig", + "description": "Optional. Configuration for egress network traffic." + }, + "etag": { + "description": "Optional. Etag of the resource. If this is provided, it must match the server's etag. If the provided etag does not match the server's etag, the request will fail with a 409 ABORTED error.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Set of label tags associated with the AgentConnectivityTemplate resource.", + "type": "object" + }, + "name": { + "description": "Identifier. Name of the AgentConnectivityTemplate resource. It matches pattern `projects/*/locations/*/agentConnectivityTemplates/`.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "AgentGateway": { "description": "AgentGateway represents the agent gateway resource.", "id": "AgentGateway", @@ -3577,6 +3817,82 @@ "properties": {}, "type": "object" }, + "DnsPeeringConfig": { + "description": "DNS Peering configuration.", + "id": "DnsPeeringConfig", + "properties": { + "domain": { + "description": "Optional. The domain to peer.", + "type": "string" + }, + "targetNetwork": { + "description": "Optional. The target network resource name for DNS peering. Format: projects/{project}/global/networks/{network_id}", + "type": "string" + } + }, + "type": "object" + }, + "EgressNetworkConfig": { + "id": "EgressNetworkConfig", + "properties": { + "dnsPeeringConfig": { + "$ref": "DnsPeeringConfig", + "description": "Optional. DNS Peering configuration." + }, + "networkAttachment": { + "description": "Optional. The network attachment resource name. Format: projects/{project}/regions/{region}/networkAttachments/{network_attachment_id}", + "type": "string" + }, + "tlsConfig": { + "$ref": "EgressNetworkConfigTlsConfig", + "description": "Optional. The TLS configuration for the egress traffic." + }, + "trustConfig": { + "description": "Optional. The trust config resource name. Format: projects/{project}/locations/{location}/trustConfigs/{trust_config}", + "type": "string" + }, + "vpcEgress": { + "description": "Optional. The VPC egress setting.", + "enum": [ + "VPC_EGRESS_UNSPECIFIED", + "ALL_TRAFFIC", + "PRIVATE_RANGES_ONLY" + ], + "enumDescriptions": [ + "Unspecified", + "All outbound traffic is routed through the VPC connector.", + "Only private IP ranges are routed through the VPC connector." + ], + "type": "string" + } + }, + "type": "object" + }, + "EgressNetworkConfigTlsConfig": { + "description": "Configuration for TLS connections.", + "id": "EgressNetworkConfigTlsConfig", + "properties": { + "additionalRoots": { + "description": "Optional. The additional roots to trust.", + "enum": [ + "ADDITIONAL_ROOTS_UNSPECIFIED", + "NO_ADDITIONAL_ROOTS", + "PUBLICLY_TRUSTED_ROOTS" + ], + "enumDescriptions": [ + "Unspecified additional roots.", + "Trust only the certificates provided in `trust_config`.", + "Trust certificates provided in `trust_config` and publicly trusted roots." + ], + "type": "string" + }, + "trustConfig": { + "description": "Optional. The trust config resource name. Format: projects/{project}/locations/{location}/trustConfigs/{trust_config}", + "type": "string" + } + }, + "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", @@ -5108,6 +5424,31 @@ }, "type": "object" }, + "ListAgentConnectivityTemplatesResponse": { + "description": "Response returned by the ListAgentConnectivityTemplates method.", + "id": "ListAgentConnectivityTemplatesResponse", + "properties": { + "agentConnectivityTemplates": { + "description": "List of AgentConnectivityTemplate resources.", + "items": { + "$ref": "AgentConnectivityTemplate" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`.", + "type": "string" + }, + "unreachable": { + "description": "Unordered list. Unreachable resources. Populated when the request attempts to list all resources across all supported locations, while some locations are temporarily unavailable.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListAgentGatewaysResponse": { "description": "Response returned by the ListAgentGateways method.", "id": "ListAgentGatewaysResponse", diff --git a/src/apis/networkservices/v1.ts b/src/apis/networkservices/v1.ts index 01616353025..655e54ef02e 100644 --- a/src/apis/networkservices/v1.ts +++ b/src/apis/networkservices/v1.ts @@ -124,6 +124,47 @@ export namespace networkservices_v1 { } } + /** + * AgentConnectivityTemplate represents a reusable network configuration. + */ + export interface Schema$AgentConnectivityTemplate { + /** + * Required. Immutable. The path of the access. Maps roughly to ingress/egress, though we keep CLIENT_TO_AGENT and AGENT_TO_ANYWHERE as carryovers from Agent Gateway's original resource model. The path is immutable once set. Exactly one path can be set. + */ + accessPath?: string | null; + /** + * Optional. The types of network access provided to the gateway. Both PUBLIC and PRIVATE can be configured. + */ + accessTypes?: string[] | null; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Optional. A free-text description of the resource. Max length 1024 characters. + */ + description?: string | null; + /** + * Optional. Configuration for egress network traffic. + */ + egressNetworkConfig?: Schema$EgressNetworkConfig; + /** + * Optional. Etag of the resource. If this is provided, it must match the server's etag. If the provided etag does not match the server's etag, the request will fail with a 409 ABORTED error. + */ + etag?: string | null; + /** + * Optional. Set of label tags associated with the AgentConnectivityTemplate resource. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. Name of the AgentConnectivityTemplate resource. It matches pattern `projects/x/locations/x/agentConnectivityTemplates/`. + */ + name?: string | null; + /** + * Output only. The timestamp when the resource was updated. + */ + updateTime?: string | null; + } /** * AgentGateway represents the agent gateway resource. */ @@ -363,6 +404,54 @@ export namespace networkservices_v1 { * The request message for Operations.CancelOperation. */ export interface Schema$CancelOperationRequest {} + /** + * DNS Peering configuration. + */ + export interface Schema$DnsPeeringConfig { + /** + * Optional. The domain to peer. + */ + domain?: string | null; + /** + * Optional. The target network resource name for DNS peering. Format: projects/{project\}/global/networks/{network_id\} + */ + targetNetwork?: string | null; + } + export interface Schema$EgressNetworkConfig { + /** + * Optional. DNS Peering configuration. + */ + dnsPeeringConfig?: Schema$DnsPeeringConfig; + /** + * Optional. The network attachment resource name. Format: projects/{project\}/regions/{region\}/networkAttachments/{network_attachment_id\} + */ + networkAttachment?: string | null; + /** + * Optional. The TLS configuration for the egress traffic. + */ + tlsConfig?: Schema$EgressNetworkConfigTlsConfig; + /** + * Optional. The trust config resource name. Format: projects/{project\}/locations/{location\}/trustConfigs/{trust_config\} + */ + trustConfig?: string | null; + /** + * Optional. The VPC egress setting. + */ + vpcEgress?: string | null; + } + /** + * Configuration for TLS connections. + */ + export interface Schema$EgressNetworkConfigTlsConfig { + /** + * Optional. The additional roots to trust. + */ + additionalRoots?: string | null; + /** + * Optional. The trust config resource name. Format: projects/{project\}/locations/{location\}/trustConfigs/{trust_config\} + */ + trustConfig?: string | 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); \} */ @@ -1423,6 +1512,23 @@ export namespace networkservices_v1 { */ updateTime?: string | null; } + /** + * Response returned by the ListAgentConnectivityTemplates method. + */ + export interface Schema$ListAgentConnectivityTemplatesResponse { + /** + * List of AgentConnectivityTemplate resources. + */ + agentConnectivityTemplates?: Schema$AgentConnectivityTemplate[]; + /** + * If there might be more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`. + */ + nextPageToken?: string | null; + /** + * Unordered list. Unreachable resources. Populated when the request attempts to list all resources across all supported locations, while some locations are temporarily unavailable. + */ + unreachable?: string[] | null; + } /** * Response returned by the ListAgentGateways method. */ @@ -2615,6 +2721,7 @@ export namespace networkservices_v1 { export class Resource$Projects$Locations { context: APIRequestContext; + agentConnectivityTemplates: Resource$Projects$Locations$Agentconnectivitytemplates; agentGateways: Resource$Projects$Locations$Agentgateways; authzExtensions: Resource$Projects$Locations$Authzextensions; edgeCacheKeysets: Resource$Projects$Locations$Edgecachekeysets; @@ -2638,6 +2745,10 @@ export namespace networkservices_v1 { wasmPlugins: Resource$Projects$Locations$Wasmplugins; constructor(context: APIRequestContext) { this.context = context; + this.agentConnectivityTemplates = + new Resource$Projects$Locations$Agentconnectivitytemplates( + this.context + ); this.agentGateways = new Resource$Projects$Locations$Agentgateways( this.context ); @@ -3009,6 +3120,843 @@ export namespace networkservices_v1 { pageToken?: string; } + export class Resource$Projects$Locations$Agentconnectivitytemplates { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new AgentConnectivityTemplate in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.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 networkservices = google.networkservices('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 networkservices.projects.locations.agentConnectivityTemplates.create({ + * // Required. Short name of the AgentConnectivityTemplate resource to be created. + * agentConnectivityTemplateId: 'placeholder-value', + * // Required. The parent resource of the AgentConnectivityTemplate. Must be in the format `projects/x/locations/x`. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessPath": "my_accessPath", + * // "accessTypes": [], + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "egressNetworkConfig": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/agentConnectivityTemplates').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single AgentConnectivityTemplate. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.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 networkservices = google.networkservices('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 networkservices.projects.locations.agentConnectivityTemplates.delete({ + * // Optional. The etag of the AgentConnectivityTemplate to delete. + * etag: 'placeholder-value', + * // Required. A name of the AgentConnectivityTemplate to delete. Must be in the format `projects/x/locations/x/agentConnectivityTemplates/x`. + * name: 'projects/my-project/locations/my-location/agentConnectivityTemplates/my-agentConnectivityTemplate', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single AgentConnectivityTemplate. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.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 networkservices = google.networkservices('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 networkservices.projects.locations.agentConnectivityTemplates.get({ + * // Required. A name of the AgentConnectivityTemplate to get. Must be in the format `projects/x/locations/x/agentConnectivityTemplates/x`. + * name: 'projects/my-project/locations/my-location/agentConnectivityTemplates/my-agentConnectivityTemplate', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "accessPath": "my_accessPath", + * // "accessTypes": [], + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "egressNetworkConfig": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.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 AgentConnectivityTemplates in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.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 networkservices = google.networkservices('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 networkservices.projects.locations.agentConnectivityTemplates.list({ + * // Optional. Maximum number of AgentConnectivityTemplates to return per call. + * pageSize: 'placeholder-value', + * // Optional. The value returned by the last `ListAgentConnectivityTemplatesResponse` Indicates that this is a continuation of a prior `ListAgentConnectivityTemplates` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project and location from which the AgentConnectivityTemplates 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', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "agentConnectivityTemplates": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Agentconnectivitytemplates$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentconnectivitytemplates$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentconnectivitytemplates$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Agentconnectivitytemplates$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/agentConnectivityTemplates').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates the parameters of a single AgentConnectivityTemplate. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.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 networkservices = google.networkservices('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 networkservices.projects.locations.agentConnectivityTemplates.patch({ + * // Identifier. Name of the AgentConnectivityTemplate resource. It matches pattern `projects/x/locations/x/agentConnectivityTemplates/`. + * name: 'projects/my-project/locations/my-location/agentConnectivityTemplates/my-agentConnectivityTemplate', + * // Optional. Field mask is used to specify the fields to be overwritten in the AgentConnectivityTemplate resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessPath": "my_accessPath", + * // "accessTypes": [], + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "egressNetworkConfig": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create extends StandardParameters { + /** + * Required. Short name of the AgentConnectivityTemplate resource to be created. + */ + agentConnectivityTemplateId?: string; + /** + * Required. The parent resource of the AgentConnectivityTemplate. Must be in the format `projects/x/locations/x`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AgentConnectivityTemplate; + } + export interface Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete extends StandardParameters { + /** + * Optional. The etag of the AgentConnectivityTemplate to delete. + */ + etag?: string; + /** + * Required. A name of the AgentConnectivityTemplate to delete. Must be in the format `projects/x/locations/x/agentConnectivityTemplates/x`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get extends StandardParameters { + /** + * Required. A name of the AgentConnectivityTemplate to get. Must be in the format `projects/x/locations/x/agentConnectivityTemplates/x`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Agentconnectivitytemplates$List extends StandardParameters { + /** + * Optional. Maximum number of AgentConnectivityTemplates to return per call. + */ + pageSize?: number; + /** + * Optional. The value returned by the last `ListAgentConnectivityTemplatesResponse` Indicates that this is a continuation of a prior `ListAgentConnectivityTemplates` call, and that the system should return the next page of data. + */ + pageToken?: string; + /** + * Required. The project and location from which the AgentConnectivityTemplates should be listed, specified in the format `projects/x/locations/x`. + */ + parent?: string; + /** + * 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?: boolean; + } + export interface Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch extends StandardParameters { + /** + * Identifier. Name of the AgentConnectivityTemplate resource. It matches pattern `projects/x/locations/x/agentConnectivityTemplates/`. + */ + name?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the AgentConnectivityTemplate resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AgentConnectivityTemplate; + } + export class Resource$Projects$Locations$Agentgateways { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/networkservices/v1beta1.ts b/src/apis/networkservices/v1beta1.ts index a360055ba3b..545b0b45830 100644 --- a/src/apis/networkservices/v1beta1.ts +++ b/src/apis/networkservices/v1beta1.ts @@ -124,6 +124,47 @@ export namespace networkservices_v1beta1 { } } + /** + * AgentConnectivityTemplate represents a reusable network configuration. + */ + export interface Schema$AgentConnectivityTemplate { + /** + * Required. Immutable. The path of the access. Maps roughly to ingress/egress, though we keep CLIENT_TO_AGENT and AGENT_TO_ANYWHERE as carryovers from Agent Gateway's original resource model. The path is immutable once set. Exactly one path can be set. + */ + accessPath?: string | null; + /** + * Optional. The types of network access provided to the gateway. Both PUBLIC and PRIVATE can be configured. + */ + accessTypes?: string[] | null; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Optional. A free-text description of the resource. Max length 1024 characters. + */ + description?: string | null; + /** + * Optional. Configuration for egress network traffic. + */ + egressNetworkConfig?: Schema$EgressNetworkConfig; + /** + * Optional. Etag of the resource. If this is provided, it must match the server's etag. If the provided etag does not match the server's etag, the request will fail with a 409 ABORTED error. + */ + etag?: string | null; + /** + * Optional. Set of label tags associated with the AgentConnectivityTemplate resource. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. Name of the AgentConnectivityTemplate resource. It matches pattern `projects/x/locations/x/agentConnectivityTemplates/`. + */ + name?: string | null; + /** + * Output only. The timestamp when the resource was updated. + */ + updateTime?: string | null; + } /** * AgentGateway represents the agent gateway resource. */ @@ -320,6 +361,54 @@ export namespace networkservices_v1beta1 { * The request message for Operations.CancelOperation. */ export interface Schema$CancelOperationRequest {} + /** + * DNS Peering configuration. + */ + export interface Schema$DnsPeeringConfig { + /** + * Optional. The domain to peer. + */ + domain?: string | null; + /** + * Optional. The target network resource name for DNS peering. Format: projects/{project\}/global/networks/{network_id\} + */ + targetNetwork?: string | null; + } + export interface Schema$EgressNetworkConfig { + /** + * Optional. DNS Peering configuration. + */ + dnsPeeringConfig?: Schema$DnsPeeringConfig; + /** + * Optional. The network attachment resource name. Format: projects/{project\}/regions/{region\}/networkAttachments/{network_attachment_id\} + */ + networkAttachment?: string | null; + /** + * Optional. The TLS configuration for the egress traffic. + */ + tlsConfig?: Schema$EgressNetworkConfigTlsConfig; + /** + * Optional. The trust config resource name. Format: projects/{project\}/locations/{location\}/trustConfigs/{trust_config\} + */ + trustConfig?: string | null; + /** + * Optional. The VPC egress setting. + */ + vpcEgress?: string | null; + } + /** + * Configuration for TLS connections. + */ + export interface Schema$EgressNetworkConfigTlsConfig { + /** + * Optional. The additional roots to trust. + */ + additionalRoots?: string | null; + /** + * Optional. The trust config resource name. Format: projects/{project\}/locations/{location\}/trustConfigs/{trust_config\} + */ + trustConfig?: string | 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); \} */ @@ -1378,6 +1467,23 @@ export namespace networkservices_v1beta1 { */ updateTime?: string | null; } + /** + * Response returned by the ListAgentConnectivityTemplates method. + */ + export interface Schema$ListAgentConnectivityTemplatesResponse { + /** + * List of AgentConnectivityTemplate resources. + */ + agentConnectivityTemplates?: Schema$AgentConnectivityTemplate[]; + /** + * If there might be more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`. + */ + nextPageToken?: string | null; + /** + * Unordered list. Unreachable resources. Populated when the request attempts to list all resources across all supported locations, while some locations are temporarily unavailable. + */ + unreachable?: string[] | null; + } /** * Response returned by the ListAgentGateways method. */ @@ -2415,6 +2521,7 @@ export namespace networkservices_v1beta1 { export class Resource$Projects$Locations { context: APIRequestContext; + agentConnectivityTemplates: Resource$Projects$Locations$Agentconnectivitytemplates; agentGateways: Resource$Projects$Locations$Agentgateways; authzExtensions: Resource$Projects$Locations$Authzextensions; endpointPolicies: Resource$Projects$Locations$Endpointpolicies; @@ -2434,6 +2541,10 @@ export namespace networkservices_v1beta1 { wasmPlugins: Resource$Projects$Locations$Wasmplugins; constructor(context: APIRequestContext) { this.context = context; + this.agentConnectivityTemplates = + new Resource$Projects$Locations$Agentconnectivitytemplates( + this.context + ); this.agentGateways = new Resource$Projects$Locations$Agentgateways( this.context ); @@ -2792,6 +2903,841 @@ export namespace networkservices_v1beta1 { pageToken?: string; } + export class Resource$Projects$Locations$Agentconnectivitytemplates { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new AgentConnectivityTemplate in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.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 networkservices = google.networkservices('v1beta1'); + * + * async function main() { + * const auth = new 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 networkservices.projects.locations.agentConnectivityTemplates.create({ + * // Required. Short name of the AgentConnectivityTemplate resource to be created. + * agentConnectivityTemplateId: 'placeholder-value', + * // Required. The parent resource of the AgentConnectivityTemplate. Must be in the format `projects/x/locations/x`. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessPath": "my_accessPath", + * // "accessTypes": [], + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "egressNetworkConfig": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1beta1/{+parent}/agentConnectivityTemplates' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single AgentConnectivityTemplate. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.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 networkservices = google.networkservices('v1beta1'); + * + * async function main() { + * const auth = new 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 networkservices.projects.locations.agentConnectivityTemplates.delete({ + * // Optional. The etag of the AgentConnectivityTemplate to delete. + * etag: 'placeholder-value', + * // Required. A name of the AgentConnectivityTemplate to delete. Must be in the format `projects/x/locations/x/agentConnectivityTemplates/x`. + * name: 'projects/my-project/locations/my-location/agentConnectivityTemplates/my-agentConnectivityTemplate', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single AgentConnectivityTemplate. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.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 networkservices = google.networkservices('v1beta1'); + * + * async function main() { + * const auth = new 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 networkservices.projects.locations.agentConnectivityTemplates.get({ + * // Required. A name of the AgentConnectivityTemplate to get. Must be in the format `projects/x/locations/x/agentConnectivityTemplates/x`. + * name: 'projects/my-project/locations/my-location/agentConnectivityTemplates/my-agentConnectivityTemplate', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "accessPath": "my_accessPath", + * // "accessTypes": [], + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "egressNetworkConfig": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+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 AgentConnectivityTemplates in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.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 networkservices = google.networkservices('v1beta1'); + * + * async function main() { + * const auth = new 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 networkservices.projects.locations.agentConnectivityTemplates.list({ + * // Optional. Maximum number of AgentConnectivityTemplates to return per call. + * pageSize: 'placeholder-value', + * // Optional. The value returned by the last `ListAgentConnectivityTemplatesResponse` Indicates that this is a continuation of a prior `ListAgentConnectivityTemplates` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project and location from which the AgentConnectivityTemplates 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', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "agentConnectivityTemplates": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Agentconnectivitytemplates$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentconnectivitytemplates$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentconnectivitytemplates$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Agentconnectivitytemplates$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1beta1/{+parent}/agentConnectivityTemplates' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates the parameters of a single AgentConnectivityTemplate. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networkservices.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 networkservices = google.networkservices('v1beta1'); + * + * async function main() { + * const auth = new 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 networkservices.projects.locations.agentConnectivityTemplates.patch({ + * // Identifier. Name of the AgentConnectivityTemplate resource. It matches pattern `projects/x/locations/x/agentConnectivityTemplates/`. + * name: 'projects/my-project/locations/my-location/agentConnectivityTemplates/my-agentConnectivityTemplate', + * // Optional. Field mask is used to specify the fields to be overwritten in the AgentConnectivityTemplate resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessPath": "my_accessPath", + * // "accessTypes": [], + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "egressNetworkConfig": {}, + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networkservices.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Agentconnectivitytemplates$Create extends StandardParameters { + /** + * Required. Short name of the AgentConnectivityTemplate resource to be created. + */ + agentConnectivityTemplateId?: string; + /** + * Required. The parent resource of the AgentConnectivityTemplate. Must be in the format `projects/x/locations/x`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AgentConnectivityTemplate; + } + export interface Params$Resource$Projects$Locations$Agentconnectivitytemplates$Delete extends StandardParameters { + /** + * Optional. The etag of the AgentConnectivityTemplate to delete. + */ + etag?: string; + /** + * Required. A name of the AgentConnectivityTemplate to delete. Must be in the format `projects/x/locations/x/agentConnectivityTemplates/x`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Agentconnectivitytemplates$Get extends StandardParameters { + /** + * Required. A name of the AgentConnectivityTemplate to get. Must be in the format `projects/x/locations/x/agentConnectivityTemplates/x`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Agentconnectivitytemplates$List extends StandardParameters { + /** + * Optional. Maximum number of AgentConnectivityTemplates to return per call. + */ + pageSize?: number; + /** + * Optional. The value returned by the last `ListAgentConnectivityTemplatesResponse` Indicates that this is a continuation of a prior `ListAgentConnectivityTemplates` call, and that the system should return the next page of data. + */ + pageToken?: string; + /** + * Required. The project and location from which the AgentConnectivityTemplates should be listed, specified in the format `projects/x/locations/x`. + */ + parent?: string; + /** + * 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?: boolean; + } + export interface Params$Resource$Projects$Locations$Agentconnectivitytemplates$Patch extends StandardParameters { + /** + * Identifier. Name of the AgentConnectivityTemplate resource. It matches pattern `projects/x/locations/x/agentConnectivityTemplates/`. + */ + name?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the AgentConnectivityTemplate resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AgentConnectivityTemplate; + } + export class Resource$Projects$Locations$Agentgateways { context: APIRequestContext; constructor(context: APIRequestContext) { From ba6cede7b4aba8b98272702c0101401a9ab3fec5 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:23 +0000 Subject: [PATCH 18/23] feat(retail): update the API #### retail:v2alpha The following keys were added: - schemas.GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResult.properties.agentPrompts.description - schemas.GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResult.properties.agentPrompts.items.$ref - schemas.GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResult.properties.agentPrompts.type - schemas.GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResultAgentPrompt.description - schemas.GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResultAgentPrompt.id - schemas.GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResultAgentPrompt.properties.prompt.description - schemas.GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResultAgentPrompt.properties.prompt.type - schemas.GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResultAgentPrompt.type - schemas.GoogleCloudRetailV2alphaSearchRequest.properties.dynamicControls.description - schemas.GoogleCloudRetailV2alphaSearchRequest.properties.dynamicControls.items.$ref - schemas.GoogleCloudRetailV2alphaSearchRequest.properties.dynamicControls.type - schemas.GoogleCloudRetailV2alphaSearchRequest.properties.ignoredControlIds.description - schemas.GoogleCloudRetailV2alphaSearchRequest.properties.ignoredControlIds.items.type - schemas.GoogleCloudRetailV2alphaSearchRequest.properties.ignoredControlIds.type --- discovery/retail-v2alpha.json | 34 +++++++++++++++++++++++++++++++++- src/apis/retail/v2alpha.ts | 25 +++++++++++++++++++++++++ 2 files changed, 58 insertions(+), 1 deletion(-) diff --git a/discovery/retail-v2alpha.json b/discovery/retail-v2alpha.json index e20f27f32d9..c415f280316 100644 --- a/discovery/retail-v2alpha.json +++ b/discovery/retail-v2alpha.json @@ -2874,7 +2874,7 @@ } } }, - "revision": "20260723", + "revision": "20260803", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -4377,6 +4377,13 @@ "description": "Resource that represents completion results.", "id": "GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResult", "properties": { + "agentPrompts": { + "description": "Conversational prompts to trigger agents like Shopping Agent. There may be multiple prompts for a single suggestion. This is an experimental feature for select customers. If you want to receive this prompt information, reach out to the Retail support team.", + "items": { + "$ref": "GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResultAgentPrompt" + }, + "type": "array" + }, "attributes": { "additionalProperties": { "$ref": "GoogleCloudRetailV2alphaCustomAttribute" @@ -4403,6 +4410,17 @@ }, "type": "object" }, + "GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResultAgentPrompt": { + "description": "A conversational prompt to trigger agents like Shopping Agent.", + "id": "GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResultAgentPrompt", + "properties": { + "prompt": { + "description": "The conversational prompt string.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudRetailV2alphaCompleteQueryResponseRecentSearchResult": { "deprecated": true, "description": "Deprecated: Recent search of this user.", @@ -7634,6 +7652,13 @@ "$ref": "GoogleCloudRetailV2alphaSearchRequestConversationalSearchSpec", "description": "Optional. This field specifies all conversational related parameters addition to traditional retail search." }, + "dynamicControls": { + "description": "Optional. A set of controls that are applied dynamically to the search request. These controls are applied in addition to the controls specified in the serving config. These controls are expected to not yet be persisted in storage. A control could be applied twice if it is in both the serving config and specified here. A maximum of 5 values are allowed. Otherwise, an INVALID_ARGUMENT error is returned.", + "items": { + "$ref": "GoogleCloudRetailV2alphaControl" + }, + "type": "array" + }, "dynamicFacetSpec": { "$ref": "GoogleCloudRetailV2alphaSearchRequestDynamicFacetSpec", "deprecated": true, @@ -7658,6 +7683,13 @@ "description": "The filter syntax consists of an expression language for constructing a predicate from one or more fields of the products being filtered. Filter expression is case-sensitive. For more information, see [Filter](https://cloud.google.com/retail/docs/filter-and-order#filter). If this field is unrecognizable, an INVALID_ARGUMENT is returned.", "type": "string" }, + "ignoredControlIds": { + "description": "Optional. A list of control IDs to ignore. These controls will not be applied to the search request, even if they are specified in the serving config.", + "items": { + "type": "string" + }, + "type": "array" + }, "labels": { "additionalProperties": { "type": "string" diff --git a/src/apis/retail/v2alpha.ts b/src/apis/retail/v2alpha.ts index 065912fe9be..c25746cb8a4 100644 --- a/src/apis/retail/v2alpha.ts +++ b/src/apis/retail/v2alpha.ts @@ -778,6 +778,10 @@ export namespace retail_v2alpha { * Resource that represents completion results. */ export interface Schema$GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResult { + /** + * Conversational prompts to trigger agents like Shopping Agent. There may be multiple prompts for a single suggestion. This is an experimental feature for select customers. If you want to receive this prompt information, reach out to the Retail support team. + */ + agentPrompts?: Schema$GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResultAgentPrompt[]; /** * Custom attributes for the suggestion term. * For `user-data`, the attributes are additional custom attributes ingested through BigQuery. * For `cloud-retail`, the attributes are product attributes generated by Cloud Retail. It requires UserEvent.product_details is imported properly. */ @@ -797,6 +801,15 @@ export namespace retail_v2alpha { */ totalProductCount?: number | null; } + /** + * A conversational prompt to trigger agents like Shopping Agent. + */ + export interface Schema$GoogleCloudRetailV2alphaCompleteQueryResponseCompletionResultAgentPrompt { + /** + * The conversational prompt string. + */ + prompt?: string | null; + } /** * Deprecated: Recent search of this user. */ @@ -3083,6 +3096,10 @@ export namespace retail_v2alpha { * Optional. This field specifies all conversational related parameters addition to traditional retail search. */ conversationalSearchSpec?: Schema$GoogleCloudRetailV2alphaSearchRequestConversationalSearchSpec; + /** + * Optional. A set of controls that are applied dynamically to the search request. These controls are applied in addition to the controls specified in the serving config. These controls are expected to not yet be persisted in storage. A control could be applied twice if it is in both the serving config and specified here. A maximum of 5 values are allowed. Otherwise, an INVALID_ARGUMENT error is returned. + */ + dynamicControls?: Schema$GoogleCloudRetailV2alphaControl[]; /** * Deprecated. Refer to https://cloud.google.com/retail/docs/configs#dynamic to enable dynamic facets. Do not set this field. The specification for dynamically generated facets. Notice that only textual facets can be dynamically generated. */ @@ -3103,6 +3120,10 @@ export namespace retail_v2alpha { * The filter syntax consists of an expression language for constructing a predicate from one or more fields of the products being filtered. Filter expression is case-sensitive. For more information, see [Filter](https://cloud.google.com/retail/docs/filter-and-order#filter). If this field is unrecognizable, an INVALID_ARGUMENT is returned. */ filter?: string | null; + /** + * Optional. A list of control IDs to ignore. These controls will not be applied to the search request, even if they are specified in the serving config. + */ + ignoredControlIds?: string[] | null; /** * The labels applied to a resource must meet the following requirements: * Each resource can have multiple labels, up to a maximum of 64. * Each label must be a key-value pair. * Keys have a minimum length of 1 character and a maximum length of 63 characters and cannot be empty. Values can be empty and have a maximum length of 63 characters. * Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes. All characters must use UTF-8 encoding, and international characters are allowed. * The key portion of a label must be unique. However, you can use the same key with multiple resources. * Keys must start with a lowercase letter or international character. For more information, see [Requirements for labels](https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements) in the Resource Manager documentation. */ @@ -16156,11 +16177,13 @@ export namespace retail_v2alpha { * // "branch": "my_branch", * // "canonicalFilter": "my_canonicalFilter", * // "conversationalSearchSpec": {}, + * // "dynamicControls": [], * // "dynamicFacetSpec": {}, * // "entity": "my_entity", * // "experimentId": "my_experimentId", * // "facetSpecs": [], * // "filter": "my_filter", + * // "ignoredControlIds": [], * // "labels": {}, * // "languageCode": "my_languageCode", * // "offset": 0, @@ -17928,11 +17951,13 @@ export namespace retail_v2alpha { * // "branch": "my_branch", * // "canonicalFilter": "my_canonicalFilter", * // "conversationalSearchSpec": {}, + * // "dynamicControls": [], * // "dynamicFacetSpec": {}, * // "entity": "my_entity", * // "experimentId": "my_experimentId", * // "facetSpecs": [], * // "filter": "my_filter", + * // "ignoredControlIds": [], * // "labels": {}, * // "languageCode": "my_languageCode", * // "offset": 0, From b684483b42b864297bd6b1255ea70fffa86ac71b Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:24 +0000 Subject: [PATCH 19/23] feat(serviceconsumermanagement): update the API #### serviceconsumermanagement:v1beta1 The following keys were added: - schemas.MetricRule.properties.agenticMetricCosts.additionalProperties.format - schemas.MetricRule.properties.agenticMetricCosts.additionalProperties.type - schemas.MetricRule.properties.agenticMetricCosts.description - schemas.MetricRule.properties.agenticMetricCosts.type - schemas.MetricRule.properties.nonagenticMetricCosts.additionalProperties.format - schemas.MetricRule.properties.nonagenticMetricCosts.additionalProperties.type - schemas.MetricRule.properties.nonagenticMetricCosts.description - schemas.MetricRule.properties.nonagenticMetricCosts.type - schemas.QuotaLimit.properties.trafficSource.description - schemas.QuotaLimit.properties.trafficSource.enum - schemas.QuotaLimit.properties.trafficSource.enumDescriptions - schemas.QuotaLimit.properties.trafficSource.type --- .../serviceconsumermanagement-v1beta1.json | 32 ++++++++++++++++++- src/apis/serviceconsumermanagement/v1beta1.ts | 12 +++++++ 2 files changed, 43 insertions(+), 1 deletion(-) diff --git a/discovery/serviceconsumermanagement-v1beta1.json b/discovery/serviceconsumermanagement-v1beta1.json index 51c6aac11f9..d07e752b0d8 100644 --- a/discovery/serviceconsumermanagement-v1beta1.json +++ b/discovery/serviceconsumermanagement-v1beta1.json @@ -724,7 +724,7 @@ } } }, - "revision": "20260423", + "revision": "20260721", "rootUrl": "https://serviceconsumermanagement.googleapis.com/", "schemas": { "Api": { @@ -2257,6 +2257,14 @@ "description": "Bind API methods to metrics. Binding a method to a metric causes that metric's configured quota behaviors to apply to the method call.", "id": "MetricRule", "properties": { + "agenticMetricCosts": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Optional. Metrics to update when the selected methods are called, and the associated cost applied to each metric, iff the source of the call is an agent. The key of the map is the metric name, and the values are the amount increased for the metric against which the quota limits are defined. The value must not be negative.", + "type": "object" + }, "metricCosts": { "additionalProperties": { "format": "int64", @@ -2265,6 +2273,14 @@ "description": "Metrics to update when the selected methods are called, and the associated cost applied to each metric. The key of the map is the metric name, and the values are the amount increased for the metric against which the quota limits are defined. The value must not be negative.", "type": "object" }, + "nonagenticMetricCosts": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Optional. Metrics to update when the selected methods are called, and the associated cost applied to each metric, iff the source of the call is not an agent. The key of the map is the metric name, and the values are the amount increased for the metric against which the quota limits are defined. The value must not be negative.", + "type": "object" + }, "selector": { "description": "Selects the methods to which this rule applies. Refer to selector for syntax details.", "type": "string" @@ -2650,6 +2666,20 @@ "description": "Name of the quota limit. The name must be provided, and it must be unique within the service. The name can only include alphanumeric characters as well as '-'. The maximum length of the limit name is 64 characters.", "type": "string" }, + "trafficSource": { + "description": "Optional. This is only informational, the logic to allocate the quota to the correct metric (such as in `metric_rules`) should identify which quota metrics to allocate to.", + "enum": [ + "TRAFFIC_SOURCE_UNSPECIFIED", + "TRAFFIC_SOURCE_NONAGENTIC", + "TRAFFIC_SOURCE_AGENTIC" + ], + "enumDescriptions": [ + "This quota limit applies to all traffic. This is the default value.", + "This quota limit applies to traffic not recognized as agentic.", + "This quota limit applies to only agentic traffic." + ], + "type": "string" + }, "unit": { "description": "Specify the unit of the quota limit. It uses the same syntax as MetricDescriptor.unit. The supported unit kinds are determined by the quota backend system. Here are some examples: * \"1/min/{project}\" for quota per minute per project. Note: the order of unit components is insignificant. The \"1\" at the beginning is required to follow the metric unit syntax.", "type": "string" diff --git a/src/apis/serviceconsumermanagement/v1beta1.ts b/src/apis/serviceconsumermanagement/v1beta1.ts index d75a685280d..978a7b72445 100644 --- a/src/apis/serviceconsumermanagement/v1beta1.ts +++ b/src/apis/serviceconsumermanagement/v1beta1.ts @@ -1153,10 +1153,18 @@ export namespace serviceconsumermanagement_v1beta1 { * Bind API methods to metrics. Binding a method to a metric causes that metric's configured quota behaviors to apply to the method call. */ export interface Schema$MetricRule { + /** + * Optional. Metrics to update when the selected methods are called, and the associated cost applied to each metric, iff the source of the call is an agent. The key of the map is the metric name, and the values are the amount increased for the metric against which the quota limits are defined. The value must not be negative. + */ + agenticMetricCosts?: {[key: string]: string} | null; /** * Metrics to update when the selected methods are called, and the associated cost applied to each metric. The key of the map is the metric name, and the values are the amount increased for the metric against which the quota limits are defined. The value must not be negative. */ metricCosts?: {[key: string]: string} | null; + /** + * Optional. Metrics to update when the selected methods are called, and the associated cost applied to each metric, iff the source of the call is not an agent. The key of the map is the metric name, and the values are the amount increased for the metric against which the quota limits are defined. The value must not be negative. + */ + nonagenticMetricCosts?: {[key: string]: string} | null; /** * Selects the methods to which this rule applies. Refer to selector for syntax details. */ @@ -1427,6 +1435,10 @@ export namespace serviceconsumermanagement_v1beta1 { * Name of the quota limit. The name must be provided, and it must be unique within the service. The name can only include alphanumeric characters as well as '-'. The maximum length of the limit name is 64 characters. */ name?: string | null; + /** + * Optional. This is only informational, the logic to allocate the quota to the correct metric (such as in `metric_rules`) should identify which quota metrics to allocate to. + */ + trafficSource?: string | null; /** * Specify the unit of the quota limit. It uses the same syntax as MetricDescriptor.unit. The supported unit kinds are determined by the quota backend system. Here are some examples: * "1/min/{project\}" for quota per minute per project. Note: the order of unit components is insignificant. The "1" at the beginning is required to follow the metric unit syntax. */ From 3847c5f19f2caa8eba0ecb26f95c7ecbd502c533 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:24 +0000 Subject: [PATCH 20/23] feat(toolresults): update the API #### toolresults:v1beta3 The following keys were added: - schemas.AntiTamperingTermination.description - schemas.AntiTamperingTermination.id - schemas.AntiTamperingTermination.type The following keys were changed: - schemas.TestIssue.properties.type.enum - schemas.TestIssue.properties.type.enumDescriptions --- discovery/toolresults-v1beta3.json | 14 +++++++++++--- src/apis/toolresults/v1beta3.ts | 4 ++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/discovery/toolresults-v1beta3.json b/discovery/toolresults-v1beta3.json index 063cee2f55a..65effa342fc 100644 --- a/discovery/toolresults-v1beta3.json +++ b/discovery/toolresults-v1beta3.json @@ -1464,7 +1464,7 @@ } } }, - "revision": "20260528", + "revision": "20260803", "rootUrl": "https://toolresults.googleapis.com/", "schemas": { "ANR": { @@ -1589,6 +1589,12 @@ "properties": {}, "type": "object" }, + "AntiTamperingTermination": { + "description": "Anti-tampering termination was detected.", + "id": "AntiTamperingTermination", + "properties": {}, + "type": "object" + }, "Any": { "description": " `Any` contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message. Protobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type. Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... } Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); } Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ... Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := ptypes.MarshalAny(foo) ... foo := &pb.Foo{} if err := ptypes.UnmarshalAny(any, foo); err != nil { ... } The pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example \"foo.bar.com/x/y.z\" will yield type name \"y.z\". # JSON The JSON representation of an `Any` value uses the regular representation of the deserialized, embedded message, with an additional field `@type` which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { \"@type\": \"type.googleapis.com/google.profile.Person\", \"firstName\": , \"lastName\": } If the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field `value` which holds the custom JSON in addition to the `@type` field. Example (for message google.protobuf.Duration): { \"@type\": \"type.googleapis.com/google.protobuf.Duration\", \"value\": \"1.212s\" }", "id": "Any", @@ -3647,7 +3653,8 @@ "logcatCollectionError", "detectedAppSplashScreen", "assetIssue", - "licensingProtectionTermination" + "licensingProtectionTermination", + "antiTamperingTermination" ], "enumDescriptions": [ "Default unspecified type. Do not use. For versioning only.", @@ -3683,7 +3690,8 @@ "Problems detected while collecting logcat", "Robo detected a splash screen provided by app (vs. Android OS splash screen).", "There was an issue with the assets in this test.", - "Licensing protection termination (Pairip) was detected." + "Licensing protection termination (Pairip) was detected.", + "Anti-tampering termination was detected." ], "type": "string" }, diff --git a/src/apis/toolresults/v1beta3.ts b/src/apis/toolresults/v1beta3.ts index 959dc0ead6a..471799a2a6f 100644 --- a/src/apis/toolresults/v1beta3.ts +++ b/src/apis/toolresults/v1beta3.ts @@ -229,6 +229,10 @@ export namespace toolresults_v1beta3 { */ stackTrace?: Schema$StackTrace; } + /** + * Anti-tampering termination was detected. + */ + export interface Schema$AntiTamperingTermination {} /** * `Any` contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message. Protobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type. Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... \} Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); \} Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ... Example 4: Pack and unpack a message in Go foo := &pb.Foo{...\} any, err := ptypes.MarshalAny(foo) ... foo := &pb.Foo{\} if err := ptypes.UnmarshalAny(any, foo); err != nil { ... \} The pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example "foo.bar.com/x/y.z" will yield type name "y.z". # JSON The JSON representation of an `Any` value uses the regular representation of the deserialized, embedded message, with an additional field `@type` which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; \} { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": \} If the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field `value` which holds the custom JSON in addition to the `@type` field. Example (for message google.protobuf.Duration): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" \} */ From de5fccd289cb6dfd75095f125c0b3c9624ce2941 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:24 +0000 Subject: [PATCH 21/23] feat(webcontentpublisher): update the API #### webcontentpublisher:v1 The following keys were added: - resources.organizations.resources.publications.resources.ctas.methods.patch.description - resources.organizations.resources.publications.resources.ctas.methods.patch.flatPath - resources.organizations.resources.publications.resources.ctas.methods.patch.httpMethod - resources.organizations.resources.publications.resources.ctas.methods.patch.id - resources.organizations.resources.publications.resources.ctas.methods.patch.parameterOrder - resources.organizations.resources.publications.resources.ctas.methods.patch.parameters.name.description - resources.organizations.resources.publications.resources.ctas.methods.patch.parameters.name.location - resources.organizations.resources.publications.resources.ctas.methods.patch.parameters.name.pattern - resources.organizations.resources.publications.resources.ctas.methods.patch.parameters.name.required - resources.organizations.resources.publications.resources.ctas.methods.patch.parameters.name.type - resources.organizations.resources.publications.resources.ctas.methods.patch.parameters.updateMask.description - resources.organizations.resources.publications.resources.ctas.methods.patch.parameters.updateMask.format - resources.organizations.resources.publications.resources.ctas.methods.patch.parameters.updateMask.location - resources.organizations.resources.publications.resources.ctas.methods.patch.parameters.updateMask.type - resources.organizations.resources.publications.resources.ctas.methods.patch.path - resources.organizations.resources.publications.resources.ctas.methods.patch.request.$ref - resources.organizations.resources.publications.resources.ctas.methods.patch.response.$ref --- discovery/webcontentpublisher-v1.json | 33 ++++- src/apis/webcontentpublisher/v1.ts | 167 ++++++++++++++++++++++++++ 2 files changed, 199 insertions(+), 1 deletion(-) diff --git a/discovery/webcontentpublisher-v1.json b/discovery/webcontentpublisher-v1.json index 4a49beb6b4e..f7a478438eb 100644 --- a/discovery/webcontentpublisher-v1.json +++ b/discovery/webcontentpublisher-v1.json @@ -346,6 +346,37 @@ "https://www.googleapis.com/auth/subscribewithgoogle.publications.entitlements.manage", "https://www.googleapis.com/auth/subscribewithgoogle.publications.entitlements.readonly" ] + }, + "patch": { + "description": "Updates a CTA.", + "flatPath": "v1/organizations/{organizationsId}/publications/{publicationsId}/ctas/{ctasId}", + "httpMethod": "PATCH", + "id": "webcontentpublisher.organizations.publications.ctas.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name of the Cta. Format: organizations/{organization}/publications/{publication}/ctas/{cta}", + "location": "path", + "pattern": "^organizations/[^/]+/publications/[^/]+/ctas/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The list of fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Cta" + }, + "response": { + "$ref": "Cta" + } } } } @@ -394,7 +425,7 @@ } } }, - "revision": "20260724", + "revision": "20260801", "rootUrl": "https://webcontentpublisher.googleapis.com/", "schemas": { "CheckFreeAccessResponse": { diff --git a/src/apis/webcontentpublisher/v1.ts b/src/apis/webcontentpublisher/v1.ts index 48173a32085..b52be4b8e51 100644 --- a/src/apis/webcontentpublisher/v1.ts +++ b/src/apis/webcontentpublisher/v1.ts @@ -1538,6 +1538,158 @@ export namespace webcontentpublisher_v1 { return createAPIRequest(parameters); } } + + /** + * Updates a CTA. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/webcontentpublisher.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 webcontentpublisher = google.webcontentpublisher('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 webcontentpublisher.organizations.publications.ctas.patch({ + * // Identifier. The resource name of the Cta. Format: organizations/{organization\}/publications/{publication\}/ctas/{cta\} + * name: 'organizations/my-organization/publications/my-publication/ctas/my-cta', + * // Optional. The list of fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "newsletterConfig": {}, + * // "state": "my_state", + * // "type": "my_type" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "displayName": "my_displayName", + * // "name": "my_name", + * // "newsletterConfig": {}, + * // "state": "my_state", + * // "type": "my_type" + * // } + * } + * + * 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$Organizations$Publications$Ctas$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Organizations$Publications$Ctas$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Organizations$Publications$Ctas$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Organizations$Publications$Ctas$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Organizations$Publications$Ctas$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Organizations$Publications$Ctas$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizations$Publications$Ctas$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizations$Publications$Ctas$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://webcontentpublisher.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Organizations$Publications$Ctas$Create extends StandardParameters { @@ -1575,6 +1727,21 @@ export namespace webcontentpublisher_v1 { */ parent?: string; } + export interface Params$Resource$Organizations$Publications$Ctas$Patch extends StandardParameters { + /** + * Identifier. The resource name of the Cta. Format: organizations/{organization\}/publications/{publication\}/ctas/{cta\} + */ + name?: string; + /** + * Optional. The list of fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Cta; + } export class Resource$Publications { context: APIRequestContext; From d6b77331e92fe14ff55b78c8660123c79dd248b6 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Thu, 6 Aug 2026 01:50:24 +0000 Subject: [PATCH 22/23] feat: regenerate index files --- discovery/accessapproval-v1.json | 8 +++- discovery/firebaseappdistribution-v1.json | 8 ++-- .../firebaseappdistribution-v1alpha.json | 8 ++-- discovery/index.json | 45 +++++++++++++++++++ discovery/kmsinventory-v1.json | 14 +++++- src/apis/index.ts | 3 ++ src/index.ts | 3 ++ 7 files changed, 81 insertions(+), 8 deletions(-) diff --git a/discovery/accessapproval-v1.json b/discovery/accessapproval-v1.json index eecea31aa4e..e32c745a3f2 100644 --- a/discovery/accessapproval-v1.json +++ b/discovery/accessapproval-v1.json @@ -913,7 +913,7 @@ } } }, - "revision": "20260703", + "revision": "20260731", "rootUrl": "https://accessapproval.googleapis.com/", "schemas": { "AccessApprovalServiceAccount": { @@ -1352,6 +1352,9 @@ "PQ_SIGN_ML_DSA_44_EXTERNAL_MU", "PQ_SIGN_ML_DSA_65_EXTERNAL_MU", "PQ_SIGN_ML_DSA_87_EXTERNAL_MU", + "KEM_ECDH_P256", + "KEM_ECDH_P384", + "KEM_ECDH_P521", "AES_256_KWP" ], "enumDescriptions": [ @@ -1402,6 +1405,9 @@ "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 1. Randomized version supporting externally-computed message representatives.", "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 3. Randomized version supporting externally-computed message representatives.", "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 5. Randomized version supporting externally-computed message representatives.", + "Key encapsulation: Elliptic Curve Diffie-Hellman with NIST P-256 key that returns shared secret.", + "Key encapsulation: Elliptic Curve Diffie-Hellman with NIST P-384 key that returns shared secret.", + "Key encapsulation: Elliptic Curve Diffie-Hellman with NIST P-521 key that returns shared secret.", "AES key wrap with zero padding algorithm (RFC 5649). Can only be used by keys with purpose AES_WRAPPING." ], "type": "string" diff --git a/discovery/firebaseappdistribution-v1.json b/discovery/firebaseappdistribution-v1.json index 9a9f5c1ba2f..8d614d3362f 100644 --- a/discovery/firebaseappdistribution-v1.json +++ b/discovery/firebaseappdistribution-v1.json @@ -946,7 +946,7 @@ } } }, - "revision": "20260723", + "revision": "20260803", "rootUrl": "https://firebaseappdistribution.googleapis.com/", "schemas": { "GdataBlobstore2Info": { @@ -1419,7 +1419,8 @@ "PLAY_IAS_TERMS_NOT_ACCEPTED", "ADHOC_SHARING_KEY_NOT_GENERATED", "ADHOC_SHARING_KEY_NOT_REGISTERED", - "PLAY_ANDROID_DEVELOPER_CONSOLE_ACCOUNT_NOT_FOUND" + "PLAY_ANDROID_DEVELOPER_CONSOLE_ACCOUNT_NOT_FOUND", + "PLAY_ANDROID_DEVELOPER_CONSOLE_PACKAGE_NOT_FOUND" ], "enumDescriptions": [ "AAB integration state unspecified.", @@ -1431,7 +1432,8 @@ "Play in-app sharing terms not accepted.", "The ad-hoc sharing key has not been generated for this app.", "The ad-hoc sharing key is not yet registered in Android Developer Verification for this app.", - "The linked Play developer account was not found or is not fully set up in Android Developer Console." + "The linked Play developer account was not found or is not fully set up in Android Developer Console.", + "The package was not found in the Android Developer Console." ], "type": "string" }, diff --git a/discovery/firebaseappdistribution-v1alpha.json b/discovery/firebaseappdistribution-v1alpha.json index 7d83e50a889..56a135d0167 100644 --- a/discovery/firebaseappdistribution-v1alpha.json +++ b/discovery/firebaseappdistribution-v1alpha.json @@ -868,7 +868,7 @@ } } }, - "revision": "20260723", + "revision": "20260803", "rootUrl": "https://firebaseappdistribution.googleapis.com/", "schemas": { "AndroidxCrawlerOutputPoint": { @@ -1791,7 +1791,8 @@ "AAB_UPLOAD_ERROR", "APP_NOT_FOUND", "AAB_ADHOC_SHARING_KEY_NOT_REGISTERED", - "AAB_ANDROID_DEVELOPER_CONSOLE_ACCOUNT_NOT_FOUND" + "AAB_ANDROID_DEVELOPER_CONSOLE_ACCOUNT_NOT_FOUND", + "AAB_ANDROID_DEVELOPER_CONSOLE_PACKAGE_NOT_FOUND" ], "enumDescriptions": [ "", @@ -1818,7 +1819,8 @@ "", "Happens if the Firebase app no longer exists by the time of extraction", "", - "A corresponding Android Developer Console account for this app's Play Console account was not found." + "A corresponding Android Developer Console account for this app's Play Console account was not found.", + "The package was not found in the Android Developer Console." ], "type": "string" }, diff --git a/discovery/index.json b/discovery/index.json index 94c57e63ade..055d287bb65 100644 --- a/discovery/index.json +++ b/discovery/index.json @@ -3770,6 +3770,36 @@ "title": "Google Forms API", "version": "v1" }, + { + "description": "Cloud FTP is a managed service that allows transferring files directly to Google Cloud Storage using SFTP.", + "discoveryRestUrl": "https://ftp.googleapis.com/$discovery/rest?version=v1alpha", + "documentationLink": "https://cloud.google.com/cloud-ftp/overview", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "ftp:v1alpha", + "kind": "discovery#directoryItem", + "name": "ftp", + "preferred": false, + "title": "Cloud FTP API", + "version": "v1alpha" + }, + { + "description": "Cloud FTP is a managed service that allows transferring files directly to Google Cloud Storage using SFTP.", + "discoveryRestUrl": "https://ftp.googleapis.com/$discovery/rest?version=v1", + "documentationLink": "https://cloud.google.com/cloud-ftp/overview", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "ftp:v1", + "kind": "discovery#directoryItem", + "name": "ftp", + "preferred": true, + "title": "Cloud FTP API", + "version": "v1" + }, { "description": "The Google Play Games Service allows developers to enhance games with social leaderboards, achievements, game state, sign-in with Google, and more.", "discoveryRestUrl": "https://games.googleapis.com/$discovery/rest?version=v1", @@ -4820,6 +4850,21 @@ "title": "Merchant API", "version": "lfp_v1beta" }, + { + "description": "Programmatically manage your Merchant Center Accounts.", + "discoveryRestUrl": "https://merchantapi.googleapis.com/$discovery/rest?version=loyaltycustomers_v1", + "documentationLink": "https://developers.google.com/merchant/api", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "merchantapi:loyaltycustomers_v1", + "kind": "discovery#directoryItem", + "name": "merchantapi", + "preferred": false, + "title": "Merchant API", + "version": "loyaltycustomers_v1" + }, { "description": "Programmatically manage your Merchant Center Accounts.", "discoveryRestUrl": "https://merchantapi.googleapis.com/$discovery/rest?version=notifications_v1", diff --git a/discovery/kmsinventory-v1.json b/discovery/kmsinventory-v1.json index 58f39d6ca8a..6c83a68672a 100644 --- a/discovery/kmsinventory-v1.json +++ b/discovery/kmsinventory-v1.json @@ -306,7 +306,7 @@ } } }, - "revision": "20260705", + "revision": "20260802", "rootUrl": "https://kmsinventory.googleapis.com/", "schemas": { "GoogleCloudKmsInventoryV1ListCryptoKeysResponse": { @@ -618,6 +618,9 @@ "PQ_SIGN_ML_DSA_44_EXTERNAL_MU", "PQ_SIGN_ML_DSA_65_EXTERNAL_MU", "PQ_SIGN_ML_DSA_87_EXTERNAL_MU", + "KEM_ECDH_P256", + "KEM_ECDH_P384", + "KEM_ECDH_P521", "AES_256_KWP" ], "enumDescriptions": [ @@ -668,6 +671,9 @@ "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 1. Randomized version supporting externally-computed message representatives.", "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 3. Randomized version supporting externally-computed message representatives.", "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 5. Randomized version supporting externally-computed message representatives.", + "Key encapsulation: Elliptic Curve Diffie-Hellman with NIST P-256 key that returns shared secret.", + "Key encapsulation: Elliptic Curve Diffie-Hellman with NIST P-384 key that returns shared secret.", + "Key encapsulation: Elliptic Curve Diffie-Hellman with NIST P-521 key that returns shared secret.", "AES key wrap with zero padding algorithm (RFC 5649). Can only be used by keys with purpose AES_WRAPPING." ], "readOnly": true, @@ -859,6 +865,9 @@ "PQ_SIGN_ML_DSA_44_EXTERNAL_MU", "PQ_SIGN_ML_DSA_65_EXTERNAL_MU", "PQ_SIGN_ML_DSA_87_EXTERNAL_MU", + "KEM_ECDH_P256", + "KEM_ECDH_P384", + "KEM_ECDH_P521", "AES_256_KWP" ], "enumDescriptions": [ @@ -909,6 +918,9 @@ "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 1. Randomized version supporting externally-computed message representatives.", "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 3. Randomized version supporting externally-computed message representatives.", "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 5. Randomized version supporting externally-computed message representatives.", + "Key encapsulation: Elliptic Curve Diffie-Hellman with NIST P-256 key that returns shared secret.", + "Key encapsulation: Elliptic Curve Diffie-Hellman with NIST P-384 key that returns shared secret.", + "Key encapsulation: Elliptic Curve Diffie-Hellman with NIST P-521 key that returns shared secret.", "AES key wrap with zero padding algorithm (RFC 5649). Can only be used by keys with purpose AES_WRAPPING." ], "type": "string" diff --git a/src/apis/index.ts b/src/apis/index.ts index ba9d0720560..ac27ef94205 100644 --- a/src/apis/index.ts +++ b/src/apis/index.ts @@ -414,6 +414,7 @@ import { import {VERSIONS as firestoreVersions, firestore} from './firestore'; import {VERSIONS as fitnessVersions, fitness} from './fitness'; import {VERSIONS as formsVersions, forms} from './forms'; +import {VERSIONS as ftpVersions, ftp} from './ftp'; import {VERSIONS as gamesVersions, games} from './games'; import { VERSIONS as gamesConfigurationVersions, @@ -986,6 +987,7 @@ export const APIS: APIList = { firestore: firestoreVersions, fitness: fitnessVersions, forms: formsVersions, + ftp: ftpVersions, games: gamesVersions, gamesConfiguration: gamesConfigurationVersions, gamesManagement: gamesManagementVersions, @@ -1320,6 +1322,7 @@ export class GeneratedAPIs { firestore = firestore; fitness = fitness; forms = forms; + ftp = ftp; games = games; gamesConfiguration = gamesConfiguration; gamesManagement = gamesManagement; diff --git a/src/index.ts b/src/index.ts index c40b7ce9ae4..0d32d6a9684 100644 --- a/src/index.ts +++ b/src/index.ts @@ -57,6 +57,7 @@ export {alertcenter_v1beta1} from './apis/alertcenter/v1beta1'; export {alloydb_v1} from './apis/alloydb/v1'; export {alloydb_v1alpha} from './apis/alloydb/v1alpha'; export {alloydb_v1beta} from './apis/alloydb/v1beta'; +export {analytics_v3} from './apis/analytics/v3'; export {analyticsadmin_v1alpha} from './apis/analyticsadmin/v1alpha'; export {analyticsadmin_v1beta} from './apis/analyticsadmin/v1beta'; export {analyticsdata_v1alpha} from './apis/analyticsdata/v1alpha'; @@ -310,6 +311,8 @@ export {firestore_v1beta1} from './apis/firestore/v1beta1'; export {firestore_v1beta2} from './apis/firestore/v1beta2'; export {fitness_v1} from './apis/fitness/v1'; export {forms_v1} from './apis/forms/v1'; +export {ftp_v1} from './apis/ftp/v1'; +export {ftp_v1alpha} from './apis/ftp/v1alpha'; export {games_v1} from './apis/games/v1'; export {gamesConfiguration_v1configuration} from './apis/gamesConfiguration/v1configuration'; export {gamesManagement_v1management} from './apis/gamesManagement/v1management'; From df10ec8739c80ff0c95255e238286fe60a6aa476 Mon Sep 17 00:00:00 2001 From: Owl Bot Date: Thu, 6 Aug 2026 01:53:43 +0000 Subject: [PATCH 23/23] =?UTF-8?q?=F0=9F=A6=89=20Updates=20from=20OwlBot=20?= =?UTF-8?q?post-processor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --- release-please-config.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/release-please-config.json b/release-please-config.json index 271d136ea71..e16587a353b 100644 --- a/release-please-config.json +++ b/release-please-config.json @@ -332,6 +332,7 @@ "src/apis/firebasecrashlytics": {}, "src/apis/databasecenter": {}, "src/apis/cloudproductregistry": {}, - "src/apis/agentidentity": {} + "src/apis/agentidentity": {}, + "src/apis/ftp": {} } } \ No newline at end of file