diff --git a/DiscoveryJson/aiplatform.v1.json b/DiscoveryJson/aiplatform.v1.json index dfce94c68e..04de5254ac 100644 --- a/DiscoveryJson/aiplatform.v1.json +++ b/DiscoveryJson/aiplatform.v1.json @@ -4543,6 +4543,11 @@ "location": "query", "type": "string" }, + "gdcZone": { + "description": "Optional. Configures the Google Distributed Cloud (GDC) environment for online prediction. Only set this field when the Endpoint is to be deployed in a GDC environment.", + "location": "query", + "type": "string" + }, "orderBy": { "description": "A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending. Supported fields: * `display_name` * `create_time` * `update_time` Example: `display_name, create_time desc`.", "location": "query", @@ -4582,7 +4587,7 @@ ] }, "mutateDeployedModel": { - "description": "Updates an existing deployed model. Updatable fields include `min_replica_count`, `max_replica_count`, `autoscaling_metric_specs`, `disable_container_logging` (v1 only), and `enable_container_logging` (v1beta1 only).", + "description": "Updates an existing deployed model. Updatable fields include `min_replica_count`, `max_replica_count`, `required_replica_count`, `autoscaling_metric_specs`, `disable_container_logging` (v1 only), and `enable_container_logging` (v1beta1 only).", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpoints/{endpointsId}:mutateDeployedModel", "httpMethod": "POST", "id": "aiplatform.projects.locations.endpoints.mutateDeployedModel", @@ -20253,7 +20258,7 @@ } } }, - "revision": "20250711", + "revision": "20250715", "rootUrl": "https://aiplatform.googleapis.com/", "schemas": { "CloudAiLargeModelsVisionGenerateVideoResponse": { @@ -24410,6 +24415,10 @@ "modelDisplayName": { "description": "Optional. The user-specified display name of the uploaded model. If not set, a default name will be used.", "type": "string" + }, + "modelUserId": { + "description": "Optional. The ID to use for the uploaded Model, which will become the final component of the model resource name. When not provided, Vertex AI will generate a value for this ID. When Model Registry model is provided, this field will be ignored. This value may be up to 63 characters, and valid characters are `[a-z0-9_-]`. The first character cannot be a number or hyphen.", + "type": "string" } }, "type": "object" @@ -24608,6 +24617,10 @@ "$ref": "GoogleCloudAiplatformV1FasterDeploymentConfig", "description": "Configuration for faster model deployment." }, + "gdcConnectedModel": { + "description": "GDC pretrained / Gemini model name. The model name is a plain model name, e.g. gemini-1.5-flash-002.", + "type": "string" + }, "id": { "description": "Immutable. The ID of the DeployedModel. If not provided upon deployment, Vertex AI will generate a value for this ID. This value should be 1-10 characters, and valid characters are `/[0-9]/`.", "type": "string" @@ -24960,6 +24973,10 @@ "description": "Used to perform consistent read-modify-write updates. If not set, a blind \"overwrite\" update happens.", "type": "string" }, + "gdcConfig": { + "$ref": "GoogleCloudAiplatformV1GdcConfig", + "description": "Configures the Google Distributed Cloud (GDC) environment for online prediction. Only set this field when the Endpoint is to be deployed in a GDC environment." + }, "genAiAdvancedFeaturesConfig": { "$ref": "GoogleCloudAiplatformV1GenAiAdvancedFeaturesConfig", "description": "Optional. Configuration for GenAiAdvancedFeatures. If the endpoint is serving GenAI models, advanced features like native RAG integration can be configured. Currently, only Model Garden models are supported." @@ -28374,6 +28391,17 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1GdcConfig": { + "description": "Google Distributed Cloud (GDC) config.", + "id": "GoogleCloudAiplatformV1GdcConfig", + "properties": { + "zone": { + "description": "GDC zone. A cluster will be designated for the Vertex AI workload in this zone.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1GenAiAdvancedFeaturesConfig": { "description": "Configuration for GenAiAdvancedFeatures.", "id": "GoogleCloudAiplatformV1GenAiAdvancedFeaturesConfig", @@ -33045,7 +33073,7 @@ "properties": { "deployedModel": { "$ref": "GoogleCloudAiplatformV1DeployedModel", - "description": "Required. The DeployedModel to be mutated within the Endpoint. Only the following fields can be mutated: * `min_replica_count` in either DedicatedResources or AutomaticResources * `max_replica_count` in either DedicatedResources or AutomaticResources * autoscaling_metric_specs * `disable_container_logging` (v1 only) * `enable_container_logging` (v1beta1 only)" + "description": "Required. The DeployedModel to be mutated within the Endpoint. Only the following fields can be mutated: * `min_replica_count` in either DedicatedResources or AutomaticResources * `max_replica_count` in either DedicatedResources or AutomaticResources * `required_replica_count` in DedicatedResources * autoscaling_metric_specs * `disable_container_logging` (v1 only) * `enable_container_logging` (v1beta1 only)" }, "updateMask": { "description": "Required. The update mask applies to the resource. See google.protobuf.FieldMask.", @@ -44628,7 +44656,7 @@ "type": "string" }, "learningRateMultiplier": { - "description": "Optional. Multiplier for adjusting the default learning rate. Mutually exclusive with `learning_rate`.", + "description": "Optional. Multiplier for adjusting the default learning rate. Mutually exclusive with `learning_rate`. This feature is only available for 1P models.", "format": "double", "type": "number" } diff --git a/DiscoveryJson/aiplatform.v1beta1.json b/DiscoveryJson/aiplatform.v1beta1.json index 97104ba990..f0819a1660 100644 --- a/DiscoveryJson/aiplatform.v1beta1.json +++ b/DiscoveryJson/aiplatform.v1beta1.json @@ -1070,6 +1070,31 @@ }, "projects": { "methods": { + "fetchPublisherModelConfig": { + "description": "Fetches the configs of publisher models.", + "flatPath": "v1beta1/projects/{projectsId}:fetchPublisherModelConfig", + "httpMethod": "GET", + "id": "aiplatform.projects.fetchPublisherModelConfig", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the publisher model, in the format of `projects/{project}/locations/{location}/publishers/{publisher}/models/{model}`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:fetchPublisherModelConfig", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1PublisherModelConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "getCacheConfig": { "description": "Gets a GenAI cache config.", "flatPath": "v1beta1/projects/{projectsId}/cacheConfig", @@ -1095,6 +1120,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "setPublisherModelConfig": { + "description": "Sets (creates or updates) configs of publisher models. For example, sets the request/response logging config.", + "flatPath": "v1beta1/projects/{projectsId}:setPublisherModelConfig", + "httpMethod": "POST", + "id": "aiplatform.projects.setPublisherModelConfig", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the publisher model, in the format of `projects/{project}/locations/{location}/publishers/{publisher}/models/{model}`.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:setPublisherModelConfig", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SetPublisherModelConfigRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "updateCacheConfig": { "description": "Updates a cache config.", "flatPath": "v1beta1/projects/{projectsId}/cacheConfig", @@ -5126,6 +5179,11 @@ "location": "query", "type": "string" }, + "gdcZone": { + "description": "Optional. Configures the Google Distributed Cloud (GDC) environment for online prediction. Only set this field when the Endpoint is to be deployed in a GDC environment.", + "location": "query", + "type": "string" + }, "pageSize": { "description": "Optional. The standard list page size.", "format": "int32", @@ -5160,7 +5218,7 @@ ] }, "mutateDeployedModel": { - "description": "Updates an existing deployed model. Updatable fields include `min_replica_count`, `max_replica_count`, `autoscaling_metric_specs`, `disable_container_logging` (v1 only), and `enable_container_logging` (v1beta1 only).", + "description": "Updates an existing deployed model. Updatable fields include `min_replica_count`, `max_replica_count`, `required_replica_count`, `autoscaling_metric_specs`, `disable_container_logging` (v1 only), and `enable_container_logging` (v1beta1 only).", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/endpoints/{endpointsId}:mutateDeployedModel", "httpMethod": "POST", "id": "aiplatform.projects.locations.endpoints.mutateDeployedModel", @@ -25262,7 +25320,7 @@ } } }, - "revision": "20250711", + "revision": "20250715", "rootUrl": "https://aiplatform.googleapis.com/", "schemas": { "CloudAiLargeModelsVisionGenerateVideoResponse": { @@ -29768,6 +29826,10 @@ "description": "Request message for ModelGardenService.Deploy.", "id": "GoogleCloudAiplatformV1beta1DeployRequest", "properties": { + "customModel": { + "$ref": "GoogleCloudAiplatformV1beta1DeployRequestCustomModel", + "description": "The custom model to deploy from a Google Cloud Storage URI." + }, "deployConfig": { "$ref": "GoogleCloudAiplatformV1beta1DeployRequestDeployConfig", "description": "Optional. The deploy config to use for the deployment. If not specified, the default deploy config will be used." @@ -29791,6 +29853,22 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1DeployRequestCustomModel": { + "description": "The custom model to deploy from model weights in a Google Cloud Storage URI or Model Registry model.", + "id": "GoogleCloudAiplatformV1beta1DeployRequestCustomModel", + "properties": { + "gcsUri": { + "description": "Immutable. The Google Cloud Storage URI of the custom model, storing weights and config files (which can be used to infer the base model).", + "type": "string" + }, + "modelId": { + "deprecated": true, + "description": "Optional. Deprecated. Use ModelConfig.model_user_id instead.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1DeployRequestDeployConfig": { "description": "The deploy config to use for the deployment.", "id": "GoogleCloudAiplatformV1beta1DeployRequestDeployConfig", @@ -29851,6 +29929,10 @@ "modelDisplayName": { "description": "Optional. The user-specified display name of the uploaded model. If not set, a default name will be used.", "type": "string" + }, + "modelUserId": { + "description": "Optional. The ID to use for the uploaded Model, which will become the final component of the model resource name. When not provided, Vertex AI will generate a value for this ID. When Model Registry model is provided, this field will be ignored. This value may be up to 63 characters, and valid characters are `[a-z0-9_-]`. The first character cannot be a number or hyphen.", + "type": "string" } }, "type": "object" @@ -30038,6 +30120,10 @@ "$ref": "GoogleCloudAiplatformV1beta1FasterDeploymentConfig", "description": "Configuration for faster model deployment." }, + "gdcConnectedModel": { + "description": "GDC pretrained / Gemini model name. The model name is a plain model name, e.g. gemini-1.5-flash-002.", + "type": "string" + }, "id": { "description": "Immutable. The ID of the DeployedModel. If not provided upon deployment, Vertex AI will generate a value for this ID. This value should be 1-10 characters, and valid characters are `/[0-9]/`.", "type": "string" @@ -30483,6 +30569,10 @@ "description": "Used to perform consistent read-modify-write updates. If not set, a blind \"overwrite\" update happens.", "type": "string" }, + "gdcConfig": { + "$ref": "GoogleCloudAiplatformV1beta1GdcConfig", + "description": "Configures the Google Distributed Cloud (GDC) environment for online prediction. Only set this field when the Endpoint is to be deployed in a GDC environment." + }, "genAiAdvancedFeaturesConfig": { "$ref": "GoogleCloudAiplatformV1beta1GenAiAdvancedFeaturesConfig", "description": "Optional. Configuration for GenAiAdvancedFeatures. If the endpoint is serving GenAI models, advanced features like native RAG integration can be configured. Currently, only Model Garden models are supported." @@ -34787,6 +34877,17 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1GdcConfig": { + "description": "Google Distributed Cloud (GDC) config.", + "id": "GoogleCloudAiplatformV1beta1GdcConfig", + "properties": { + "zone": { + "description": "GDC zone. A cluster will be designated for the Vertex AI workload in this zone.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1GeminiExample": { "description": "Format for Gemini examples used for Vertex Multimodal datasets.", "id": "GoogleCloudAiplatformV1beta1GeminiExample", @@ -40896,7 +40997,7 @@ "properties": { "deployedModel": { "$ref": "GoogleCloudAiplatformV1beta1DeployedModel", - "description": "Required. The DeployedModel to be mutated within the Endpoint. Only the following fields can be mutated: * `min_replica_count` in either DedicatedResources or AutomaticResources * `max_replica_count` in either DedicatedResources or AutomaticResources * autoscaling_metric_specs * `disable_container_logging` (v1 only) * `enable_container_logging` (v1beta1 only)" + "description": "Required. The DeployedModel to be mutated within the Endpoint. Only the following fields can be mutated: * `min_replica_count` in either DedicatedResources or AutomaticResources * `max_replica_count` in either DedicatedResources or AutomaticResources * `required_replica_count` in DedicatedResources * autoscaling_metric_specs * `disable_container_logging` (v1 only) * `enable_container_logging` (v1beta1 only)" }, "updateMask": { "description": "Required. The update mask applies to the resource. See google.protobuf.FieldMask.", @@ -52408,6 +52509,11 @@ "description": "Optional. The display name of the session.", "type": "string" }, + "expireTime": { + "description": "Optional. Timestamp of when this session is considered expired. This is *always* provided on output, regardless of what was sent on input.", + "format": "google-datetime", + "type": "string" + }, "name": { "description": "Identifier. The resource name of the session. Format: 'projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}'.", "type": "string" @@ -52420,6 +52526,11 @@ "description": "Optional. Session specific memory which stores key conversation points.", "type": "object" }, + "ttl": { + "description": "Optional. Input only. The TTL for this session.", + "format": "google-duration", + "type": "string" + }, "updateTime": { "description": "Output only. Timestamp when the session was updated.", "format": "google-datetime", @@ -53946,7 +54057,7 @@ "type": "string" }, "learningRateMultiplier": { - "description": "Optional. Multiplier for adjusting the default learning rate. Mutually exclusive with `learning_rate`.", + "description": "Optional. Multiplier for adjusting the default learning rate. Mutually exclusive with `learning_rate`. This feature is only available for 1P models.", "format": "double", "type": "number" } diff --git a/DiscoveryJson/androidpublisher.v3.json b/DiscoveryJson/androidpublisher.v3.json index e60b85effc..64abe891c9 100644 --- a/DiscoveryJson/androidpublisher.v3.json +++ b/DiscoveryJson/androidpublisher.v3.json @@ -2791,6 +2791,696 @@ } }, "resources": { + "onetimeproducts": { + "methods": { + "batchDelete": { + "description": "Deletes one or more one-time products.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts:batchDelete", + "httpMethod": "POST", + "id": "androidpublisher.monetization.onetimeproducts.batchDelete", + "parameterOrder": [ + "packageName" + ], + "parameters": { + "packageName": { + "description": "Required. The parent app (package name) for which the one-time products should be deleted. Must be equal to the package_name field on all the OneTimeProduct resources.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts:batchDelete", + "request": { + "$ref": "BatchDeleteOneTimeProductsRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "batchGet": { + "description": "Reads one or more one-time products.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts:batchGet", + "httpMethod": "GET", + "id": "androidpublisher.monetization.onetimeproducts.batchGet", + "parameterOrder": [ + "packageName" + ], + "parameters": { + "packageName": { + "description": "Required. The parent app (package name) for which the products should be retrieved. Must be equal to the package_name field on all requests.", + "location": "path", + "required": true, + "type": "string" + }, + "productIds": { + "description": "Required. A list of up to 100 product IDs to retrieve. All IDs must be different.", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts:batchGet", + "response": { + "$ref": "BatchGetOneTimeProductsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "batchUpdate": { + "description": "Creates or updates one or more one-time products.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts:batchUpdate", + "httpMethod": "POST", + "id": "androidpublisher.monetization.onetimeproducts.batchUpdate", + "parameterOrder": [ + "packageName" + ], + "parameters": { + "packageName": { + "description": "Required. The parent app (package name) for which the one-time products should be updated. Must be equal to the package_name field on all the OneTimeProduct resources.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts:batchUpdate", + "request": { + "$ref": "BatchUpdateOneTimeProductsRequest" + }, + "response": { + "$ref": "BatchUpdateOneTimeProductsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "delete": { + "description": "Deletes a one-time product.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}", + "httpMethod": "DELETE", + "id": "androidpublisher.monetization.onetimeproducts.delete", + "parameterOrder": [ + "packageName", + "productId" + ], + "parameters": { + "latencyTolerance": { + "description": "Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive.", + "enum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "enumDescriptions": [ + "Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE.", + "The update will propagate to clients within several minutes on average and up to a few hours in rare cases. Throughput is limited to 7,200 updates per app per hour.", + "The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 updates per app per hour using batch modification methods." + ], + "location": "query", + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the one-time product to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "Required. The one-time product ID of the one-time product to delete.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}", + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "get": { + "description": "Reads a single one-time product.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}", + "httpMethod": "GET", + "id": "androidpublisher.monetization.onetimeproducts.get", + "parameterOrder": [ + "packageName", + "productId" + ], + "parameters": { + "packageName": { + "description": "Required. The parent app (package name) of the product to retrieve.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "Required. The product ID of the product to retrieve.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}", + "response": { + "$ref": "OneTimeProduct" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "list": { + "description": "Lists all one-time products under a given app.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts", + "httpMethod": "GET", + "id": "androidpublisher.monetization.onetimeproducts.list", + "parameterOrder": [ + "packageName" + ], + "parameters": { + "packageName": { + "description": "Required. The parent app (package name) for which the one-time product should be read.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of one-time product to return. The service may return fewer than this value. If unspecified, at most 50 one-time products will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListOneTimeProducts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListOneTimeProducts` must match the call that provided the page token.", + "location": "query", + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts", + "response": { + "$ref": "ListOneTimeProductsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "patch": { + "description": "Creates or updates a one-time product.", + "flatPath": "androidpublisher/v3/applications/{packageName}/onetimeproducts/{productId}", + "httpMethod": "PATCH", + "id": "androidpublisher.monetization.onetimeproducts.patch", + "parameterOrder": [ + "packageName", + "productId" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, and the one-time product with the given package_name and product_id doesn't exist, the one-time product will be created. If a new one-time product is created, update_mask is ignored.", + "location": "query", + "type": "boolean" + }, + "latencyTolerance": { + "description": "Optional. The latency tolerance for the propagation of this product upsert. Defaults to latency-sensitive.", + "enum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "enumDescriptions": [ + "Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE.", + "The update will propagate to clients within several minutes on average and up to a few hours in rare cases. Throughput is limited to 7,200 updates per app per hour.", + "The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 updates per app per hour using batch modification methods." + ], + "location": "query", + "type": "string" + }, + "packageName": { + "description": "Required. Immutable. Package name of the parent app.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "Required. Immutable. Unique product ID of the product. Unique within the parent app. Product IDs must start with a number or lowercase letter, and can contain numbers (0-9), lowercase letters (a-z), underscores (_), and periods (.).", + "location": "path", + "required": true, + "type": "string" + }, + "regionsVersion.version": { + "description": "Required. A string representing the version of available regions being used for the specified resource. Regional prices and latest supported version for the resource have to be specified according to the information published in [this article](https://support.google.com/googleplay/android-developer/answer/10532353). Each time the supported locations substantially change, the version will be incremented. Using this field will ensure that creating and updating the resource with an older region's version and set of regional prices and currencies will succeed even though a new version is available.", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Required. The list of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/onetimeproducts/{productId}", + "request": { + "$ref": "OneTimeProduct" + }, + "response": { + "$ref": "OneTimeProduct" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + }, + "resources": { + "purchaseOptions": { + "methods": { + "batchDelete": { + "description": "Deletes purchase options across one or multiple one-time products. By default this operation will fail if there are any existing offers under the deleted purchase options. Use the force parameter to override the default behavior.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions:batchDelete", + "httpMethod": "POST", + "id": "androidpublisher.monetization.onetimeproducts.purchaseOptions.batchDelete", + "parameterOrder": [ + "packageName", + "productId" + ], + "parameters": { + "packageName": { + "description": "Required. The parent app (package name) of the purchase options to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "Required. The product ID of the parent one-time product, if all purchase options to delete belong to the same one-time product. If this batch delete spans multiple one-time products, set this field to \"-\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions:batchDelete", + "request": { + "$ref": "BatchDeletePurchaseOptionsRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "batchUpdateStates": { + "description": "Activates or deactivates purchase options across one or multiple one-time products.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions:batchUpdateStates", + "httpMethod": "POST", + "id": "androidpublisher.monetization.onetimeproducts.purchaseOptions.batchUpdateStates", + "parameterOrder": [ + "packageName", + "productId" + ], + "parameters": { + "packageName": { + "description": "Required. The parent app (package name) of the updated purchase options.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "Required. The product ID of the parent one-time product, if all updated purchase options belong to the same one-time product. If this batch update spans multiple one-time products, set this field to \"-\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions:batchUpdateStates", + "request": { + "$ref": "BatchUpdatePurchaseOptionStatesRequest" + }, + "response": { + "$ref": "BatchUpdatePurchaseOptionStatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + }, + "resources": { + "offers": { + "methods": { + "activate": { + "description": "Activates a one-time product offer.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers/{offerId}:activate", + "httpMethod": "POST", + "id": "androidpublisher.monetization.onetimeproducts.purchaseOptions.offers.activate", + "parameterOrder": [ + "packageName", + "productId", + "purchaseOptionId", + "offerId" + ], + "parameters": { + "offerId": { + "description": "Required. The offer ID of the offer to activate.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the offer to activate.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "Required. The parent one-time product (ID) of the offer to activate.", + "location": "path", + "required": true, + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The parent purchase option (ID) of the offer to activate.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers/{offerId}:activate", + "request": { + "$ref": "ActivateOneTimeProductOfferRequest" + }, + "response": { + "$ref": "OneTimeProductOffer" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "batchDelete": { + "description": "Deletes one or more one-time product offers.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers:batchDelete", + "httpMethod": "POST", + "id": "androidpublisher.monetization.onetimeproducts.purchaseOptions.offers.batchDelete", + "parameterOrder": [ + "packageName", + "productId", + "purchaseOptionId" + ], + "parameters": { + "packageName": { + "description": "Required. The parent app (package name) of the offers to delete. Must be equal to the package_name field on all the OneTimeProductOffer resources.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "Required. The product ID of the parent one-time product, if all offers to delete belong to the same product. If this request spans multiple one-time products, set this field to \"-\".", + "location": "path", + "required": true, + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The parent purchase option (ID) for which the offers should be deleted. May be specified as '-' to update offers from multiple purchase options.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers:batchDelete", + "request": { + "$ref": "BatchDeleteOneTimeProductOffersRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "batchGet": { + "description": "Reads one or more one-time product offers.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers:batchGet", + "httpMethod": "POST", + "id": "androidpublisher.monetization.onetimeproducts.purchaseOptions.offers.batchGet", + "parameterOrder": [ + "packageName", + "productId", + "purchaseOptionId" + ], + "parameters": { + "packageName": { + "description": "Required. The parent app (package name) of the updated offers. Must be equal to the package_name field on all the updated OneTimeProductOffer resources.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "Required. The product ID of the parent one-time product, if all updated offers belong to the same product. If this request spans multiple one-time products, set this field to \"-\".", + "location": "path", + "required": true, + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The parent purchase option (ID) for which the offers should be updated. May be specified as '-' to update offers from multiple purchase options.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers:batchGet", + "request": { + "$ref": "BatchGetOneTimeProductOffersRequest" + }, + "response": { + "$ref": "BatchGetOneTimeProductOffersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "batchUpdate": { + "description": "Creates or updates one or more one-time product offers.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers:batchUpdate", + "httpMethod": "POST", + "id": "androidpublisher.monetization.onetimeproducts.purchaseOptions.offers.batchUpdate", + "parameterOrder": [ + "packageName", + "productId", + "purchaseOptionId" + ], + "parameters": { + "packageName": { + "description": "Required. The parent app (package name) of the updated offers. Must be equal to the package_name field on all the updated OneTimeProductOffer resources.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "Required. The product ID of the parent one-time product, if all updated offers belong to the same product. If this request spans multiple one-time products, set this field to \"-\".", + "location": "path", + "required": true, + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The parent purchase option (ID) for which the offers should be updated. May be specified as '-' to update offers from multiple purchase options.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers:batchUpdate", + "request": { + "$ref": "BatchUpdateOneTimeProductOffersRequest" + }, + "response": { + "$ref": "BatchUpdateOneTimeProductOffersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "batchUpdateStates": { + "description": "Updates a batch of one-time product offer states.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers:batchUpdateStates", + "httpMethod": "POST", + "id": "androidpublisher.monetization.onetimeproducts.purchaseOptions.offers.batchUpdateStates", + "parameterOrder": [ + "packageName", + "productId", + "purchaseOptionId" + ], + "parameters": { + "packageName": { + "description": "Required. The parent app (package name) of the updated one-time product offers.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "Required. The product ID of the parent one-time product, if all updated offers belong to the same one-time product. If this batch update spans multiple one-time products, set this field to \"-\".", + "location": "path", + "required": true, + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The purchase option ID of the parent purchase option, if all updated offers belong to the same purchase option. If this batch update spans multiple purchase options, set this field to \"-\".", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers:batchUpdateStates", + "request": { + "$ref": "BatchUpdateOneTimeProductOfferStatesRequest" + }, + "response": { + "$ref": "BatchUpdateOneTimeProductOfferStatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "cancel": { + "description": "Cancels a one-time product offer.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers/{offerId}:cancel", + "httpMethod": "POST", + "id": "androidpublisher.monetization.onetimeproducts.purchaseOptions.offers.cancel", + "parameterOrder": [ + "packageName", + "productId", + "purchaseOptionId", + "offerId" + ], + "parameters": { + "offerId": { + "description": "Required. The offer ID of the offer to cancel.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the offer to cancel.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "Required. The parent one-time product (ID) of the offer to cancel.", + "location": "path", + "required": true, + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The parent purchase option (ID) of the offer to cancel.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers/{offerId}:cancel", + "request": { + "$ref": "CancelOneTimeProductOfferRequest" + }, + "response": { + "$ref": "OneTimeProductOffer" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "deactivate": { + "description": "Deactivates a one-time product offer.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers/{offerId}:deactivate", + "httpMethod": "POST", + "id": "androidpublisher.monetization.onetimeproducts.purchaseOptions.offers.deactivate", + "parameterOrder": [ + "packageName", + "productId", + "purchaseOptionId", + "offerId" + ], + "parameters": { + "offerId": { + "description": "Required. The offer ID of the offer to deactivate.", + "location": "path", + "required": true, + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the offer to deactivate.", + "location": "path", + "required": true, + "type": "string" + }, + "productId": { + "description": "Required. The parent one-time product (ID) of the offer to deactivate.", + "location": "path", + "required": true, + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The parent purchase option (ID) of the offer to deactivate.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers/{offerId}:deactivate", + "request": { + "$ref": "DeactivateOneTimeProductOfferRequest" + }, + "response": { + "$ref": "OneTimeProductOffer" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "list": { + "description": "Lists all offers under a given app, product, or purchase option.", + "flatPath": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers", + "httpMethod": "GET", + "id": "androidpublisher.monetization.onetimeproducts.purchaseOptions.offers.list", + "parameterOrder": [ + "packageName", + "productId", + "purchaseOptionId" + ], + "parameters": { + "packageName": { + "description": "Required. The parent app (package name) for which the offers should be read.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of offers to return. The service may return fewer than this value. If unspecified, at most 50 offers will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListOneTimeProductsOffers` call. Provide this to retrieve the subsequent page. When paginating, product_id, package_name and purchase_option_id provided to `ListOneTimeProductsOffersRequest` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "productId": { + "description": "Required. The parent one-time product (ID) for which the offers should be read. May be specified as '-' to read all offers under an app.", + "location": "path", + "required": true, + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The parent purchase option (ID) for which the offers should be read. May be specified as '-' to read all offers under a one-time product or an app. Must be specified as '-' if product_id is specified as '-'.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers", + "response": { + "$ref": "ListOneTimeProductOffersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } + } + } + } + } + }, "subscriptions": { "methods": { "archive": { @@ -4831,7 +5521,7 @@ } } }, - "revision": "20250710", + "revision": "20250719", "rootUrl": "https://androidpublisher.googleapis.com/", "schemas": { "Abi": { @@ -4928,6 +5618,76 @@ }, "type": "object" }, + "ActivateOneTimeProductOfferRequest": { + "description": "Request message for ActivateOneTimeProductOffer.", + "id": "ActivateOneTimeProductOfferRequest", + "properties": { + "latencyTolerance": { + "description": "Optional. The latency tolerance for the propagation of this update. Defaults to latency-sensitive.", + "enum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "enumDescriptions": [ + "Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE.", + "The update will propagate to clients within several minutes on average and up to a few hours in rare cases. Throughput is limited to 7,200 updates per app per hour.", + "The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 updates per app per hour using batch modification methods." + ], + "type": "string" + }, + "offerId": { + "description": "Required. The offer ID of the offer to activate.", + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the offer to activate.", + "type": "string" + }, + "productId": { + "description": "Required. The parent one-time product (ID) of the offer to activate.", + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The parent purchase option (ID) of the offer to activate.", + "type": "string" + } + }, + "type": "object" + }, + "ActivatePurchaseOptionRequest": { + "description": "Request message for UpdatePurchaseOptionState.", + "id": "ActivatePurchaseOptionRequest", + "properties": { + "latencyTolerance": { + "description": "Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive.", + "enum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "enumDescriptions": [ + "Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE.", + "The update will propagate to clients within several minutes on average and up to a few hours in rare cases. Throughput is limited to 7,200 updates per app per hour.", + "The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 updates per app per hour using batch modification methods." + ], + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the purchase option to activate.", + "type": "string" + }, + "productId": { + "description": "Required. The parent one-time product (ID) of the purchase option to activate.", + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The purchase option ID of the purchase option to activate.", + "type": "string" + } + }, + "type": "object" + }, "ActivateSubscriptionOfferRequest": { "description": "Request message for ActivateSubscriptionOffer.", "id": "ActivateSubscriptionOfferRequest", @@ -5479,6 +6239,90 @@ }, "type": "object" }, + "BatchDeleteOneTimeProductOffersRequest": { + "description": "Request message for BatchDeleteOneTimeProductOffers.", + "id": "BatchDeleteOneTimeProductOffersRequest", + "properties": { + "requests": { + "description": "Required. A list of update requests of up to 100 elements. All requests must correspond to different offers.", + "items": { + "$ref": "DeleteOneTimeProductOfferRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchDeleteOneTimeProductsRequest": { + "description": "Request message for BatchDeleteOneTimeProduct.", + "id": "BatchDeleteOneTimeProductsRequest", + "properties": { + "requests": { + "description": "Required. A list of delete requests of up to 100 elements. All requests must delete different one-time products.", + "items": { + "$ref": "DeleteOneTimeProductRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchDeletePurchaseOptionsRequest": { + "description": "Request message for BatchDeletePurchaseOption.", + "id": "BatchDeletePurchaseOptionsRequest", + "properties": { + "requests": { + "description": "Required. A list of delete requests of up to 100 elements. All requests must delete purchase options from different one-time products.", + "items": { + "$ref": "DeletePurchaseOptionRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchGetOneTimeProductOffersRequest": { + "description": "Request message for the BatchGetOneTimeProductOffers endpoint.", + "id": "BatchGetOneTimeProductOffersRequest", + "properties": { + "requests": { + "description": "Required. A list of get requests of up to 100 elements. All requests must retrieve different offers.", + "items": { + "$ref": "GetOneTimeProductOfferRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchGetOneTimeProductOffersResponse": { + "description": "Response message for the BatchGetOneTimeProductOffers endpoint.", + "id": "BatchGetOneTimeProductOffersResponse", + "properties": { + "oneTimeProductOffers": { + "description": "The list of updated one-time product offers, in the same order as the request.", + "items": { + "$ref": "OneTimeProductOffer" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchGetOneTimeProductsResponse": { + "description": "Response message for the BatchGetOneTimeProducts endpoint.", + "id": "BatchGetOneTimeProductsResponse", + "properties": { + "oneTimeProducts": { + "description": "The list of requested one-time products, in the same order as the request.", + "items": { + "$ref": "OneTimeProduct" + }, + "type": "array" + } + }, + "type": "object" + }, "BatchGetOrdersResponse": { "description": "Response for the orders.batchGet API.", "id": "BatchGetOrdersResponse", @@ -5590,6 +6434,118 @@ }, "type": "object" }, + "BatchUpdateOneTimeProductOfferStatesRequest": { + "description": "Request message for BatchUpdateOneTimeProductOfferStates.", + "id": "BatchUpdateOneTimeProductOfferStatesRequest", + "properties": { + "requests": { + "description": "Required. The update request list of up to 100 elements. All requests must update different offers.", + "items": { + "$ref": "UpdateOneTimeProductOfferStateRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdateOneTimeProductOfferStatesResponse": { + "description": "Response message for BatchUpdateOneTimeProductOfferStates.", + "id": "BatchUpdateOneTimeProductOfferStatesResponse", + "properties": { + "oneTimeProductOffers": { + "description": "The updated one-time product offers list, in the same order as the request.", + "items": { + "$ref": "OneTimeProductOffer" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdateOneTimeProductOffersRequest": { + "description": "Request message for BatchUpdateOneTimeProductOffers.", + "id": "BatchUpdateOneTimeProductOffersRequest", + "properties": { + "requests": { + "description": "Required. A list of update requests of up to 100 elements. All requests must update different offers.", + "items": { + "$ref": "UpdateOneTimeProductOfferRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdateOneTimeProductOffersResponse": { + "description": "Response message for BatchUpdateOneTimeProductOffers.", + "id": "BatchUpdateOneTimeProductOffersResponse", + "properties": { + "oneTimeProductOffers": { + "description": "The list of updated one-time product offers, in the same order as the request.", + "items": { + "$ref": "OneTimeProductOffer" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdateOneTimeProductsRequest": { + "description": "Request message for BatchUpdateOneTimeProduct.", + "id": "BatchUpdateOneTimeProductsRequest", + "properties": { + "requests": { + "description": "Required. A list of update requests of up to 100 elements. All requests must update different one-time products.", + "items": { + "$ref": "UpdateOneTimeProductRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdateOneTimeProductsResponse": { + "description": "Response message for BatchUpdateOneTimeProduct.", + "id": "BatchUpdateOneTimeProductsResponse", + "properties": { + "oneTimeProducts": { + "description": "The list of updated one-time products list, in the same order as the request.", + "items": { + "$ref": "OneTimeProduct" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdatePurchaseOptionStatesRequest": { + "description": "Request message for BatchUpdatePurchaseOptionStates.", + "id": "BatchUpdatePurchaseOptionStatesRequest", + "properties": { + "requests": { + "description": "Required. The update request list of up to 100 elements. All requests must update different purchase options.", + "items": { + "$ref": "UpdatePurchaseOptionStateRequest" + }, + "type": "array" + } + }, + "type": "object" + }, + "BatchUpdatePurchaseOptionStatesResponse": { + "description": "Response message for BatchUpdatePurchaseOptionStates.", + "id": "BatchUpdatePurchaseOptionStatesResponse", + "properties": { + "oneTimeProducts": { + "description": "The list of updated one-time products. This list will match the requests one to one, in the same order.", + "items": { + "$ref": "OneTimeProduct" + }, + "type": "array" + } + }, + "type": "object" + }, "BatchUpdateSubscriptionOfferStatesRequest": { "description": "Request message for BatchUpdateSubscriptionOfferStates.", "id": "BatchUpdateSubscriptionOfferStatesRequest", @@ -5743,6 +6699,43 @@ "properties": {}, "type": "object" }, + "CancelOneTimeProductOfferRequest": { + "description": "Request message for CancelOneTimeProductOffer.", + "id": "CancelOneTimeProductOfferRequest", + "properties": { + "latencyTolerance": { + "description": "Optional. The latency tolerance for the propagation of this update. Defaults to latency-sensitive.", + "enum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "enumDescriptions": [ + "Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE.", + "The update will propagate to clients within several minutes on average and up to a few hours in rare cases. Throughput is limited to 7,200 updates per app per hour.", + "The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 updates per app per hour using batch modification methods." + ], + "type": "string" + }, + "offerId": { + "description": "Required. The offer ID of the offer to cancel.", + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the offer to cancel.", + "type": "string" + }, + "productId": { + "description": "Required. The parent one-time product (ID) of the offer to cancel.", + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The parent purchase option (ID) of the offer to cancel.", + "type": "string" + } + }, + "type": "object" + }, "CancelSurveyResult": { "description": "Result of the cancel survey when the subscription was canceled by the user.", "id": "CancelSurveyResult", @@ -5957,6 +6950,76 @@ }, "type": "object" }, + "DeactivateOneTimeProductOfferRequest": { + "description": "Request message for DeactivateOneTimeProductOffer.", + "id": "DeactivateOneTimeProductOfferRequest", + "properties": { + "latencyTolerance": { + "description": "Optional. The latency tolerance for the propagation of this update. Defaults to latency-sensitive.", + "enum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "enumDescriptions": [ + "Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE.", + "The update will propagate to clients within several minutes on average and up to a few hours in rare cases. Throughput is limited to 7,200 updates per app per hour.", + "The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 updates per app per hour using batch modification methods." + ], + "type": "string" + }, + "offerId": { + "description": "Required. The offer ID of the offer to deactivate.", + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the offer to deactivate.", + "type": "string" + }, + "productId": { + "description": "Required. The parent one-time product (ID) of the offer to deactivate.", + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The parent purchase option (ID) of the offer to deactivate.", + "type": "string" + } + }, + "type": "object" + }, + "DeactivatePurchaseOptionRequest": { + "description": "Request message for UpdatePurchaseOptionState.", + "id": "DeactivatePurchaseOptionRequest", + "properties": { + "latencyTolerance": { + "description": "Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive.", + "enum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "enumDescriptions": [ + "Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE.", + "The update will propagate to clients within several minutes on average and up to a few hours in rare cases. Throughput is limited to 7,200 updates per app per hour.", + "The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 updates per app per hour using batch modification methods." + ], + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the purchase option to deactivate.", + "type": "string" + }, + "productId": { + "description": "Required. The parent one-time product (ID) of the purchase option to deactivate.", + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The purchase option ID of the purchase option to deactivate.", + "type": "string" + } + }, + "type": "object" + }, "DeactivateSubscriptionOfferRequest": { "description": "Request message for DeactivateSubscriptionOffer.", "id": "DeactivateSubscriptionOfferRequest", @@ -6005,6 +7068,109 @@ }, "type": "object" }, + "DeleteOneTimeProductOfferRequest": { + "description": "Request message for deleting an one-time product offer.", + "id": "DeleteOneTimeProductOfferRequest", + "properties": { + "latencyTolerance": { + "description": "Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive.", + "enum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "enumDescriptions": [ + "Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE.", + "The update will propagate to clients within several minutes on average and up to a few hours in rare cases. Throughput is limited to 7,200 updates per app per hour.", + "The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 updates per app per hour using batch modification methods." + ], + "type": "string" + }, + "offerId": { + "description": "Required. The unique offer ID of the offer to delete.", + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the offer to delete.", + "type": "string" + }, + "productId": { + "description": "Required. The parent one-time product (ID) of the offer to delete.", + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The parent purchase option (ID) of the offer to delete.", + "type": "string" + } + }, + "type": "object" + }, + "DeleteOneTimeProductRequest": { + "description": "Request message for deleting a one-time product.", + "id": "DeleteOneTimeProductRequest", + "properties": { + "latencyTolerance": { + "description": "Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive.", + "enum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "enumDescriptions": [ + "Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE.", + "The update will propagate to clients within several minutes on average and up to a few hours in rare cases. Throughput is limited to 7,200 updates per app per hour.", + "The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 updates per app per hour using batch modification methods." + ], + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the one-time product to delete.", + "type": "string" + }, + "productId": { + "description": "Required. The one-time product ID of the one-time product to delete.", + "type": "string" + } + }, + "type": "object" + }, + "DeletePurchaseOptionRequest": { + "description": "Request message for deleting a purchase option.", + "id": "DeletePurchaseOptionRequest", + "properties": { + "force": { + "description": "Optional. This field has no effect for purchase options with no offers under them. For purchase options with associated offers: * If `force` is set to false (default), an error will be returned. * If `force` is set to true, any associated offers under the purchase option will be deleted.", + "type": "boolean" + }, + "latencyTolerance": { + "description": "Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive.", + "enum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "enumDescriptions": [ + "Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE.", + "The update will propagate to clients within several minutes on average and up to a few hours in rare cases. Throughput is limited to 7,200 updates per app per hour.", + "The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 updates per app per hour using batch modification methods." + ], + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the purchase option to delete.", + "type": "string" + }, + "productId": { + "description": "Required. The parent one-time product (ID) of the purchase option to delete.", + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The purchase option ID of the purchase option to delete.", + "type": "string" + } + }, + "type": "object" + }, "DeobfuscationFile": { "description": "Represents a deobfuscation file.", "id": "DeobfuscationFile", @@ -6776,6 +7942,29 @@ }, "type": "object" }, + "GetOneTimeProductOfferRequest": { + "description": "Request message for GetOneTimeProductOffers.", + "id": "GetOneTimeProductOfferRequest", + "properties": { + "offerId": { + "description": "Required. The unique offer ID of the offer to get.", + "type": "string" + }, + "packageName": { + "description": "Required. The parent app (package name) of the offer to get.", + "type": "string" + }, + "productId": { + "description": "Required. The parent one-time product (ID) of the offer to get.", + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. The parent purchase option (ID) of the offer to get.", + "type": "string" + } + }, + "type": "object" + }, "GetSubscriptionOfferRequest": { "description": "Request message for GetSubscriptionOffer.", "id": "GetSubscriptionOfferRequest", @@ -7422,6 +8611,42 @@ }, "type": "object" }, + "ListOneTimeProductOffersResponse": { + "description": "Response message for ListOneTimeProductOffers.", + "id": "ListOneTimeProductOffersResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "oneTimeProductOffers": { + "description": "The one_time_product offers from the specified request.", + "items": { + "$ref": "OneTimeProductOffer" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListOneTimeProductsResponse": { + "description": "Response message for ListOneTimeProducts.", + "id": "ListOneTimeProductsResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "oneTimeProducts": { + "description": "The one-time products from the specified app.", + "items": { + "$ref": "OneTimeProduct" + }, + "type": "array" + } + }, + "type": "object" + }, "ListSubscriptionOffersResponse": { "description": "Response message for ListSubscriptionOffers.", "id": "ListSubscriptionOffersResponse", @@ -7711,87 +8936,494 @@ }, "type": "object" }, - "MultiAbi": { - "description": "Represents a list of ABIs.", - "id": "MultiAbi", + "MultiAbi": { + "description": "Represents a list of ABIs.", + "id": "MultiAbi", + "properties": { + "abi": { + "description": "A list of targeted ABIs, as represented by the Android Platform", + "items": { + "$ref": "Abi" + }, + "type": "array" + } + }, + "type": "object" + }, + "MultiAbiTargeting": { + "description": "Targeting based on multiple abis.", + "id": "MultiAbiTargeting", + "properties": { + "alternatives": { + "description": "Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.", + "items": { + "$ref": "MultiAbi" + }, + "type": "array" + }, + "value": { + "description": "Value of a multi abi.", + "items": { + "$ref": "MultiAbi" + }, + "type": "array" + } + }, + "type": "object" + }, + "OfferDetails": { + "description": "Offer details information related to a purchase line item.", + "id": "OfferDetails", + "properties": { + "basePlanId": { + "description": "The base plan ID. Present for all base plan and offers.", + "type": "string" + }, + "offerId": { + "description": "The offer ID. Only present for discounted offers.", + "type": "string" + }, + "offerTags": { + "description": "The latest offer tags associated with the offer. It includes tags inherited from the base plan.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OfferTag": { + "description": "Represents a custom tag specified for a product offer.", + "id": "OfferTag", + "properties": { + "tag": { + "description": "Must conform with RFC-1034. That is, this string can only contain lower-case letters (a-z), numbers (0-9), and hyphens (-), and be at most 20 characters.", + "type": "string" + } + }, + "type": "object" + }, + "OneTimeCode": { + "description": "A single use promotion code.", + "id": "OneTimeCode", + "properties": {}, + "type": "object" + }, + "OneTimeExternalTransaction": { + "description": "Represents a one-time transaction.", + "id": "OneTimeExternalTransaction", + "properties": { + "externalTransactionToken": { + "description": "Input only. Provided during the call to Create. Retrieved from the client when the alternative billing flow is launched.", + "type": "string" + } + }, + "type": "object" + }, + "OneTimeProduct": { + "description": "A single one-time product for an app.", + "id": "OneTimeProduct", + "properties": { + "listings": { + "description": "Required. Set of localized title and description data. Must not have duplicate entries with the same language_code.", + "items": { + "$ref": "OneTimeProductListing" + }, + "type": "array" + }, + "offerTags": { + "description": "Optional. List of up to 20 custom tags specified for this one-time product, and returned to the app through the billing library. Purchase options and offers for this product will also receive these tags in the billing library.", + "items": { + "$ref": "OfferTag" + }, + "type": "array" + }, + "packageName": { + "description": "Required. Immutable. Package name of the parent app.", + "type": "string" + }, + "productId": { + "description": "Required. Immutable. Unique product ID of the product. Unique within the parent app. Product IDs must start with a number or lowercase letter, and can contain numbers (0-9), lowercase letters (a-z), underscores (_), and periods (.).", + "type": "string" + }, + "purchaseOptions": { + "description": "Required. The set of purchase options for this one-time product.", + "items": { + "$ref": "OneTimeProductPurchaseOption" + }, + "type": "array" + }, + "regionsVersion": { + "$ref": "RegionsVersion", + "description": "Output only. The version of the regions configuration that was used to generate the one-time product.", + "readOnly": true + }, + "restrictedPaymentCountries": { + "$ref": "RestrictedPaymentCountries", + "description": "Optional. Countries where the purchase of this one-time product is restricted to payment methods registered in the same country. If empty, no payment location restrictions are imposed." + }, + "taxAndComplianceSettings": { + "$ref": "OneTimeProductTaxAndComplianceSettings", + "description": "Details about taxes and legal compliance." + } + }, + "type": "object" + }, + "OneTimeProductBuyPurchaseOption": { + "description": "A purchase option that can be bought.", + "id": "OneTimeProductBuyPurchaseOption", + "properties": { + "legacyCompatible": { + "description": "Optional. Whether this purchase option will be available in legacy PBL flows that do not support one-time products model. Up to one \"buy\" purchase option can be marked as backwards compatible.", + "type": "boolean" + }, + "multiQuantityEnabled": { + "description": "Optional. Whether this purchase option allows multi-quantity. Multi-quantity allows buyer to purchase more than one item in a single checkout.", + "type": "boolean" + } + }, + "type": "object" + }, + "OneTimeProductDiscountedOffer": { + "description": "Configuration specific to discounted offers.", + "id": "OneTimeProductDiscountedOffer", + "properties": { + "endTime": { + "description": "Time when the offer will stop being available.", + "format": "google-datetime", + "type": "string" + }, + "redemptionLimit": { + "description": "Optional. The number of times this offer can be redeemed. If unset or set to 0, allows for unlimited offer redemptions. Otherwise must be a number between 1 and 50 inclusive.", + "format": "int64", + "type": "string" + }, + "startTime": { + "description": "Time when the offer will start being available.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "OneTimeProductListing": { + "description": "Regional store listing for a one-time product.", + "id": "OneTimeProductListing", + "properties": { + "description": { + "description": "Required. The description of this product in the language of this listing. The maximum length is 200 characters.", + "type": "string" + }, + "languageCode": { + "description": "Required. The language of this listing, as defined by BCP-47, e.g., \"en-US\".", + "type": "string" + }, + "title": { + "description": "Required. The title of this product in the language of this listing. The maximum length is 55 characters.", + "type": "string" + } + }, + "type": "object" + }, + "OneTimeProductOffer": { + "description": "A single offer for a one-time product.", + "id": "OneTimeProductOffer", + "properties": { + "discountedOffer": { + "$ref": "OneTimeProductDiscountedOffer", + "description": "A discounted offer." + }, + "offerId": { + "description": "Required. Immutable. The ID of this product offer. Must be unique within the purchase option. It must start with a number or lower-case letter, and can only contain lower-case letters (a-z), numbers (0-9), and hyphens (-). The maximum length is 63 characters.", + "type": "string" + }, + "offerTags": { + "description": "Optional. List of up to 20 custom tags specified for this offer, and returned to the app through the billing library.", + "items": { + "$ref": "OfferTag" + }, + "type": "array" + }, + "packageName": { + "description": "Required. Immutable. The package name of the app the parent product belongs to.", + "type": "string" + }, + "preOrderOffer": { + "$ref": "OneTimeProductPreOrderOffer", + "description": "A pre-order offer." + }, + "productId": { + "description": "Required. Immutable. The ID of the parent product this offer belongs to.", + "type": "string" + }, + "purchaseOptionId": { + "description": "Required. Immutable. The ID of the purchase option to which this offer is an extension.", + "type": "string" + }, + "regionalPricingAndAvailabilityConfigs": { + "description": "Set of regional pricing and availability information for this offer. Must not have duplicate entries with the same region_code.", + "items": { + "$ref": "OneTimeProductOfferRegionalPricingAndAvailabilityConfig" + }, + "type": "array" + }, + "regionsVersion": { + "$ref": "RegionsVersion", + "description": "Output only. The version of the regions configuration that was used to generate the one-time product offer.", + "readOnly": true + }, + "state": { + "description": "Output only. The current state of this offer. This field cannot be changed by updating the resource. Use the dedicated endpoints instead.", + "enum": [ + "STATE_UNSPECIFIED", + "DRAFT", + "ACTIVE", + "CANCELLED", + "INACTIVE" + ], + "enumDescriptions": [ + "Default value, should never be used.", + "The offer is not and has never been available to users.", + "The offer is available to users, as long as its conditions are met.", + "This state is specific to pre-orders. The offer is cancelled and not available to users. All pending orders related to this offer were cancelled.", + "This state is specific to discounted offers. The offer is no longer available to users." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "OneTimeProductOfferNoPriceOverrideOptions": { + "description": "Options for one-time product offers without a regional price override.", + "id": "OneTimeProductOfferNoPriceOverrideOptions", + "properties": {}, + "type": "object" + }, + "OneTimeProductOfferRegionalPricingAndAvailabilityConfig": { + "description": "Regional pricing and availability configuration for a one-time product offer.", + "id": "OneTimeProductOfferRegionalPricingAndAvailabilityConfig", + "properties": { + "absoluteDiscount": { + "$ref": "Money", + "description": "The absolute value of the discount that is subtracted from the purchase option price. It should be between 0 and the purchase option price." + }, + "availability": { + "description": "Required. The availability for this region.", + "enum": [ + "AVAILABILITY_UNSPECIFIED", + "AVAILABLE", + "NO_LONGER_AVAILABLE" + ], + "enumDescriptions": [ + "Unspecified availability. Must not be used.", + "The offer is available to users.", + "The offer is no longer available to users. This value can only be used if the availability was previously set as AVAILABLE." + ], + "type": "string" + }, + "noOverride": { + "$ref": "OneTimeProductOfferNoPriceOverrideOptions", + "description": "The price defined in the purchase option for this region will be used." + }, + "regionCode": { + "description": "Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g., \"US\".", + "type": "string" + }, + "relativeDiscount": { + "description": "The fraction of the purchase option price that the user pays for this offer. For example, if the purchase option price for this region is $12, then a 50% discount would correspond to a price of $6. The discount must be specified as a fraction strictly larger than 0 and strictly smaller than 1. The resulting price will be rounded to the nearest billable unit (e.g. cents for USD). The relative discount is considered invalid if the discounted price ends up being smaller than the minimum price allowed in this region.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "OneTimeProductPreOrderOffer": { + "description": "Configuration specific to pre-order offers.", + "id": "OneTimeProductPreOrderOffer", "properties": { - "abi": { - "description": "A list of targeted ABIs, as represented by the Android Platform", - "items": { - "$ref": "Abi" - }, - "type": "array" + "endTime": { + "description": "Required. Time when the pre-order will stop being available.", + "format": "google-datetime", + "type": "string" + }, + "priceChangeBehavior": { + "description": "Required. Immutable. Specifies how price changes affect pre-existing pre-orders.", + "enum": [ + "PRE_ORDER_PRICE_CHANGE_BEHAVIOR_UNSPECIFIED", + "PRE_ORDER_PRICE_CHANGE_BEHAVIOR_TWO_POINT_LOWEST", + "PRE_ORDER_PRICE_CHANGE_BEHAVIOR_NEW_ORDERS_ONLY" + ], + "enumDescriptions": [ + "Unspecified price change behavior. Must not be used.", + "The buyer gets charged the minimum between the initial price at the time of pre-order and the final offer price on the release date.", + "The buyer gets the same price as the one they pre-ordered, regardless of any price changes that may have happened after the pre-order." + ], + "type": "string" + }, + "releaseTime": { + "description": "Required. Time on which the product associated with the pre-order will be released and the pre-order orders fulfilled.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Required. Time when the pre-order will start being available.", + "format": "google-datetime", + "type": "string" } }, "type": "object" }, - "MultiAbiTargeting": { - "description": "Targeting based on multiple abis.", - "id": "MultiAbiTargeting", + "OneTimeProductPurchaseOption": { + "description": "A single purchase option for a one-time product.", + "id": "OneTimeProductPurchaseOption", "properties": { - "alternatives": { - "description": "Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.", + "buyOption": { + "$ref": "OneTimeProductBuyPurchaseOption", + "description": "A purchase option that can be bought." + }, + "newRegionsConfig": { + "$ref": "OneTimeProductPurchaseOptionNewRegionsConfig", + "description": "Pricing information for any new locations Play may launch in the future. If omitted, the purchase option will not be automatically available in any new locations Play may launch in the future." + }, + "offerTags": { + "description": "Optional. List of up to 20 custom tags specified for this purchase option, and returned to the app through the billing library. Offers for this purchase option will also receive these tags in the billing library.", "items": { - "$ref": "MultiAbi" + "$ref": "OfferTag" }, "type": "array" }, - "value": { - "description": "Value of a multi abi.", + "purchaseOptionId": { + "description": "Required. Immutable. The unique identifier of this purchase option. Must be unique within the one-time product. It must start with a number or lower-case letter, and can only contain lower-case letters (a-z), numbers (0-9), and hyphens (-). The maximum length is 63 characters.", + "type": "string" + }, + "regionalPricingAndAvailabilityConfigs": { + "description": "Regional pricing and availability information for this purchase option.", "items": { - "$ref": "MultiAbi" + "$ref": "OneTimeProductPurchaseOptionRegionalPricingAndAvailabilityConfig" }, "type": "array" + }, + "rentOption": { + "$ref": "OneTimeProductRentPurchaseOption", + "description": "A purchase option that can be rented." + }, + "state": { + "description": "Output only. The state of the purchase option, i.e., whether it's active. This field cannot be changed by updating the resource. Use the dedicated endpoints instead.", + "enum": [ + "STATE_UNSPECIFIED", + "DRAFT", + "ACTIVE", + "INACTIVE", + "INACTIVE_PUBLISHED" + ], + "enumDescriptions": [ + "Default value, should never be used.", + "The purchase option is not and has never been available to users.", + "The purchase option is available to users.", + "The purchase option is not available to users anymore.", + "The purchase option is not available for purchase anymore, but we continue to expose its offer via the Play Billing Library for backwards compatibility. Only automatically migrated purchase options can be in this state." + ], + "readOnly": true, + "type": "string" + }, + "taxAndComplianceSettings": { + "$ref": "PurchaseOptionTaxAndComplianceSettings", + "description": "Optional. Details about taxes and legal compliance." } }, "type": "object" }, - "OfferDetails": { - "description": "Offer details information related to a purchase line item.", - "id": "OfferDetails", + "OneTimeProductPurchaseOptionNewRegionsConfig": { + "description": "Pricing information for any new regions Play may launch in the future.", + "id": "OneTimeProductPurchaseOptionNewRegionsConfig", "properties": { - "basePlanId": { - "description": "The base plan ID. Present for all base plan and offers.", + "availability": { + "description": "Required. The regional availability for the new regions config. When set to AVAILABLE, the pricing information will be used for any new regions Play may launch in the future.", + "enum": [ + "AVAILABILITY_UNSPECIFIED", + "AVAILABLE", + "NO_LONGER_AVAILABLE" + ], + "enumDescriptions": [ + "Unspecified availability. Must not be used.", + "The config will be used for any new regions Play may launch in the future.", + "The config is not available anymore and will not be used for any new regions Play may launch in the future. This value can only be used if the availability was previously set as AVAILABLE." + ], "type": "string" }, - "offerId": { - "description": "The offer ID. Only present for discounted offers.", - "type": "string" + "eurPrice": { + "$ref": "Money", + "description": "Required. Price in EUR to use for any new regions Play may launch in." }, - "offerTags": { - "description": "The latest offer tags associated with the offer. It includes tags inherited from the base plan.", - "items": { - "type": "string" - }, - "type": "array" + "usdPrice": { + "$ref": "Money", + "description": "Required. Price in USD to use for any new regions Play may launch in." } }, "type": "object" }, - "OfferTag": { - "description": "Represents a custom tag specified for a product offer.", - "id": "OfferTag", + "OneTimeProductPurchaseOptionRegionalPricingAndAvailabilityConfig": { + "description": "Regional pricing and availability configuration for a purchase option.", + "id": "OneTimeProductPurchaseOptionRegionalPricingAndAvailabilityConfig", "properties": { - "tag": { - "description": "Must conform with RFC-1034. That is, this string can only contain lower-case letters (a-z), numbers (0-9), and hyphens (-), and be at most 20 characters.", + "availability": { + "description": "The availability of the purchase option.", + "enum": [ + "AVAILABILITY_UNSPECIFIED", + "AVAILABLE", + "NO_LONGER_AVAILABLE", + "AVAILABLE_IF_RELEASED" + ], + "enumDescriptions": [ + "Unspecified availability. Must not be used.", + "The purchase option is available to users.", + "The purchase option is no longer available to users. This value can only be used if the availability was previously set as AVAILABLE.", + "The purchase option is initially unavailable, but made available via a released pre-order offer." + ], + "type": "string" + }, + "price": { + "$ref": "Money", + "description": "The price of the purchase option in the specified region. Must be set in the currency that is linked to the specified region." + }, + "regionCode": { + "description": "Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g., \"US\".", "type": "string" } }, "type": "object" }, - "OneTimeCode": { - "description": "A single use promotion code.", - "id": "OneTimeCode", - "properties": {}, + "OneTimeProductRentPurchaseOption": { + "description": "A purchase option that can be rented.", + "id": "OneTimeProductRentPurchaseOption", + "properties": { + "expirationPeriod": { + "description": "Optional. The amount of time the user has after starting consuming the entitlement before it is revoked. Specified in ISO 8601 format.", + "type": "string" + }, + "rentalPeriod": { + "description": "Required. The amount of time a user has the entitlement for. Starts at purchase flow completion. Specified in ISO 8601 format.", + "type": "string" + } + }, "type": "object" }, - "OneTimeExternalTransaction": { - "description": "Represents a one-time transaction.", - "id": "OneTimeExternalTransaction", + "OneTimeProductTaxAndComplianceSettings": { + "description": "Details about taxation, Google Play policy and legal compliance for one-time products.", + "id": "OneTimeProductTaxAndComplianceSettings", "properties": { - "externalTransactionToken": { - "description": "Input only. Provided during the call to Create. Retrieved from the client when the alternative billing flow is launched.", - "type": "string" + "isTokenizedDigitalAsset": { + "description": "Whether this one-time product is declared as a product representing a tokenized digital asset.", + "type": "boolean" + }, + "regionalTaxConfigs": { + "description": "Regional tax configuration.", + "items": { + "$ref": "RegionalTaxConfig" + }, + "type": "array" } }, "type": "object" @@ -8422,6 +10054,27 @@ }, "type": "object" }, + "PurchaseOptionTaxAndComplianceSettings": { + "description": "Details about taxation, Google Play policy and legal compliance for one-time product purchase options.", + "id": "PurchaseOptionTaxAndComplianceSettings", + "properties": { + "withdrawalRightType": { + "description": "Optional. Digital content or service classification for products distributed to users in eligible regions. If unset, it defaults to `WITHDRAWAL_RIGHT_DIGITAL_CONTENT`. Refer to the [Help Center article](https://support.google.com/googleplay/android-developer/answer/10463498) for more information.", + "enum": [ + "WITHDRAWAL_RIGHT_TYPE_UNSPECIFIED", + "WITHDRAWAL_RIGHT_DIGITAL_CONTENT", + "WITHDRAWAL_RIGHT_SERVICE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, "PurchaseStateContext": { "description": "Context about the purchase state.", "id": "PurchaseStateContext", @@ -8646,6 +10299,63 @@ "properties": {}, "type": "object" }, + "RegionalTaxConfig": { + "description": "Details about taxation in a given geographical region.", + "id": "RegionalTaxConfig", + "properties": { + "eligibleForStreamingServiceTaxRate": { + "description": "You must tell us if your app contains streaming products to correctly charge US state and local sales tax. Field only supported in the United States.", + "type": "boolean" + }, + "regionCode": { + "description": "Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g. \"US\".", + "type": "string" + }, + "streamingTaxType": { + "description": "To collect communications or amusement taxes in the United States, choose the appropriate tax category. [Learn more](https://support.google.com/googleplay/android-developer/answer/10463498#streaming_tax).", + "enum": [ + "STREAMING_TAX_TYPE_UNSPECIFIED", + "STREAMING_TAX_TYPE_TELCO_VIDEO_RENTAL", + "STREAMING_TAX_TYPE_TELCO_VIDEO_SALES", + "STREAMING_TAX_TYPE_TELCO_VIDEO_MULTI_CHANNEL", + "STREAMING_TAX_TYPE_TELCO_AUDIO_RENTAL", + "STREAMING_TAX_TYPE_TELCO_AUDIO_SALES", + "STREAMING_TAX_TYPE_TELCO_AUDIO_MULTI_CHANNEL" + ], + "enumDescriptions": [ + "No telecommunications tax collected.", + "US-specific telecommunications tax tier for video streaming, on demand, rentals / subscriptions / pay-per-view.", + "US-specific telecommunications tax tier for video streaming of pre-recorded content like movies, tv shows.", + "US-specific telecommunications tax tier for video streaming of multi-channel programming.", + "US-specific telecommunications tax tier for audio streaming, rental / subscription.", + "US-specific telecommunications tax tier for audio streaming, sale / permanent download.", + "US-specific telecommunications tax tier for multi channel audio streaming like radio." + ], + "type": "string" + }, + "taxTier": { + "description": "Tax tier to specify reduced tax rate. Developers who sell digital news, magazines, newspapers, books, or audiobooks in various regions may be eligible for reduced tax rates. [Learn more](https://support.google.com/googleplay/android-developer/answer/10463498).", + "enum": [ + "TAX_TIER_UNSPECIFIED", + "TAX_TIER_BOOKS_1", + "TAX_TIER_NEWS_1", + "TAX_TIER_NEWS_2", + "TAX_TIER_MUSIC_OR_AUDIO_1", + "TAX_TIER_LIVE_OR_BROADCAST_1" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, "RegionalTaxRateInfo": { "description": "Specified details about taxation in a given geographical region.", "id": "RegionalTaxRateInfo", @@ -10277,6 +11987,116 @@ }, "type": "object" }, + "UpdateOneTimeProductOfferRequest": { + "description": "Request message for UpdateOneTimeProductOffer.", + "id": "UpdateOneTimeProductOfferRequest", + "properties": { + "allowMissing": { + "description": "Optional. If set to true, and the offer with the given package_name, product_id, purchase_option_id and offer_id doesn't exist, an offer will be created. If a new offer is created, the update_mask is ignored.", + "type": "boolean" + }, + "latencyTolerance": { + "description": "Optional. The latency tolerance for the propagation of this offer update. Defaults to latency-sensitive.", + "enum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "enumDescriptions": [ + "Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE.", + "The update will propagate to clients within several minutes on average and up to a few hours in rare cases. Throughput is limited to 7,200 updates per app per hour.", + "The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 updates per app per hour using batch modification methods." + ], + "type": "string" + }, + "oneTimeProductOffer": { + "$ref": "OneTimeProductOffer", + "description": "Required. The one-time product offer to update." + }, + "regionsVersion": { + "$ref": "RegionsVersion", + "description": "Required. The version of the available regions being used for the offer." + }, + "updateMask": { + "description": "Required. The list of fields to be updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "UpdateOneTimeProductOfferStateRequest": { + "description": "Request message to update the state of a one-time product offer.", + "id": "UpdateOneTimeProductOfferStateRequest", + "properties": { + "activateOneTimeProductOfferRequest": { + "$ref": "ActivateOneTimeProductOfferRequest", + "description": "Activates an offer. Once activated, the offer is available to users, as long as its conditions are met." + }, + "cancelOneTimeProductOfferRequest": { + "$ref": "CancelOneTimeProductOfferRequest", + "description": "Cancels an offer. Once cancelled, the offer is not available to users. Any pending orders related to this offer will be cancelled. This state transition is specific to pre-orders." + }, + "deactivateOneTimeProductOfferRequest": { + "$ref": "DeactivateOneTimeProductOfferRequest", + "description": "Deactivates an offer. Once deactivated, the offer is no longer available to users. This state transition is specific to discounted offers." + } + }, + "type": "object" + }, + "UpdateOneTimeProductRequest": { + "description": "Request message for UpdateOneTimeProduct.", + "id": "UpdateOneTimeProductRequest", + "properties": { + "allowMissing": { + "description": "Optional. If set to true, and the one-time product with the given package_name and product_id doesn't exist, the one-time product will be created. If a new one-time product is created, update_mask is ignored.", + "type": "boolean" + }, + "latencyTolerance": { + "description": "Optional. The latency tolerance for the propagation of this product upsert. Defaults to latency-sensitive.", + "enum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "enumDescriptions": [ + "Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE.", + "The update will propagate to clients within several minutes on average and up to a few hours in rare cases. Throughput is limited to 7,200 updates per app per hour.", + "The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 updates per app per hour using batch modification methods." + ], + "type": "string" + }, + "oneTimeProduct": { + "$ref": "OneTimeProduct", + "description": "Required. The one-time product to upsert." + }, + "regionsVersion": { + "$ref": "RegionsVersion", + "description": "Required. The version of the available regions being used for the one-time product." + }, + "updateMask": { + "description": "Required. The list of fields to be updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "UpdatePurchaseOptionStateRequest": { + "description": "Request message to update the state of a one-time product purchase option.", + "id": "UpdatePurchaseOptionStateRequest", + "properties": { + "activatePurchaseOptionRequest": { + "$ref": "ActivatePurchaseOptionRequest", + "description": "Activates a purchase option. Once activated, the purchase option will be available." + }, + "deactivatePurchaseOptionRequest": { + "$ref": "DeactivatePurchaseOptionRequest", + "description": "Deactivates a purchase option. Once deactivated, the purchase option will become unavailable." + } + }, + "type": "object" + }, "UpdateSubscriptionOfferRequest": { "description": "Request message for UpdateSubscriptionOffer.", "id": "UpdateSubscriptionOfferRequest", diff --git a/DiscoveryJson/chat.v1.json b/DiscoveryJson/chat.v1.json index e2cc14a663..72f00031bc 100644 --- a/DiscoveryJson/chat.v1.json +++ b/DiscoveryJson/chat.v1.json @@ -737,7 +737,7 @@ ] }, "get": { - "description": "Returns details about a membership. For an example, see [Get details about a user's or Google Chat app's membership](https://developers.google.com/workspace/chat/get-members). Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with the authorization scope: - `https://www.googleapis.com/auth/chat.bot` - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` - User authentication grants administrator privileges when an administrator account authenticates, `use_admin_access` is `true`, and one of the following authorization scopes is used: - `https://www.googleapis.com/auth/chat.admin.memberships.readonly` - `https://www.googleapis.com/auth/chat.admin.memberships`", + "description": "Returns details about a membership. For an example, see [Get details about a user's or Google Chat app's membership](https://developers.google.com/workspace/chat/get-members). Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.bot` - `https://www.googleapis.com/auth/chat.app.memberships` (requires [administrator approval](https://support.google.com/a?p=chat-app-auth)) - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` - User authentication grants administrator privileges when an administrator account authenticates, `use_admin_access` is `true`, and one of the following authorization scopes is used: - `https://www.googleapis.com/auth/chat.admin.memberships.readonly` - `https://www.googleapis.com/auth/chat.admin.memberships`", "flatPath": "v1/spaces/{spacesId}/members/{membersId}", "httpMethod": "GET", "id": "chat.spaces.members.get", @@ -772,7 +772,7 @@ ] }, "list": { - "description": "Lists memberships in a space. For an example, see [List users and Google Chat apps in a space](https://developers.google.com/workspace/chat/list-members). Listing memberships with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) lists memberships in spaces that the Chat app has access to, but excludes Chat app memberships, including its own. Listing memberships with [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) lists memberships in spaces that the authenticated user has access to. Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with the authorization scope: - `https://www.googleapis.com/auth/chat.bot` - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` - `https://www.googleapis.com/auth/chat.import` (import mode spaces only) - User authentication grants administrator privileges when an administrator account authenticates, `use_admin_access` is `true`, and one of the following authorization scopes is used: - `https://www.googleapis.com/auth/chat.admin.memberships.readonly` - `https://www.googleapis.com/auth/chat.admin.memberships`", + "description": "Lists memberships in a space. For an example, see [List users and Google Chat apps in a space](https://developers.google.com/workspace/chat/list-members). Listing memberships with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) lists memberships in spaces that the Chat app has access to, but excludes Chat app memberships, including its own. Listing memberships with [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) lists memberships in spaces that the authenticated user has access to. Supports the following types of [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.bot` - `https://www.googleapis.com/auth/chat.app.memberships` (requires [administrator approval](https://support.google.com/a?p=chat-app-auth)) - [User authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following authorization scopes: - `https://www.googleapis.com/auth/chat.memberships.readonly` - `https://www.googleapis.com/auth/chat.memberships` - `https://www.googleapis.com/auth/chat.import` (import mode spaces only) - User authentication grants administrator privileges when an administrator account authenticates, `use_admin_access` is `true`, and one of the following authorization scopes is used: - `https://www.googleapis.com/auth/chat.admin.memberships.readonly` - `https://www.googleapis.com/auth/chat.admin.memberships`", "flatPath": "v1/spaces/{spacesId}/members", "httpMethod": "GET", "id": "chat.spaces.members.list", @@ -1528,7 +1528,7 @@ } } }, - "revision": "20250710", + "revision": "20250717", "rootUrl": "https://chat.googleapis.com/", "schemas": { "AccessSettings": { @@ -4883,6 +4883,10 @@ "format": "google-datetime", "type": "string" }, + "customer": { + "description": "Optional. Immutable. The customer id of the domain of the space. Required only when creating a space with [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) and `SpaceType` is `SPACE`, otherwise should not be set. In the format `customers/{customer}`, where `customer` is the `id` from the [Admin SDK customer resource]( https://developers.google.com/admin-sdk/directory/reference/rest/v1/customers). Private apps can also use the `customers/my_customer` alias to create the space in the same Google Workspace organization as the app. For DMs, this field isn't populated. [Developer Preview](https://developers.google.com/workspace/preview).", + "type": "string" + }, "displayName": { "description": "Optional. The space's display name. Required when [creating a space](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/create) with a `spaceType` of `SPACE`. If you receive the error message `ALREADY_EXISTS` when creating a space or updating the `displayName`, try a different `displayName`. An existing space within the Google Workspace organization might already use this display name. For direct messages, this field might be empty. Supports up to 128 characters.", "type": "string" diff --git a/DiscoveryJson/dlp.v2.json b/DiscoveryJson/dlp.v2.json index dd477da27f..32a9ff9805 100644 --- a/DiscoveryJson/dlp.v2.json +++ b/DiscoveryJson/dlp.v2.json @@ -5118,7 +5118,7 @@ } } }, - "revision": "20250629", + "revision": "20250713", "rootUrl": "https://dlp.googleapis.com/", "schemas": { "GooglePrivacyDlpV2Action": { @@ -8271,6 +8271,21 @@ }, "type": "object" }, + "GooglePrivacyDlpV2DocumentFallbackLocation": { + "description": "Configure document processing to fall back to the configured processing option below if document processing is unavailable in the original request location.", + "id": "GooglePrivacyDlpV2DocumentFallbackLocation", + "properties": { + "globalProcessing": { + "$ref": "GooglePrivacyDlpV2GlobalProcessing", + "description": "Processing will happen in the global region." + }, + "multiRegionProcessing": { + "$ref": "GooglePrivacyDlpV2MultiRegionProcessing", + "description": "Processing will happen in a multi-region that contains the current region if available." + } + }, + "type": "object" + }, "GooglePrivacyDlpV2DocumentLocation": { "description": "Location of a finding within a document.", "id": "GooglePrivacyDlpV2DocumentLocation", @@ -10878,6 +10893,10 @@ "description": "Configure processing location for discovery and inspection. For example, image OCR is only provided in limited regions but configuring ProcessingLocation will redirect OCR to a location where OCR is provided.", "id": "GooglePrivacyDlpV2ProcessingLocation", "properties": { + "documentFallbackLocation": { + "$ref": "GooglePrivacyDlpV2DocumentFallbackLocation", + "description": "Document processing will fall back using this configuration." + }, "imageFallbackLocation": { "$ref": "GooglePrivacyDlpV2ImageFallbackLocation", "description": "Image processing will fall back using this configuration." diff --git a/DiscoveryJson/documentai.v1.json b/DiscoveryJson/documentai.v1.json index 026fa637ef..489dd01a67 100644 --- a/DiscoveryJson/documentai.v1.json +++ b/DiscoveryJson/documentai.v1.json @@ -1048,7 +1048,7 @@ } } }, - "revision": "20250616", + "revision": "20250716", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "GoogleCloudDocumentaiUiv1beta3AutoLabelDocumentsMetadata": { @@ -4560,8 +4560,9 @@ "id": "GoogleCloudDocumentaiV1Processor", "properties": { "createTime": { - "description": "The time the processor was created.", + "description": "Output only. The time the processor was created.", "format": "google-datetime", + "readOnly": true, "type": "string" }, "defaultProcessorVersion": { @@ -4713,13 +4714,15 @@ "id": "GoogleCloudDocumentaiV1ProcessorVersion", "properties": { "createTime": { - "description": "The time the processor version was created.", + "description": "Output only. The time the processor version was created.", "format": "google-datetime", + "readOnly": true, "type": "string" }, "deprecationInfo": { "$ref": "GoogleCloudDocumentaiV1ProcessorVersionDeprecationInfo", - "description": "If set, information about the eventual deprecation of this version." + "description": "Output only. If set, information about the eventual deprecation of this version.", + "readOnly": true }, "displayName": { "description": "The display name of the processor version.", @@ -4727,7 +4730,8 @@ }, "documentSchema": { "$ref": "GoogleCloudDocumentaiV1DocumentSchema", - "description": "The schema of the processor version. Describes the output." + "description": "Output only. The schema of the processor version. Describes the output.", + "readOnly": true }, "genAiModelInfo": { "$ref": "GoogleCloudDocumentaiV1ProcessorVersionGenAiModelInfo", @@ -4740,16 +4744,19 @@ "type": "boolean" }, "kmsKeyName": { - "description": "The KMS key name used for encryption.", + "description": "Output only. The KMS key name used for encryption.", + "readOnly": true, "type": "string" }, "kmsKeyVersionName": { - "description": "The KMS key version with which data is encrypted.", + "description": "Output only. The KMS key version with which data is encrypted.", + "readOnly": true, "type": "string" }, "latestEvaluation": { "$ref": "GoogleCloudDocumentaiV1EvaluationReference", - "description": "The most recently invoked evaluation for the processor version." + "description": "Output only. The most recently invoked evaluation for the processor version.", + "readOnly": true }, "modelType": { "description": "Output only. The model type of this processor version.", diff --git a/DiscoveryJson/documentai.v1beta3.json b/DiscoveryJson/documentai.v1beta3.json index 6aba592ba0..03f430937e 100644 --- a/DiscoveryJson/documentai.v1beta3.json +++ b/DiscoveryJson/documentai.v1beta3.json @@ -1290,7 +1290,7 @@ } } }, - "revision": "20250616", + "revision": "20250716", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "GoogleCloudDocumentaiUiv1beta3AutoLabelDocumentsMetadata": { @@ -5986,8 +5986,9 @@ "id": "GoogleCloudDocumentaiV1beta3Processor", "properties": { "createTime": { - "description": "The time the processor was created.", + "description": "Output only. The time the processor was created.", "format": "google-datetime", + "readOnly": true, "type": "string" }, "defaultProcessorVersion": { @@ -6139,13 +6140,15 @@ "id": "GoogleCloudDocumentaiV1beta3ProcessorVersion", "properties": { "createTime": { - "description": "The time the processor version was created.", + "description": "Output only. The time the processor version was created.", "format": "google-datetime", + "readOnly": true, "type": "string" }, "deprecationInfo": { "$ref": "GoogleCloudDocumentaiV1beta3ProcessorVersionDeprecationInfo", - "description": "If set, information about the eventual deprecation of this version." + "description": "Output only. If set, information about the eventual deprecation of this version.", + "readOnly": true }, "displayName": { "description": "The display name of the processor version.", @@ -6153,7 +6156,8 @@ }, "documentSchema": { "$ref": "GoogleCloudDocumentaiV1beta3DocumentSchema", - "description": "The schema of the processor version. Describes the output." + "description": "Output only. The schema of the processor version. Describes the output.", + "readOnly": true }, "genAiModelInfo": { "$ref": "GoogleCloudDocumentaiV1beta3ProcessorVersionGenAiModelInfo", @@ -6166,16 +6170,19 @@ "type": "boolean" }, "kmsKeyName": { - "description": "The KMS key name used for encryption.", + "description": "Output only. The KMS key name used for encryption.", + "readOnly": true, "type": "string" }, "kmsKeyVersionName": { - "description": "The KMS key version with which data is encrypted.", + "description": "Output only. The KMS key version with which data is encrypted.", + "readOnly": true, "type": "string" }, "latestEvaluation": { "$ref": "GoogleCloudDocumentaiV1beta3EvaluationReference", - "description": "The most recently invoked evaluation for the processor version." + "description": "Output only. The most recently invoked evaluation for the processor version.", + "readOnly": true }, "modelType": { "description": "Output only. The model type of this processor version.", diff --git a/DiscoveryJson/firebaseml.v2beta.json b/DiscoveryJson/firebaseml.v2beta.json index 4edf773a0b..2ae56dff58 100644 --- a/DiscoveryJson/firebaseml.v2beta.json +++ b/DiscoveryJson/firebaseml.v2beta.json @@ -206,7 +206,7 @@ } } }, - "revision": "20250715", + "revision": "20250720", "rootUrl": "https://firebaseml.googleapis.com/", "schemas": { "Date": { @@ -1415,6 +1415,10 @@ "description": "Chunk from Google Maps.", "id": "GoogleCloudAiplatformV1beta1GroundingChunkMaps", "properties": { + "placeAnswerSources": { + "$ref": "GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSources", + "description": "Sources used to generate the place answer. This includes review snippets and photos that were used to generate the answer, as well as uris to flag content." + }, "placeId": { "description": "This Place's resource name, in `places/{place_id}` format. Can be used to look up the Place.", "type": "string" @@ -1434,6 +1438,70 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSources": { + "description": "Sources used to generate the place answer.", + "id": "GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSources", + "properties": { + "flagContentUri": { + "description": "A link where users can flag a problem with the generated answer.", + "type": "string" + }, + "reviewSnippets": { + "description": "Snippets of reviews that are used to generate the answer.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSourcesReviewSnippet" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSourcesAuthorAttribution": { + "description": "Author attribution for a photo or review.", + "id": "GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSourcesAuthorAttribution", + "properties": { + "displayName": { + "description": "Name of the author of the Photo or Review.", + "type": "string" + }, + "photoUri": { + "description": "Profile photo URI of the author of the Photo or Review.", + "type": "string" + }, + "uri": { + "description": "URI of the author of the Photo or Review.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSourcesReviewSnippet": { + "description": "Encapsulates a review snippet.", + "id": "GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSourcesReviewSnippet", + "properties": { + "authorAttribution": { + "$ref": "GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSourcesAuthorAttribution", + "description": "This review's author." + }, + "flagContentUri": { + "description": "A link where users can flag a problem with the review.", + "type": "string" + }, + "googleMapsUri": { + "description": "A link to show the review on Google Maps.", + "type": "string" + }, + "relativePublishTimeDescription": { + "description": "A string of formatted recent time, expressing the review time relative to the current time in a form appropriate for the language and country.", + "type": "string" + }, + "review": { + "description": "A reference representing this place review which may be used to look up this place review again.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1GroundingChunkRetrievedContext": { "description": "Chunk from context retrieved by the retrieval tools.", "id": "GoogleCloudAiplatformV1beta1GroundingChunkRetrievedContext", diff --git a/DiscoveryJson/gkehub.v1beta1.json b/DiscoveryJson/gkehub.v1beta1.json index da386b1143..00fcdf1313 100644 --- a/DiscoveryJson/gkehub.v1beta1.json +++ b/DiscoveryJson/gkehub.v1beta1.json @@ -718,7 +718,7 @@ } } }, - "revision": "20250415", + "revision": "20250715", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "ApplianceCluster": { @@ -1197,6 +1197,19 @@ "readOnly": true, "type": "string" }, + "membershipType": { + "description": "Output only. The type of the membership.", + "enum": [ + "MEMBERSHIP_TYPE_UNSPECIFIED", + "LIGHTWEIGHT" + ], + "enumDescriptions": [ + "The MembershipType is not set.", + "The membership supports only lightweight compatible features." + ], + "readOnly": true, + "type": "string" + }, "monitoringConfig": { "$ref": "MonitoringConfig", "description": "Optional. The monitoring config information for this membership." diff --git a/DiscoveryJson/gkehub.v2alpha.json b/DiscoveryJson/gkehub.v2alpha.json index f2cbfb4de3..fc33a32fbb 100644 --- a/DiscoveryJson/gkehub.v2alpha.json +++ b/DiscoveryJson/gkehub.v2alpha.json @@ -477,7 +477,7 @@ } } }, - "revision": "20250612", + "revision": "20250715", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceState": { @@ -626,7 +626,8 @@ "IN_PROGRESS", "SOAKING", "FORCED_SOAKING", - "COMPLETE" + "COMPLETE", + "FORCED_COMPLETE" ], "enumDescriptions": [ "Required by https://linter.aip.dev/126/unspecified.", @@ -635,7 +636,8 @@ "The upgrade is in progress. At the scope level, this means the upgrade is in progress for at least one cluster in the scope.", "The upgrade has finished and is soaking until the soaking time is up. At the scope level, this means at least one cluster is in soaking while the rest are either soaking or complete.", "A cluster will be forced to enter soaking if an upgrade doesn't finish within a certain limit, despite it's actual status.", - "The upgrade has passed all post conditions (soaking). At the scope level, this means all eligible clusters are in COMPLETE status." + "The upgrade has passed all post conditions (soaking). At the scope level, this means all eligible clusters are in COMPLETE status.", + "The upgrade was forced into soaking and the soaking time has passed. This is the equivalent of COMPLETE status for upgrades that were forced into soaking." ], "type": "string" }, diff --git a/DiscoveryJson/gkehub.v2beta.json b/DiscoveryJson/gkehub.v2beta.json index 6479f74916..de4c696156 100644 --- a/DiscoveryJson/gkehub.v2beta.json +++ b/DiscoveryJson/gkehub.v2beta.json @@ -477,7 +477,7 @@ } } }, - "revision": "20250612", + "revision": "20250715", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceState": { @@ -626,7 +626,8 @@ "IN_PROGRESS", "SOAKING", "FORCED_SOAKING", - "COMPLETE" + "COMPLETE", + "FORCED_COMPLETE" ], "enumDescriptions": [ "Required by https://linter.aip.dev/126/unspecified.", @@ -635,7 +636,8 @@ "The upgrade is in progress. At the scope level, this means the upgrade is in progress for at least one cluster in the scope.", "The upgrade has finished and is soaking until the soaking time is up. At the scope level, this means at least one cluster is in soaking while the rest are either soaking or complete.", "A cluster will be forced to enter soaking if an upgrade doesn't finish within a certain limit, despite it's actual status.", - "The upgrade has passed all post conditions (soaking). At the scope level, this means all eligible clusters are in COMPLETE status." + "The upgrade has passed all post conditions (soaking). At the scope level, this means all eligible clusters are in COMPLETE status.", + "The upgrade was forced into soaking and the soaking time has passed. This is the equivalent of COMPLETE status for upgrades that were forced into soaking." ], "type": "string" }, diff --git a/DiscoveryJson/homegraph.v1.json b/DiscoveryJson/homegraph.v1.json index ee45b3729e..f5bbd1705e 100644 --- a/DiscoveryJson/homegraph.v1.json +++ b/DiscoveryJson/homegraph.v1.json @@ -216,7 +216,7 @@ } } }, - "revision": "20250410", + "revision": "20250716", "rootUrl": "https://homegraph.googleapis.com/", "schemas": { "AgentDeviceId": { @@ -349,7 +349,7 @@ "type": "array" }, "name": { - "description": "Primary name of the device, generally provided by the user.", + "description": "Primary name of the device, generally provided by the user. Names will be truncated if over the 60 Unicode code point (character) limit and no errors will be thrown. Developers are responsible for handling long names.", "type": "string" }, "nicknames": { diff --git a/DiscoveryJson/iam.v1.json b/DiscoveryJson/iam.v1.json index ade35d379e..65dab65609 100644 --- a/DiscoveryJson/iam.v1.json +++ b/DiscoveryJson/iam.v1.json @@ -860,6 +860,388 @@ ] } } + }, + "scimTenants": { + "methods": { + "create": { + "description": "Creates a new WorkforcePoolProviderScimTenant in a WorkforcePoolProvider. You cannot reuse the name of a deleted scim tenant until 30 days after deletion.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants", + "httpMethod": "POST", + "id": "iam.locations.workforcePools.providers.scimTenants.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent to create scim tenant. Format: 'locations/{location}/workforcePools/{workforce_pool}/providers/{provider}'", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+$", + "required": true, + "type": "string" + }, + "workforcePoolProviderScimTenantId": { + "description": "Required. The ID to use for the scim tenant, which becomes the final component of the resource name. This value should be 4-32 characters, and may contain the characters [a-z0-9-].", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/scimTenants", + "request": { + "$ref": "WorkforcePoolProviderScimTenant" + }, + "response": { + "$ref": "WorkforcePoolProviderScimTenant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a WorkforcePoolProviderScimTenant. You can undelete a scim tenant for 30 days. After 30 days, deletion is permanent. You cannot update deleted scim tenants. However, you can view and list them.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants/{scimTenantsId}", + "httpMethod": "DELETE", + "id": "iam.locations.workforcePools.providers.scimTenants.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the scim tenant to delete. Format: `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}`", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "WorkforcePoolProviderScimTenant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an individual WorkforcePoolProviderScimTenant.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants/{scimTenantsId}", + "httpMethod": "GET", + "id": "iam.locations.workforcePools.providers.scimTenants.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the scim tenant to retrieve. Format: `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}`", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "WorkforcePoolProviderScimTenant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all non-deleted WorkforcePoolProviderScimTenants in a WorkforcePoolProvider. If `show_deleted` is set to `true`, then deleted scim tenants are also listed.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants", + "httpMethod": "GET", + "id": "iam.locations.workforcePools.providers.scimTenants.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of scim tenants to return. If unspecified, at most 1 scim tenant will be returned.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListScimTenants` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent to list scim tenants. Format: 'locations/{location}/workforcePools/{workforce_pool}/providers/{provider}'", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+$", + "required": true, + "type": "string" + }, + "showDeleted": { + "description": "Optional. Whether to return soft-deleted scim tenants.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/scimTenants", + "response": { + "$ref": "ListWorkforcePoolProviderScimTenantsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates an existing WorkforcePoolProviderScimTenant.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants/{scimTenantsId}", + "httpMethod": "PATCH", + "id": "iam.locations.workforcePools.providers.scimTenants.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name of the SCIM Tenant. Format: `locations/{location}/workforcePools/{workforce_pool}/providers/ {workforce_pool_provider}/scimTenants/{scim_tenant}`", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+$", + "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": "WorkforcePoolProviderScimTenant" + }, + "response": { + "$ref": "WorkforcePoolProviderScimTenant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "undelete": { + "description": "Undeletes a WorkforcePoolProviderScimTenant, as long as it was deleted fewer than 30 days ago.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants/{scimTenantsId}:undelete", + "httpMethod": "POST", + "id": "iam.locations.workforcePools.providers.scimTenants.undelete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the scim tenant to undelete. Format: `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}`", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:undelete", + "request": { + "$ref": "UndeleteWorkforcePoolProviderScimTenantRequest" + }, + "response": { + "$ref": "WorkforcePoolProviderScimTenant" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "tokens": { + "methods": { + "create": { + "description": "Creates a new WorkforcePoolProviderScimToken in a WorkforcePoolProviderScimTenant. You cannot reuse the name of a deleted SCIM token until 30 days after deletion.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants/{scimTenantsId}/tokens", + "httpMethod": "POST", + "id": "iam.locations.workforcePools.providers.scimTenants.tokens.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent tenant to create scim token. Format: 'locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}'", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+$", + "required": true, + "type": "string" + }, + "workforcePoolProviderScimTokenId": { + "description": "Required. The ID to use for the scim token, which becomes the final component of the resource name. This value should be 4-32 characters and follow this pattern: \"([a-z]([a-z0-9\\\\-]{2,30}[a-z0-9]))\"", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/tokens", + "request": { + "$ref": "WorkforcePoolProviderScimToken" + }, + "response": { + "$ref": "WorkforcePoolProviderScimToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a WorkforcePoolProviderScimToken. You can undelete a scim token for 30 days. After 30 days, deletion is permanent. You cannot update deleted scim tokens. However, you can view and list them.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants/{scimTenantsId}/tokens/{tokensId}", + "httpMethod": "DELETE", + "id": "iam.locations.workforcePools.providers.scimTenants.tokens.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the scim token to delete. Format: `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}/tokens/{token}`", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+/tokens/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "WorkforcePoolProviderScimToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an individual WorkforcePoolProviderScimToken.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants/{scimTenantsId}/tokens/{tokensId}", + "httpMethod": "GET", + "id": "iam.locations.workforcePools.providers.scimTenants.tokens.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the scim token to retrieve. Format: `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}/tokens/{token}`", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+/tokens/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "WorkforcePoolProviderScimToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all non-deleted WorkforcePoolProviderScimTokenss in a WorkforcePoolProviderScimTenant. If `show_deleted` is set to `true`, then deleted SCIM tokens are also listed.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants/{scimTenantsId}/tokens", + "httpMethod": "GET", + "id": "iam.locations.workforcePools.providers.scimTenants.tokens.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of scim tokens to return. If unspecified, at most 2 scim tokens will be returned.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListWorkforcePoolProviderScimTokens` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent to list scim tokens. Format: 'locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}'", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+$", + "required": true, + "type": "string" + }, + "showDeleted": { + "description": "Optional. Whether to return soft-deleted scim tokens.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/tokens", + "response": { + "$ref": "ListWorkforcePoolProviderScimTokensResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates an existing WorkforcePoolProviderScimToken.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants/{scimTenantsId}/tokens/{tokensId}", + "httpMethod": "PATCH", + "id": "iam.locations.workforcePools.providers.scimTenants.tokens.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name of the SCIM Token. Format: `locations/{location}/workforcePools/{workforce_pool}/providers/ {workforce_pool_provider}/scimTenants/{scim_tenant}/tokens/{token}`", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+/tokens/[^/]+$", + "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": "WorkforcePoolProviderScimToken" + }, + "response": { + "$ref": "WorkforcePoolProviderScimToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "undelete": { + "description": "Undeletes a WorkforcePoolProviderScimToken, as long as it was deleted fewer than 30 days ago.", + "flatPath": "v1/locations/{locationsId}/workforcePools/{workforcePoolsId}/providers/{providersId}/scimTenants/{scimTenantsId}/tokens/{tokensId}:undelete", + "httpMethod": "POST", + "id": "iam.locations.workforcePools.providers.scimTenants.tokens.undelete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the scim token to undelete. Format: `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}/tokens/{token}`", + "location": "path", + "pattern": "^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+/tokens/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:undelete", + "request": { + "$ref": "UndeleteWorkforcePoolProviderScimTokenRequest" + }, + "response": { + "$ref": "WorkforcePoolProviderScimToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } } } }, @@ -3773,7 +4155,7 @@ } } }, - "revision": "20250627", + "revision": "20250718", "rootUrl": "https://iam.googleapis.com/", "schemas": { "AccessRestrictions": { @@ -4630,6 +5012,44 @@ }, "type": "object" }, + "ListWorkforcePoolProviderScimTenantsResponse": { + "description": "Response message for ListWorkforcePoolProviderScimTenants.", + "id": "ListWorkforcePoolProviderScimTenantsResponse", + "properties": { + "nextPageToken": { + "description": "Optional. A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "workforcePoolProviderScimTenants": { + "description": "Output only. A list of scim tenants.", + "items": { + "$ref": "WorkforcePoolProviderScimTenant" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "ListWorkforcePoolProviderScimTokensResponse": { + "description": "Response message for ListWorkforcePoolProviderScimTokens.", + "id": "ListWorkforcePoolProviderScimTokensResponse", + "properties": { + "nextPageToken": { + "description": "Optional. A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "workforcePoolProviderScimTokens": { + "description": "Output only. A list of scim tokens.", + "items": { + "$ref": "WorkforcePoolProviderScimToken" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, "ListWorkforcePoolProvidersResponse": { "description": "Response message for ListWorkforcePoolProviders.", "id": "ListWorkforcePoolProvidersResponse", @@ -5747,6 +6167,18 @@ "properties": {}, "type": "object" }, + "UndeleteWorkforcePoolProviderScimTenantRequest": { + "description": "Request message for UndeleteWorkforcePoolProviderScimTenant.", + "id": "UndeleteWorkforcePoolProviderScimTenantRequest", + "properties": {}, + "type": "object" + }, + "UndeleteWorkforcePoolProviderScimTokenRequest": { + "description": "Request message for UndeleteWorkforcePoolProviderScimToken.", + "id": "UndeleteWorkforcePoolProviderScimTokenRequest", + "properties": {}, + "type": "object" + }, "UndeleteWorkforcePoolRequest": { "description": "Request message for UndeleteWorkforcePool.", "id": "UndeleteWorkforcePoolRequest", @@ -5895,6 +6327,10 @@ "readOnly": true, "type": "string" }, + "extendedAttributesOauth2Client": { + "$ref": "GoogleIamAdminV1WorkforcePoolProviderExtraAttributesOAuth2Client", + "description": "Optional. The configuration for OAuth 2.0 client used to get the extended group memberships for user identities. Only the `AZURE_AD_GROUPS_ID` attribute type is supported. Extended groups supports a subset of Google Cloud services. When the user accesses these services, extended group memberships override the mapped `google.groups` attribute. Extended group memberships cannot be used in attribute mapping or attribute condition expressions. To keep extended group memberships up to date, extended groups are retrieved when the user signs in and at regular intervals during the user's active session. Each user identity in the workforce identity pool must map to a specific, unique Microsoft Entra ID user." + }, "extraAttributesOauth2Client": { "$ref": "GoogleIamAdminV1WorkforcePoolProviderExtraAttributesOAuth2Client", "description": "Optional. The configuration for OAuth 2.0 client used to get the additional user attributes. This should be used when users can't get the desired claims in authentication credentials. Currently this configuration is only supported with OIDC protocol." @@ -5977,6 +6413,93 @@ }, "type": "object" }, + "WorkforcePoolProviderScimTenant": { + "description": "Represents a scim tenant. Used for provisioning and managing identity data (such as Users and Groups) in cross-domain environments.", + "id": "WorkforcePoolProviderScimTenant", + "properties": { + "baseUri": { + "description": "Output only. Represents the base URI as defined in [RFC 7644, Section 1.3](https://datatracker.ietf.org/doc/html/rfc7644#section-1.3). Clients must use this as the root address for managing resources under the tenant. Format: https://iamscim.googleapis.com/{version}/{tenant_id}/", + "readOnly": true, + "type": "string" + }, + "claimMapping": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Maps BYOID claims to SCIM claims.", + "type": "object" + }, + "description": { + "description": "Optional. The user-specified description of the scim tenant. Cannot exceed 256 characters.", + "type": "string" + }, + "displayName": { + "description": "Optional. The user-specified display name of the scim tenant. Cannot exceed 32 characters.", + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the SCIM Tenant. Format: `locations/{location}/workforcePools/{workforce_pool}/providers/ {workforce_pool_provider}/scimTenants/{scim_tenant}`", + "type": "string" + }, + "purgeTime": { + "description": "Output only. The timestamp when the scim tenant is going to be purged.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The state of the tenant.", + "enum": [ + "STATE_UNSPECIFIED", + "ACTIVE", + "DELETED" + ], + "enumDescriptions": [ + "State unspecified.", + "The tenant is active and may be used to provision users and groups.", + "The tenant is soft-deleted. Soft-deleted tenants are permanently deleted after approximately 30 days." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "WorkforcePoolProviderScimToken": { + "description": "Represents a token for the WorkforcePoolProviderScimTenant. Used for authenticating SCIM Provisioning requests.", + "id": "WorkforcePoolProviderScimToken", + "properties": { + "displayName": { + "description": "Optional. The user-specified display name of the scim token. Cannot exceed 32 characters.", + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the SCIM Token. Format: `locations/{location}/workforcePools/{workforce_pool}/providers/ {workforce_pool_provider}/scimTenants/{scim_tenant}/tokens/{token}`", + "type": "string" + }, + "securityToken": { + "description": "Output only. The token string. Provide this to the IdP for authentication. Will be set only during creation.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The state of the token.", + "enum": [ + "STATE_UNSPECIFIED", + "ACTIVE", + "DELETED" + ], + "enumDescriptions": [ + "State unspecified.", + "The tenant is active and may be used to provision users and groups.", + "The tenant is soft-deleted. Soft-deleted tenants are permanently deleted after approximately 30 days." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "WorkloadIdentityPool": { "description": "Represents a collection of workload identities. You can define IAM policies to grant these identities access to Google Cloud resources.", "id": "WorkloadIdentityPool", diff --git a/DiscoveryJson/merchantapi.accounts_v1beta.json b/DiscoveryJson/merchantapi.accounts_v1beta.json index aef6a4d927..79976b0189 100644 --- a/DiscoveryJson/merchantapi.accounts_v1beta.json +++ b/DiscoveryJson/merchantapi.accounts_v1beta.json @@ -180,31 +180,6 @@ "https://www.googleapis.com/auth/content" ] }, - "getDeveloperRegistration": { - "description": "Retrieves a developer registration for a merchant.", - "flatPath": "accounts/v1beta/accounts/{accountsId}/developerRegistration", - "httpMethod": "GET", - "id": "merchantapi.accounts.getDeveloperRegistration", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The `name` (ID) of the developer registration.", - "location": "path", - "pattern": "^accounts/[^/]+/developerRegistration$", - "required": true, - "type": "string" - } - }, - "path": "accounts/v1beta/{+name}", - "response": { - "$ref": "DeveloperRegistration" - }, - "scopes": [ - "https://www.googleapis.com/auth/content" - ] - }, "list": { "description": "Note: For the `accounts.list` method, quota and limits usage are charged for each user, and not for the Merchant Center ID or the advanced account ID. To list several sub-accounts, you should use the `accounts.listSubaccounts` method, which is more suitable for advanced accounts use case.", "flatPath": "accounts/v1beta/accounts", @@ -563,6 +538,31 @@ }, "developerRegistration": { "methods": { + "getDeveloperRegistration": { + "description": "Retrieves a developer registration for a merchant.", + "flatPath": "accounts/v1beta/accounts/{accountsId}/developerRegistration", + "httpMethod": "GET", + "id": "merchantapi.accounts.developerRegistration.getDeveloperRegistration", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The `name` (ID) of the developer registration.", + "location": "path", + "pattern": "^accounts/[^/]+/developerRegistration$", + "required": true, + "type": "string" + } + }, + "path": "accounts/v1beta/{+name}", + "response": { + "$ref": "DeveloperRegistration" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, "registerGcp": { "description": "Registers the GCP used for the API call to the shopping account passed in the request. Will create a user with an \"API developer\" and add the \"developer_email\" as a contact with \"API notifications\" email preference on.", "flatPath": "accounts/v1beta/accounts/{accountsId}/developerRegistration:registerGcp", @@ -582,7 +582,7 @@ }, "path": "accounts/v1beta/{+name}:registerGcp", "request": { - "$ref": "RegisterGCPRequest" + "$ref": "RegisterGcpRequest" }, "response": { "$ref": "DeveloperRegistration" @@ -610,7 +610,7 @@ }, "path": "accounts/v1beta/{+name}:unregisterGcp", "request": { - "$ref": "UnregisterGCPRequest" + "$ref": "UnregisterGcpRequest" }, "response": { "$ref": "Empty" @@ -2311,7 +2311,7 @@ } } }, - "revision": "20250715", + "revision": "20250721", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "About": { @@ -4766,9 +4766,9 @@ }, "type": "object" }, - "RegisterGCPRequest": { + "RegisterGcpRequest": { "description": "Request message for the RegisterGCP method.", - "id": "RegisterGCPRequest", + "id": "RegisterGcpRequest", "properties": { "developerEmail": { "description": "Immutable. If the developer email provided is associated with a user in the merchant account provided, the user will be updated to have \"API developer\" access type and the email preference corresponding to that user will be updated to have the new \"API notifications\" preference. If the developer email provided is not associated with any user we will just add it as a contact. The email preference corresponding to that contact will have the new \"API notifications\" preference", @@ -5268,9 +5268,9 @@ "properties": {}, "type": "object" }, - "UnregisterGCPRequest": { + "UnregisterGcpRequest": { "description": "Request message for the UnregisterGCP method.", - "id": "UnregisterGCPRequest", + "id": "UnregisterGcpRequest", "properties": {}, "type": "object" }, diff --git a/DiscoveryJson/merchantapi.datasources_v1beta.json b/DiscoveryJson/merchantapi.datasources_v1beta.json index 7d9ab81713..181d8ccf1d 100644 --- a/DiscoveryJson/merchantapi.datasources_v1beta.json +++ b/DiscoveryJson/merchantapi.datasources_v1beta.json @@ -321,7 +321,7 @@ } } }, - "revision": "20250710", + "revision": "20250721", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "DataSource": { @@ -592,7 +592,7 @@ "File input type unspecified.", "The file is uploaded through SFTP, Google Cloud Storage or manually in the Merchant Center.", "The file is fetched from the configured fetch_uri.", - "The file is fetched from Google Sheets specified in the fetch_uri." + "The file is fetched from Google Sheets specified in the fetch_uri. However, you can't set up `GOOGLE_SHEETS` as a data source through the API. To add `GOOGLE_SHEETS` as a data source through the Merchant Center, see [Add products to Merchant Center](https://support.google.com/merchants/answer/12158053)." ], "readOnly": true, "type": "string" diff --git a/DiscoveryJson/merchantapi.inventories_v1beta.json b/DiscoveryJson/merchantapi.inventories_v1beta.json index fdc71f14da..fcbcc8774f 100644 --- a/DiscoveryJson/merchantapi.inventories_v1beta.json +++ b/DiscoveryJson/merchantapi.inventories_v1beta.json @@ -300,7 +300,7 @@ } } }, - "revision": "20250623", + "revision": "20250721", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "CustomAttribute": { @@ -399,6 +399,7 @@ "type": "string" }, "customAttributes": { + "deprecated": true, "description": "A list of custom (merchant-provided) attributes. You can also use `CustomAttribute` to submit any attribute of the data specification in its generic form.", "items": { "$ref": "CustomAttribute" @@ -627,6 +628,7 @@ "type": "string" }, "customAttributes": { + "deprecated": true, "description": "A list of custom (merchant-provided) attributes. You can also use `CustomAttribute` to submit any attribute of the data specification in its generic form.", "items": { "$ref": "CustomAttribute" diff --git a/DiscoveryJson/networksecurity.v1.json b/DiscoveryJson/networksecurity.v1.json index 4f15e4c14c..0be431d573 100644 --- a/DiscoveryJson/networksecurity.v1.json +++ b/DiscoveryJson/networksecurity.v1.json @@ -2338,7 +2338,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the ClientTlsPolicy resource. It matches the pattern `projects/*/locations/{location}/clientTlsPolicies/{client_tls_policy}`", + "description": "Required. Name of the ClientTlsPolicy resource. It matches the pattern `projects/{project}/locations/{location}/clientTlsPolicies/{client_tls_policy}`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/clientTlsPolicies/[^/]+$", "required": true, @@ -5070,7 +5070,7 @@ } } }, - "revision": "20250604", + "revision": "20250714", "rootUrl": "https://networksecurity.googleapis.com/", "schemas": { "AddAddressGroupItemsRequest": { @@ -5387,12 +5387,19 @@ "id": "AuthzPolicyAuthzRuleFromRequestSource", "properties": { "ipBlocks": { - "description": "Optional. A list of IPs or CIDRs to match against the source IP of a request. Limited to 5 ip_blocks.", + "description": "Optional. A list of IP addresses or IP address ranges to match against the source IP address of the request. Limited to 5 ip_blocks.", "items": { "$ref": "AuthzPolicyAuthzRuleIpBlock" }, "type": "array" }, + "principals": { + "description": "Optional. A list of identities derived from the client's certificate. This field will not match on a request unless frontend mutual TLS is enabled for the forwarding rule or Gateway and the client certificate has been successfully validated by mTLS. Each identity is a string whose value is matched against a list of URI SANs, DNS Name SANs, or the common name in the client's certificate. A match happens when any principal matches with the rule. Limited to 5 principals.", + "items": { + "$ref": "AuthzPolicyAuthzRulePrincipal" + }, + "type": "array" + }, "resources": { "description": "Optional. A list of resources to match against the resource of the source VM of a request. Limited to 5 resources.", "items": { @@ -5434,6 +5441,33 @@ }, "type": "object" }, + "AuthzPolicyAuthzRulePrincipal": { + "description": "Describes the properties of a principal to be matched against.", + "id": "AuthzPolicyAuthzRulePrincipal", + "properties": { + "principal": { + "$ref": "AuthzPolicyAuthzRuleStringMatch", + "description": "Required. A non-empty string whose value is matched against the principal value based on the principal_selector. Only exact match can be applied for CLIENT_CERT_URI_SAN, CLIENT_CERT_DNS_NAME_SAN, CLIENT_CERT_COMMON_NAME selectors." + }, + "principalSelector": { + "description": "Optional. An enum to decide what principal value the principal rule will match against. If not specified, the PrincipalSelector is CLIENT_CERT_URI_SAN.", + "enum": [ + "PRINCIPAL_SELECTOR_UNSPECIFIED", + "CLIENT_CERT_URI_SAN", + "CLIENT_CERT_DNS_NAME_SAN", + "CLIENT_CERT_COMMON_NAME" + ], + "enumDescriptions": [ + "Unspecified principal selector. It will be treated as CLIENT_CERT_URI_SAN by default.", + "The principal rule is matched against a list of URI SANs in the validated client\u2019s certificate. A match happens when there is any exact URI SAN value match. This is the default principal selector.", + "The principal rule is matched against a list of DNS Name SANs in the validated client\u2019s certificate. A match happens when there is any exact DNS Name SAN value match.", + "The principal rule is matched against the common name in the client\u2019s certificate. Authorization against multiple common names in the client certificate is not supported. Requests with multiple common names in the client certificate will be rejected if CLIENT_CERT_COMMON_NAME is set as the principal selector. A match happens when there is an exact common name value match. This is only applicable for Application Load Balancers except for classic Global External Application load balancer. CLIENT_CERT_COMMON_NAME is not supported for INTERNAL_SELF_MANAGED load balancing scheme." + ], + "type": "string" + } + }, + "type": "object" + }, "AuthzPolicyAuthzRuleRequestResource": { "description": "Describes the properties of a client VM resource accessing the internal application load balancers.", "id": "AuthzPolicyAuthzRuleRequestResource", @@ -5624,7 +5658,7 @@ "type": "object" }, "BackendAuthenticationConfig": { - "description": "BackendAuthenticationConfig message groups the TrustConfig together with other settings that control how the load balancer authenticates, and expresses its identity to, the backend: * `trustConfig` is the attached TrustConfig. * `wellKnownRoots` indicates whether the load balance should trust backend server certificates that are issued by public certificate authorities, in addition to certificates trusted by the TrustConfig. * `clientCertificate` is a client certificate that the load balancer uses to express its identity to the backend, if the connection to the backend uses mTLS. You can attach the BackendAuthenticationConfig to the load balancer\u2019s BackendService directly determining how that BackendService negotiates TLS.", + "description": "BackendAuthenticationConfig message groups the TrustConfig together with other settings that control how the load balancer authenticates, and expresses its identity to, the backend: * `trustConfig` is the attached TrustConfig. * `wellKnownRoots` indicates whether the load balance should trust backend server certificates that are issued by public certificate authorities, in addition to certificates trusted by the TrustConfig. * `clientCertificate` is a client certificate that the load balancer uses to express its identity to the backend, if the connection to the backend uses mTLS. You can attach the BackendAuthenticationConfig to the load balancer's BackendService directly determining how that BackendService negotiates TLS.", "id": "BackendAuthenticationConfig", "properties": { "clientCertificate": { @@ -5727,7 +5761,7 @@ "type": "object" }, "name": { - "description": "Required. Name of the ClientTlsPolicy resource. It matches the pattern `projects/*/locations/{location}/clientTlsPolicies/{client_tls_policy}`", + "description": "Required. Name of the ClientTlsPolicy resource. It matches the pattern `projects/{project}/locations/{location}/clientTlsPolicies/{client_tls_policy}`", "type": "string" }, "serverValidationCa": { diff --git a/DiscoveryJson/networkservices.v1.json b/DiscoveryJson/networkservices.v1.json index aaef4b959d..4ac380ccd1 100644 --- a/DiscoveryJson/networkservices.v1.json +++ b/DiscoveryJson/networkservices.v1.json @@ -3004,7 +3004,7 @@ } } }, - "revision": "20250616", + "revision": "20250709", "rootUrl": "https://networkservices.googleapis.com/", "schemas": { "AuditConfig": { @@ -3503,7 +3503,7 @@ "type": "string" }, "ports": { - "description": "Required. One or more port numbers (1-65535), on which the Gateway will receive traffic. The proxy binds to the specified ports. Gateways of type 'SECURE_WEB_GATEWAY' are limited to 1 port. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6 and support multiple ports.", + "description": "Required. One or more port numbers (1-65535), on which the Gateway will receive traffic. The proxy binds to the specified ports. Gateways of type 'SECURE_WEB_GATEWAY' are limited to 5 ports. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6 and support multiple ports.", "items": { "format": "int32", "type": "integer" @@ -5890,7 +5890,7 @@ "type": "boolean" }, "minLogLevel": { - "description": "Non-empty default. Specificies the lowest level of the plugin logs that are exported to Cloud Logging. This setting relates to the logs generated by using logging statements in your Wasm code. This field is can be set only if logging is enabled for the plugin. If the field is not provided when logging is enabled, it is set to `INFO` by default.", + "description": "Non-empty default. Specifies the lowest level of the plugin logs that are exported to Cloud Logging. This setting relates to the logs generated by using logging statements in your Wasm code. This field is can be set only if logging is enabled for the plugin. If the field is not provided when logging is enabled, it is set to `INFO` by default.", "enum": [ "LOG_LEVEL_UNSPECIFIED", "TRACE", diff --git a/DiscoveryJson/networkservices.v1beta1.json b/DiscoveryJson/networkservices.v1beta1.json index 34966fd225..3c23122b23 100644 --- a/DiscoveryJson/networkservices.v1beta1.json +++ b/DiscoveryJson/networkservices.v1beta1.json @@ -2913,7 +2913,7 @@ } } }, - "revision": "20250626", + "revision": "20250709", "rootUrl": "https://networkservices.googleapis.com/", "schemas": { "AuthzExtension": { @@ -3312,7 +3312,7 @@ "type": "string" }, "ports": { - "description": "Required. One or more port numbers (1-65535), on which the Gateway will receive traffic. The proxy binds to the specified ports. Gateways of type 'SECURE_WEB_GATEWAY' are limited to 1 port. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6 and support multiple ports.", + "description": "Required. One or more port numbers (1-65535), on which the Gateway will receive traffic. The proxy binds to the specified ports. Gateways of type 'SECURE_WEB_GATEWAY' are limited to 5 ports. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6 and support multiple ports.", "items": { "format": "int32", "type": "integer" @@ -5754,7 +5754,7 @@ "type": "boolean" }, "minLogLevel": { - "description": "Non-empty default. Specificies the lowest level of the plugin logs that are exported to Cloud Logging. This setting relates to the logs generated by using logging statements in your Wasm code. This field is can be set only if logging is enabled for the plugin. If the field is not provided when logging is enabled, it is set to `INFO` by default.", + "description": "Non-empty default. Specifies the lowest level of the plugin logs that are exported to Cloud Logging. This setting relates to the logs generated by using logging statements in your Wasm code. This field is can be set only if logging is enabled for the plugin. If the field is not provided when logging is enabled, it is set to `INFO` by default.", "enum": [ "LOG_LEVEL_UNSPECIFIED", "TRACE", diff --git a/DiscoveryJson/retail.v2.json b/DiscoveryJson/retail.v2.json index 5b97a8d214..d891ff9c62 100644 --- a/DiscoveryJson/retail.v2.json +++ b/DiscoveryJson/retail.v2.json @@ -2282,7 +2282,7 @@ } } }, - "revision": "20250703", + "revision": "20250717", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -4236,6 +4236,42 @@ }, "type": "object" }, + "GoogleCloudRetailV2PanelInfo": { + "description": "Detailed panel information associated with a user event.", + "id": "GoogleCloudRetailV2PanelInfo", + "properties": { + "attributionToken": { + "description": "Optional. The attribution token of the panel.", + "type": "string" + }, + "displayName": { + "description": "Optional. The display name of the panel.", + "type": "string" + }, + "panelId": { + "description": "Required. The panel ID.", + "type": "string" + }, + "panelPosition": { + "description": "Optional. The ordered position of the panel, if shown to the user with other panels. If set, then total_panels must also be set.", + "format": "int32", + "type": "integer" + }, + "productDetails": { + "description": "Optional. The product details associated with the panel.", + "items": { + "$ref": "GoogleCloudRetailV2ProductDetail" + }, + "type": "array" + }, + "totalPanels": { + "description": "Optional. The total number of panels, including this one, shown to the user. Must be set if panel_position is set.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudRetailV2PauseModelRequest": { "description": "Request for pausing training of a model.", "id": "GoogleCloudRetailV2PauseModelRequest", @@ -6331,6 +6367,13 @@ "description": "A unique ID of a web page view. This should be kept the same for all user events triggered from the same pageview. For example, an item detail page view could trigger multiple events as the user is browsing the page. The `pageViewId` property should be kept the same for all these events so that they can be grouped together properly. When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.", "type": "string" }, + "panels": { + "description": "Optional. List of panels associated with this event. Used for panel-level impression data.", + "items": { + "$ref": "GoogleCloudRetailV2PanelInfo" + }, + "type": "array" + }, "productDetails": { "description": "The main product details related to the event. This field is optional except for the following event types: * `add-to-cart` * `detail-page-view` * `purchase-complete` In a `search` event, this field represents the products returned to the end user on the current page (the end user may have not finished browsing the whole page yet). When a new page is returned to the end user, after pagination/filtering/ordering even for the same query, a new `search` event with different product_details is desired. The end user may have not finished browsing the whole page yet.", "items": { diff --git a/DiscoveryJson/retail.v2alpha.json b/DiscoveryJson/retail.v2alpha.json index 9a100e688f..051cf59b8a 100644 --- a/DiscoveryJson/retail.v2alpha.json +++ b/DiscoveryJson/retail.v2alpha.json @@ -2859,7 +2859,7 @@ } } }, - "revision": "20250710", + "revision": "20250717", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -4662,6 +4662,13 @@ "description": "Optional. Raw search query to be searched for. If this field is empty, the request is considered a category browsing request.", "type": "string" }, + "safetySettings": { + "description": "Optional. The safety settings to be applied to the generated content.", + "items": { + "$ref": "GoogleCloudRetailV2alphaSafetySetting" + }, + "type": "array" + }, "searchParams": { "$ref": "GoogleCloudRetailV2alphaConversationalSearchRequestSearchParams", "description": "Optional. Search parameters." @@ -5975,6 +5982,12 @@ "format": "int64", "type": "string" }, + "primaryFeedId": { + "deprecated": true, + "description": "Merchant Center primary feed ID. Deprecated: use data_source_id instead.", + "format": "int64", + "type": "string" + }, "primaryFeedName": { "description": "Merchant Center primary feed name. The name is used for the display purposes only.", "type": "string" @@ -6353,6 +6366,42 @@ }, "type": "object" }, + "GoogleCloudRetailV2alphaPanelInfo": { + "description": "Detailed panel information associated with a user event.", + "id": "GoogleCloudRetailV2alphaPanelInfo", + "properties": { + "attributionToken": { + "description": "Optional. The attribution token of the panel.", + "type": "string" + }, + "displayName": { + "description": "Optional. The display name of the panel.", + "type": "string" + }, + "panelId": { + "description": "Required. The panel ID.", + "type": "string" + }, + "panelPosition": { + "description": "Optional. The ordered position of the panel, if shown to the user with other panels. If set, then total_panels must also be set.", + "format": "int32", + "type": "integer" + }, + "productDetails": { + "description": "Optional. The product details associated with the panel.", + "items": { + "$ref": "GoogleCloudRetailV2alphaProductDetail" + }, + "type": "array" + }, + "totalPanels": { + "description": "Optional. The total number of panels, including this one, shown to the user. Must be set if panel_position is set.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudRetailV2alphaPauseModelRequest": { "description": "Request for pausing training of a model.", "id": "GoogleCloudRetailV2alphaPauseModelRequest", @@ -7458,6 +7507,67 @@ }, "type": "object" }, + "GoogleCloudRetailV2alphaSafetySetting": { + "description": "Safety settings.", + "id": "GoogleCloudRetailV2alphaSafetySetting", + "properties": { + "category": { + "description": "Harm category.", + "enum": [ + "HARM_CATEGORY_UNSPECIFIED", + "HARM_CATEGORY_HATE_SPEECH", + "HARM_CATEGORY_DANGEROUS_CONTENT", + "HARM_CATEGORY_HARASSMENT", + "HARM_CATEGORY_SEXUALLY_EXPLICIT", + "HARM_CATEGORY_CIVIC_INTEGRITY" + ], + "enumDescriptions": [ + "The harm category is unspecified.", + "The harm category is hate speech.", + "The harm category is dangerous content.", + "The harm category is harassment.", + "The harm category is sexually explicit content.", + "The harm category is civic integrity." + ], + "type": "string" + }, + "method": { + "description": "Optional. Specify if the threshold is used for probability or severity score. If not specified, the threshold is used for probability score.", + "enum": [ + "HARM_BLOCK_METHOD_UNSPECIFIED", + "SEVERITY", + "PROBABILITY" + ], + "enumDescriptions": [ + "The harm block method is unspecified.", + "The harm block method uses both probability and severity scores.", + "The harm block method uses the probability score." + ], + "type": "string" + }, + "threshold": { + "description": "The harm block threshold.", + "enum": [ + "HARM_BLOCK_THRESHOLD_UNSPECIFIED", + "BLOCK_LOW_AND_ABOVE", + "BLOCK_MEDIUM_AND_ABOVE", + "BLOCK_ONLY_HIGH", + "BLOCK_NONE", + "OFF" + ], + "enumDescriptions": [ + "Unspecified harm block threshold.", + "Block low threshold and above (i.e. block more).", + "Block medium threshold and above.", + "Block only high threshold (i.e. block less).", + "Block none.", + "Turn off the safety filter." + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudRetailV2alphaSearchRequest": { "description": "Request message for SearchService.Search method.", "id": "GoogleCloudRetailV2alphaSearchRequest", @@ -8517,6 +8627,13 @@ "description": "A unique ID of a web page view. This should be kept the same for all user events triggered from the same pageview. For example, an item detail page view could trigger multiple events as the user is browsing the page. The `pageViewId` property should be kept the same for all these events so that they can be grouped together properly. When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.", "type": "string" }, + "panels": { + "description": "Optional. List of panels associated with this event. Used for panel-level impression data.", + "items": { + "$ref": "GoogleCloudRetailV2alphaPanelInfo" + }, + "type": "array" + }, "productDetails": { "description": "The main product details related to the event. This field is optional except for the following event types: * `add-to-cart` * `detail-page-view` * `purchase-complete` In a `search` event, this field represents the products returned to the end user on the current page (the end user may have not finished browsing the whole page yet). When a new page is returned to the end user, after pagination/filtering/ordering even for the same query, a new `search` event with different product_details is desired. The end user may have not finished browsing the whole page yet.", "items": { diff --git a/DiscoveryJson/retail.v2beta.json b/DiscoveryJson/retail.v2beta.json index f6a239cb10..1f54ea63f0 100644 --- a/DiscoveryJson/retail.v2beta.json +++ b/DiscoveryJson/retail.v2beta.json @@ -2427,7 +2427,7 @@ } } }, - "revision": "20250710", + "revision": "20250717", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -5738,6 +5738,12 @@ "format": "int64", "type": "string" }, + "primaryFeedId": { + "deprecated": true, + "description": "Merchant Center primary feed ID. Deprecated: use data_source_id instead.", + "format": "int64", + "type": "string" + }, "primaryFeedName": { "description": "Merchant Center primary feed name. The name is used for the display purposes only.", "type": "string" @@ -6043,6 +6049,42 @@ }, "type": "object" }, + "GoogleCloudRetailV2betaPanelInfo": { + "description": "Detailed panel information associated with a user event.", + "id": "GoogleCloudRetailV2betaPanelInfo", + "properties": { + "attributionToken": { + "description": "Optional. The attribution token of the panel.", + "type": "string" + }, + "displayName": { + "description": "Optional. The display name of the panel.", + "type": "string" + }, + "panelId": { + "description": "Required. The panel ID.", + "type": "string" + }, + "panelPosition": { + "description": "Optional. The ordered position of the panel, if shown to the user with other panels. If set, then total_panels must also be set.", + "format": "int32", + "type": "integer" + }, + "productDetails": { + "description": "Optional. The product details associated with the panel.", + "items": { + "$ref": "GoogleCloudRetailV2betaProductDetail" + }, + "type": "array" + }, + "totalPanels": { + "description": "Optional. The total number of panels, including this one, shown to the user. Must be set if panel_position is set.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudRetailV2betaPauseModelRequest": { "description": "Request for pausing training of a model.", "id": "GoogleCloudRetailV2betaPauseModelRequest", @@ -8138,6 +8180,13 @@ "description": "A unique ID of a web page view. This should be kept the same for all user events triggered from the same pageview. For example, an item detail page view could trigger multiple events as the user is browsing the page. The `pageViewId` property should be kept the same for all these events so that they can be grouped together properly. When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.", "type": "string" }, + "panels": { + "description": "Optional. List of panels associated with this event. Used for panel-level impression data.", + "items": { + "$ref": "GoogleCloudRetailV2betaPanelInfo" + }, + "type": "array" + }, "productDetails": { "description": "The main product details related to the event. This field is optional except for the following event types: * `add-to-cart` * `detail-page-view` * `purchase-complete` In a `search` event, this field represents the products returned to the end user on the current page (the end user may have not finished browsing the whole page yet). When a new page is returned to the end user, after pagination/filtering/ordering even for the same query, a new `search` event with different product_details is desired. The end user may have not finished browsing the whole page yet.", "items": { diff --git a/DiscoveryJson/searchads360.v0.json b/DiscoveryJson/searchads360.v0.json index 954714fefc..cc386b576f 100644 --- a/DiscoveryJson/searchads360.v0.json +++ b/DiscoveryJson/searchads360.v0.json @@ -260,7 +260,7 @@ } } }, - "revision": "20250407", + "revision": "20250721", "rootUrl": "https://searchads360.googleapis.com/", "schemas": { "GoogleAdsSearchads360V0Common__AdScheduleInfo": { @@ -447,7 +447,8 @@ "PROMOTION", "AD_IMAGE", "LEAD_FORM", - "BUSINESS_LOGO" + "BUSINESS_LOGO", + "DESCRIPTION_PREFIX" ], "enumDescriptions": [ "No value has been specified.", @@ -481,7 +482,8 @@ "This asset is used as a promotion.", "This asset is used as an image.", "The asset is used as a lead form.", - "The asset is used as a business logo." + "The asset is used as a business logo.", + "The asset is used as a description prefix." ], "type": "string" } @@ -2686,6 +2688,38 @@ ], "type": "string" }, + "conversionCustomVariableError": { + "description": "The reasons for the conversion custom variable error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "DUPLICATE_NAME", + "DUPLICATE_TAG", + "RESERVED_TAG", + "NOT_FOUND", + "NOT_AVAILABLE", + "INCOMPATIBLE_TYPE", + "INVALID_METRIC", + "EXCEEDS_CARDINALITY_LIMIT", + "INVALID_DIMENSION", + "INCOMPATIBLE_WITH_SELECTED_RESOURCE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "A conversion custom variable with the specified name already exists.", + "A conversion custom variable with the specified tag already exists.", + "A conversion custom variable with the specified tag is reserved for other uses.", + "The conversion custom variable is not found.", + "The conversion custom variable is not available for use.", + "The conversion custom variable requested is incompatible with the current request.", + "The conversion custom variable requested is not of type METRIC.", + "The conversion custom variable's cardinality exceeds the segmentation limit.", + "The conversion custom variable requested is not of type DIMENSION.", + "The conversion custom variable requested is incompatible with the selected resource." + ], + "type": "string" + }, "customColumnError": { "description": "The reasons for the custom column error", "enum": [ @@ -3909,7 +3943,7 @@ "type": "string" }, "name": { - "description": "Immutable. The name of the ad. This is only used to be able to identify the ad. It does not need to be unique and does not affect the served ad. The name field is currently only supported for DisplayUploadAd, ImageAd, ShoppingComparisonListingAd and VideoAd.", + "description": "Immutable. The name of the ad. This is only used to be able to identify the ad. It does not need to be unique and does not affect the served ad.", "type": "string" }, "productAd": { diff --git a/DiscoveryJson/serviceconsumermanagement.v1.json b/DiscoveryJson/serviceconsumermanagement.v1.json index 0bbdfb0b67..43953ac2bd 100644 --- a/DiscoveryJson/serviceconsumermanagement.v1.json +++ b/DiscoveryJson/serviceconsumermanagement.v1.json @@ -542,7 +542,7 @@ } } }, - "revision": "20250515", + "revision": "20250619", "rootUrl": "https://serviceconsumermanagement.googleapis.com/", "schemas": { "AddTenantProjectRequest": { @@ -2390,6 +2390,10 @@ "common": { "$ref": "CommonLanguageSettings", "description": "Some settings." + }, + "libraryPackage": { + "description": "The package name to use in Php. Clobbers the php_namespace option set in the protobuf. This should be used **only** by APIs who have already set the language_settings.php.package_name\" field in gapic.yaml. API teams should use the protobuf php_namespace option where possible. Example of a YAML configuration:: publishing: library_settings: php_settings: library_package: Google\\Cloud\\PubSub\\V1", + "type": "string" } }, "type": "object" diff --git a/DiscoveryJson/serviceconsumermanagement.v1beta1.json b/DiscoveryJson/serviceconsumermanagement.v1beta1.json index 6c76782bdc..09edca5912 100644 --- a/DiscoveryJson/serviceconsumermanagement.v1beta1.json +++ b/DiscoveryJson/serviceconsumermanagement.v1beta1.json @@ -724,7 +724,7 @@ } } }, - "revision": "20250515", + "revision": "20250619", "rootUrl": "https://serviceconsumermanagement.googleapis.com/", "schemas": { "Api": { @@ -2448,6 +2448,10 @@ "common": { "$ref": "CommonLanguageSettings", "description": "Some settings." + }, + "libraryPackage": { + "description": "The package name to use in Php. Clobbers the php_namespace option set in the protobuf. This should be used **only** by APIs who have already set the language_settings.php.package_name\" field in gapic.yaml. API teams should use the protobuf php_namespace option where possible. Example of a YAML configuration:: publishing: library_settings: php_settings: library_package: Google\\Cloud\\PubSub\\V1", + "type": "string" } }, "type": "object" diff --git a/DiscoveryJson/serviceusage.v1.json b/DiscoveryJson/serviceusage.v1.json index ea1c131293..36dd81f85a 100644 --- a/DiscoveryJson/serviceusage.v1.json +++ b/DiscoveryJson/serviceusage.v1.json @@ -426,7 +426,7 @@ } } }, - "revision": "20250515", + "revision": "20250619", "rootUrl": "https://serviceusage.googleapis.com/", "schemas": { "AddEnableRulesMetadata": { @@ -3222,6 +3222,10 @@ "common": { "$ref": "CommonLanguageSettings", "description": "Some settings." + }, + "libraryPackage": { + "description": "The package name to use in Php. Clobbers the php_namespace option set in the protobuf. This should be used **only** by APIs who have already set the language_settings.php.package_name\" field in gapic.yaml. API teams should use the protobuf php_namespace option where possible. Example of a YAML configuration:: publishing: library_settings: php_settings: library_package: Google\\Cloud\\PubSub\\V1", + "type": "string" } }, "type": "object" diff --git a/DiscoveryJson/serviceusage.v1beta1.json b/DiscoveryJson/serviceusage.v1beta1.json index 54961d0f71..44653be9e2 100644 --- a/DiscoveryJson/serviceusage.v1beta1.json +++ b/DiscoveryJson/serviceusage.v1beta1.json @@ -964,7 +964,7 @@ } } }, - "revision": "20250515", + "revision": "20250619", "rootUrl": "https://serviceusage.googleapis.com/", "schemas": { "AddEnableRulesMetadata": { @@ -3931,6 +3931,10 @@ "common": { "$ref": "CommonLanguageSettings", "description": "Some settings." + }, + "libraryPackage": { + "description": "The package name to use in Php. Clobbers the php_namespace option set in the protobuf. This should be used **only** by APIs who have already set the language_settings.php.package_name\" field in gapic.yaml. API teams should use the protobuf php_namespace option where possible. Example of a YAML configuration:: publishing: library_settings: php_settings: library_package: Google\\Cloud\\PubSub\\V1", + "type": "string" } }, "type": "object" diff --git a/DiscoveryJson/storage.v1.json b/DiscoveryJson/storage.v1.json index 88b10eb903..ec2f8dc4cb 100644 --- a/DiscoveryJson/storage.v1.json +++ b/DiscoveryJson/storage.v1.json @@ -253,7 +253,7 @@ "location": "northamerica-south1" } ], - "etag": "\"31353834363234393531343533373938353433\"", + "etag": "\"31383438373536343936353833383831333836\"", "icons": { "x16": "https://www.google.com/images/icons/product/cloud_storage-16.png", "x32": "https://www.google.com/images/icons/product/cloud_storage-32.png" @@ -4544,7 +4544,7 @@ } } }, - "revision": "20250629", + "revision": "20250718", "rootUrl": "https://storage.googleapis.com/", "schemas": { "AdvanceRelocateBucketOperationRequest": { @@ -4758,9 +4758,78 @@ "encryption": { "description": "Encryption configuration for a bucket.", "properties": { + "customerManagedEncryptionEnforcementConfig": { + "description": "If set, the new objects created in this bucket must comply with this enforcement config. Changing this has no effect on existing objects; it applies to new objects only. If omitted, the new objects are allowed to be encrypted with Customer Managed Encryption type by default.", + "properties": { + "effectiveTime": { + "description": "Server-determined value that indicates the time from which configuration was enforced and effective. This value is in RFC 3339 format.", + "format": "date-time", + "type": "string" + }, + "restrictionMode": { + "description": "Restriction mode for Customer-Managed Encryption Keys. Defaults to NotRestricted.", + "enum": [ + "NotRestricted", + "FullyRestricted" + ], + "enumDescriptions": [ + "Creation of new objects with Customer-Managed Encryption is not restricted.", + "Creation of new objects with Customer-Managed Encryption is fully restricted." + ], + "type": "string" + } + }, + "type": "object" + }, + "customerSuppliedEncryptionEnforcementConfig": { + "description": "If set, the new objects created in this bucket must comply with this enforcement config. Changing this has no effect on existing objects; it applies to new objects only. If omitted, the new objects are allowed to be encrypted with Customer Supplied Encryption type by default.", + "properties": { + "effectiveTime": { + "description": "Server-determined value that indicates the time from which configuration was enforced and effective. This value is in RFC 3339 format.", + "format": "date-time", + "type": "string" + }, + "restrictionMode": { + "description": "Restriction mode for Customer-Supplied Encryption Keys. Defaults to NotRestricted.", + "enum": [ + "NotRestricted", + "FullyRestricted" + ], + "enumDescriptions": [ + "Creation of new objects with Customer-Supplied Encryption is not restricted.", + "Creation of new objects with Customer-Supplied Encryption is fully restricted." + ], + "type": "string" + } + }, + "type": "object" + }, "defaultKmsKeyName": { "description": "A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.", "type": "string" + }, + "googleManagedEncryptionEnforcementConfig": { + "description": "If set, the new objects created in this bucket must comply with this enforcement config. Changing this has no effect on existing objects; it applies to new objects only. If omitted, the new objects are allowed to be encrypted with Google Managed Encryption type by default.", + "properties": { + "effectiveTime": { + "description": "Server-determined value that indicates the time from which configuration was enforced and effective. This value is in RFC 3339 format.", + "format": "date-time", + "type": "string" + }, + "restrictionMode": { + "description": "Restriction mode for Google-Managed Encryption Keys. Defaults to NotRestricted.", + "enum": [ + "NotRestricted", + "FullyRestricted" + ], + "enumDescriptions": [ + "Creation of new objects with Google Managed Encryption is not restricted.", + "Creation of new objects with Google Managed Encryption is fully restricted." + ], + "type": "string" + } + }, + "type": "object" } }, "type": "object" diff --git a/EnumStorage/androidpublisher.v3.json b/EnumStorage/androidpublisher.v3.json index 3a8105b88d..f46da79322 100644 --- a/EnumStorage/androidpublisher.v3.json +++ b/EnumStorage/androidpublisher.v3.json @@ -176,6 +176,16 @@ "1", "2" ], + "Google.Apis.AndroidPublisher.v3.MonetizationResource+OnetimeproductsResource+DeleteRequest.LatencyToleranceEnum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], + "Google.Apis.AndroidPublisher.v3.MonetizationResource+OnetimeproductsResource+PatchRequest.LatencyToleranceEnum": [ + "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", + "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT" + ], "Google.Apis.AndroidPublisher.v3.MonetizationResource+SubscriptionsResource+BasePlansResource+OffersResource+PatchRequest.LatencyToleranceEnum": [ "PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED", "PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE", diff --git a/Src/Generated/Google.Apis.Aiplatform.v1/Google.Apis.Aiplatform.v1.cs b/Src/Generated/Google.Apis.Aiplatform.v1/Google.Apis.Aiplatform.v1.cs index 01d71c44a1..9df50938bc 100644 --- a/Src/Generated/Google.Apis.Aiplatform.v1/Google.Apis.Aiplatform.v1.cs +++ b/Src/Generated/Google.Apis.Aiplatform.v1/Google.Apis.Aiplatform.v1.cs @@ -9591,6 +9591,13 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) : [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } + /// + /// Optional. Configures the Google Distributed Cloud (GDC) environment for online prediction. Only + /// set this field when the Endpoint is to be deployed in a GDC environment. + /// + [Google.Apis.Util.RequestParameterAttribute("gdcZone", Google.Apis.Util.RequestParameterType.Query)] + public virtual string GdcZone { get; set; } + /// /// A comma-separated list of fields to order by, sorted in ascending order. Use "desc" after a /// field name for descending. Supported fields: * `display_name` * `create_time` * `update_time` @@ -9643,6 +9650,14 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add("gdcZone", new Google.Apis.Discovery.Parameter + { + Name = "gdcZone", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add("orderBy", new Google.Apis.Discovery.Parameter { Name = "orderBy", @@ -9680,8 +9695,8 @@ protected override void InitParameters() /// /// Updates an existing deployed model. Updatable fields include `min_replica_count`, - /// `max_replica_count`, `autoscaling_metric_specs`, `disable_container_logging` (v1 only), and - /// `enable_container_logging` (v1beta1 only). + /// `max_replica_count`, `required_replica_count`, `autoscaling_metric_specs`, + /// `disable_container_logging` (v1 only), and `enable_container_logging` (v1beta1 only). /// /// The body of the request. /// @@ -9695,8 +9710,8 @@ public virtual MutateDeployedModelRequest MutateDeployedModel(Google.Apis.Aiplat /// /// Updates an existing deployed model. Updatable fields include `min_replica_count`, - /// `max_replica_count`, `autoscaling_metric_specs`, `disable_container_logging` (v1 only), and - /// `enable_container_logging` (v1beta1 only). + /// `max_replica_count`, `required_replica_count`, `autoscaling_metric_specs`, + /// `disable_container_logging` (v1 only), and `enable_container_logging` (v1beta1 only). /// public class MutateDeployedModelRequest : AiplatformBaseServiceRequest { @@ -51224,6 +51239,15 @@ public class GoogleCloudAiplatformV1DeployRequestModelConfig : Google.Apis.Reque [Newtonsoft.Json.JsonPropertyAttribute("modelDisplayName")] public virtual string ModelDisplayName { get; set; } + /// + /// Optional. The ID to use for the uploaded Model, which will become the final component of the model resource + /// name. When not provided, Vertex AI will generate a value for this ID. When Model Registry model is provided, + /// this field will be ignored. This value may be up to 63 characters, and valid characters are `[a-z0-9_-]`. + /// The first character cannot be a number or hyphen. + /// + [Newtonsoft.Json.JsonPropertyAttribute("modelUserId")] + public virtual string ModelUserId { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } @@ -51606,6 +51630,12 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("fasterDeploymentConfig")] public virtual GoogleCloudAiplatformV1FasterDeploymentConfig FasterDeploymentConfig { get; set; } + /// + /// GDC pretrained / Gemini model name. The model name is a plain model name, e.g. gemini-1.5-flash-002. + /// + [Newtonsoft.Json.JsonPropertyAttribute("gdcConnectedModel")] + public virtual string GdcConnectedModel { get; set; } + /// /// Immutable. The ID of the DeployedModel. If not provided upon deployment, Vertex AI will generate a value for /// this ID. This value should be 1-10 characters, and valid characters are `/[0-9]/`. @@ -52111,6 +52141,13 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("etag")] public virtual string ETag { get; set; } + /// + /// Configures the Google Distributed Cloud (GDC) environment for online prediction. Only set this field when + /// the Endpoint is to be deployed in a GDC environment. + /// + [Newtonsoft.Json.JsonPropertyAttribute("gdcConfig")] + public virtual GoogleCloudAiplatformV1GdcConfig GdcConfig { get; set; } + /// /// Optional. Configuration for GenAiAdvancedFeatures. If the endpoint is serving GenAI models, advanced /// features like native RAG integration can be configured. Currently, only Model Garden models are supported. @@ -56647,6 +56684,17 @@ public class GoogleCloudAiplatformV1GcsSource : Google.Apis.Requests.IDirectResp public virtual string ETag { get; set; } } + /// Google Distributed Cloud (GDC) config. + public class GoogleCloudAiplatformV1GdcConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// GDC zone. A cluster will be designated for the Vertex AI workload in this zone. + [Newtonsoft.Json.JsonPropertyAttribute("zone")] + public virtual string Zone { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Configuration for GenAiAdvancedFeatures. public class GoogleCloudAiplatformV1GenAiAdvancedFeaturesConfig : Google.Apis.Requests.IDirectResponseSchema { @@ -62308,8 +62356,8 @@ public class GoogleCloudAiplatformV1MutateDeployedModelRequest : Google.Apis.Req /// /// Required. The DeployedModel to be mutated within the Endpoint. Only the following fields can be mutated: * /// `min_replica_count` in either DedicatedResources or AutomaticResources * `max_replica_count` in either - /// DedicatedResources or AutomaticResources * autoscaling_metric_specs * `disable_container_logging` (v1 only) - /// * `enable_container_logging` (v1beta1 only) + /// DedicatedResources or AutomaticResources * `required_replica_count` in DedicatedResources * + /// autoscaling_metric_specs * `disable_container_logging` (v1 only) * `enable_container_logging` (v1beta1 only) /// [Newtonsoft.Json.JsonPropertyAttribute("deployedModel")] public virtual GoogleCloudAiplatformV1DeployedModel DeployedModel { get; set; } @@ -75598,7 +75646,8 @@ public class GoogleCloudAiplatformV1SupervisedHyperParameters : Google.Apis.Requ public virtual System.Nullable EpochCount { get; set; } /// - /// Optional. Multiplier for adjusting the default learning rate. Mutually exclusive with `learning_rate`. + /// Optional. Multiplier for adjusting the default learning rate. Mutually exclusive with `learning_rate`. This + /// feature is only available for 1P models. /// [Newtonsoft.Json.JsonPropertyAttribute("learningRateMultiplier")] public virtual System.Nullable LearningRateMultiplier { get; set; } diff --git a/Src/Generated/Google.Apis.Aiplatform.v1/Google.Apis.Aiplatform.v1.csproj b/Src/Generated/Google.Apis.Aiplatform.v1/Google.Apis.Aiplatform.v1.csproj index 718570b1d1..6bd66064a4 100644 --- a/Src/Generated/Google.Apis.Aiplatform.v1/Google.Apis.Aiplatform.v1.csproj +++ b/Src/Generated/Google.Apis.Aiplatform.v1/Google.Apis.Aiplatform.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Aiplatform.v1 Client Library - 1.70.0.3844 + 1.70.0.3848 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.Aiplatform.v1beta1/Google.Apis.Aiplatform.v1beta1.cs b/Src/Generated/Google.Apis.Aiplatform.v1beta1/Google.Apis.Aiplatform.v1beta1.cs index e935d78c72..4bc9d41479 100644 --- a/Src/Generated/Google.Apis.Aiplatform.v1beta1/Google.Apis.Aiplatform.v1beta1.cs +++ b/Src/Generated/Google.Apis.Aiplatform.v1beta1/Google.Apis.Aiplatform.v1beta1.cs @@ -10904,6 +10904,13 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) : [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } + /// + /// Optional. Configures the Google Distributed Cloud (GDC) environment for online prediction. Only + /// set this field when the Endpoint is to be deployed in a GDC environment. + /// + [Google.Apis.Util.RequestParameterAttribute("gdcZone", Google.Apis.Util.RequestParameterType.Query)] + public virtual string GdcZone { get; set; } + /// Optional. The standard list page size. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } @@ -10948,6 +10955,14 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add("gdcZone", new Google.Apis.Discovery.Parameter + { + Name = "gdcZone", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter { Name = "pageSize", @@ -10977,8 +10992,8 @@ protected override void InitParameters() /// /// Updates an existing deployed model. Updatable fields include `min_replica_count`, - /// `max_replica_count`, `autoscaling_metric_specs`, `disable_container_logging` (v1 only), and - /// `enable_container_logging` (v1beta1 only). + /// `max_replica_count`, `required_replica_count`, `autoscaling_metric_specs`, + /// `disable_container_logging` (v1 only), and `enable_container_logging` (v1beta1 only). /// /// The body of the request. /// @@ -10992,8 +11007,8 @@ public virtual MutateDeployedModelRequest MutateDeployedModel(Google.Apis.Aiplat /// /// Updates an existing deployed model. Updatable fields include `min_replica_count`, - /// `max_replica_count`, `autoscaling_metric_specs`, `disable_container_logging` (v1 only), and - /// `enable_container_logging` (v1beta1 only). + /// `max_replica_count`, `required_replica_count`, `autoscaling_metric_specs`, + /// `disable_container_logging` (v1 only), and `enable_container_logging` (v1beta1 only). /// public class MutateDeployedModelRequest : AiplatformBaseServiceRequest { @@ -55245,6 +55260,57 @@ protected override void InitParameters() } } + /// Fetches the configs of publisher models. + /// + /// Required. The name of the publisher model, in the format of + /// `projects/{project}/locations/{location}/publishers/{publisher}/models/{model}`. + /// + public virtual FetchPublisherModelConfigRequest FetchPublisherModelConfig(string name) + { + return new FetchPublisherModelConfigRequest(this.service, name); + } + + /// Fetches the configs of publisher models. + public class FetchPublisherModelConfigRequest : AiplatformBaseServiceRequest + { + /// Constructs a new FetchPublisherModelConfig request. + public FetchPublisherModelConfigRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// + /// Required. The name of the publisher model, in the format of + /// `projects/{project}/locations/{location}/publishers/{publisher}/models/{model}`. + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "fetchPublisherModelConfig"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1beta1/{+name}:fetchPublisherModelConfig"; + + /// Initializes FetchPublisherModelConfig parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+$", + }); + } + } + /// Gets a GenAI cache config. /// Required. Name of the cache config. Format: - `projects/{project}/cacheConfig`. public virtual GetCacheConfigRequest GetCacheConfig(string name) @@ -55290,6 +55356,71 @@ protected override void InitParameters() } } + /// + /// Sets (creates or updates) configs of publisher models. For example, sets the request/response logging + /// config. + /// + /// The body of the request. + /// + /// Required. The name of the publisher model, in the format of + /// `projects/{project}/locations/{location}/publishers/{publisher}/models/{model}`. + /// + public virtual SetPublisherModelConfigRequest SetPublisherModelConfig(Google.Apis.Aiplatform.v1beta1.Data.GoogleCloudAiplatformV1beta1SetPublisherModelConfigRequest body, string name) + { + return new SetPublisherModelConfigRequest(this.service, body, name); + } + + /// + /// Sets (creates or updates) configs of publisher models. For example, sets the request/response logging + /// config. + /// + public class SetPublisherModelConfigRequest : AiplatformBaseServiceRequest + { + /// Constructs a new SetPublisherModelConfig request. + public SetPublisherModelConfigRequest(Google.Apis.Services.IClientService service, Google.Apis.Aiplatform.v1beta1.Data.GoogleCloudAiplatformV1beta1SetPublisherModelConfigRequest body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Required. The name of the publisher model, in the format of + /// `projects/{project}/locations/{location}/publishers/{publisher}/models/{model}`. + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Aiplatform.v1beta1.Data.GoogleCloudAiplatformV1beta1SetPublisherModelConfigRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "setPublisherModelConfig"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1beta1/{+name}:setPublisherModelConfig"; + + /// Initializes SetPublisherModelConfig parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+$", + }); + } + } + /// Updates a cache config. /// The body of the request. /// Identifier. Name of the cache config. Format: - `projects/{project}/cacheConfig`. @@ -63153,6 +63284,10 @@ public class GoogleCloudAiplatformV1beta1DeployPublisherModelRequest : Google.Ap /// Request message for ModelGardenService.Deploy. public class GoogleCloudAiplatformV1beta1DeployRequest : Google.Apis.Requests.IDirectResponseSchema { + /// The custom model to deploy from a Google Cloud Storage URI. + [Newtonsoft.Json.JsonPropertyAttribute("customModel")] + public virtual GoogleCloudAiplatformV1beta1DeployRequestCustomModel CustomModel { get; set; } + /// /// Optional. The deploy config to use for the deployment. If not specified, the default deploy config will be /// used. @@ -63191,6 +63326,26 @@ public class GoogleCloudAiplatformV1beta1DeployRequest : Google.Apis.Requests.ID public virtual string ETag { get; set; } } + /// + /// The custom model to deploy from model weights in a Google Cloud Storage URI or Model Registry model. + /// + public class GoogleCloudAiplatformV1beta1DeployRequestCustomModel : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Immutable. The Google Cloud Storage URI of the custom model, storing weights and config files (which can be + /// used to infer the base model). + /// + [Newtonsoft.Json.JsonPropertyAttribute("gcsUri")] + public virtual string GcsUri { get; set; } + + /// Optional. Deprecated. Use ModelConfig.model_user_id instead. + [Newtonsoft.Json.JsonPropertyAttribute("modelId")] + public virtual string ModelId { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// The deploy config to use for the deployment. public class GoogleCloudAiplatformV1beta1DeployRequestDeployConfig : Google.Apis.Requests.IDirectResponseSchema { @@ -63270,6 +63425,15 @@ public class GoogleCloudAiplatformV1beta1DeployRequestModelConfig : Google.Apis. [Newtonsoft.Json.JsonPropertyAttribute("modelDisplayName")] public virtual string ModelDisplayName { get; set; } + /// + /// Optional. The ID to use for the uploaded Model, which will become the final component of the model resource + /// name. When not provided, Vertex AI will generate a value for this ID. When Model Registry model is provided, + /// this field will be ignored. This value may be up to 63 characters, and valid characters are `[a-z0-9_-]`. + /// The first character cannot be a number or hyphen. + /// + [Newtonsoft.Json.JsonPropertyAttribute("modelUserId")] + public virtual string ModelUserId { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } @@ -63633,6 +63797,12 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("fasterDeploymentConfig")] public virtual GoogleCloudAiplatformV1beta1FasterDeploymentConfig FasterDeploymentConfig { get; set; } + /// + /// GDC pretrained / Gemini model name. The model name is a plain model name, e.g. gemini-1.5-flash-002. + /// + [Newtonsoft.Json.JsonPropertyAttribute("gdcConnectedModel")] + public virtual string GdcConnectedModel { get; set; } + /// /// Immutable. The ID of the DeployedModel. If not provided upon deployment, Vertex AI will generate a value for /// this ID. This value should be 1-10 characters, and valid characters are `/[0-9]/`. @@ -64226,6 +64396,13 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("etag")] public virtual string ETag { get; set; } + /// + /// Configures the Google Distributed Cloud (GDC) environment for online prediction. Only set this field when + /// the Endpoint is to be deployed in a GDC environment. + /// + [Newtonsoft.Json.JsonPropertyAttribute("gdcConfig")] + public virtual GoogleCloudAiplatformV1beta1GdcConfig GdcConfig { get; set; } + /// /// Optional. Configuration for GenAiAdvancedFeatures. If the endpoint is serving GenAI models, advanced /// features like native RAG integration can be configured. Currently, only Model Garden models are supported. @@ -70062,6 +70239,17 @@ public class GoogleCloudAiplatformV1beta1GcsSource : Google.Apis.Requests.IDirec public virtual string ETag { get; set; } } + /// Google Distributed Cloud (GDC) config. + public class GoogleCloudAiplatformV1beta1GdcConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// GDC zone. A cluster will be designated for the Vertex AI workload in this zone. + [Newtonsoft.Json.JsonPropertyAttribute("zone")] + public virtual string Zone { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Format for Gemini examples used for Vertex Multimodal datasets. public class GoogleCloudAiplatformV1beta1GeminiExample : Google.Apis.Requests.IDirectResponseSchema { @@ -77544,8 +77732,8 @@ public class GoogleCloudAiplatformV1beta1MutateDeployedModelRequest : Google.Api /// /// Required. The DeployedModel to be mutated within the Endpoint. Only the following fields can be mutated: * /// `min_replica_count` in either DedicatedResources or AutomaticResources * `max_replica_count` in either - /// DedicatedResources or AutomaticResources * autoscaling_metric_specs * `disable_container_logging` (v1 only) - /// * `enable_container_logging` (v1beta1 only) + /// DedicatedResources or AutomaticResources * `required_replica_count` in DedicatedResources * + /// autoscaling_metric_specs * `disable_container_logging` (v1 only) * `enable_container_logging` (v1beta1 only) /// [Newtonsoft.Json.JsonPropertyAttribute("deployedModel")] public virtual GoogleCloudAiplatformV1beta1DeployedModel DeployedModel { get; set; } @@ -90618,6 +90806,46 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("displayName")] public virtual string DisplayName { get; set; } + private string _expireTimeRaw; + + private object _expireTime; + + /// + /// Optional. Timestamp of when this session is considered expired. This is *always* provided on output, + /// regardless of what was sent on input. + /// + [Newtonsoft.Json.JsonPropertyAttribute("expireTime")] + public virtual string ExpireTimeRaw + { + get => _expireTimeRaw; + set + { + _expireTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _expireTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use ExpireTimeDateTimeOffset instead.")] + public virtual object ExpireTime + { + get => _expireTime; + set + { + _expireTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _expireTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? ExpireTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(ExpireTimeRaw); + set => ExpireTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + /// /// Identifier. The resource name of the session. Format: /// 'projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}'. @@ -90629,6 +90857,10 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("sessionState")] public virtual System.Collections.Generic.IDictionary SessionState { get; set; } + /// Optional. Input only. The TTL for this session. + [Newtonsoft.Json.JsonPropertyAttribute("ttl")] + public virtual object Ttl { get; set; } + private string _updateTimeRaw; private object _updateTime; @@ -92480,7 +92712,8 @@ public class GoogleCloudAiplatformV1beta1SupervisedHyperParameters : Google.Apis public virtual System.Nullable EpochCount { get; set; } /// - /// Optional. Multiplier for adjusting the default learning rate. Mutually exclusive with `learning_rate`. + /// Optional. Multiplier for adjusting the default learning rate. Mutually exclusive with `learning_rate`. This + /// feature is only available for 1P models. /// [Newtonsoft.Json.JsonPropertyAttribute("learningRateMultiplier")] public virtual System.Nullable LearningRateMultiplier { get; set; } diff --git a/Src/Generated/Google.Apis.Aiplatform.v1beta1/Google.Apis.Aiplatform.v1beta1.csproj b/Src/Generated/Google.Apis.Aiplatform.v1beta1/Google.Apis.Aiplatform.v1beta1.csproj index b80b19ef2b..857577b865 100644 --- a/Src/Generated/Google.Apis.Aiplatform.v1beta1/Google.Apis.Aiplatform.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Aiplatform.v1beta1/Google.Apis.Aiplatform.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Aiplatform.v1beta1 Client Library - 1.70.0.3844 + 1.70.0.3848 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.cs b/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.cs index 39c34db3c8..31e10b0e31 100644 --- a/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.cs +++ b/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.cs @@ -7052,40 +7052,41 @@ public class MonetizationResource public MonetizationResource(Google.Apis.Services.IClientService service) { this.service = service; + Onetimeproducts = new OnetimeproductsResource(service); Subscriptions = new SubscriptionsResource(service); } - /// Gets the Subscriptions resource. - public virtual SubscriptionsResource Subscriptions { get; } + /// Gets the Onetimeproducts resource. + public virtual OnetimeproductsResource Onetimeproducts { get; } - /// The "subscriptions" collection of methods. - public class SubscriptionsResource + /// The "onetimeproducts" collection of methods. + public class OnetimeproductsResource { - private const string Resource = "subscriptions"; + private const string Resource = "onetimeproducts"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. - public SubscriptionsResource(Google.Apis.Services.IClientService service) + public OnetimeproductsResource(Google.Apis.Services.IClientService service) { this.service = service; - BasePlans = new BasePlansResource(service); + PurchaseOptions = new PurchaseOptionsResource(service); } - /// Gets the BasePlans resource. - public virtual BasePlansResource BasePlans { get; } + /// Gets the PurchaseOptions resource. + public virtual PurchaseOptionsResource PurchaseOptions { get; } - /// The "basePlans" collection of methods. - public class BasePlansResource + /// The "purchaseOptions" collection of methods. + public class PurchaseOptionsResource { - private const string Resource = "basePlans"; + private const string Resource = "purchaseOptions"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. - public BasePlansResource(Google.Apis.Services.IClientService service) + public PurchaseOptionsResource(Google.Apis.Services.IClientService service) { this.service = service; Offers = new OffersResource(service); @@ -7108,34 +7109,32 @@ public OffersResource(Google.Apis.Services.IClientService service) this.service = service; } - /// - /// Activates a subscription offer. Once activated, subscription offers will be available to new - /// subscribers. - /// + /// Activates a one-time product offer. /// The body of the request. /// /// Required. The parent app (package name) of the offer to activate. /// - /// Required. The parent subscription (ID) of the offer to activate. - /// Required. The parent base plan (ID) of the offer to activate. - /// Required. The unique offer ID of the offer to activate. - public virtual ActivateRequest Activate(Google.Apis.AndroidPublisher.v3.Data.ActivateSubscriptionOfferRequest body, string packageName, string productId, string basePlanId, string offerId) + /// + /// Required. The parent one-time product (ID) of the offer to activate. + /// + /// + /// Required. The parent purchase option (ID) of the offer to activate. + /// + /// Required. The offer ID of the offer to activate. + public virtual ActivateRequest Activate(Google.Apis.AndroidPublisher.v3.Data.ActivateOneTimeProductOfferRequest body, string packageName, string productId, string purchaseOptionId, string offerId) { - return new ActivateRequest(this.service, body, packageName, productId, basePlanId, offerId); + return new ActivateRequest(this.service, body, packageName, productId, purchaseOptionId, offerId); } - /// - /// Activates a subscription offer. Once activated, subscription offers will be available to new - /// subscribers. - /// - public class ActivateRequest : AndroidPublisherBaseServiceRequest + /// Activates a one-time product offer. + public class ActivateRequest : AndroidPublisherBaseServiceRequest { /// Constructs a new Activate request. - public ActivateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ActivateSubscriptionOfferRequest body, string packageName, string productId, string basePlanId, string offerId) : base(service) + public ActivateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ActivateOneTimeProductOfferRequest body, string packageName, string productId, string purchaseOptionId, string offerId) : base(service) { PackageName = packageName; ProductId = productId; - BasePlanId = basePlanId; + PurchaseOptionId = purchaseOptionId; OfferId = offerId; Body = body; InitParameters(); @@ -7145,20 +7144,20 @@ public ActivateRequest(Google.Apis.Services.IClientService service, Google.Apis. [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// Required. The parent subscription (ID) of the offer to activate. + /// Required. The parent one-time product (ID) of the offer to activate. [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProductId { get; private set; } - /// Required. The parent base plan (ID) of the offer to activate. - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } + /// Required. The parent purchase option (ID) of the offer to activate. + [Google.Apis.Util.RequestParameterAttribute("purchaseOptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PurchaseOptionId { get; private set; } - /// Required. The unique offer ID of the offer to activate. + /// Required. The offer ID of the offer to activate. [Google.Apis.Util.RequestParameterAttribute("offerId", Google.Apis.Util.RequestParameterType.Path)] public virtual string OfferId { get; private set; } /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.ActivateSubscriptionOfferRequest Body { get; set; } + Google.Apis.AndroidPublisher.v3.Data.ActivateOneTimeProductOfferRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; @@ -7170,7 +7169,7 @@ public ActivateRequest(Google.Apis.Services.IClientService service, Google.Apis. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers/{offerId}:activate"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers/{offerId}:activate"; /// Initializes Activate parameter list. protected override void InitParameters() @@ -7192,9 +7191,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("purchaseOptionId", new Google.Apis.Discovery.Parameter { - Name = "basePlanId", + Name = "purchaseOptionId", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -7211,76 +7210,75 @@ protected override void InitParameters() } } - /// Reads one or more subscription offers. + /// Deletes one or more one-time product offers. /// The body of the request. /// - /// Required. The parent app (package name) for which the subscriptions should be created or - /// updated. Must be equal to the package_name field on all the requests. + /// Required. The parent app (package name) of the offers to delete. Must be equal to the + /// package_name field on all the OneTimeProductOffer resources. /// /// - /// Required. The product ID of the parent subscription, if all updated offers belong to the same - /// subscription. If this request spans multiple subscriptions, set this field to "-". Must be set. + /// Required. The product ID of the parent one-time product, if all offers to delete belong to the + /// same product. If this request spans multiple one-time products, set this field to "-". /// - /// - /// Required. The parent base plan (ID) for which the offers should be read. May be specified as '-' - /// to read offers from multiple base plans. + /// + /// Required. The parent purchase option (ID) for which the offers should be deleted. May be + /// specified as '-' to update offers from multiple purchase options. /// - public virtual BatchGetRequest BatchGet(Google.Apis.AndroidPublisher.v3.Data.BatchGetSubscriptionOffersRequest body, string packageName, string productId, string basePlanId) + public virtual BatchDeleteRequest BatchDelete(Google.Apis.AndroidPublisher.v3.Data.BatchDeleteOneTimeProductOffersRequest body, string packageName, string productId, string purchaseOptionId) { - return new BatchGetRequest(this.service, body, packageName, productId, basePlanId); + return new BatchDeleteRequest(this.service, body, packageName, productId, purchaseOptionId); } - /// Reads one or more subscription offers. - public class BatchGetRequest : AndroidPublisherBaseServiceRequest + /// Deletes one or more one-time product offers. + public class BatchDeleteRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new BatchGet request. - public BatchGetRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchGetSubscriptionOffersRequest body, string packageName, string productId, string basePlanId) : base(service) + /// Constructs a new BatchDelete request. + public BatchDeleteRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchDeleteOneTimeProductOffersRequest body, string packageName, string productId, string purchaseOptionId) : base(service) { PackageName = packageName; ProductId = productId; - BasePlanId = basePlanId; + PurchaseOptionId = purchaseOptionId; Body = body; InitParameters(); } /// - /// Required. The parent app (package name) for which the subscriptions should be created or - /// updated. Must be equal to the package_name field on all the requests. + /// Required. The parent app (package name) of the offers to delete. Must be equal to the + /// package_name field on all the OneTimeProductOffer resources. /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } /// - /// Required. The product ID of the parent subscription, if all updated offers belong to the - /// same subscription. If this request spans multiple subscriptions, set this field to "-". Must - /// be set. + /// Required. The product ID of the parent one-time product, if all offers to delete belong to + /// the same product. If this request spans multiple one-time products, set this field to "-". /// [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProductId { get; private set; } /// - /// Required. The parent base plan (ID) for which the offers should be read. May be specified as - /// '-' to read offers from multiple base plans. + /// Required. The parent purchase option (ID) for which the offers should be deleted. May be + /// specified as '-' to update offers from multiple purchase options. /// - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("purchaseOptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PurchaseOptionId { get; private set; } /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.BatchGetSubscriptionOffersRequest Body { get; set; } + Google.Apis.AndroidPublisher.v3.Data.BatchDeleteOneTimeProductOffersRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "batchGet"; + public override string MethodName => "batchDelete"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers:batchGet"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers:batchDelete"; - /// Initializes BatchGet parameter list. + /// Initializes BatchDelete parameter list. protected override void InitParameters() { base.InitParameters(); @@ -7300,9 +7298,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("purchaseOptionId", new Google.Apis.Discovery.Parameter { - Name = "basePlanId", + Name = "purchaseOptionId", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -7311,82 +7309,75 @@ protected override void InitParameters() } } - /// - /// Updates a batch of subscription offers. Set the latencyTolerance field on nested requests to - /// PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. - /// + /// Reads one or more one-time product offers. /// The body of the request. /// - /// Required. The parent app (package name) of the updated subscription offers. Must be equal to the - /// package_name field on all the updated SubscriptionOffer resources. + /// Required. The parent app (package name) of the updated offers. Must be equal to the package_name + /// field on all the updated OneTimeProductOffer resources. /// /// - /// Required. The product ID of the parent subscription, if all updated offers belong to the same - /// subscription. If this request spans multiple subscriptions, set this field to "-". Must be set. + /// Required. The product ID of the parent one-time product, if all updated offers belong to the + /// same product. If this request spans multiple one-time products, set this field to "-". /// - /// - /// Required. The parent base plan (ID) for which the offers should be updated. May be specified as - /// '-' to update offers from multiple base plans. + /// + /// Required. The parent purchase option (ID) for which the offers should be updated. May be + /// specified as '-' to update offers from multiple purchase options. /// - public virtual BatchUpdateRequest BatchUpdate(Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionOffersRequest body, string packageName, string productId, string basePlanId) + public virtual BatchGetRequest BatchGet(Google.Apis.AndroidPublisher.v3.Data.BatchGetOneTimeProductOffersRequest body, string packageName, string productId, string purchaseOptionId) { - return new BatchUpdateRequest(this.service, body, packageName, productId, basePlanId); + return new BatchGetRequest(this.service, body, packageName, productId, purchaseOptionId); } - /// - /// Updates a batch of subscription offers. Set the latencyTolerance field on nested requests to - /// PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. - /// - public class BatchUpdateRequest : AndroidPublisherBaseServiceRequest + /// Reads one or more one-time product offers. + public class BatchGetRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new BatchUpdate request. - public BatchUpdateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionOffersRequest body, string packageName, string productId, string basePlanId) : base(service) + /// Constructs a new BatchGet request. + public BatchGetRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchGetOneTimeProductOffersRequest body, string packageName, string productId, string purchaseOptionId) : base(service) { PackageName = packageName; ProductId = productId; - BasePlanId = basePlanId; + PurchaseOptionId = purchaseOptionId; Body = body; InitParameters(); } /// - /// Required. The parent app (package name) of the updated subscription offers. Must be equal to - /// the package_name field on all the updated SubscriptionOffer resources. + /// Required. The parent app (package name) of the updated offers. Must be equal to the + /// package_name field on all the updated OneTimeProductOffer resources. /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } /// - /// Required. The product ID of the parent subscription, if all updated offers belong to the - /// same subscription. If this request spans multiple subscriptions, set this field to "-". Must - /// be set. + /// Required. The product ID of the parent one-time product, if all updated offers belong to the + /// same product. If this request spans multiple one-time products, set this field to "-". /// [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProductId { get; private set; } /// - /// Required. The parent base plan (ID) for which the offers should be updated. May be specified - /// as '-' to update offers from multiple base plans. + /// Required. The parent purchase option (ID) for which the offers should be updated. May be + /// specified as '-' to update offers from multiple purchase options. /// - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("purchaseOptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PurchaseOptionId { get; private set; } /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionOffersRequest Body { get; set; } + Google.Apis.AndroidPublisher.v3.Data.BatchGetOneTimeProductOffersRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "batchUpdate"; + public override string MethodName => "batchGet"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers:batchUpdate"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers:batchGet"; - /// Initializes BatchUpdate parameter list. + /// Initializes BatchGet parameter list. protected override void InitParameters() { base.InitParameters(); @@ -7406,9 +7397,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("purchaseOptionId", new Google.Apis.Discovery.Parameter { - Name = "basePlanId", + Name = "purchaseOptionId", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -7417,82 +7408,75 @@ protected override void InitParameters() } } - /// - /// Updates a batch of subscription offer states. Set the latencyTolerance field on nested requests - /// to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. - /// + /// Creates or updates one or more one-time product offers. /// The body of the request. /// - /// Required. The parent app (package name) of the updated subscription offers. Must be equal to the - /// package_name field on all the updated SubscriptionOffer resources. + /// Required. The parent app (package name) of the updated offers. Must be equal to the package_name + /// field on all the updated OneTimeProductOffer resources. /// /// - /// Required. The product ID of the parent subscription, if all updated offers belong to the same - /// subscription. If this request spans multiple subscriptions, set this field to "-". Must be set. + /// Required. The product ID of the parent one-time product, if all updated offers belong to the + /// same product. If this request spans multiple one-time products, set this field to "-". /// - /// - /// Required. The parent base plan (ID) for which the offers should be updated. May be specified as - /// '-' to update offers from multiple base plans. + /// + /// Required. The parent purchase option (ID) for which the offers should be updated. May be + /// specified as '-' to update offers from multiple purchase options. /// - public virtual BatchUpdateStatesRequest BatchUpdateStates(Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionOfferStatesRequest body, string packageName, string productId, string basePlanId) + public virtual BatchUpdateRequest BatchUpdate(Google.Apis.AndroidPublisher.v3.Data.BatchUpdateOneTimeProductOffersRequest body, string packageName, string productId, string purchaseOptionId) { - return new BatchUpdateStatesRequest(this.service, body, packageName, productId, basePlanId); + return new BatchUpdateRequest(this.service, body, packageName, productId, purchaseOptionId); } - /// - /// Updates a batch of subscription offer states. Set the latencyTolerance field on nested requests - /// to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. - /// - public class BatchUpdateStatesRequest : AndroidPublisherBaseServiceRequest + /// Creates or updates one or more one-time product offers. + public class BatchUpdateRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new BatchUpdateStates request. - public BatchUpdateStatesRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionOfferStatesRequest body, string packageName, string productId, string basePlanId) : base(service) + /// Constructs a new BatchUpdate request. + public BatchUpdateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchUpdateOneTimeProductOffersRequest body, string packageName, string productId, string purchaseOptionId) : base(service) { PackageName = packageName; ProductId = productId; - BasePlanId = basePlanId; + PurchaseOptionId = purchaseOptionId; Body = body; InitParameters(); } /// - /// Required. The parent app (package name) of the updated subscription offers. Must be equal to - /// the package_name field on all the updated SubscriptionOffer resources. + /// Required. The parent app (package name) of the updated offers. Must be equal to the + /// package_name field on all the updated OneTimeProductOffer resources. /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } /// - /// Required. The product ID of the parent subscription, if all updated offers belong to the - /// same subscription. If this request spans multiple subscriptions, set this field to "-". Must - /// be set. + /// Required. The product ID of the parent one-time product, if all updated offers belong to the + /// same product. If this request spans multiple one-time products, set this field to "-". /// [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProductId { get; private set; } /// - /// Required. The parent base plan (ID) for which the offers should be updated. May be specified - /// as '-' to update offers from multiple base plans. + /// Required. The parent purchase option (ID) for which the offers should be updated. May be + /// specified as '-' to update offers from multiple purchase options. /// - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("purchaseOptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PurchaseOptionId { get; private set; } /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionOfferStatesRequest Body { get; set; } + Google.Apis.AndroidPublisher.v3.Data.BatchUpdateOneTimeProductOffersRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "batchUpdateStates"; + public override string MethodName => "batchUpdate"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers:batchUpdateStates"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers:batchUpdate"; - /// Initializes BatchUpdateStates parameter list. + /// Initializes BatchUpdate parameter list. protected override void InitParameters() { base.InitParameters(); @@ -7512,9 +7496,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("purchaseOptionId", new Google.Apis.Discovery.Parameter { - Name = "basePlanId", + Name = "purchaseOptionId", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -7523,100 +7507,77 @@ protected override void InitParameters() } } - /// - /// Creates a new subscription offer. Only auto-renewing base plans can have subscription offers. - /// The offer state will be DRAFT until it is activated. - /// + /// Updates a batch of one-time product offer states. /// The body of the request. /// - /// Required. The parent app (package name) for which the offer should be created. Must be equal to - /// the package_name field on the Subscription resource. + /// Required. The parent app (package name) of the updated one-time product offers. /// /// - /// Required. The parent subscription (ID) for which the offer should be created. Must be equal to - /// the product_id field on the SubscriptionOffer resource. + /// Required. The product ID of the parent one-time product, if all updated offers belong to the + /// same one-time product. If this batch update spans multiple one-time products, set this field to + /// "-". /// - /// - /// Required. The parent base plan (ID) for which the offer should be created. Must be equal to the - /// base_plan_id field on the SubscriptionOffer resource. + /// + /// Required. The purchase option ID of the parent purchase option, if all updated offers belong to + /// the same purchase option. If this batch update spans multiple purchase options, set this field + /// to "-". /// - public virtual CreateRequest Create(Google.Apis.AndroidPublisher.v3.Data.SubscriptionOffer body, string packageName, string productId, string basePlanId) + public virtual BatchUpdateStatesRequest BatchUpdateStates(Google.Apis.AndroidPublisher.v3.Data.BatchUpdateOneTimeProductOfferStatesRequest body, string packageName, string productId, string purchaseOptionId) { - return new CreateRequest(this.service, body, packageName, productId, basePlanId); + return new BatchUpdateStatesRequest(this.service, body, packageName, productId, purchaseOptionId); } - /// - /// Creates a new subscription offer. Only auto-renewing base plans can have subscription offers. - /// The offer state will be DRAFT until it is activated. - /// - public class CreateRequest : AndroidPublisherBaseServiceRequest + /// Updates a batch of one-time product offer states. + public class BatchUpdateStatesRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Create request. - public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.SubscriptionOffer body, string packageName, string productId, string basePlanId) : base(service) + /// Constructs a new BatchUpdateStates request. + public BatchUpdateStatesRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchUpdateOneTimeProductOfferStatesRequest body, string packageName, string productId, string purchaseOptionId) : base(service) { PackageName = packageName; ProductId = productId; - BasePlanId = basePlanId; + PurchaseOptionId = purchaseOptionId; Body = body; InitParameters(); } /// - /// Required. The parent app (package name) for which the offer should be created. Must be equal - /// to the package_name field on the Subscription resource. + /// Required. The parent app (package name) of the updated one-time product offers. /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } /// - /// Required. The parent subscription (ID) for which the offer should be created. Must be equal - /// to the product_id field on the SubscriptionOffer resource. + /// Required. The product ID of the parent one-time product, if all updated offers belong to the + /// same one-time product. If this batch update spans multiple one-time products, set this field + /// to "-". /// [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProductId { get; private set; } /// - /// Required. The parent base plan (ID) for which the offer should be created. Must be equal to - /// the base_plan_id field on the SubscriptionOffer resource. - /// - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } - - /// - /// Required. The ID to use for the offer. For the requirements on this format, see the - /// documentation of the offer_id field on the SubscriptionOffer resource. - /// - [Google.Apis.Util.RequestParameterAttribute("offerId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string OfferId { get; set; } - - /// - /// Required. A string representing the version of available regions being used for the - /// specified resource. Regional prices and latest supported version for the resource have to be - /// specified according to the information published in [this - /// article](https://support.google.com/googleplay/android-developer/answer/10532353). Each time - /// the supported locations substantially change, the version will be incremented. Using this - /// field will ensure that creating and updating the resource with an older region's version and - /// set of regional prices and currencies will succeed even though a new version is available. + /// Required. The purchase option ID of the parent purchase option, if all updated offers belong + /// to the same purchase option. If this batch update spans multiple purchase options, set this + /// field to "-". /// - [Google.Apis.Util.RequestParameterAttribute("regionsVersion.version", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RegionsVersionVersion { get; set; } + [Google.Apis.Util.RequestParameterAttribute("purchaseOptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PurchaseOptionId { get; private set; } /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.SubscriptionOffer Body { get; set; } + Google.Apis.AndroidPublisher.v3.Data.BatchUpdateOneTimeProductOfferStatesRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "create"; + public override string MethodName => "batchUpdateStates"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers:batchUpdateStates"; - /// Initializes Create parameter list. + /// Initializes BatchUpdateStates parameter list. protected override void InitParameters() { base.InitParameters(); @@ -7636,100 +7597,80 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("purchaseOptionId", new Google.Apis.Discovery.Parameter { - Name = "basePlanId", + Name = "purchaseOptionId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = null, }); - RequestParameters.Add("offerId", new Google.Apis.Discovery.Parameter - { - Name = "offerId", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("regionsVersion.version", new Google.Apis.Discovery.Parameter - { - Name = "regionsVersion.version", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); } } - /// - /// Deactivates a subscription offer. Once deactivated, existing subscribers will maintain their - /// subscription, but the offer will become unavailable to new subscribers. - /// + /// Cancels a one-time product offer. /// The body of the request. /// - /// Required. The parent app (package name) of the offer to deactivate. + /// Required. The parent app (package name) of the offer to cancel. /// /// - /// Required. The parent subscription (ID) of the offer to deactivate. + /// Required. The parent one-time product (ID) of the offer to cancel. /// - /// Required. The parent base plan (ID) of the offer to deactivate. - /// Required. The unique offer ID of the offer to deactivate. - public virtual DeactivateRequest Deactivate(Google.Apis.AndroidPublisher.v3.Data.DeactivateSubscriptionOfferRequest body, string packageName, string productId, string basePlanId, string offerId) + /// + /// Required. The parent purchase option (ID) of the offer to cancel. + /// + /// Required. The offer ID of the offer to cancel. + public virtual CancelRequest Cancel(Google.Apis.AndroidPublisher.v3.Data.CancelOneTimeProductOfferRequest body, string packageName, string productId, string purchaseOptionId, string offerId) { - return new DeactivateRequest(this.service, body, packageName, productId, basePlanId, offerId); + return new CancelRequest(this.service, body, packageName, productId, purchaseOptionId, offerId); } - /// - /// Deactivates a subscription offer. Once deactivated, existing subscribers will maintain their - /// subscription, but the offer will become unavailable to new subscribers. - /// - public class DeactivateRequest : AndroidPublisherBaseServiceRequest + /// Cancels a one-time product offer. + public class CancelRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Deactivate request. - public DeactivateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.DeactivateSubscriptionOfferRequest body, string packageName, string productId, string basePlanId, string offerId) : base(service) + /// Constructs a new Cancel request. + public CancelRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.CancelOneTimeProductOfferRequest body, string packageName, string productId, string purchaseOptionId, string offerId) : base(service) { PackageName = packageName; ProductId = productId; - BasePlanId = basePlanId; + PurchaseOptionId = purchaseOptionId; OfferId = offerId; Body = body; InitParameters(); } - /// Required. The parent app (package name) of the offer to deactivate. + /// Required. The parent app (package name) of the offer to cancel. [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// Required. The parent subscription (ID) of the offer to deactivate. + /// Required. The parent one-time product (ID) of the offer to cancel. [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProductId { get; private set; } - /// Required. The parent base plan (ID) of the offer to deactivate. - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } + /// Required. The parent purchase option (ID) of the offer to cancel. + [Google.Apis.Util.RequestParameterAttribute("purchaseOptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PurchaseOptionId { get; private set; } - /// Required. The unique offer ID of the offer to deactivate. + /// Required. The offer ID of the offer to cancel. [Google.Apis.Util.RequestParameterAttribute("offerId", Google.Apis.Util.RequestParameterType.Path)] public virtual string OfferId { get; private set; } /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.DeactivateSubscriptionOfferRequest Body { get; set; } + Google.Apis.AndroidPublisher.v3.Data.CancelOneTimeProductOfferRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "deactivate"; + public override string MethodName => "cancel"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers/{offerId}:deactivate"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers/{offerId}:cancel"; - /// Initializes Deactivate parameter list. + /// Initializes Cancel parameter list. protected override void InitParameters() { base.InitParameters(); @@ -7749,9 +7690,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("purchaseOptionId", new Google.Apis.Discovery.Parameter { - Name = "basePlanId", + Name = "purchaseOptionId", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -7768,148 +7709,69 @@ protected override void InitParameters() } } - /// - /// Deletes a subscription offer. Can only be done for draft offers. This action is irreversible. - /// + /// Deactivates a one-time product offer. + /// The body of the request. /// - /// Required. The parent app (package name) of the offer to delete. + /// Required. The parent app (package name) of the offer to deactivate. /// - /// Required. The parent subscription (ID) of the offer to delete. - /// Required. The parent base plan (ID) of the offer to delete. - /// Required. The unique offer ID of the offer to delete. - public virtual DeleteRequest Delete(string packageName, string productId, string basePlanId, string offerId) + /// + /// Required. The parent one-time product (ID) of the offer to deactivate. + /// + /// + /// Required. The parent purchase option (ID) of the offer to deactivate. + /// + /// Required. The offer ID of the offer to deactivate. + public virtual DeactivateRequest Deactivate(Google.Apis.AndroidPublisher.v3.Data.DeactivateOneTimeProductOfferRequest body, string packageName, string productId, string purchaseOptionId, string offerId) { - return new DeleteRequest(this.service, packageName, productId, basePlanId, offerId); + return new DeactivateRequest(this.service, body, packageName, productId, purchaseOptionId, offerId); } - /// - /// Deletes a subscription offer. Can only be done for draft offers. This action is irreversible. - /// - public class DeleteRequest : AndroidPublisherBaseServiceRequest + /// Deactivates a one-time product offer. + public class DeactivateRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Delete request. - public DeleteRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string basePlanId, string offerId) : base(service) + /// Constructs a new Deactivate request. + public DeactivateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.DeactivateOneTimeProductOfferRequest body, string packageName, string productId, string purchaseOptionId, string offerId) : base(service) { PackageName = packageName; ProductId = productId; - BasePlanId = basePlanId; + PurchaseOptionId = purchaseOptionId; OfferId = offerId; + Body = body; InitParameters(); } - /// Required. The parent app (package name) of the offer to delete. + /// Required. The parent app (package name) of the offer to deactivate. [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// Required. The parent subscription (ID) of the offer to delete. + /// Required. The parent one-time product (ID) of the offer to deactivate. [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProductId { get; private set; } - /// Required. The parent base plan (ID) of the offer to delete. - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } + /// Required. The parent purchase option (ID) of the offer to deactivate. + [Google.Apis.Util.RequestParameterAttribute("purchaseOptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PurchaseOptionId { get; private set; } - /// Required. The unique offer ID of the offer to delete. + /// Required. The offer ID of the offer to deactivate. [Google.Apis.Util.RequestParameterAttribute("offerId", Google.Apis.Util.RequestParameterType.Path)] public virtual string OfferId { get; private set; } - /// Gets the method name. - public override string MethodName => "delete"; - - /// Gets the HTTP method. - public override string HttpMethod => "DELETE"; - - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers/{offerId}"; - - /// Initializes Delete parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter - { - Name = "productId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter - { - Name = "basePlanId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("offerId", new Google.Apis.Discovery.Parameter - { - Name = "offerId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } - } - - /// Reads a single offer - /// Required. The parent app (package name) of the offer to get. - /// Required. The parent subscription (ID) of the offer to get. - /// Required. The parent base plan (ID) of the offer to get. - /// Required. The unique offer ID of the offer to get. - public virtual GetRequest Get(string packageName, string productId, string basePlanId, string offerId) - { - return new GetRequest(this.service, packageName, productId, basePlanId, offerId); - } - - /// Reads a single offer - public class GetRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string basePlanId, string offerId) : base(service) - { - PackageName = packageName; - ProductId = productId; - BasePlanId = basePlanId; - OfferId = offerId; - InitParameters(); - } - - /// Required. The parent app (package name) of the offer to get. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } - - /// Required. The parent subscription (ID) of the offer to get. - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } - - /// Required. The parent base plan (ID) of the offer to get. - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.DeactivateOneTimeProductOfferRequest Body { get; set; } - /// Required. The unique offer ID of the offer to get. - [Google.Apis.Util.RequestParameterAttribute("offerId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string OfferId { get; private set; } + /// Returns the body of the request. + protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "get"; + public override string MethodName => "deactivate"; /// Gets the HTTP method. - public override string HttpMethod => "GET"; + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers/{offerId}"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers/{offerId}:deactivate"; - /// Initializes Get parameter list. + /// Initializes Deactivate parameter list. protected override void InitParameters() { base.InitParameters(); @@ -7929,9 +7791,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("purchaseOptionId", new Google.Apis.Discovery.Parameter { - Name = "basePlanId", + Name = "purchaseOptionId", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -7948,69 +7810,70 @@ protected override void InitParameters() } } - /// Lists all offers under a given subscription. + /// Lists all offers under a given app, product, or purchase option. /// - /// Required. The parent app (package name) for which the subscriptions should be read. + /// Required. The parent app (package name) for which the offers should be read. /// /// - /// Required. The parent subscription (ID) for which the offers should be read. May be specified as - /// '-' to read all offers under an app. + /// Required. The parent one-time product (ID) for which the offers should be read. May be specified + /// as '-' to read all offers under an app. /// - /// - /// Required. The parent base plan (ID) for which the offers should be read. May be specified as '-' - /// to read all offers under a subscription or an app. Must be specified as '-' if product_id is - /// specified as '-'. + /// + /// Required. The parent purchase option (ID) for which the offers should be read. May be specified + /// as '-' to read all offers under a one-time product or an app. Must be specified as '-' if + /// product_id is specified as '-'. /// - public virtual ListRequest List(string packageName, string productId, string basePlanId) + public virtual ListRequest List(string packageName, string productId, string purchaseOptionId) { - return new ListRequest(this.service, packageName, productId, basePlanId); + return new ListRequest(this.service, packageName, productId, purchaseOptionId); } - /// Lists all offers under a given subscription. - public class ListRequest : AndroidPublisherBaseServiceRequest + /// Lists all offers under a given app, product, or purchase option. + public class ListRequest : AndroidPublisherBaseServiceRequest { /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string basePlanId) : base(service) + public ListRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string purchaseOptionId) : base(service) { PackageName = packageName; ProductId = productId; - BasePlanId = basePlanId; + PurchaseOptionId = purchaseOptionId; InitParameters(); } /// - /// Required. The parent app (package name) for which the subscriptions should be read. + /// Required. The parent app (package name) for which the offers should be read. /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } /// - /// Required. The parent subscription (ID) for which the offers should be read. May be specified - /// as '-' to read all offers under an app. + /// Required. The parent one-time product (ID) for which the offers should be read. May be + /// specified as '-' to read all offers under an app. /// [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProductId { get; private set; } /// - /// Required. The parent base plan (ID) for which the offers should be read. May be specified as - /// '-' to read all offers under a subscription or an app. Must be specified as '-' if - /// product_id is specified as '-'. + /// Required. The parent purchase option (ID) for which the offers should be read. May be + /// specified as '-' to read all offers under a one-time product or an app. Must be specified as + /// '-' if product_id is specified as '-'. /// - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("purchaseOptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PurchaseOptionId { get; private set; } /// - /// The maximum number of subscriptions to return. The service may return fewer than this value. - /// If unspecified, at most 50 subscriptions will be returned. The maximum value is 1000; values + /// Optional. The maximum number of offers to return. The service may return fewer than this + /// value. If unspecified, at most 50 offers will be returned. The maximum value is 1000; values /// above 1000 will be coerced to 1000. /// [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } /// - /// A page token, received from a previous `ListSubscriptionsOffers` call. Provide this to - /// retrieve the subsequent page. When paginating, all other parameters provided to - /// `ListSubscriptionOffers` must match the call that provided the page token. + /// Optional. A page token, received from a previous `ListOneTimeProductsOffers` call. Provide + /// this to retrieve the subsequent page. When paginating, product_id, package_name and + /// purchase_option_id provided to `ListOneTimeProductsOffersRequest` must match the call that + /// provided the page token. /// [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -8022,7 +7885,7 @@ public ListRequest(Google.Apis.Services.IClientService service, string packageNa public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions/{purchaseOptionId}/offers"; /// Initializes List parameter list. protected override void InitParameters() @@ -8044,9 +7907,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("purchaseOptionId", new Google.Apis.Discovery.Parameter { - Name = "basePlanId", + Name = "purchaseOptionId", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -8070,265 +7933,71 @@ protected override void InitParameters() }); } } + } - /// Updates an existing subscription offer. - /// The body of the request. - /// - /// Required. Immutable. The package name of the app the parent subscription belongs to. - /// - /// - /// Required. Immutable. The ID of the parent subscription this offer belongs to. - /// - /// - /// Required. Immutable. The ID of the base plan to which this offer is an extension. - /// - /// - /// Required. Immutable. Unique ID of this subscription offer. Must be unique within the base plan. - /// - public virtual PatchRequest Patch(Google.Apis.AndroidPublisher.v3.Data.SubscriptionOffer body, string packageName, string productId, string basePlanId, string offerId) + /// + /// Deletes purchase options across one or multiple one-time products. By default this operation will + /// fail if there are any existing offers under the deleted purchase options. Use the force parameter to + /// override the default behavior. + /// + /// The body of the request. + /// + /// Required. The parent app (package name) of the purchase options to delete. + /// + /// + /// Required. The product ID of the parent one-time product, if all purchase options to delete belong to + /// the same one-time product. If this batch delete spans multiple one-time products, set this field to + /// "-". + /// + public virtual BatchDeleteRequest BatchDelete(Google.Apis.AndroidPublisher.v3.Data.BatchDeletePurchaseOptionsRequest body, string packageName, string productId) + { + return new BatchDeleteRequest(this.service, body, packageName, productId); + } + + /// + /// Deletes purchase options across one or multiple one-time products. By default this operation will + /// fail if there are any existing offers under the deleted purchase options. Use the force parameter to + /// override the default behavior. + /// + public class BatchDeleteRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new BatchDelete request. + public BatchDeleteRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchDeletePurchaseOptionsRequest body, string packageName, string productId) : base(service) { - return new PatchRequest(this.service, body, packageName, productId, basePlanId, offerId); + PackageName = packageName; + ProductId = productId; + Body = body; + InitParameters(); } - /// Updates an existing subscription offer. - public class PatchRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Patch request. - public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.SubscriptionOffer body, string packageName, string productId, string basePlanId, string offerId) : base(service) - { - PackageName = packageName; - ProductId = productId; - BasePlanId = basePlanId; - OfferId = offerId; - Body = body; - InitParameters(); - } + /// Required. The parent app (package name) of the purchase options to delete. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } - /// - /// Required. Immutable. The package name of the app the parent subscription belongs to. - /// - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// + /// Required. The product ID of the parent one-time product, if all purchase options to delete + /// belong to the same one-time product. If this batch delete spans multiple one-time products, set + /// this field to "-". + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } - /// - /// Required. Immutable. The ID of the parent subscription this offer belongs to. - /// - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.BatchDeletePurchaseOptionsRequest Body { get; set; } - /// - /// Required. Immutable. The ID of the base plan to which this offer is an extension. - /// - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } + /// Returns the body of the request. + protected override object GetBody() => Body; - /// - /// Required. Immutable. Unique ID of this subscription offer. Must be unique within the base - /// plan. - /// - [Google.Apis.Util.RequestParameterAttribute("offerId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string OfferId { get; private set; } + /// Gets the method name. + public override string MethodName => "batchDelete"; - /// - /// Optional. If set to true, and the subscription offer with the given package_name, - /// product_id, base_plan_id and offer_id doesn't exist, an offer will be created. If a new - /// offer is created, update_mask is ignored. - /// - [Google.Apis.Util.RequestParameterAttribute("allowMissing", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable AllowMissing { get; set; } + /// Gets the HTTP method. + public override string HttpMethod => "POST"; - /// - /// Optional. The latency tolerance for the propagation of this product update. Defaults to - /// latency-sensitive. - /// - [Google.Apis.Util.RequestParameterAttribute("latencyTolerance", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable LatencyTolerance { get; set; } + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions:batchDelete"; - /// - /// Optional. The latency tolerance for the propagation of this product update. Defaults to - /// latency-sensitive. - /// - public enum LatencyToleranceEnum - { - /// Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE. - [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED")] - PRODUCTUPDATELATENCYTOLERANCEUNSPECIFIED = 0, - - /// - /// The update will propagate to clients within several minutes on average and up to a few - /// hours in rare cases. Throughput is limited to 7,200 updates per app per hour. - /// - [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE")] - PRODUCTUPDATELATENCYTOLERANCELATENCYSENSITIVE = 1, - - /// - /// The update will propagate to clients within 24 hours. Supports high throughput of up to - /// 720,000 updates per app per hour using batch modification methods. - /// - [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT")] - PRODUCTUPDATELATENCYTOLERANCELATENCYTOLERANT = 2, - } - - /// - /// Required. A string representing the version of available regions being used for the - /// specified resource. Regional prices and latest supported version for the resource have to be - /// specified according to the information published in [this - /// article](https://support.google.com/googleplay/android-developer/answer/10532353). Each time - /// the supported locations substantially change, the version will be incremented. Using this - /// field will ensure that creating and updating the resource with an older region's version and - /// set of regional prices and currencies will succeed even though a new version is available. - /// - [Google.Apis.Util.RequestParameterAttribute("regionsVersion.version", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RegionsVersionVersion { get; set; } - - /// Required. The list of fields to be updated. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } - - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.SubscriptionOffer Body { get; set; } - - /// Returns the body of the request. - protected override object GetBody() => Body; - - /// Gets the method name. - public override string MethodName => "patch"; - - /// Gets the HTTP method. - public override string HttpMethod => "PATCH"; - - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers/{offerId}"; - - /// Initializes Patch parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter - { - Name = "productId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter - { - Name = "basePlanId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("offerId", new Google.Apis.Discovery.Parameter - { - Name = "offerId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("allowMissing", new Google.Apis.Discovery.Parameter - { - Name = "allowMissing", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("latencyTolerance", new Google.Apis.Discovery.Parameter - { - Name = "latencyTolerance", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("regionsVersion.version", new Google.Apis.Discovery.Parameter - { - Name = "regionsVersion.version", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter - { - Name = "updateMask", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } - } - - /// - /// Activates a base plan. Once activated, base plans will be available to new subscribers. - /// - /// The body of the request. - /// - /// Required. The parent app (package name) of the base plan to activate. - /// - /// Required. The parent subscription (ID) of the base plan to activate. - /// Required. The unique base plan ID of the base plan to activate. - public virtual ActivateRequest Activate(Google.Apis.AndroidPublisher.v3.Data.ActivateBasePlanRequest body, string packageName, string productId, string basePlanId) - { - return new ActivateRequest(this.service, body, packageName, productId, basePlanId); - } - - /// - /// Activates a base plan. Once activated, base plans will be available to new subscribers. - /// - public class ActivateRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Activate request. - public ActivateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ActivateBasePlanRequest body, string packageName, string productId, string basePlanId) : base(service) - { - PackageName = packageName; - ProductId = productId; - BasePlanId = basePlanId; - Body = body; - InitParameters(); - } - - /// Required. The parent app (package name) of the base plan to activate. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } - - /// Required. The parent subscription (ID) of the base plan to activate. - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } - - /// Required. The unique base plan ID of the base plan to activate. - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } - - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.ActivateBasePlanRequest Body { get; set; } - - /// Returns the body of the request. - protected override object GetBody() => Body; - - /// Gets the method name. - public override string MethodName => "activate"; - - /// Gets the HTTP method. - public override string HttpMethod => "POST"; - - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}:activate"; - - /// Initializes Activate parameter list. + /// Initializes BatchDelete parameter list. protected override void InitParameters() { base.InitParameters(); @@ -8348,43 +8017,33 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter - { - Name = "basePlanId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); } } /// - /// Batch variant of the MigrateBasePlanPrices endpoint. Set the latencyTolerance field on nested - /// requests to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. + /// Activates or deactivates purchase options across one or multiple one-time products. /// /// The body of the request. /// - /// Required. The parent app (package name) for which the subscriptions should be created or updated. - /// Must be equal to the package_name field on all the Subscription resources. + /// Required. The parent app (package name) of the updated purchase options. /// /// - /// Required. The product ID of the parent subscription, if all updated offers belong to the same - /// subscription. If this batch update spans multiple subscriptions, set this field to "-". Must be set. + /// Required. The product ID of the parent one-time product, if all updated purchase options belong to + /// the same one-time product. If this batch update spans multiple one-time products, set this field to + /// "-". /// - public virtual BatchMigratePricesRequest BatchMigratePrices(Google.Apis.AndroidPublisher.v3.Data.BatchMigrateBasePlanPricesRequest body, string packageName, string productId) + public virtual BatchUpdateStatesRequest BatchUpdateStates(Google.Apis.AndroidPublisher.v3.Data.BatchUpdatePurchaseOptionStatesRequest body, string packageName, string productId) { - return new BatchMigratePricesRequest(this.service, body, packageName, productId); + return new BatchUpdateStatesRequest(this.service, body, packageName, productId); } /// - /// Batch variant of the MigrateBasePlanPrices endpoint. Set the latencyTolerance field on nested - /// requests to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. + /// Activates or deactivates purchase options across one or multiple one-time products. /// - public class BatchMigratePricesRequest : AndroidPublisherBaseServiceRequest + public class BatchUpdateStatesRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new BatchMigratePrices request. - public BatchMigratePricesRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchMigrateBasePlanPricesRequest body, string packageName, string productId) : base(service) + /// Constructs a new BatchUpdateStates request. + public BatchUpdateStatesRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchUpdatePurchaseOptionStatesRequest body, string packageName, string productId) : base(service) { PackageName = packageName; ProductId = productId; @@ -8392,37 +8051,34 @@ public BatchMigratePricesRequest(Google.Apis.Services.IClientService service, Go InitParameters(); } - /// - /// Required. The parent app (package name) for which the subscriptions should be created or - /// updated. Must be equal to the package_name field on all the Subscription resources. - /// + /// Required. The parent app (package name) of the updated purchase options. [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } /// - /// Required. The product ID of the parent subscription, if all updated offers belong to the same - /// subscription. If this batch update spans multiple subscriptions, set this field to "-". Must be - /// set. + /// Required. The product ID of the parent one-time product, if all updated purchase options belong + /// to the same one-time product. If this batch update spans multiple one-time products, set this + /// field to "-". /// [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProductId { get; private set; } /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.BatchMigrateBasePlanPricesRequest Body { get; set; } + Google.Apis.AndroidPublisher.v3.Data.BatchUpdatePurchaseOptionStatesRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "batchMigratePrices"; + public override string MethodName => "batchUpdateStates"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans:batchMigratePrices"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}/purchaseOptions:batchUpdateStates"; - /// Initializes BatchMigratePrices parameter list. + /// Initializes BatchUpdateStates parameter list. protected override void InitParameters() { base.InitParameters(); @@ -8444,410 +8100,327 @@ protected override void InitParameters() }); } } + } - /// - /// Activates or deactivates base plans across one or multiple subscriptions. Set the latencyTolerance - /// field on nested requests to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum - /// update throughput. - /// - /// The body of the request. - /// Required. The parent app (package name) of the updated base plans. - /// - /// Required. The product ID of the parent subscription, if all updated base plans belong to the same - /// subscription. If this batch update spans multiple subscriptions, set this field to "-". Must be set. - /// - public virtual BatchUpdateStatesRequest BatchUpdateStates(Google.Apis.AndroidPublisher.v3.Data.BatchUpdateBasePlanStatesRequest body, string packageName, string productId) + /// Deletes one or more one-time products. + /// The body of the request. + /// + /// Required. The parent app (package name) for which the one-time products should be deleted. Must be equal + /// to the package_name field on all the OneTimeProduct resources. + /// + public virtual BatchDeleteRequest BatchDelete(Google.Apis.AndroidPublisher.v3.Data.BatchDeleteOneTimeProductsRequest body, string packageName) + { + return new BatchDeleteRequest(this.service, body, packageName); + } + + /// Deletes one or more one-time products. + public class BatchDeleteRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new BatchDelete request. + public BatchDeleteRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchDeleteOneTimeProductsRequest body, string packageName) : base(service) { - return new BatchUpdateStatesRequest(this.service, body, packageName, productId); + PackageName = packageName; + Body = body; + InitParameters(); } /// - /// Activates or deactivates base plans across one or multiple subscriptions. Set the latencyTolerance - /// field on nested requests to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum - /// update throughput. + /// Required. The parent app (package name) for which the one-time products should be deleted. Must be + /// equal to the package_name field on all the OneTimeProduct resources. /// - public class BatchUpdateStatesRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new BatchUpdateStates request. - public BatchUpdateStatesRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchUpdateBasePlanStatesRequest body, string packageName, string productId) : base(service) - { - PackageName = packageName; - ProductId = productId; - Body = body; - InitParameters(); - } + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } - /// Required. The parent app (package name) of the updated base plans. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.BatchDeleteOneTimeProductsRequest Body { get; set; } - /// - /// Required. The product ID of the parent subscription, if all updated base plans belong to the - /// same subscription. If this batch update spans multiple subscriptions, set this field to "-". - /// Must be set. - /// - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } - - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.BatchUpdateBasePlanStatesRequest Body { get; set; } - - /// Returns the body of the request. - protected override object GetBody() => Body; + /// Returns the body of the request. + protected override object GetBody() => Body; - /// Gets the method name. - public override string MethodName => "batchUpdateStates"; + /// Gets the method name. + public override string MethodName => "batchDelete"; - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Gets the HTTP method. + public override string HttpMethod => "POST"; - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans:batchUpdateStates"; + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts:batchDelete"; - /// Initializes BatchUpdateStates parameter list. - protected override void InitParameters() + /// Initializes BatchDelete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter - { - Name = "productId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); } + } - /// - /// Deactivates a base plan. Once deactivated, the base plan will become unavailable to new subscribers, - /// but existing subscribers will maintain their subscription - /// - /// The body of the request. - /// - /// Required. The parent app (package name) of the base plan to deactivate. - /// - /// - /// Required. The parent subscription (ID) of the base plan to deactivate. - /// - /// Required. The unique base plan ID of the base plan to deactivate. - public virtual DeactivateRequest Deactivate(Google.Apis.AndroidPublisher.v3.Data.DeactivateBasePlanRequest body, string packageName, string productId, string basePlanId) + /// Reads one or more one-time products. + /// + /// Required. The parent app (package name) for which the products should be retrieved. Must be equal to the + /// package_name field on all requests. + /// + public virtual BatchGetRequest BatchGet(string packageName) + { + return new BatchGetRequest(this.service, packageName); + } + + /// Reads one or more one-time products. + public class BatchGetRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new BatchGet request. + public BatchGetRequest(Google.Apis.Services.IClientService service, string packageName) : base(service) { - return new DeactivateRequest(this.service, body, packageName, productId, basePlanId); + PackageName = packageName; + InitParameters(); } /// - /// Deactivates a base plan. Once deactivated, the base plan will become unavailable to new subscribers, - /// but existing subscribers will maintain their subscription + /// Required. The parent app (package name) for which the products should be retrieved. Must be equal to + /// the package_name field on all requests. /// - public class DeactivateRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Deactivate request. - public DeactivateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.DeactivateBasePlanRequest body, string packageName, string productId, string basePlanId) : base(service) - { - PackageName = packageName; - ProductId = productId; - BasePlanId = basePlanId; - Body = body; - InitParameters(); - } - - /// Required. The parent app (package name) of the base plan to deactivate. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } - - /// Required. The parent subscription (ID) of the base plan to deactivate. - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } - - /// Required. The unique base plan ID of the base plan to deactivate. - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } - - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.DeactivateBasePlanRequest Body { get; set; } + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// Required. A list of up to 100 product IDs to retrieve. All IDs must be different. + [Google.Apis.Util.RequestParameterAttribute("productIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable ProductIds { get; set; } - /// Gets the method name. - public override string MethodName => "deactivate"; + /// Gets the method name. + public override string MethodName => "batchGet"; - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Gets the HTTP method. + public override string HttpMethod => "GET"; - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}:deactivate"; + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts:batchGet"; - /// Initializes Deactivate parameter list. - protected override void InitParameters() + /// Initializes BatchGet parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter - { - Name = "productId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter - { - Name = "basePlanId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productIds", new Google.Apis.Discovery.Parameter + { + Name = "productIds", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } + } - /// - /// Deletes a base plan. Can only be done for draft base plans. This action is irreversible. - /// - /// - /// Required. The parent app (package name) of the base plan to delete. - /// - /// Required. The parent subscription (ID) of the base plan to delete. - /// Required. The unique offer ID of the base plan to delete. - public virtual DeleteRequest Delete(string packageName, string productId, string basePlanId) + /// Creates or updates one or more one-time products. + /// The body of the request. + /// + /// Required. The parent app (package name) for which the one-time products should be updated. Must be equal + /// to the package_name field on all the OneTimeProduct resources. + /// + public virtual BatchUpdateRequest BatchUpdate(Google.Apis.AndroidPublisher.v3.Data.BatchUpdateOneTimeProductsRequest body, string packageName) + { + return new BatchUpdateRequest(this.service, body, packageName); + } + + /// Creates or updates one or more one-time products. + public class BatchUpdateRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new BatchUpdate request. + public BatchUpdateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchUpdateOneTimeProductsRequest body, string packageName) : base(service) { - return new DeleteRequest(this.service, packageName, productId, basePlanId); + PackageName = packageName; + Body = body; + InitParameters(); } /// - /// Deletes a base plan. Can only be done for draft base plans. This action is irreversible. + /// Required. The parent app (package name) for which the one-time products should be updated. Must be + /// equal to the package_name field on all the OneTimeProduct resources. /// - public class DeleteRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Delete request. - public DeleteRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string basePlanId) : base(service) - { - PackageName = packageName; - ProductId = productId; - BasePlanId = basePlanId; - InitParameters(); - } - - /// Required. The parent app (package name) of the base plan to delete. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } - /// Required. The parent subscription (ID) of the base plan to delete. - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.BatchUpdateOneTimeProductsRequest Body { get; set; } - /// Required. The unique offer ID of the base plan to delete. - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } + /// Returns the body of the request. + protected override object GetBody() => Body; - /// Gets the method name. - public override string MethodName => "delete"; + /// Gets the method name. + public override string MethodName => "batchUpdate"; - /// Gets the HTTP method. - public override string HttpMethod => "DELETE"; + /// Gets the HTTP method. + public override string HttpMethod => "POST"; - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}"; + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts:batchUpdate"; - /// Initializes Delete parameter list. - protected override void InitParameters() + /// Initializes BatchUpdate parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter - { - Name = "productId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter - { - Name = "basePlanId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); } + } - /// - /// Migrates subscribers from one or more legacy price cohorts to the current price. Requests result in - /// Google Play notifying affected subscribers. Only up to 250 simultaneous legacy price cohorts are - /// supported. - /// - /// The body of the request. - /// - /// Required. Package name of the parent app. Must be equal to the package_name field on the - /// Subscription resource. - /// - /// - /// Required. The ID of the subscription to update. Must be equal to the product_id field on the - /// Subscription resource. - /// - /// - /// Required. The unique base plan ID of the base plan to update prices on. - /// - public virtual MigratePricesRequest MigratePrices(Google.Apis.AndroidPublisher.v3.Data.MigrateBasePlanPricesRequest body, string packageName, string productId, string basePlanId) + /// Deletes a one-time product. + /// + /// Required. The parent app (package name) of the one-time product to delete. + /// + /// Required. The one-time product ID of the one-time product to delete. + public virtual DeleteRequest Delete(string packageName, string productId) + { + return new DeleteRequest(this.service, packageName, productId); + } + + /// Deletes a one-time product. + public class DeleteRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string packageName, string productId) : base(service) { - return new MigratePricesRequest(this.service, body, packageName, productId, basePlanId); + PackageName = packageName; + ProductId = productId; + InitParameters(); } + /// Required. The parent app (package name) of the one-time product to delete. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Required. The one-time product ID of the one-time product to delete. + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + /// - /// Migrates subscribers from one or more legacy price cohorts to the current price. Requests result in - /// Google Play notifying affected subscribers. Only up to 250 simultaneous legacy price cohorts are - /// supported. + /// Optional. The latency tolerance for the propagation of this product update. Defaults to + /// latency-sensitive. /// - public class MigratePricesRequest : AndroidPublisherBaseServiceRequest + [Google.Apis.Util.RequestParameterAttribute("latencyTolerance", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable LatencyTolerance { get; set; } + + /// + /// Optional. The latency tolerance for the propagation of this product update. Defaults to + /// latency-sensitive. + /// + public enum LatencyToleranceEnum { - /// Constructs a new MigratePrices request. - public MigratePricesRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.MigrateBasePlanPricesRequest body, string packageName, string productId, string basePlanId) : base(service) - { - PackageName = packageName; - ProductId = productId; - BasePlanId = basePlanId; - Body = body; - InitParameters(); - } + /// Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE. + [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED")] + PRODUCTUPDATELATENCYTOLERANCEUNSPECIFIED = 0, /// - /// Required. Package name of the parent app. Must be equal to the package_name field on the - /// Subscription resource. + /// The update will propagate to clients within several minutes on average and up to a few hours in + /// rare cases. Throughput is limited to 7,200 updates per app per hour. /// - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE")] + PRODUCTUPDATELATENCYTOLERANCELATENCYSENSITIVE = 1, /// - /// Required. The ID of the subscription to update. Must be equal to the product_id field on the - /// Subscription resource. + /// The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 + /// updates per app per hour using batch modification methods. /// - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } - - /// Required. The unique base plan ID of the base plan to update prices on. - [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string BasePlanId { get; private set; } - - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.MigrateBasePlanPricesRequest Body { get; set; } - - /// Returns the body of the request. - protected override object GetBody() => Body; + [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT")] + PRODUCTUPDATELATENCYTOLERANCELATENCYTOLERANT = 2, + } - /// Gets the method name. - public override string MethodName => "migratePrices"; + /// Gets the method name. + public override string MethodName => "delete"; - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}:migratePrices"; + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}"; - /// Initializes MigratePrices parameter list. - protected override void InitParameters() + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter - { - Name = "productId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter - { - Name = "basePlanId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("latencyTolerance", new Google.Apis.Discovery.Parameter + { + Name = "latencyTolerance", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } - /// Deprecated: subscription archiving is not supported. - /// The body of the request. - /// - /// Required. The parent app (package name) of the app of the subscription to delete. - /// - /// Required. The unique product ID of the subscription to delete. - public virtual ArchiveRequest Archive(Google.Apis.AndroidPublisher.v3.Data.ArchiveSubscriptionRequest body, string packageName, string productId) + /// Reads a single one-time product. + /// Required. The parent app (package name) of the product to retrieve. + /// Required. The product ID of the product to retrieve. + public virtual GetRequest Get(string packageName, string productId) { - return new ArchiveRequest(this.service, body, packageName, productId); + return new GetRequest(this.service, packageName, productId); } - /// Deprecated: subscription archiving is not supported. - public class ArchiveRequest : AndroidPublisherBaseServiceRequest + /// Reads a single one-time product. + public class GetRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Archive request. - public ArchiveRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ArchiveSubscriptionRequest body, string packageName, string productId) : base(service) + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string packageName, string productId) : base(service) { PackageName = packageName; ProductId = productId; - Body = body; InitParameters(); } - /// Required. The parent app (package name) of the app of the subscription to delete. + /// Required. The parent app (package name) of the product to retrieve. [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// Required. The unique product ID of the subscription to delete. + /// Required. The product ID of the product to retrieve. [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProductId { get; private set; } - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.ArchiveSubscriptionRequest Body { get; set; } - - /// Returns the body of the request. - protected override object GetBody() => Body; - /// Gets the method name. - public override string MethodName => "archive"; + public override string MethodName => "get"; /// Gets the HTTP method. - public override string HttpMethod => "POST"; + public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}:archive"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts/{productId}"; - /// Initializes Archive parameter list. + /// Initializes Get parameter list. protected override void InitParameters() { base.InitParameters(); @@ -8870,49 +8443,57 @@ protected override void InitParameters() } } - /// Reads one or more subscriptions. + /// Lists all one-time products under a given app. /// - /// Required. The parent app (package name) for which the subscriptions should be retrieved. Must be equal - /// to the package_name field on all the requests. + /// Required. The parent app (package name) for which the one-time product should be read. /// - public virtual BatchGetRequest BatchGet(string packageName) + public virtual ListRequest List(string packageName) { - return new BatchGetRequest(this.service, packageName); + return new ListRequest(this.service, packageName); } - /// Reads one or more subscriptions. - public class BatchGetRequest : AndroidPublisherBaseServiceRequest + /// Lists all one-time products under a given app. + public class ListRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new BatchGet request. - public BatchGetRequest(Google.Apis.Services.IClientService service, string packageName) : base(service) + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string packageName) : base(service) { PackageName = packageName; InitParameters(); } /// - /// Required. The parent app (package name) for which the subscriptions should be retrieved. Must be - /// equal to the package_name field on all the requests. + /// Required. The parent app (package name) for which the one-time product should be read. /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } /// - /// Required. A list of up to 100 subscription product IDs to retrieve. All the IDs must be different. + /// Optional. The maximum number of one-time product to return. The service may return fewer than this + /// value. If unspecified, at most 50 one-time products will be returned. The maximum value is 1000; + /// values above 1000 will be coerced to 1000. /// - [Google.Apis.Util.RequestParameterAttribute("productIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable ProductIds { get; set; } + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// Optional. A page token, received from a previous `ListOneTimeProducts` call. Provide this to + /// retrieve the subsequent page. When paginating, all other parameters provided to + /// `ListOneTimeProducts` must match the call that provided the page token. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } /// Gets the method name. - public override string MethodName => "batchGet"; + public override string MethodName => "list"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions:batchGet"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/oneTimeProducts"; - /// Initializes BatchGet parameter list. + /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); @@ -8924,9 +8505,17 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("productIds", new Google.Apis.Discovery.Parameter + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter { - Name = "productIds", + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -8935,110 +8524,82 @@ protected override void InitParameters() } } - /// - /// Updates a batch of subscriptions. Set the latencyTolerance field on nested requests to - /// PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. - /// + /// Creates or updates a one-time product. /// The body of the request. - /// - /// Required. The parent app (package name) for which the subscriptions should be updated. Must be equal to - /// the package_name field on all the Subscription resources. + /// Required. Immutable. Package name of the parent app. + /// + /// Required. Immutable. Unique product ID of the product. Unique within the parent app. Product IDs must + /// start with a number or lowercase letter, and can contain numbers (0-9), lowercase letters (a-z), + /// underscores (_), and periods (.). /// - public virtual BatchUpdateRequest BatchUpdate(Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionsRequest body, string packageName) + public virtual PatchRequest Patch(Google.Apis.AndroidPublisher.v3.Data.OneTimeProduct body, string packageName, string productId) { - return new BatchUpdateRequest(this.service, body, packageName); + return new PatchRequest(this.service, body, packageName, productId); } - /// - /// Updates a batch of subscriptions. Set the latencyTolerance field on nested requests to - /// PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. - /// - public class BatchUpdateRequest : AndroidPublisherBaseServiceRequest + /// Creates or updates a one-time product. + public class PatchRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new BatchUpdate request. - public BatchUpdateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionsRequest body, string packageName) : base(service) + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.OneTimeProduct body, string packageName, string productId) : base(service) { PackageName = packageName; + ProductId = productId; Body = body; InitParameters(); } - /// - /// Required. The parent app (package name) for which the subscriptions should be updated. Must be equal - /// to the package_name field on all the Subscription resources. - /// + /// Required. Immutable. Package name of the parent app. [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionsRequest Body { get; set; } - - /// Returns the body of the request. - protected override object GetBody() => Body; - - /// Gets the method name. - public override string MethodName => "batchUpdate"; - - /// Gets the HTTP method. - public override string HttpMethod => "POST"; - - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions:batchUpdate"; - - /// Initializes BatchUpdate parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } - } - - /// - /// Creates a new subscription. Newly added base plans will remain in draft state until activated. - /// - /// The body of the request. - /// - /// Required. The parent app (package name) for which the subscription should be created. Must be equal to - /// the package_name field on the Subscription resource. - /// - public virtual CreateRequest Create(Google.Apis.AndroidPublisher.v3.Data.Subscription body, string packageName) - { - return new CreateRequest(this.service, body, packageName); - } + /// + /// Required. Immutable. Unique product ID of the product. Unique within the parent app. Product IDs + /// must start with a number or lowercase letter, and can contain numbers (0-9), lowercase letters + /// (a-z), underscores (_), and periods (.). + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } - /// - /// Creates a new subscription. Newly added base plans will remain in draft state until activated. - /// - public class CreateRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Create request. - public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.Subscription body, string packageName) : base(service) - { - PackageName = packageName; - Body = body; - InitParameters(); - } + /// + /// Optional. If set to true, and the one-time product with the given package_name and product_id + /// doesn't exist, the one-time product will be created. If a new one-time product is created, + /// update_mask is ignored. + /// + [Google.Apis.Util.RequestParameterAttribute("allowMissing", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable AllowMissing { get; set; } /// - /// Required. The parent app (package name) for which the subscription should be created. Must be equal - /// to the package_name field on the Subscription resource. + /// Optional. The latency tolerance for the propagation of this product upsert. Defaults to + /// latency-sensitive. /// - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("latencyTolerance", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable LatencyTolerance { get; set; } /// - /// Required. The ID to use for the subscription. For the requirements on this format, see the - /// documentation of the product_id field on the Subscription resource. + /// Optional. The latency tolerance for the propagation of this product upsert. Defaults to + /// latency-sensitive. /// - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ProductId { get; set; } + public enum LatencyToleranceEnum + { + /// Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE. + [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED")] + PRODUCTUPDATELATENCYTOLERANCEUNSPECIFIED = 0, + + /// + /// The update will propagate to clients within several minutes on average and up to a few hours in + /// rare cases. Throughput is limited to 7,200 updates per app per hour. + /// + [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE")] + PRODUCTUPDATELATENCYTOLERANCELATENCYSENSITIVE = 1, + + /// + /// The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 + /// updates per app per hour using batch modification methods. + /// + [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT")] + PRODUCTUPDATELATENCYTOLERANCELATENCYTOLERANT = 2, + } /// /// Required. A string representing the version of available regions being used for the specified @@ -9052,22 +8613,26 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.An [Google.Apis.Util.RequestParameterAttribute("regionsVersion.version", Google.Apis.Util.RequestParameterType.Query)] public virtual string RegionsVersionVersion { get; set; } + /// Required. The list of fields to be updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.Subscription Body { get; set; } + Google.Apis.AndroidPublisher.v3.Data.OneTimeProduct Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "create"; + public override string MethodName => "patch"; /// Gets the HTTP method. - public override string HttpMethod => "POST"; + public override string HttpMethod => "PATCH"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/onetimeproducts/{productId}"; - /// Initializes Create parameter list. + /// Initializes Patch parameter list. protected override void InitParameters() { base.InitParameters(); @@ -9082,124 +8647,2863 @@ protected override void InitParameters() RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter { Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("allowMissing", new Google.Apis.Discovery.Parameter + { + Name = "allowMissing", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); - RequestParameters.Add("regionsVersion.version", new Google.Apis.Discovery.Parameter + RequestParameters.Add("latencyTolerance", new Google.Apis.Discovery.Parameter { - Name = "regionsVersion.version", + Name = "latencyTolerance", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); - } - } - - /// - /// Deletes a subscription. A subscription can only be deleted if it has never had a base plan published. - /// - /// - /// Required. The parent app (package name) of the app of the subscription to delete. - /// - /// Required. The unique product ID of the subscription to delete. - public virtual DeleteRequest Delete(string packageName, string productId) - { - return new DeleteRequest(this.service, packageName, productId); - } - - /// - /// Deletes a subscription. A subscription can only be deleted if it has never had a base plan published. - /// - public class DeleteRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Delete request. - public DeleteRequest(Google.Apis.Services.IClientService service, string packageName, string productId) : base(service) - { - PackageName = packageName; - ProductId = productId; - InitParameters(); - } - - /// Required. The parent app (package name) of the app of the subscription to delete. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } - - /// Required. The unique product ID of the subscription to delete. - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } - - /// Gets the method name. - public override string MethodName => "delete"; - - /// Gets the HTTP method. - public override string HttpMethod => "DELETE"; - - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}"; - - /// Initializes Delete parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + RequestParameters.Add("regionsVersion.version", new Google.Apis.Discovery.Parameter { - Name = "packageName", - IsRequired = true, - ParameterType = "path", + Name = "regionsVersion.version", + IsRequired = false, + ParameterType = "query", DefaultValue = null, Pattern = null, }); - RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter { - Name = "productId", - IsRequired = true, - ParameterType = "path", + Name = "updateMask", + IsRequired = false, + ParameterType = "query", DefaultValue = null, Pattern = null, }); } } + } - /// Reads a single subscription. - /// Required. The parent app (package name) of the subscription to get. - /// Required. The unique product ID of the subscription to get. - public virtual GetRequest Get(string packageName, string productId) + /// Gets the Subscriptions resource. + public virtual SubscriptionsResource Subscriptions { get; } + + /// The "subscriptions" collection of methods. + public class SubscriptionsResource + { + private const string Resource = "subscriptions"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public SubscriptionsResource(Google.Apis.Services.IClientService service) { - return new GetRequest(this.service, packageName, productId); + this.service = service; + BasePlans = new BasePlansResource(service); } - /// Reads a single subscription. - public class GetRequest : AndroidPublisherBaseServiceRequest + /// Gets the BasePlans resource. + public virtual BasePlansResource BasePlans { get; } + + /// The "basePlans" collection of methods. + public class BasePlansResource { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string packageName, string productId) : base(service) + private const string Resource = "basePlans"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public BasePlansResource(Google.Apis.Services.IClientService service) { - PackageName = packageName; - ProductId = productId; - InitParameters(); + this.service = service; + Offers = new OffersResource(service); } - /// Required. The parent app (package name) of the subscription to get. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// Gets the Offers resource. + public virtual OffersResource Offers { get; } - /// Required. The unique product ID of the subscription to get. - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } + /// The "offers" collection of methods. + public class OffersResource + { + private const string Resource = "offers"; - /// Gets the method name. + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public OffersResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// + /// Activates a subscription offer. Once activated, subscription offers will be available to new + /// subscribers. + /// + /// The body of the request. + /// + /// Required. The parent app (package name) of the offer to activate. + /// + /// Required. The parent subscription (ID) of the offer to activate. + /// Required. The parent base plan (ID) of the offer to activate. + /// Required. The unique offer ID of the offer to activate. + public virtual ActivateRequest Activate(Google.Apis.AndroidPublisher.v3.Data.ActivateSubscriptionOfferRequest body, string packageName, string productId, string basePlanId, string offerId) + { + return new ActivateRequest(this.service, body, packageName, productId, basePlanId, offerId); + } + + /// + /// Activates a subscription offer. Once activated, subscription offers will be available to new + /// subscribers. + /// + public class ActivateRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Activate request. + public ActivateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ActivateSubscriptionOfferRequest body, string packageName, string productId, string basePlanId, string offerId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + OfferId = offerId; + Body = body; + InitParameters(); + } + + /// Required. The parent app (package name) of the offer to activate. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Required. The parent subscription (ID) of the offer to activate. + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Required. The parent base plan (ID) of the offer to activate. + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// Required. The unique offer ID of the offer to activate. + [Google.Apis.Util.RequestParameterAttribute("offerId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string OfferId { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.ActivateSubscriptionOfferRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "activate"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers/{offerId}:activate"; + + /// Initializes Activate parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("offerId", new Google.Apis.Discovery.Parameter + { + Name = "offerId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Reads one or more subscription offers. + /// The body of the request. + /// + /// Required. The parent app (package name) for which the subscriptions should be created or + /// updated. Must be equal to the package_name field on all the requests. + /// + /// + /// Required. The product ID of the parent subscription, if all updated offers belong to the same + /// subscription. If this request spans multiple subscriptions, set this field to "-". Must be set. + /// + /// + /// Required. The parent base plan (ID) for which the offers should be read. May be specified as '-' + /// to read offers from multiple base plans. + /// + public virtual BatchGetRequest BatchGet(Google.Apis.AndroidPublisher.v3.Data.BatchGetSubscriptionOffersRequest body, string packageName, string productId, string basePlanId) + { + return new BatchGetRequest(this.service, body, packageName, productId, basePlanId); + } + + /// Reads one or more subscription offers. + public class BatchGetRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new BatchGet request. + public BatchGetRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchGetSubscriptionOffersRequest body, string packageName, string productId, string basePlanId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + Body = body; + InitParameters(); + } + + /// + /// Required. The parent app (package name) for which the subscriptions should be created or + /// updated. Must be equal to the package_name field on all the requests. + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. The product ID of the parent subscription, if all updated offers belong to the + /// same subscription. If this request spans multiple subscriptions, set this field to "-". Must + /// be set. + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// + /// Required. The parent base plan (ID) for which the offers should be read. May be specified as + /// '-' to read offers from multiple base plans. + /// + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.BatchGetSubscriptionOffersRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "batchGet"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers:batchGet"; + + /// Initializes BatchGet parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Updates a batch of subscription offers. Set the latencyTolerance field on nested requests to + /// PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. + /// + /// The body of the request. + /// + /// Required. The parent app (package name) of the updated subscription offers. Must be equal to the + /// package_name field on all the updated SubscriptionOffer resources. + /// + /// + /// Required. The product ID of the parent subscription, if all updated offers belong to the same + /// subscription. If this request spans multiple subscriptions, set this field to "-". Must be set. + /// + /// + /// Required. The parent base plan (ID) for which the offers should be updated. May be specified as + /// '-' to update offers from multiple base plans. + /// + public virtual BatchUpdateRequest BatchUpdate(Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionOffersRequest body, string packageName, string productId, string basePlanId) + { + return new BatchUpdateRequest(this.service, body, packageName, productId, basePlanId); + } + + /// + /// Updates a batch of subscription offers. Set the latencyTolerance field on nested requests to + /// PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. + /// + public class BatchUpdateRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new BatchUpdate request. + public BatchUpdateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionOffersRequest body, string packageName, string productId, string basePlanId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + Body = body; + InitParameters(); + } + + /// + /// Required. The parent app (package name) of the updated subscription offers. Must be equal to + /// the package_name field on all the updated SubscriptionOffer resources. + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. The product ID of the parent subscription, if all updated offers belong to the + /// same subscription. If this request spans multiple subscriptions, set this field to "-". Must + /// be set. + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// + /// Required. The parent base plan (ID) for which the offers should be updated. May be specified + /// as '-' to update offers from multiple base plans. + /// + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionOffersRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "batchUpdate"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers:batchUpdate"; + + /// Initializes BatchUpdate parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Updates a batch of subscription offer states. Set the latencyTolerance field on nested requests + /// to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. + /// + /// The body of the request. + /// + /// Required. The parent app (package name) of the updated subscription offers. Must be equal to the + /// package_name field on all the updated SubscriptionOffer resources. + /// + /// + /// Required. The product ID of the parent subscription, if all updated offers belong to the same + /// subscription. If this request spans multiple subscriptions, set this field to "-". Must be set. + /// + /// + /// Required. The parent base plan (ID) for which the offers should be updated. May be specified as + /// '-' to update offers from multiple base plans. + /// + public virtual BatchUpdateStatesRequest BatchUpdateStates(Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionOfferStatesRequest body, string packageName, string productId, string basePlanId) + { + return new BatchUpdateStatesRequest(this.service, body, packageName, productId, basePlanId); + } + + /// + /// Updates a batch of subscription offer states. Set the latencyTolerance field on nested requests + /// to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. + /// + public class BatchUpdateStatesRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new BatchUpdateStates request. + public BatchUpdateStatesRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionOfferStatesRequest body, string packageName, string productId, string basePlanId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + Body = body; + InitParameters(); + } + + /// + /// Required. The parent app (package name) of the updated subscription offers. Must be equal to + /// the package_name field on all the updated SubscriptionOffer resources. + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. The product ID of the parent subscription, if all updated offers belong to the + /// same subscription. If this request spans multiple subscriptions, set this field to "-". Must + /// be set. + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// + /// Required. The parent base plan (ID) for which the offers should be updated. May be specified + /// as '-' to update offers from multiple base plans. + /// + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionOfferStatesRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "batchUpdateStates"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers:batchUpdateStates"; + + /// Initializes BatchUpdateStates parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Creates a new subscription offer. Only auto-renewing base plans can have subscription offers. + /// The offer state will be DRAFT until it is activated. + /// + /// The body of the request. + /// + /// Required. The parent app (package name) for which the offer should be created. Must be equal to + /// the package_name field on the Subscription resource. + /// + /// + /// Required. The parent subscription (ID) for which the offer should be created. Must be equal to + /// the product_id field on the SubscriptionOffer resource. + /// + /// + /// Required. The parent base plan (ID) for which the offer should be created. Must be equal to the + /// base_plan_id field on the SubscriptionOffer resource. + /// + public virtual CreateRequest Create(Google.Apis.AndroidPublisher.v3.Data.SubscriptionOffer body, string packageName, string productId, string basePlanId) + { + return new CreateRequest(this.service, body, packageName, productId, basePlanId); + } + + /// + /// Creates a new subscription offer. Only auto-renewing base plans can have subscription offers. + /// The offer state will be DRAFT until it is activated. + /// + public class CreateRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.SubscriptionOffer body, string packageName, string productId, string basePlanId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + Body = body; + InitParameters(); + } + + /// + /// Required. The parent app (package name) for which the offer should be created. Must be equal + /// to the package_name field on the Subscription resource. + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. The parent subscription (ID) for which the offer should be created. Must be equal + /// to the product_id field on the SubscriptionOffer resource. + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// + /// Required. The parent base plan (ID) for which the offer should be created. Must be equal to + /// the base_plan_id field on the SubscriptionOffer resource. + /// + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// + /// Required. The ID to use for the offer. For the requirements on this format, see the + /// documentation of the offer_id field on the SubscriptionOffer resource. + /// + [Google.Apis.Util.RequestParameterAttribute("offerId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OfferId { get; set; } + + /// + /// Required. A string representing the version of available regions being used for the + /// specified resource. Regional prices and latest supported version for the resource have to be + /// specified according to the information published in [this + /// article](https://support.google.com/googleplay/android-developer/answer/10532353). Each time + /// the supported locations substantially change, the version will be incremented. Using this + /// field will ensure that creating and updating the resource with an older region's version and + /// set of regional prices and currencies will succeed even though a new version is available. + /// + [Google.Apis.Util.RequestParameterAttribute("regionsVersion.version", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RegionsVersionVersion { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.SubscriptionOffer Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("offerId", new Google.Apis.Discovery.Parameter + { + Name = "offerId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("regionsVersion.version", new Google.Apis.Discovery.Parameter + { + Name = "regionsVersion.version", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Deactivates a subscription offer. Once deactivated, existing subscribers will maintain their + /// subscription, but the offer will become unavailable to new subscribers. + /// + /// The body of the request. + /// + /// Required. The parent app (package name) of the offer to deactivate. + /// + /// + /// Required. The parent subscription (ID) of the offer to deactivate. + /// + /// Required. The parent base plan (ID) of the offer to deactivate. + /// Required. The unique offer ID of the offer to deactivate. + public virtual DeactivateRequest Deactivate(Google.Apis.AndroidPublisher.v3.Data.DeactivateSubscriptionOfferRequest body, string packageName, string productId, string basePlanId, string offerId) + { + return new DeactivateRequest(this.service, body, packageName, productId, basePlanId, offerId); + } + + /// + /// Deactivates a subscription offer. Once deactivated, existing subscribers will maintain their + /// subscription, but the offer will become unavailable to new subscribers. + /// + public class DeactivateRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Deactivate request. + public DeactivateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.DeactivateSubscriptionOfferRequest body, string packageName, string productId, string basePlanId, string offerId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + OfferId = offerId; + Body = body; + InitParameters(); + } + + /// Required. The parent app (package name) of the offer to deactivate. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Required. The parent subscription (ID) of the offer to deactivate. + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Required. The parent base plan (ID) of the offer to deactivate. + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// Required. The unique offer ID of the offer to deactivate. + [Google.Apis.Util.RequestParameterAttribute("offerId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string OfferId { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.DeactivateSubscriptionOfferRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "deactivate"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers/{offerId}:deactivate"; + + /// Initializes Deactivate parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("offerId", new Google.Apis.Discovery.Parameter + { + Name = "offerId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Deletes a subscription offer. Can only be done for draft offers. This action is irreversible. + /// + /// + /// Required. The parent app (package name) of the offer to delete. + /// + /// Required. The parent subscription (ID) of the offer to delete. + /// Required. The parent base plan (ID) of the offer to delete. + /// Required. The unique offer ID of the offer to delete. + public virtual DeleteRequest Delete(string packageName, string productId, string basePlanId, string offerId) + { + return new DeleteRequest(this.service, packageName, productId, basePlanId, offerId); + } + + /// + /// Deletes a subscription offer. Can only be done for draft offers. This action is irreversible. + /// + public class DeleteRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string basePlanId, string offerId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + OfferId = offerId; + InitParameters(); + } + + /// Required. The parent app (package name) of the offer to delete. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Required. The parent subscription (ID) of the offer to delete. + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Required. The parent base plan (ID) of the offer to delete. + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// Required. The unique offer ID of the offer to delete. + [Google.Apis.Util.RequestParameterAttribute("offerId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string OfferId { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers/{offerId}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("offerId", new Google.Apis.Discovery.Parameter + { + Name = "offerId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Reads a single offer + /// Required. The parent app (package name) of the offer to get. + /// Required. The parent subscription (ID) of the offer to get. + /// Required. The parent base plan (ID) of the offer to get. + /// Required. The unique offer ID of the offer to get. + public virtual GetRequest Get(string packageName, string productId, string basePlanId, string offerId) + { + return new GetRequest(this.service, packageName, productId, basePlanId, offerId); + } + + /// Reads a single offer + public class GetRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string basePlanId, string offerId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + OfferId = offerId; + InitParameters(); + } + + /// Required. The parent app (package name) of the offer to get. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Required. The parent subscription (ID) of the offer to get. + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Required. The parent base plan (ID) of the offer to get. + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// Required. The unique offer ID of the offer to get. + [Google.Apis.Util.RequestParameterAttribute("offerId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string OfferId { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers/{offerId}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("offerId", new Google.Apis.Discovery.Parameter + { + Name = "offerId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Lists all offers under a given subscription. + /// + /// Required. The parent app (package name) for which the subscriptions should be read. + /// + /// + /// Required. The parent subscription (ID) for which the offers should be read. May be specified as + /// '-' to read all offers under an app. + /// + /// + /// Required. The parent base plan (ID) for which the offers should be read. May be specified as '-' + /// to read all offers under a subscription or an app. Must be specified as '-' if product_id is + /// specified as '-'. + /// + public virtual ListRequest List(string packageName, string productId, string basePlanId) + { + return new ListRequest(this.service, packageName, productId, basePlanId); + } + + /// Lists all offers under a given subscription. + public class ListRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string basePlanId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + InitParameters(); + } + + /// + /// Required. The parent app (package name) for which the subscriptions should be read. + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. The parent subscription (ID) for which the offers should be read. May be specified + /// as '-' to read all offers under an app. + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// + /// Required. The parent base plan (ID) for which the offers should be read. May be specified as + /// '-' to read all offers under a subscription or an app. Must be specified as '-' if + /// product_id is specified as '-'. + /// + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// + /// The maximum number of subscriptions to return. The service may return fewer than this value. + /// If unspecified, at most 50 subscriptions will be returned. The maximum value is 1000; values + /// above 1000 will be coerced to 1000. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// A page token, received from a previous `ListSubscriptionsOffers` call. Provide this to + /// retrieve the subsequent page. When paginating, all other parameters provided to + /// `ListSubscriptionOffers` must match the call that provided the page token. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Updates an existing subscription offer. + /// The body of the request. + /// + /// Required. Immutable. The package name of the app the parent subscription belongs to. + /// + /// + /// Required. Immutable. The ID of the parent subscription this offer belongs to. + /// + /// + /// Required. Immutable. The ID of the base plan to which this offer is an extension. + /// + /// + /// Required. Immutable. Unique ID of this subscription offer. Must be unique within the base plan. + /// + public virtual PatchRequest Patch(Google.Apis.AndroidPublisher.v3.Data.SubscriptionOffer body, string packageName, string productId, string basePlanId, string offerId) + { + return new PatchRequest(this.service, body, packageName, productId, basePlanId, offerId); + } + + /// Updates an existing subscription offer. + public class PatchRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.SubscriptionOffer body, string packageName, string productId, string basePlanId, string offerId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + OfferId = offerId; + Body = body; + InitParameters(); + } + + /// + /// Required. Immutable. The package name of the app the parent subscription belongs to. + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. Immutable. The ID of the parent subscription this offer belongs to. + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// + /// Required. Immutable. The ID of the base plan to which this offer is an extension. + /// + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// + /// Required. Immutable. Unique ID of this subscription offer. Must be unique within the base + /// plan. + /// + [Google.Apis.Util.RequestParameterAttribute("offerId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string OfferId { get; private set; } + + /// + /// Optional. If set to true, and the subscription offer with the given package_name, + /// product_id, base_plan_id and offer_id doesn't exist, an offer will be created. If a new + /// offer is created, update_mask is ignored. + /// + [Google.Apis.Util.RequestParameterAttribute("allowMissing", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable AllowMissing { get; set; } + + /// + /// Optional. The latency tolerance for the propagation of this product update. Defaults to + /// latency-sensitive. + /// + [Google.Apis.Util.RequestParameterAttribute("latencyTolerance", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable LatencyTolerance { get; set; } + + /// + /// Optional. The latency tolerance for the propagation of this product update. Defaults to + /// latency-sensitive. + /// + public enum LatencyToleranceEnum + { + /// Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE. + [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED")] + PRODUCTUPDATELATENCYTOLERANCEUNSPECIFIED = 0, + + /// + /// The update will propagate to clients within several minutes on average and up to a few + /// hours in rare cases. Throughput is limited to 7,200 updates per app per hour. + /// + [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE")] + PRODUCTUPDATELATENCYTOLERANCELATENCYSENSITIVE = 1, + + /// + /// The update will propagate to clients within 24 hours. Supports high throughput of up to + /// 720,000 updates per app per hour using batch modification methods. + /// + [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT")] + PRODUCTUPDATELATENCYTOLERANCELATENCYTOLERANT = 2, + } + + /// + /// Required. A string representing the version of available regions being used for the + /// specified resource. Regional prices and latest supported version for the resource have to be + /// specified according to the information published in [this + /// article](https://support.google.com/googleplay/android-developer/answer/10532353). Each time + /// the supported locations substantially change, the version will be incremented. Using this + /// field will ensure that creating and updating the resource with an older region's version and + /// set of regional prices and currencies will succeed even though a new version is available. + /// + [Google.Apis.Util.RequestParameterAttribute("regionsVersion.version", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RegionsVersionVersion { get; set; } + + /// Required. The list of fields to be updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.SubscriptionOffer Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers/{offerId}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("offerId", new Google.Apis.Discovery.Parameter + { + Name = "offerId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("allowMissing", new Google.Apis.Discovery.Parameter + { + Name = "allowMissing", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("latencyTolerance", new Google.Apis.Discovery.Parameter + { + Name = "latencyTolerance", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("regionsVersion.version", new Google.Apis.Discovery.Parameter + { + Name = "regionsVersion.version", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// + /// Activates a base plan. Once activated, base plans will be available to new subscribers. + /// + /// The body of the request. + /// + /// Required. The parent app (package name) of the base plan to activate. + /// + /// Required. The parent subscription (ID) of the base plan to activate. + /// Required. The unique base plan ID of the base plan to activate. + public virtual ActivateRequest Activate(Google.Apis.AndroidPublisher.v3.Data.ActivateBasePlanRequest body, string packageName, string productId, string basePlanId) + { + return new ActivateRequest(this.service, body, packageName, productId, basePlanId); + } + + /// + /// Activates a base plan. Once activated, base plans will be available to new subscribers. + /// + public class ActivateRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Activate request. + public ActivateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ActivateBasePlanRequest body, string packageName, string productId, string basePlanId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + Body = body; + InitParameters(); + } + + /// Required. The parent app (package name) of the base plan to activate. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Required. The parent subscription (ID) of the base plan to activate. + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Required. The unique base plan ID of the base plan to activate. + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.ActivateBasePlanRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "activate"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}:activate"; + + /// Initializes Activate parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Batch variant of the MigrateBasePlanPrices endpoint. Set the latencyTolerance field on nested + /// requests to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. + /// + /// The body of the request. + /// + /// Required. The parent app (package name) for which the subscriptions should be created or updated. + /// Must be equal to the package_name field on all the Subscription resources. + /// + /// + /// Required. The product ID of the parent subscription, if all updated offers belong to the same + /// subscription. If this batch update spans multiple subscriptions, set this field to "-". Must be set. + /// + public virtual BatchMigratePricesRequest BatchMigratePrices(Google.Apis.AndroidPublisher.v3.Data.BatchMigrateBasePlanPricesRequest body, string packageName, string productId) + { + return new BatchMigratePricesRequest(this.service, body, packageName, productId); + } + + /// + /// Batch variant of the MigrateBasePlanPrices endpoint. Set the latencyTolerance field on nested + /// requests to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. + /// + public class BatchMigratePricesRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new BatchMigratePrices request. + public BatchMigratePricesRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchMigrateBasePlanPricesRequest body, string packageName, string productId) : base(service) + { + PackageName = packageName; + ProductId = productId; + Body = body; + InitParameters(); + } + + /// + /// Required. The parent app (package name) for which the subscriptions should be created or + /// updated. Must be equal to the package_name field on all the Subscription resources. + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. The product ID of the parent subscription, if all updated offers belong to the same + /// subscription. If this batch update spans multiple subscriptions, set this field to "-". Must be + /// set. + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.BatchMigrateBasePlanPricesRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "batchMigratePrices"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans:batchMigratePrices"; + + /// Initializes BatchMigratePrices parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Activates or deactivates base plans across one or multiple subscriptions. Set the latencyTolerance + /// field on nested requests to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum + /// update throughput. + /// + /// The body of the request. + /// Required. The parent app (package name) of the updated base plans. + /// + /// Required. The product ID of the parent subscription, if all updated base plans belong to the same + /// subscription. If this batch update spans multiple subscriptions, set this field to "-". Must be set. + /// + public virtual BatchUpdateStatesRequest BatchUpdateStates(Google.Apis.AndroidPublisher.v3.Data.BatchUpdateBasePlanStatesRequest body, string packageName, string productId) + { + return new BatchUpdateStatesRequest(this.service, body, packageName, productId); + } + + /// + /// Activates or deactivates base plans across one or multiple subscriptions. Set the latencyTolerance + /// field on nested requests to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum + /// update throughput. + /// + public class BatchUpdateStatesRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new BatchUpdateStates request. + public BatchUpdateStatesRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchUpdateBasePlanStatesRequest body, string packageName, string productId) : base(service) + { + PackageName = packageName; + ProductId = productId; + Body = body; + InitParameters(); + } + + /// Required. The parent app (package name) of the updated base plans. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. The product ID of the parent subscription, if all updated base plans belong to the + /// same subscription. If this batch update spans multiple subscriptions, set this field to "-". + /// Must be set. + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.BatchUpdateBasePlanStatesRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "batchUpdateStates"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans:batchUpdateStates"; + + /// Initializes BatchUpdateStates parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Deactivates a base plan. Once deactivated, the base plan will become unavailable to new subscribers, + /// but existing subscribers will maintain their subscription + /// + /// The body of the request. + /// + /// Required. The parent app (package name) of the base plan to deactivate. + /// + /// + /// Required. The parent subscription (ID) of the base plan to deactivate. + /// + /// Required. The unique base plan ID of the base plan to deactivate. + public virtual DeactivateRequest Deactivate(Google.Apis.AndroidPublisher.v3.Data.DeactivateBasePlanRequest body, string packageName, string productId, string basePlanId) + { + return new DeactivateRequest(this.service, body, packageName, productId, basePlanId); + } + + /// + /// Deactivates a base plan. Once deactivated, the base plan will become unavailable to new subscribers, + /// but existing subscribers will maintain their subscription + /// + public class DeactivateRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Deactivate request. + public DeactivateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.DeactivateBasePlanRequest body, string packageName, string productId, string basePlanId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + Body = body; + InitParameters(); + } + + /// Required. The parent app (package name) of the base plan to deactivate. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Required. The parent subscription (ID) of the base plan to deactivate. + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Required. The unique base plan ID of the base plan to deactivate. + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.DeactivateBasePlanRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "deactivate"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}:deactivate"; + + /// Initializes Deactivate parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Deletes a base plan. Can only be done for draft base plans. This action is irreversible. + /// + /// + /// Required. The parent app (package name) of the base plan to delete. + /// + /// Required. The parent subscription (ID) of the base plan to delete. + /// Required. The unique offer ID of the base plan to delete. + public virtual DeleteRequest Delete(string packageName, string productId, string basePlanId) + { + return new DeleteRequest(this.service, packageName, productId, basePlanId); + } + + /// + /// Deletes a base plan. Can only be done for draft base plans. This action is irreversible. + /// + public class DeleteRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string basePlanId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + InitParameters(); + } + + /// Required. The parent app (package name) of the base plan to delete. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Required. The parent subscription (ID) of the base plan to delete. + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Required. The unique offer ID of the base plan to delete. + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Migrates subscribers from one or more legacy price cohorts to the current price. Requests result in + /// Google Play notifying affected subscribers. Only up to 250 simultaneous legacy price cohorts are + /// supported. + /// + /// The body of the request. + /// + /// Required. Package name of the parent app. Must be equal to the package_name field on the + /// Subscription resource. + /// + /// + /// Required. The ID of the subscription to update. Must be equal to the product_id field on the + /// Subscription resource. + /// + /// + /// Required. The unique base plan ID of the base plan to update prices on. + /// + public virtual MigratePricesRequest MigratePrices(Google.Apis.AndroidPublisher.v3.Data.MigrateBasePlanPricesRequest body, string packageName, string productId, string basePlanId) + { + return new MigratePricesRequest(this.service, body, packageName, productId, basePlanId); + } + + /// + /// Migrates subscribers from one or more legacy price cohorts to the current price. Requests result in + /// Google Play notifying affected subscribers. Only up to 250 simultaneous legacy price cohorts are + /// supported. + /// + public class MigratePricesRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new MigratePrices request. + public MigratePricesRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.MigrateBasePlanPricesRequest body, string packageName, string productId, string basePlanId) : base(service) + { + PackageName = packageName; + ProductId = productId; + BasePlanId = basePlanId; + Body = body; + InitParameters(); + } + + /// + /// Required. Package name of the parent app. Must be equal to the package_name field on the + /// Subscription resource. + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. The ID of the subscription to update. Must be equal to the product_id field on the + /// Subscription resource. + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Required. The unique base plan ID of the base plan to update prices on. + [Google.Apis.Util.RequestParameterAttribute("basePlanId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string BasePlanId { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.MigrateBasePlanPricesRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "migratePrices"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}:migratePrices"; + + /// Initializes MigratePrices parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("basePlanId", new Google.Apis.Discovery.Parameter + { + Name = "basePlanId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// Deprecated: subscription archiving is not supported. + /// The body of the request. + /// + /// Required. The parent app (package name) of the app of the subscription to delete. + /// + /// Required. The unique product ID of the subscription to delete. + public virtual ArchiveRequest Archive(Google.Apis.AndroidPublisher.v3.Data.ArchiveSubscriptionRequest body, string packageName, string productId) + { + return new ArchiveRequest(this.service, body, packageName, productId); + } + + /// Deprecated: subscription archiving is not supported. + public class ArchiveRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Archive request. + public ArchiveRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ArchiveSubscriptionRequest body, string packageName, string productId) : base(service) + { + PackageName = packageName; + ProductId = productId; + Body = body; + InitParameters(); + } + + /// Required. The parent app (package name) of the app of the subscription to delete. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Required. The unique product ID of the subscription to delete. + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.ArchiveSubscriptionRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "archive"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}:archive"; + + /// Initializes Archive parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Reads one or more subscriptions. + /// + /// Required. The parent app (package name) for which the subscriptions should be retrieved. Must be equal + /// to the package_name field on all the requests. + /// + public virtual BatchGetRequest BatchGet(string packageName) + { + return new BatchGetRequest(this.service, packageName); + } + + /// Reads one or more subscriptions. + public class BatchGetRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new BatchGet request. + public BatchGetRequest(Google.Apis.Services.IClientService service, string packageName) : base(service) + { + PackageName = packageName; + InitParameters(); + } + + /// + /// Required. The parent app (package name) for which the subscriptions should be retrieved. Must be + /// equal to the package_name field on all the requests. + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. A list of up to 100 subscription product IDs to retrieve. All the IDs must be different. + /// + [Google.Apis.Util.RequestParameterAttribute("productIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable ProductIds { get; set; } + + /// Gets the method name. + public override string MethodName => "batchGet"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions:batchGet"; + + /// Initializes BatchGet parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productIds", new Google.Apis.Discovery.Parameter + { + Name = "productIds", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Updates a batch of subscriptions. Set the latencyTolerance field on nested requests to + /// PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. + /// + /// The body of the request. + /// + /// Required. The parent app (package name) for which the subscriptions should be updated. Must be equal to + /// the package_name field on all the Subscription resources. + /// + public virtual BatchUpdateRequest BatchUpdate(Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionsRequest body, string packageName) + { + return new BatchUpdateRequest(this.service, body, packageName); + } + + /// + /// Updates a batch of subscriptions. Set the latencyTolerance field on nested requests to + /// PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput. + /// + public class BatchUpdateRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new BatchUpdate request. + public BatchUpdateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionsRequest body, string packageName) : base(service) + { + PackageName = packageName; + Body = body; + InitParameters(); + } + + /// + /// Required. The parent app (package name) for which the subscriptions should be updated. Must be equal + /// to the package_name field on all the Subscription resources. + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.BatchUpdateSubscriptionsRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "batchUpdate"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions:batchUpdate"; + + /// Initializes BatchUpdate parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Creates a new subscription. Newly added base plans will remain in draft state until activated. + /// + /// The body of the request. + /// + /// Required. The parent app (package name) for which the subscription should be created. Must be equal to + /// the package_name field on the Subscription resource. + /// + public virtual CreateRequest Create(Google.Apis.AndroidPublisher.v3.Data.Subscription body, string packageName) + { + return new CreateRequest(this.service, body, packageName); + } + + /// + /// Creates a new subscription. Newly added base plans will remain in draft state until activated. + /// + public class CreateRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.Subscription body, string packageName) : base(service) + { + PackageName = packageName; + Body = body; + InitParameters(); + } + + /// + /// Required. The parent app (package name) for which the subscription should be created. Must be equal + /// to the package_name field on the Subscription resource. + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. The ID to use for the subscription. For the requirements on this format, see the + /// documentation of the product_id field on the Subscription resource. + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ProductId { get; set; } + + /// + /// Required. A string representing the version of available regions being used for the specified + /// resource. Regional prices and latest supported version for the resource have to be specified + /// according to the information published in [this + /// article](https://support.google.com/googleplay/android-developer/answer/10532353). Each time the + /// supported locations substantially change, the version will be incremented. Using this field will + /// ensure that creating and updating the resource with an older region's version and set of regional + /// prices and currencies will succeed even though a new version is available. + /// + [Google.Apis.Util.RequestParameterAttribute("regionsVersion.version", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RegionsVersionVersion { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.Subscription Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("regionsVersion.version", new Google.Apis.Discovery.Parameter + { + Name = "regionsVersion.version", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Deletes a subscription. A subscription can only be deleted if it has never had a base plan published. + /// + /// + /// Required. The parent app (package name) of the app of the subscription to delete. + /// + /// Required. The unique product ID of the subscription to delete. + public virtual DeleteRequest Delete(string packageName, string productId) + { + return new DeleteRequest(this.service, packageName, productId); + } + + /// + /// Deletes a subscription. A subscription can only be deleted if it has never had a base plan published. + /// + public class DeleteRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string packageName, string productId) : base(service) + { + PackageName = packageName; + ProductId = productId; + InitParameters(); + } + + /// Required. The parent app (package name) of the app of the subscription to delete. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Required. The unique product ID of the subscription to delete. + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Reads a single subscription. + /// Required. The parent app (package name) of the subscription to get. + /// Required. The unique product ID of the subscription to get. + public virtual GetRequest Get(string packageName, string productId) + { + return new GetRequest(this.service, packageName, productId); + } + + /// Reads a single subscription. + public class GetRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string packageName, string productId) : base(service) + { + PackageName = packageName; + ProductId = productId; + InitParameters(); + } + + /// Required. The parent app (package name) of the subscription to get. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Required. The unique product ID of the subscription to get. + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// Gets the method name. public override string MethodName => "get"; /// Gets the HTTP method. - public override string HttpMethod => "GET"; + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Lists all subscriptions under a given app. + /// + /// Required. The parent app (package name) for which the subscriptions should be read. + /// + public virtual ListRequest List(string packageName) + { + return new ListRequest(this.service, packageName); + } + + /// Lists all subscriptions under a given app. + public class ListRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string packageName) : base(service) + { + PackageName = packageName; + InitParameters(); + } + + /// + /// Required. The parent app (package name) for which the subscriptions should be read. + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// The maximum number of subscriptions to return. The service may return fewer than this value. If + /// unspecified, at most 50 subscriptions will be returned. The maximum value is 1000; values above 1000 + /// will be coerced to 1000. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// A page token, received from a previous `ListSubscriptions` call. Provide this to retrieve the + /// subsequent page. When paginating, all other parameters provided to `ListSubscriptions` must match + /// the call that provided the page token. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Deprecated: subscription archiving is not supported. + [Google.Apis.Util.RequestParameterAttribute("showArchived", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ShowArchived { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("showArchived", new Google.Apis.Discovery.Parameter + { + Name = "showArchived", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Updates an existing subscription. + /// The body of the request. + /// Immutable. Package name of the parent app. + /// + /// Immutable. Unique product ID of the product. Unique within the parent app. Product IDs must be composed + /// of lower-case letters (a-z), numbers (0-9), underscores (_) and dots (.). It must start with a + /// lower-case letter or number, and be between 1 and 40 (inclusive) characters in length. + /// + public virtual PatchRequest Patch(Google.Apis.AndroidPublisher.v3.Data.Subscription body, string packageName, string productId) + { + return new PatchRequest(this.service, body, packageName, productId); + } + + /// Updates an existing subscription. + public class PatchRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.Subscription body, string packageName, string productId) : base(service) + { + PackageName = packageName; + ProductId = productId; + Body = body; + InitParameters(); + } + + /// Immutable. Package name of the parent app. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Immutable. Unique product ID of the product. Unique within the parent app. Product IDs must be + /// composed of lower-case letters (a-z), numbers (0-9), underscores (_) and dots (.). It must start + /// with a lower-case letter or number, and be between 1 and 40 (inclusive) characters in length. + /// + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// + /// Optional. If set to true, and the subscription with the given package_name and product_id doesn't + /// exist, the subscription will be created. If a new subscription is created, update_mask is ignored. + /// + [Google.Apis.Util.RequestParameterAttribute("allowMissing", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable AllowMissing { get; set; } + + /// + /// Optional. The latency tolerance for the propagation of this product update. Defaults to + /// latency-sensitive. + /// + [Google.Apis.Util.RequestParameterAttribute("latencyTolerance", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable LatencyTolerance { get; set; } + + /// + /// Optional. The latency tolerance for the propagation of this product update. Defaults to + /// latency-sensitive. + /// + public enum LatencyToleranceEnum + { + /// Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE. + [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED")] + PRODUCTUPDATELATENCYTOLERANCEUNSPECIFIED = 0, + + /// + /// The update will propagate to clients within several minutes on average and up to a few hours in + /// rare cases. Throughput is limited to 7,200 updates per app per hour. + /// + [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE")] + PRODUCTUPDATELATENCYTOLERANCELATENCYSENSITIVE = 1, + + /// + /// The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 + /// updates per app per hour using batch modification methods. + /// + [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT")] + PRODUCTUPDATELATENCYTOLERANCELATENCYTOLERANT = 2, + } + + /// + /// Required. A string representing the version of available regions being used for the specified + /// resource. Regional prices and latest supported version for the resource have to be specified + /// according to the information published in [this + /// article](https://support.google.com/googleplay/android-developer/answer/10532353). Each time the + /// supported locations substantially change, the version will be incremented. Using this field will + /// ensure that creating and updating the resource with an older region's version and set of regional + /// prices and currencies will succeed even though a new version is available. + /// + [Google.Apis.Util.RequestParameterAttribute("regionsVersion.version", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RegionsVersionVersion { get; set; } + + /// Required. The list of fields to be updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.Subscription Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + { + Name = "productId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("allowMissing", new Google.Apis.Discovery.Parameter + { + Name = "allowMissing", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("latencyTolerance", new Google.Apis.Discovery.Parameter + { + Name = "latencyTolerance", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("regionsVersion.version", new Google.Apis.Discovery.Parameter + { + Name = "regionsVersion.version", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// + /// Calculates the region prices, using today's exchange rate and country-specific pricing patterns, based on + /// the price in the request for a set of regions. + /// + /// The body of the request. + /// Required. The app package name. + public virtual ConvertRegionPricesRequest ConvertRegionPrices(Google.Apis.AndroidPublisher.v3.Data.ConvertRegionPricesRequest body, string packageName) + { + return new ConvertRegionPricesRequest(this.service, body, packageName); + } + + /// + /// Calculates the region prices, using today's exchange rate and country-specific pricing patterns, based on + /// the price in the request for a set of regions. + /// + public class ConvertRegionPricesRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new ConvertRegionPrices request. + public ConvertRegionPricesRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ConvertRegionPricesRequest body, string packageName) : base(service) + { + PackageName = packageName; + Body = body; + InitParameters(); + } + + /// Required. The app package name. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.ConvertRegionPricesRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "convertRegionPrices"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/pricing:convertRegionPrices"; + + /// Initializes ConvertRegionPrices parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// The "orders" collection of methods. + public class OrdersResource + { + private const string Resource = "orders"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public OrdersResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// Get order details for a list of orders. + /// + /// Required. The package name of the application for which this subscription or in-app item was purchased (for + /// example, 'com.some.thing'). + /// + public virtual BatchgetRequest Batchget(string packageName) + { + return new BatchgetRequest(this.service, packageName); + } + + /// Get order details for a list of orders. + public class BatchgetRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Batchget request. + public BatchgetRequest(Google.Apis.Services.IClientService service, string packageName) : base(service) + { + PackageName = packageName; + InitParameters(); + } + + /// + /// Required. The package name of the application for which this subscription or in-app item was purchased + /// (for example, 'com.some.thing'). + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. The list of order IDs to retrieve order details for. There must be between 1 and 1000 + /// (inclusive) order IDs per request. If any order ID is not found or does not match the provided package, + /// the entire request will fail with an error. The order IDs must be distinct. + /// + [Google.Apis.Util.RequestParameterAttribute("orderIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable OrderIds { get; set; } + + /// Gets the method name. + public override string MethodName => "batchget"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/orders:batchGet"; + + /// Initializes Batchget parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("orderIds", new Google.Apis.Discovery.Parameter + { + Name = "orderIds", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Get order details for a single order. + /// + /// Required. The package name of the application for which this subscription or in-app item was purchased (for + /// example, 'com.some.thing'). + /// + /// + /// Required. The order ID provided to the user when the subscription or in-app order was purchased. + /// + public virtual GetRequest Get(string packageName, string orderId) + { + return new GetRequest(this.service, packageName, orderId); + } + + /// Get order details for a single order. + public class GetRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string packageName, string orderId) : base(service) + { + PackageName = packageName; + OrderId = orderId; + InitParameters(); + } + + /// + /// Required. The package name of the application for which this subscription or in-app item was purchased + /// (for example, 'com.some.thing'). + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// Required. The order ID provided to the user when the subscription or in-app order was purchased. + /// + [Google.Apis.Util.RequestParameterAttribute("orderId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string OrderId { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/orders/{orderId}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("orderId", new Google.Apis.Discovery.Parameter + { + Name = "orderId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Refunds a user's subscription or in-app purchase order. Orders older than 3 years cannot be refunded. + /// + /// + /// The package name of the application for which this subscription or in-app item was purchased (for example, + /// 'com.some.thing'). + /// + /// + /// The order ID provided to the user when the subscription or in-app order was purchased. + /// + public virtual RefundRequest Refund(string packageName, string orderId) + { + return new RefundRequest(this.service, packageName, orderId); + } + + /// + /// Refunds a user's subscription or in-app purchase order. Orders older than 3 years cannot be refunded. + /// + public class RefundRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Refund request. + public RefundRequest(Google.Apis.Services.IClientService service, string packageName, string orderId) : base(service) + { + PackageName = packageName; + OrderId = orderId; + InitParameters(); + } + + /// + /// The package name of the application for which this subscription or in-app item was purchased (for + /// example, 'com.some.thing'). + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// + /// The order ID provided to the user when the subscription or in-app order was purchased. + /// + [Google.Apis.Util.RequestParameterAttribute("orderId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string OrderId { get; private set; } + + /// + /// Whether to revoke the purchased item. If set to true, access to the subscription or in-app item will be + /// terminated immediately. If the item is a recurring subscription, all future payments will also be + /// terminated. Consumed in-app items need to be handled by developer's app. (optional). + /// + [Google.Apis.Util.RequestParameterAttribute("revoke", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Revoke { get; set; } + + /// Gets the method name. + public override string MethodName => "refund"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/orders/{orderId}:refund"; + + /// Initializes Refund parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("orderId", new Google.Apis.Discovery.Parameter + { + Name = "orderId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("revoke", new Google.Apis.Discovery.Parameter + { + Name = "revoke", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// The "purchases" collection of methods. + public class PurchasesResource + { + private const string Resource = "purchases"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public PurchasesResource(Google.Apis.Services.IClientService service) + { + this.service = service; + Products = new ProductsResource(service); + Productsv2 = new Productsv2Resource(service); + Subscriptions = new SubscriptionsResource(service); + Subscriptionsv2 = new Subscriptionsv2Resource(service); + Voidedpurchases = new VoidedpurchasesResource(service); + } + + /// Gets the Products resource. + public virtual ProductsResource Products { get; } + + /// The "products" collection of methods. + public class ProductsResource + { + private const string Resource = "products"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public ProductsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// Acknowledges a purchase of an inapp item. + /// The body of the request. + /// + /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). + /// + /// The inapp product SKU (for example, 'com.some.thing.inapp1'). + /// + /// The token provided to the user's device when the inapp product was purchased. + /// + public virtual AcknowledgeRequest Acknowledge(Google.Apis.AndroidPublisher.v3.Data.ProductPurchasesAcknowledgeRequest body, string packageName, string productId, string token) + { + return new AcknowledgeRequest(this.service, body, packageName, productId, token); + } + + /// Acknowledges a purchase of an inapp item. + public class AcknowledgeRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Acknowledge request. + public AcknowledgeRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ProductPurchasesAcknowledgeRequest body, string packageName, string productId, string token) : base(service) + { + PackageName = packageName; + ProductId = productId; + Token = token; + Body = body; + InitParameters(); + } + + /// + /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// The inapp product SKU (for example, 'com.some.thing.inapp1'). + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } + + /// The token provided to the user's device when the inapp product was purchased. + [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Token { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.ProductPurchasesAcknowledgeRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "acknowledge"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}:acknowledge"; - /// Initializes Get parameter list. + /// Initializes Acknowledge parameter list. protected override void InitParameters() { base.InitParameters(); @@ -9219,64 +11523,66 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add("token", new Google.Apis.Discovery.Parameter + { + Name = "token", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); } } - /// Lists all subscriptions under a given app. + /// Consumes a purchase for an inapp item. /// - /// Required. The parent app (package name) for which the subscriptions should be read. + /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). /// - public virtual ListRequest List(string packageName) + /// The inapp product SKU (for example, 'com.some.thing.inapp1'). + /// + /// The token provided to the user's device when the inapp product was purchased. + /// + public virtual ConsumeRequest Consume(string packageName, string productId, string token) { - return new ListRequest(this.service, packageName); + return new ConsumeRequest(this.service, packageName, productId, token); } - /// Lists all subscriptions under a given app. - public class ListRequest : AndroidPublisherBaseServiceRequest + /// Consumes a purchase for an inapp item. + public class ConsumeRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string packageName) : base(service) + /// Constructs a new Consume request. + public ConsumeRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string token) : base(service) { PackageName = packageName; + ProductId = productId; + Token = token; InitParameters(); } /// - /// Required. The parent app (package name) for which the subscriptions should be read. + /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// - /// The maximum number of subscriptions to return. The service may return fewer than this value. If - /// unspecified, at most 50 subscriptions will be returned. The maximum value is 1000; values above 1000 - /// will be coerced to 1000. - /// - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - - /// - /// A page token, received from a previous `ListSubscriptions` call. Provide this to retrieve the - /// subsequent page. When paginating, all other parameters provided to `ListSubscriptions` must match - /// the call that provided the page token. - /// - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } + /// The inapp product SKU (for example, 'com.some.thing.inapp1'). + [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ProductId { get; private set; } - /// Deprecated: subscription archiving is not supported. - [Google.Apis.Util.RequestParameterAttribute("showArchived", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable ShowArchived { get; set; } + /// The token provided to the user's device when the inapp product was purchased. + [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Token { get; private set; } /// Gets the method name. - public override string MethodName => "list"; + public override string MethodName => "consume"; /// Gets the HTTP method. - public override string HttpMethod => "GET"; + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}:consume"; - /// Initializes List parameter list. + /// Initializes Consume parameter list. protected override void InitParameters() { base.InitParameters(); @@ -9288,141 +11594,74 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter - { - Name = "pageSize", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter { - Name = "pageToken", - IsRequired = false, - ParameterType = "query", + Name = "productId", + IsRequired = true, + ParameterType = "path", DefaultValue = null, Pattern = null, }); - RequestParameters.Add("showArchived", new Google.Apis.Discovery.Parameter + RequestParameters.Add("token", new Google.Apis.Discovery.Parameter { - Name = "showArchived", - IsRequired = false, - ParameterType = "query", + Name = "token", + IsRequired = true, + ParameterType = "path", DefaultValue = null, Pattern = null, }); } } - /// Updates an existing subscription. - /// The body of the request. - /// Immutable. Package name of the parent app. - /// - /// Immutable. Unique product ID of the product. Unique within the parent app. Product IDs must be composed - /// of lower-case letters (a-z), numbers (0-9), underscores (_) and dots (.). It must start with a - /// lower-case letter or number, and be between 1 and 40 (inclusive) characters in length. + /// Checks the purchase and consumption status of an inapp item. + /// + /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). /// - public virtual PatchRequest Patch(Google.Apis.AndroidPublisher.v3.Data.Subscription body, string packageName, string productId) + /// The inapp product SKU (for example, 'com.some.thing.inapp1'). + /// + /// The token provided to the user's device when the inapp product was purchased. + /// + public virtual GetRequest Get(string packageName, string productId, string token) { - return new PatchRequest(this.service, body, packageName, productId); + return new GetRequest(this.service, packageName, productId, token); } - /// Updates an existing subscription. - public class PatchRequest : AndroidPublisherBaseServiceRequest + /// Checks the purchase and consumption status of an inapp item. + public class GetRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Patch request. - public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.Subscription body, string packageName, string productId) : base(service) + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string token) : base(service) { PackageName = packageName; ProductId = productId; - Body = body; + Token = token; InitParameters(); } - /// Immutable. Package name of the parent app. + /// + /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). + /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// - /// Immutable. Unique product ID of the product. Unique within the parent app. Product IDs must be - /// composed of lower-case letters (a-z), numbers (0-9), underscores (_) and dots (.). It must start - /// with a lower-case letter or number, and be between 1 and 40 (inclusive) characters in length. - /// + /// The inapp product SKU (for example, 'com.some.thing.inapp1'). [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } - - /// - /// Optional. If set to true, and the subscription with the given package_name and product_id doesn't - /// exist, the subscription will be created. If a new subscription is created, update_mask is ignored. - /// - [Google.Apis.Util.RequestParameterAttribute("allowMissing", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable AllowMissing { get; set; } - - /// - /// Optional. The latency tolerance for the propagation of this product update. Defaults to - /// latency-sensitive. - /// - [Google.Apis.Util.RequestParameterAttribute("latencyTolerance", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable LatencyTolerance { get; set; } - - /// - /// Optional. The latency tolerance for the propagation of this product update. Defaults to - /// latency-sensitive. - /// - public enum LatencyToleranceEnum - { - /// Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE. - [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED")] - PRODUCTUPDATELATENCYTOLERANCEUNSPECIFIED = 0, - - /// - /// The update will propagate to clients within several minutes on average and up to a few hours in - /// rare cases. Throughput is limited to 7,200 updates per app per hour. - /// - [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE")] - PRODUCTUPDATELATENCYTOLERANCELATENCYSENSITIVE = 1, - - /// - /// The update will propagate to clients within 24 hours. Supports high throughput of up to 720,000 - /// updates per app per hour using batch modification methods. - /// - [Google.Apis.Util.StringValueAttribute("PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT")] - PRODUCTUPDATELATENCYTOLERANCELATENCYTOLERANT = 2, - } - - /// - /// Required. A string representing the version of available regions being used for the specified - /// resource. Regional prices and latest supported version for the resource have to be specified - /// according to the information published in [this - /// article](https://support.google.com/googleplay/android-developer/answer/10532353). Each time the - /// supported locations substantially change, the version will be incremented. Using this field will - /// ensure that creating and updating the resource with an older region's version and set of regional - /// prices and currencies will succeed even though a new version is available. - /// - [Google.Apis.Util.RequestParameterAttribute("regionsVersion.version", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RegionsVersionVersion { get; set; } - - /// Required. The list of fields to be updated. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } - - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.Subscription Body { get; set; } + public virtual string ProductId { get; private set; } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// The token provided to the user's device when the inapp product was purchased. + [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Token { get; private set; } /// Gets the method name. - public override string MethodName => "patch"; + public override string MethodName => "get"; /// Gets the HTTP method. - public override string HttpMethod => "PATCH"; + public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/subscriptions/{productId}"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}"; - /// Initializes Patch parameter list. + /// Initializes Get parameter list. protected override void InitParameters() { base.InitParameters(); @@ -9442,35 +11681,11 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("allowMissing", new Google.Apis.Discovery.Parameter - { - Name = "allowMissing", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("latencyTolerance", new Google.Apis.Discovery.Parameter - { - Name = "latencyTolerance", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("regionsVersion.version", new Google.Apis.Discovery.Parameter - { - Name = "regionsVersion.version", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + RequestParameters.Add("token", new Google.Apis.Discovery.Parameter { - Name = "updateMask", - IsRequired = false, - ParameterType = "query", + Name = "token", + IsRequired = true, + ParameterType = "path", DefaultValue = null, Pattern = null, }); @@ -9478,399 +11693,345 @@ protected override void InitParameters() } } - /// - /// Calculates the region prices, using today's exchange rate and country-specific pricing patterns, based on - /// the price in the request for a set of regions. - /// - /// The body of the request. - /// Required. The app package name. - public virtual ConvertRegionPricesRequest ConvertRegionPrices(Google.Apis.AndroidPublisher.v3.Data.ConvertRegionPricesRequest body, string packageName) - { - return new ConvertRegionPricesRequest(this.service, body, packageName); - } + /// Gets the Productsv2 resource. + public virtual Productsv2Resource Productsv2 { get; } - /// - /// Calculates the region prices, using today's exchange rate and country-specific pricing patterns, based on - /// the price in the request for a set of regions. - /// - public class ConvertRegionPricesRequest : AndroidPublisherBaseServiceRequest + /// The "productsv2" collection of methods. + public class Productsv2Resource { - /// Constructs a new ConvertRegionPrices request. - public ConvertRegionPricesRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ConvertRegionPricesRequest body, string packageName) : base(service) + private const string Resource = "productsv2"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public Productsv2Resource(Google.Apis.Services.IClientService service) { - PackageName = packageName; - Body = body; - InitParameters(); + this.service = service; } - /// Required. The app package name. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// Checks the purchase and consumption status of an inapp item. + /// + /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). + /// + /// + /// The token provided to the user's device when the inapp product was purchased. + /// + public virtual Getproductpurchasev2Request Getproductpurchasev2(string packageName, string token) + { + return new Getproductpurchasev2Request(this.service, packageName, token); + } - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.ConvertRegionPricesRequest Body { get; set; } + /// Checks the purchase and consumption status of an inapp item. + public class Getproductpurchasev2Request : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Getproductpurchasev2 request. + public Getproductpurchasev2Request(Google.Apis.Services.IClientService service, string packageName, string token) : base(service) + { + PackageName = packageName; + Token = token; + InitParameters(); + } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// + /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } - /// Gets the method name. - public override string MethodName => "convertRegionPrices"; + /// The token provided to the user's device when the inapp product was purchased. + [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Token { get; private set; } - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Gets the method name. + public override string MethodName => "getproductpurchasev2"; - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/pricing:convertRegionPrices"; + /// Gets the HTTP method. + public override string HttpMethod => "GET"; - /// Initializes ConvertRegionPrices parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/productsv2/tokens/{token}"; + + /// Initializes Getproductpurchasev2 parameter list. + protected override void InitParameters() { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("token", new Google.Apis.Discovery.Parameter + { + Name = "token", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } } } - } - - /// The "orders" collection of methods. - public class OrdersResource - { - private const string Resource = "orders"; - - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; - - /// Constructs a new resource. - public OrdersResource(Google.Apis.Services.IClientService service) - { - this.service = service; - } - /// Get order details for a list of orders. - /// - /// Required. The package name of the application for which this subscription or in-app item was purchased (for - /// example, 'com.some.thing'). - /// - public virtual BatchgetRequest Batchget(string packageName) - { - return new BatchgetRequest(this.service, packageName); - } + /// Gets the Subscriptions resource. + public virtual SubscriptionsResource Subscriptions { get; } - /// Get order details for a list of orders. - public class BatchgetRequest : AndroidPublisherBaseServiceRequest + /// The "subscriptions" collection of methods. + public class SubscriptionsResource { - /// Constructs a new Batchget request. - public BatchgetRequest(Google.Apis.Services.IClientService service, string packageName) : base(service) - { - PackageName = packageName; - InitParameters(); - } - - /// - /// Required. The package name of the application for which this subscription or in-app item was purchased - /// (for example, 'com.some.thing'). - /// - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } - - /// - /// Required. The list of order IDs to retrieve order details for. There must be between 1 and 1000 - /// (inclusive) order IDs per request. If any order ID is not found or does not match the provided package, - /// the entire request will fail with an error. The order IDs must be distinct. - /// - [Google.Apis.Util.RequestParameterAttribute("orderIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable OrderIds { get; set; } - - /// Gets the method name. - public override string MethodName => "batchget"; - - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + private const string Resource = "subscriptions"; - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/orders:batchGet"; + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; - /// Initializes Batchget parameter list. - protected override void InitParameters() + /// Constructs a new resource. + public SubscriptionsResource(Google.Apis.Services.IClientService service) { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("orderIds", new Google.Apis.Discovery.Parameter - { - Name = "orderIds", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); + this.service = service; } - } - - /// Get order details for a single order. - /// - /// Required. The package name of the application for which this subscription or in-app item was purchased (for - /// example, 'com.some.thing'). - /// - /// - /// Required. The order ID provided to the user when the subscription or in-app order was purchased. - /// - public virtual GetRequest Get(string packageName, string orderId) - { - return new GetRequest(this.service, packageName, orderId); - } - /// Get order details for a single order. - public class GetRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string packageName, string orderId) : base(service) + /// Acknowledges a subscription purchase. + /// The body of the request. + /// + /// The package name of the application for which this subscription was purchased (for example, + /// 'com.some.thing'). + /// + /// + /// Note: Since May 21, 2025, subscription_id is not required, and not recommended for subscription with + /// add-ons. The purchased subscription ID (for example, 'monthly001'). + /// + /// The token provided to the user's device when the subscription was purchased. + public virtual AcknowledgeRequest Acknowledge(Google.Apis.AndroidPublisher.v3.Data.SubscriptionPurchasesAcknowledgeRequest body, string packageName, string subscriptionId, string token) { - PackageName = packageName; - OrderId = orderId; - InitParameters(); + return new AcknowledgeRequest(this.service, body, packageName, subscriptionId, token); } - /// - /// Required. The package name of the application for which this subscription or in-app item was purchased - /// (for example, 'com.some.thing'). - /// - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// Acknowledges a subscription purchase. + public class AcknowledgeRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Acknowledge request. + public AcknowledgeRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.SubscriptionPurchasesAcknowledgeRequest body, string packageName, string subscriptionId, string token) : base(service) + { + PackageName = packageName; + SubscriptionId = subscriptionId; + Token = token; + Body = body; + InitParameters(); + } - /// - /// Required. The order ID provided to the user when the subscription or in-app order was purchased. - /// - [Google.Apis.Util.RequestParameterAttribute("orderId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string OrderId { get; private set; } + /// + /// The package name of the application for which this subscription was purchased (for example, + /// 'com.some.thing'). + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } - /// Gets the method name. - public override string MethodName => "get"; + /// + /// Note: Since May 21, 2025, subscription_id is not required, and not recommended for subscription with + /// add-ons. The purchased subscription ID (for example, 'monthly001'). + /// + [Google.Apis.Util.RequestParameterAttribute("subscriptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string SubscriptionId { get; private set; } - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// The token provided to the user's device when the subscription was purchased. + [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Token { get; private set; } - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/orders/{orderId}"; + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.SubscriptionPurchasesAcknowledgeRequest Body { get; set; } - /// Initializes Get parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("orderId", new Google.Apis.Discovery.Parameter - { - Name = "orderId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } - } + /// Returns the body of the request. + protected override object GetBody() => Body; - /// - /// Refunds a user's subscription or in-app purchase order. Orders older than 3 years cannot be refunded. - /// - /// - /// The package name of the application for which this subscription or in-app item was purchased (for example, - /// 'com.some.thing'). - /// - /// - /// The order ID provided to the user when the subscription or in-app order was purchased. - /// - public virtual RefundRequest Refund(string packageName, string orderId) - { - return new RefundRequest(this.service, packageName, orderId); - } + /// Gets the method name. + public override string MethodName => "acknowledge"; - /// - /// Refunds a user's subscription or in-app purchase order. Orders older than 3 years cannot be refunded. - /// - public class RefundRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Refund request. - public RefundRequest(Google.Apis.Services.IClientService service, string packageName, string orderId) : base(service) - { - PackageName = packageName; - OrderId = orderId; - InitParameters(); - } + /// Gets the HTTP method. + public override string HttpMethod => "POST"; - /// - /// The package name of the application for which this subscription or in-app item was purchased (for - /// example, 'com.some.thing'). - /// - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:acknowledge"; + + /// Initializes Acknowledge parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("subscriptionId", new Google.Apis.Discovery.Parameter + { + Name = "subscriptionId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("token", new Google.Apis.Discovery.Parameter + { + Name = "token", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } /// - /// The order ID provided to the user when the subscription or in-app order was purchased. + /// Cancels a user's subscription purchase. The subscription remains valid until its expiration time. /// - [Google.Apis.Util.RequestParameterAttribute("orderId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string OrderId { get; private set; } + /// + /// The package name of the application for which this subscription was purchased (for example, + /// 'com.some.thing'). + /// + /// + /// Note: Since May 21, 2025, subscription_id is not required, and not recommended for subscription with + /// add-ons. The purchased subscription ID (for example, 'monthly001'). + /// + /// The token provided to the user's device when the subscription was purchased. + public virtual CancelRequest Cancel(string packageName, string subscriptionId, string token) + { + return new CancelRequest(this.service, packageName, subscriptionId, token); + } /// - /// Whether to revoke the purchased item. If set to true, access to the subscription or in-app item will be - /// terminated immediately. If the item is a recurring subscription, all future payments will also be - /// terminated. Consumed in-app items need to be handled by developer's app. (optional). + /// Cancels a user's subscription purchase. The subscription remains valid until its expiration time. /// - [Google.Apis.Util.RequestParameterAttribute("revoke", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Revoke { get; set; } - - /// Gets the method name. - public override string MethodName => "refund"; - - /// Gets the HTTP method. - public override string HttpMethod => "POST"; - - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/orders/{orderId}:refund"; - - /// Initializes Refund parameter list. - protected override void InitParameters() + public class CancelRequest : AndroidPublisherBaseServiceRequest { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("orderId", new Google.Apis.Discovery.Parameter - { - Name = "orderId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("revoke", new Google.Apis.Discovery.Parameter + /// Constructs a new Cancel request. + public CancelRequest(Google.Apis.Services.IClientService service, string packageName, string subscriptionId, string token) : base(service) { - Name = "revoke", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } - } - - /// The "purchases" collection of methods. - public class PurchasesResource - { - private const string Resource = "purchases"; + PackageName = packageName; + SubscriptionId = subscriptionId; + Token = token; + InitParameters(); + } - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; + /// + /// The package name of the application for which this subscription was purchased (for example, + /// 'com.some.thing'). + /// + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } - /// Constructs a new resource. - public PurchasesResource(Google.Apis.Services.IClientService service) - { - this.service = service; - Products = new ProductsResource(service); - Productsv2 = new Productsv2Resource(service); - Subscriptions = new SubscriptionsResource(service); - Subscriptionsv2 = new Subscriptionsv2Resource(service); - Voidedpurchases = new VoidedpurchasesResource(service); - } + /// + /// Note: Since May 21, 2025, subscription_id is not required, and not recommended for subscription with + /// add-ons. The purchased subscription ID (for example, 'monthly001'). + /// + [Google.Apis.Util.RequestParameterAttribute("subscriptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string SubscriptionId { get; private set; } - /// Gets the Products resource. - public virtual ProductsResource Products { get; } + /// The token provided to the user's device when the subscription was purchased. + [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Token { get; private set; } - /// The "products" collection of methods. - public class ProductsResource - { - private const string Resource = "products"; + /// Gets the method name. + public override string MethodName => "cancel"; - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; + /// Gets the HTTP method. + public override string HttpMethod => "POST"; - /// Constructs a new resource. - public ProductsResource(Google.Apis.Services.IClientService service) - { - this.service = service; + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:cancel"; + + /// Initializes Cancel parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("subscriptionId", new Google.Apis.Discovery.Parameter + { + Name = "subscriptionId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("token", new Google.Apis.Discovery.Parameter + { + Name = "token", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } } - /// Acknowledges a purchase of an inapp item. + /// Defers a user's subscription purchase until a specified future expiration time. /// The body of the request. /// - /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). - /// - /// The inapp product SKU (for example, 'com.some.thing.inapp1'). - /// - /// The token provided to the user's device when the inapp product was purchased. + /// The package name of the application for which this subscription was purchased (for example, + /// 'com.some.thing'). /// - public virtual AcknowledgeRequest Acknowledge(Google.Apis.AndroidPublisher.v3.Data.ProductPurchasesAcknowledgeRequest body, string packageName, string productId, string token) + /// The purchased subscription ID (for example, 'monthly001'). + /// The token provided to the user's device when the subscription was purchased. + public virtual DeferRequest Defer(Google.Apis.AndroidPublisher.v3.Data.SubscriptionPurchasesDeferRequest body, string packageName, string subscriptionId, string token) { - return new AcknowledgeRequest(this.service, body, packageName, productId, token); + return new DeferRequest(this.service, body, packageName, subscriptionId, token); } - /// Acknowledges a purchase of an inapp item. - public class AcknowledgeRequest : AndroidPublisherBaseServiceRequest + /// Defers a user's subscription purchase until a specified future expiration time. + public class DeferRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Acknowledge request. - public AcknowledgeRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ProductPurchasesAcknowledgeRequest body, string packageName, string productId, string token) : base(service) + /// Constructs a new Defer request. + public DeferRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.SubscriptionPurchasesDeferRequest body, string packageName, string subscriptionId, string token) : base(service) { PackageName = packageName; - ProductId = productId; + SubscriptionId = subscriptionId; Token = token; Body = body; InitParameters(); } /// - /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). + /// The package name of the application for which this subscription was purchased (for example, + /// 'com.some.thing'). /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// The inapp product SKU (for example, 'com.some.thing.inapp1'). - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } + /// The purchased subscription ID (for example, 'monthly001'). + [Google.Apis.Util.RequestParameterAttribute("subscriptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string SubscriptionId { get; private set; } - /// The token provided to the user's device when the inapp product was purchased. + /// The token provided to the user's device when the subscription was purchased. [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] public virtual string Token { get; private set; } /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.ProductPurchasesAcknowledgeRequest Body { get; set; } + Google.Apis.AndroidPublisher.v3.Data.SubscriptionPurchasesDeferRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "acknowledge"; + public override string MethodName => "defer"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}:acknowledge"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:defer"; - /// Initializes Acknowledge parameter list. + /// Initializes Defer parameter list. protected override void InitParameters() { base.InitParameters(); @@ -9882,9 +12043,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("subscriptionId", new Google.Apis.Discovery.Parameter { - Name = "productId", + Name = "subscriptionId", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -9901,55 +12062,61 @@ protected override void InitParameters() } } - /// Consumes a purchase for an inapp item. + /// + /// Deprecated: Use purchases.subscriptionsv2.get instead. Checks whether a user's subscription purchase is + /// valid and returns its expiry time. + /// /// - /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). - /// - /// The inapp product SKU (for example, 'com.some.thing.inapp1'). - /// - /// The token provided to the user's device when the inapp product was purchased. + /// The package name of the application for which this subscription was purchased (for example, + /// 'com.some.thing'). /// - public virtual ConsumeRequest Consume(string packageName, string productId, string token) + /// The purchased subscription ID (for example, 'monthly001'). + /// The token provided to the user's device when the subscription was purchased. + public virtual GetRequest Get(string packageName, string subscriptionId, string token) { - return new ConsumeRequest(this.service, packageName, productId, token); + return new GetRequest(this.service, packageName, subscriptionId, token); } - /// Consumes a purchase for an inapp item. - public class ConsumeRequest : AndroidPublisherBaseServiceRequest + /// + /// Deprecated: Use purchases.subscriptionsv2.get instead. Checks whether a user's subscription purchase is + /// valid and returns its expiry time. + /// + public class GetRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Consume request. - public ConsumeRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string token) : base(service) + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string packageName, string subscriptionId, string token) : base(service) { PackageName = packageName; - ProductId = productId; + SubscriptionId = subscriptionId; Token = token; InitParameters(); } /// - /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). + /// The package name of the application for which this subscription was purchased (for example, + /// 'com.some.thing'). /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// The inapp product SKU (for example, 'com.some.thing.inapp1'). - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } + /// The purchased subscription ID (for example, 'monthly001'). + [Google.Apis.Util.RequestParameterAttribute("subscriptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string SubscriptionId { get; private set; } - /// The token provided to the user's device when the inapp product was purchased. + /// The token provided to the user's device when the subscription was purchased. [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] public virtual string Token { get; private set; } /// Gets the method name. - public override string MethodName => "consume"; + public override string MethodName => "get"; /// Gets the HTTP method. - public override string HttpMethod => "POST"; + public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}:consume"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}"; - /// Initializes Consume parameter list. + /// Initializes Get parameter list. protected override void InitParameters() { base.InitParameters(); @@ -9961,9 +12128,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("subscriptionId", new Google.Apis.Discovery.Parameter { - Name = "productId", + Name = "subscriptionId", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -9980,55 +12147,61 @@ protected override void InitParameters() } } - /// Checks the purchase and consumption status of an inapp item. + /// + /// Deprecated: Use orders.refund instead. Refunds a user's subscription purchase, but the subscription + /// remains valid until its expiration time and it will continue to recur. + /// /// - /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). - /// - /// The inapp product SKU (for example, 'com.some.thing.inapp1'). - /// - /// The token provided to the user's device when the inapp product was purchased. + /// The package name of the application for which this subscription was purchased (for example, + /// 'com.some.thing'). /// - public virtual GetRequest Get(string packageName, string productId, string token) + /// "The purchased subscription ID (for example, 'monthly001'). + /// The token provided to the user's device when the subscription was purchased. + public virtual RefundRequest Refund(string packageName, string subscriptionId, string token) { - return new GetRequest(this.service, packageName, productId, token); + return new RefundRequest(this.service, packageName, subscriptionId, token); } - /// Checks the purchase and consumption status of an inapp item. - public class GetRequest : AndroidPublisherBaseServiceRequest + /// + /// Deprecated: Use orders.refund instead. Refunds a user's subscription purchase, but the subscription + /// remains valid until its expiration time and it will continue to recur. + /// + public class RefundRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string packageName, string productId, string token) : base(service) + /// Constructs a new Refund request. + public RefundRequest(Google.Apis.Services.IClientService service, string packageName, string subscriptionId, string token) : base(service) { PackageName = packageName; - ProductId = productId; + SubscriptionId = subscriptionId; Token = token; InitParameters(); } /// - /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). + /// The package name of the application for which this subscription was purchased (for example, + /// 'com.some.thing'). /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// The inapp product SKU (for example, 'com.some.thing.inapp1'). - [Google.Apis.Util.RequestParameterAttribute("productId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ProductId { get; private set; } + /// "The purchased subscription ID (for example, 'monthly001'). + [Google.Apis.Util.RequestParameterAttribute("subscriptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string SubscriptionId { get; private set; } - /// The token provided to the user's device when the inapp product was purchased. + /// The token provided to the user's device when the subscription was purchased. [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] public virtual string Token { get; private set; } /// Gets the method name. - public override string MethodName => "get"; + public override string MethodName => "refund"; /// Gets the HTTP method. - public override string HttpMethod => "GET"; + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/products/{productId}/tokens/{token}"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:refund"; - /// Initializes Get parameter list. + /// Initializes Refund parameter list. protected override void InitParameters() { base.InitParameters(); @@ -10040,9 +12213,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("productId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("subscriptionId", new Google.Apis.Discovery.Parameter { - Name = "productId", + Name = "subscriptionId", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -10058,68 +12231,64 @@ protected override void InitParameters() }); } } - } - - /// Gets the Productsv2 resource. - public virtual Productsv2Resource Productsv2 { get; } - - /// The "productsv2" collection of methods. - public class Productsv2Resource - { - private const string Resource = "productsv2"; - - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; - - /// Constructs a new resource. - public Productsv2Resource(Google.Apis.Services.IClientService service) - { - this.service = service; - } - /// Checks the purchase and consumption status of an inapp item. + /// + /// Deprecated: Use purchases.subscriptionsv2.revoke instead. Refunds and immediately revokes a user's + /// subscription purchase. Access to the subscription will be terminated immediately and it will stop + /// recurring. + /// /// - /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). - /// - /// - /// The token provided to the user's device when the inapp product was purchased. + /// The package name of the application for which this subscription was purchased (for example, + /// 'com.some.thing'). /// - public virtual Getproductpurchasev2Request Getproductpurchasev2(string packageName, string token) + /// The purchased subscription ID (for example, 'monthly001'). + /// The token provided to the user's device when the subscription was purchased. + public virtual RevokeRequest Revoke(string packageName, string subscriptionId, string token) { - return new Getproductpurchasev2Request(this.service, packageName, token); + return new RevokeRequest(this.service, packageName, subscriptionId, token); } - /// Checks the purchase and consumption status of an inapp item. - public class Getproductpurchasev2Request : AndroidPublisherBaseServiceRequest + /// + /// Deprecated: Use purchases.subscriptionsv2.revoke instead. Refunds and immediately revokes a user's + /// subscription purchase. Access to the subscription will be terminated immediately and it will stop + /// recurring. + /// + public class RevokeRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Getproductpurchasev2 request. - public Getproductpurchasev2Request(Google.Apis.Services.IClientService service, string packageName, string token) : base(service) + /// Constructs a new Revoke request. + public RevokeRequest(Google.Apis.Services.IClientService service, string packageName, string subscriptionId, string token) : base(service) { PackageName = packageName; + SubscriptionId = subscriptionId; Token = token; InitParameters(); } /// - /// The package name of the application the inapp product was sold in (for example, 'com.some.thing'). + /// The package name of the application for which this subscription was purchased (for example, + /// 'com.some.thing'). /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// The token provided to the user's device when the inapp product was purchased. + /// The purchased subscription ID (for example, 'monthly001'). + [Google.Apis.Util.RequestParameterAttribute("subscriptionId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string SubscriptionId { get; private set; } + + /// The token provided to the user's device when the subscription was purchased. [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] public virtual string Token { get; private set; } /// Gets the method name. - public override string MethodName => "getproductpurchasev2"; + public override string MethodName => "revoke"; /// Gets the HTTP method. - public override string HttpMethod => "GET"; + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/productsv2/tokens/{token}"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:revoke"; - /// Initializes Getproductpurchasev2 parameter list. + /// Initializes Revoke parameter list. protected override void InitParameters() { base.InitParameters(); @@ -10131,6 +12300,14 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add("subscriptionId", new Google.Apis.Discovery.Parameter + { + Name = "subscriptionId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add("token", new Google.Apis.Discovery.Parameter { Name = "token", @@ -10143,86 +12320,70 @@ protected override void InitParameters() } } - /// Gets the Subscriptions resource. - public virtual SubscriptionsResource Subscriptions { get; } + /// Gets the Subscriptionsv2 resource. + public virtual Subscriptionsv2Resource Subscriptionsv2 { get; } - /// The "subscriptions" collection of methods. - public class SubscriptionsResource + /// The "subscriptionsv2" collection of methods. + public class Subscriptionsv2Resource { - private const string Resource = "subscriptions"; + private const string Resource = "subscriptionsv2"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. - public SubscriptionsResource(Google.Apis.Services.IClientService service) + public Subscriptionsv2Resource(Google.Apis.Services.IClientService service) { this.service = service; } - /// Acknowledges a subscription purchase. - /// The body of the request. + /// Get metadata about a subscription /// - /// The package name of the application for which this subscription was purchased (for example, + /// The package of the application for which this subscription was purchased (for example, /// 'com.some.thing'). /// - /// - /// Note: Since May 21, 2025, subscription_id is not required, and not recommended for subscription with - /// add-ons. The purchased subscription ID (for example, 'monthly001'). + /// + /// Required. The token provided to the user's device when the subscription was purchased. /// - /// The token provided to the user's device when the subscription was purchased. - public virtual AcknowledgeRequest Acknowledge(Google.Apis.AndroidPublisher.v3.Data.SubscriptionPurchasesAcknowledgeRequest body, string packageName, string subscriptionId, string token) + public virtual GetRequest Get(string packageName, string token) { - return new AcknowledgeRequest(this.service, body, packageName, subscriptionId, token); + return new GetRequest(this.service, packageName, token); } - /// Acknowledges a subscription purchase. - public class AcknowledgeRequest : AndroidPublisherBaseServiceRequest + /// Get metadata about a subscription + public class GetRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Acknowledge request. - public AcknowledgeRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.SubscriptionPurchasesAcknowledgeRequest body, string packageName, string subscriptionId, string token) : base(service) + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string packageName, string token) : base(service) { PackageName = packageName; - SubscriptionId = subscriptionId; Token = token; - Body = body; InitParameters(); } /// - /// The package name of the application for which this subscription was purchased (for example, + /// The package of the application for which this subscription was purchased (for example, /// 'com.some.thing'). /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } /// - /// Note: Since May 21, 2025, subscription_id is not required, and not recommended for subscription with - /// add-ons. The purchased subscription ID (for example, 'monthly001'). + /// Required. The token provided to the user's device when the subscription was purchased. /// - [Google.Apis.Util.RequestParameterAttribute("subscriptionId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string SubscriptionId { get; private set; } - - /// The token provided to the user's device when the subscription was purchased. [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] public virtual string Token { get; private set; } - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.SubscriptionPurchasesAcknowledgeRequest Body { get; set; } - - /// Returns the body of the request. - protected override object GetBody() => Body; - /// Gets the method name. - public override string MethodName => "acknowledge"; + public override string MethodName => "get"; /// Gets the HTTP method. - public override string HttpMethod => "POST"; + public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:acknowledge"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptionsv2/tokens/{token}"; - /// Initializes Acknowledge parameter list. + /// Initializes Get parameter list. protected override void InitParameters() { base.InitParameters(); @@ -10234,14 +12395,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("subscriptionId", new Google.Apis.Discovery.Parameter - { - Name = "subscriptionId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); RequestParameters.Add("token", new Google.Apis.Discovery.Parameter { Name = "token", @@ -10253,65 +12406,61 @@ protected override void InitParameters() } } - /// - /// Cancels a user's subscription purchase. The subscription remains valid until its expiration time. - /// + /// Revoke a subscription purchase for the user. + /// The body of the request. /// - /// The package name of the application for which this subscription was purchased (for example, + /// Required. The package of the application for which this subscription was purchased (for example, /// 'com.some.thing'). /// - /// - /// Note: Since May 21, 2025, subscription_id is not required, and not recommended for subscription with - /// add-ons. The purchased subscription ID (for example, 'monthly001'). + /// + /// Required. The token provided to the user's device when the subscription was purchased. /// - /// The token provided to the user's device when the subscription was purchased. - public virtual CancelRequest Cancel(string packageName, string subscriptionId, string token) + public virtual RevokeRequest Revoke(Google.Apis.AndroidPublisher.v3.Data.RevokeSubscriptionPurchaseRequest body, string packageName, string token) { - return new CancelRequest(this.service, packageName, subscriptionId, token); + return new RevokeRequest(this.service, body, packageName, token); } - /// - /// Cancels a user's subscription purchase. The subscription remains valid until its expiration time. - /// - public class CancelRequest : AndroidPublisherBaseServiceRequest + /// Revoke a subscription purchase for the user. + public class RevokeRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Cancel request. - public CancelRequest(Google.Apis.Services.IClientService service, string packageName, string subscriptionId, string token) : base(service) + /// Constructs a new Revoke request. + public RevokeRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.RevokeSubscriptionPurchaseRequest body, string packageName, string token) : base(service) { PackageName = packageName; - SubscriptionId = subscriptionId; Token = token; + Body = body; InitParameters(); } /// - /// The package name of the application for which this subscription was purchased (for example, + /// Required. The package of the application for which this subscription was purchased (for example, /// 'com.some.thing'). /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } /// - /// Note: Since May 21, 2025, subscription_id is not required, and not recommended for subscription with - /// add-ons. The purchased subscription ID (for example, 'monthly001'). + /// Required. The token provided to the user's device when the subscription was purchased. /// - [Google.Apis.Util.RequestParameterAttribute("subscriptionId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string SubscriptionId { get; private set; } - - /// The token provided to the user's device when the subscription was purchased. [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] public virtual string Token { get; private set; } + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.RevokeSubscriptionPurchaseRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + /// Gets the method name. - public override string MethodName => "cancel"; + public override string MethodName => "revoke"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:cancel"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptionsv2/tokens/{token}:revoke"; - /// Initializes Cancel parameter list. + /// Initializes Revoke parameter list. protected override void InitParameters() { base.InitParameters(); @@ -10323,14 +12472,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("subscriptionId", new Google.Apis.Discovery.Parameter - { - Name = "subscriptionId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); RequestParameters.Add("token", new Google.Apis.Discovery.Parameter { Name = "token", @@ -10341,64 +12482,124 @@ protected override void InitParameters() }); } } + } - /// Defers a user's subscription purchase until a specified future expiration time. - /// The body of the request. + /// Gets the Voidedpurchases resource. + public virtual VoidedpurchasesResource Voidedpurchases { get; } + + /// The "voidedpurchases" collection of methods. + public class VoidedpurchasesResource + { + private const string Resource = "voidedpurchases"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public VoidedpurchasesResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// Lists the purchases that were canceled, refunded or charged-back. /// - /// The package name of the application for which this subscription was purchased (for example, + /// The package name of the application for which voided purchases need to be returned (for example, /// 'com.some.thing'). /// - /// The purchased subscription ID (for example, 'monthly001'). - /// The token provided to the user's device when the subscription was purchased. - public virtual DeferRequest Defer(Google.Apis.AndroidPublisher.v3.Data.SubscriptionPurchasesDeferRequest body, string packageName, string subscriptionId, string token) + public virtual ListRequest List(string packageName) { - return new DeferRequest(this.service, body, packageName, subscriptionId, token); + return new ListRequest(this.service, packageName); } - /// Defers a user's subscription purchase until a specified future expiration time. - public class DeferRequest : AndroidPublisherBaseServiceRequest + /// Lists the purchases that were canceled, refunded or charged-back. + public class ListRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Defer request. - public DeferRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.SubscriptionPurchasesDeferRequest body, string packageName, string subscriptionId, string token) : base(service) + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string packageName) : base(service) { PackageName = packageName; - SubscriptionId = subscriptionId; - Token = token; - Body = body; InitParameters(); } /// - /// The package name of the application for which this subscription was purchased (for example, + /// The package name of the application for which voided purchases need to be returned (for example, /// 'com.some.thing'). /// [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// The purchased subscription ID (for example, 'monthly001'). - [Google.Apis.Util.RequestParameterAttribute("subscriptionId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string SubscriptionId { get; private set; } + /// + /// The time, in milliseconds since the Epoch, of the newest voided purchase that you want to see in the + /// response. The value of this parameter cannot be greater than the current time and is ignored if a + /// pagination token is set. Default value is current time. Note: This filter is applied on the time at + /// which the record is seen as voided by our systems and not the actual voided time returned in the + /// response. + /// + [Google.Apis.Util.RequestParameterAttribute("endTime", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable EndTime { get; set; } - /// The token provided to the user's device when the subscription was purchased. - [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Token { get; private set; } + /// + /// Optional. Whether to include voided purchases of quantity-based partial refunds, which are + /// applicable only to multi-quantity purchases. If true, additional voided purchases may be returned + /// with voidedQuantity that indicates the refund quantity of a quantity-based partial refund. The + /// default value is false. + /// + [Google.Apis.Util.RequestParameterAttribute("includeQuantityBasedPartialRefund", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable IncludeQuantityBasedPartialRefund { get; set; } - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.SubscriptionPurchasesDeferRequest Body { get; set; } + /// + /// Defines how many results the list operation should return. The default number depends on the + /// resource collection. + /// + [Google.Apis.Util.RequestParameterAttribute("maxResults", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable MaxResults { get; set; } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// + /// Defines the index of the first element to return. This can only be used if indexed paging is + /// enabled. + /// + [Google.Apis.Util.RequestParameterAttribute("startIndex", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable StartIndex { get; set; } + + /// + /// The time, in milliseconds since the Epoch, of the oldest voided purchase that you want to see in the + /// response. The value of this parameter cannot be older than 30 days and is ignored if a pagination + /// token is set. Default value is current time minus 30 days. Note: This filter is applied on the time + /// at which the record is seen as voided by our systems and not the actual voided time returned in the + /// response. + /// + [Google.Apis.Util.RequestParameterAttribute("startTime", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable StartTime { get; set; } + + /// + /// Defines the token of the page to return, usually taken from TokenPagination. This can only be used + /// if token paging is enabled. + /// + [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Token { get; set; } + + /// + /// The type of voided purchases that you want to see in the response. Possible values are: 0. Only + /// voided in-app product purchases will be returned in the response. This is the default value. 1. Both + /// voided in-app purchases and voided subscription purchases will be returned in the response. Note: + /// Before requesting to receive voided subscription purchases, you must switch to use orderId in the + /// response which uniquely identifies one-time purchases and subscriptions. Otherwise, you will receive + /// multiple subscription orders with the same PurchaseToken, because subscription renewal orders share + /// the same PurchaseToken. + /// + [Google.Apis.Util.RequestParameterAttribute("type", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Type { get; set; } /// Gets the method name. - public override string MethodName => "defer"; + public override string MethodName => "list"; /// Gets the HTTP method. - public override string HttpMethod => "POST"; + public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:defer"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/voidedpurchases"; - /// Initializes Defer parameter list. + /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); @@ -10410,252 +12611,396 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("subscriptionId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("endTime", new Google.Apis.Discovery.Parameter { - Name = "subscriptionId", - IsRequired = true, - ParameterType = "path", + Name = "endTime", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("includeQuantityBasedPartialRefund", new Google.Apis.Discovery.Parameter + { + Name = "includeQuantityBasedPartialRefund", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("maxResults", new Google.Apis.Discovery.Parameter + { + Name = "maxResults", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("startIndex", new Google.Apis.Discovery.Parameter + { + Name = "startIndex", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("startTime", new Google.Apis.Discovery.Parameter + { + Name = "startTime", + IsRequired = false, + ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("token", new Google.Apis.Discovery.Parameter { Name = "token", - IsRequired = true, - ParameterType = "path", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("type", new Google.Apis.Discovery.Parameter + { + Name = "type", + IsRequired = false, + ParameterType = "query", DefaultValue = null, Pattern = null, }); } } + } + } - /// - /// Deprecated: Use purchases.subscriptionsv2.get instead. Checks whether a user's subscription purchase is - /// valid and returns its expiry time. - /// - /// - /// The package name of the application for which this subscription was purchased (for example, - /// 'com.some.thing'). - /// - /// The purchased subscription ID (for example, 'monthly001'). - /// The token provided to the user's device when the subscription was purchased. - public virtual GetRequest Get(string packageName, string subscriptionId, string token) + /// The "reviews" collection of methods. + public class ReviewsResource + { + private const string Resource = "reviews"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public ReviewsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// Gets a single review. + /// Package name of the app. + /// Unique identifier for a review. + public virtual GetRequest Get(string packageName, string reviewId) + { + return new GetRequest(this.service, packageName, reviewId); + } + + /// Gets a single review. + public class GetRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string packageName, string reviewId) : base(service) { - return new GetRequest(this.service, packageName, subscriptionId, token); + PackageName = packageName; + ReviewId = reviewId; + InitParameters(); + } + + /// Package name of the app. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Unique identifier for a review. + [Google.Apis.Util.RequestParameterAttribute("reviewId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ReviewId { get; private set; } + + /// Language localization code. + [Google.Apis.Util.RequestParameterAttribute("translationLanguage", Google.Apis.Util.RequestParameterType.Query)] + public virtual string TranslationLanguage { get; set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/reviews/{reviewId}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("reviewId", new Google.Apis.Discovery.Parameter + { + Name = "reviewId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("translationLanguage", new Google.Apis.Discovery.Parameter + { + Name = "translationLanguage", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Lists all reviews. + /// Package name of the app. + public virtual ListRequest List(string packageName) + { + return new ListRequest(this.service, packageName); + } + + /// Lists all reviews. + public class ListRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string packageName) : base(service) + { + PackageName = packageName; + InitParameters(); + } + + /// Package name of the app. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// How many results the list operation should return. + [Google.Apis.Util.RequestParameterAttribute("maxResults", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable MaxResults { get; set; } + + /// The index of the first element to return. + [Google.Apis.Util.RequestParameterAttribute("startIndex", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable StartIndex { get; set; } + + /// Pagination token. If empty, list starts at the first review. + [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Token { get; set; } + + /// Language localization code. + [Google.Apis.Util.RequestParameterAttribute("translationLanguage", Google.Apis.Util.RequestParameterType.Query)] + public virtual string TranslationLanguage { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/reviews"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("maxResults", new Google.Apis.Discovery.Parameter + { + Name = "maxResults", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("startIndex", new Google.Apis.Discovery.Parameter + { + Name = "startIndex", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("token", new Google.Apis.Discovery.Parameter + { + Name = "token", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("translationLanguage", new Google.Apis.Discovery.Parameter + { + Name = "translationLanguage", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } + } - /// - /// Deprecated: Use purchases.subscriptionsv2.get instead. Checks whether a user's subscription purchase is - /// valid and returns its expiry time. - /// - public class GetRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string packageName, string subscriptionId, string token) : base(service) - { - PackageName = packageName; - SubscriptionId = subscriptionId; - Token = token; - InitParameters(); - } + /// Replies to a single review, or updates an existing reply. + /// The body of the request. + /// Package name of the app. + /// Unique identifier for a review. + public virtual ReplyRequest Reply(Google.Apis.AndroidPublisher.v3.Data.ReviewsReplyRequest body, string packageName, string reviewId) + { + return new ReplyRequest(this.service, body, packageName, reviewId); + } - /// - /// The package name of the application for which this subscription was purchased (for example, - /// 'com.some.thing'). - /// - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// Replies to a single review, or updates an existing reply. + public class ReplyRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Reply request. + public ReplyRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ReviewsReplyRequest body, string packageName, string reviewId) : base(service) + { + PackageName = packageName; + ReviewId = reviewId; + Body = body; + InitParameters(); + } - /// The purchased subscription ID (for example, 'monthly001'). - [Google.Apis.Util.RequestParameterAttribute("subscriptionId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string SubscriptionId { get; private set; } + /// Package name of the app. + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } - /// The token provided to the user's device when the subscription was purchased. - [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Token { get; private set; } + /// Unique identifier for a review. + [Google.Apis.Util.RequestParameterAttribute("reviewId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string ReviewId { get; private set; } - /// Gets the method name. - public override string MethodName => "get"; + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.ReviewsReplyRequest Body { get; set; } - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// Returns the body of the request. + protected override object GetBody() => Body; - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}"; + /// Gets the method name. + public override string MethodName => "reply"; - /// Initializes Get parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("subscriptionId", new Google.Apis.Discovery.Parameter - { - Name = "subscriptionId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("token", new Google.Apis.Discovery.Parameter - { - Name = "token", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } - } + /// Gets the HTTP method. + public override string HttpMethod => "POST"; - /// - /// Deprecated: Use orders.refund instead. Refunds a user's subscription purchase, but the subscription - /// remains valid until its expiration time and it will continue to recur. - /// - /// - /// The package name of the application for which this subscription was purchased (for example, - /// 'com.some.thing'). - /// - /// "The purchased subscription ID (for example, 'monthly001'). - /// The token provided to the user's device when the subscription was purchased. - public virtual RefundRequest Refund(string packageName, string subscriptionId, string token) - { - return new RefundRequest(this.service, packageName, subscriptionId, token); - } + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/applications/{packageName}/reviews/{reviewId}:reply"; - /// - /// Deprecated: Use orders.refund instead. Refunds a user's subscription purchase, but the subscription - /// remains valid until its expiration time and it will continue to recur. - /// - public class RefundRequest : AndroidPublisherBaseServiceRequest + /// Initializes Reply parameter list. + protected override void InitParameters() { - /// Constructs a new Refund request. - public RefundRequest(Google.Apis.Services.IClientService service, string packageName, string subscriptionId, string token) : base(service) + base.InitParameters(); + RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter { - PackageName = packageName; - SubscriptionId = subscriptionId; - Token = token; - InitParameters(); - } + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("reviewId", new Google.Apis.Discovery.Parameter + { + Name = "reviewId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + } - /// - /// The package name of the application for which this subscription was purchased (for example, - /// 'com.some.thing'). - /// - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// The "systemapks" collection of methods. + public class SystemapksResource + { + private const string Resource = "systemapks"; - /// "The purchased subscription ID (for example, 'monthly001'). - [Google.Apis.Util.RequestParameterAttribute("subscriptionId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string SubscriptionId { get; private set; } + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; - /// The token provided to the user's device when the subscription was purchased. - [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Token { get; private set; } + /// Constructs a new resource. + public SystemapksResource(Google.Apis.Services.IClientService service) + { + this.service = service; + Variants = new VariantsResource(service); + } - /// Gets the method name. - public override string MethodName => "refund"; + /// Gets the Variants resource. + public virtual VariantsResource Variants { get; } - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// The "variants" collection of methods. + public class VariantsResource + { + private const string Resource = "variants"; - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:refund"; + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; - /// Initializes Refund parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("subscriptionId", new Google.Apis.Discovery.Parameter - { - Name = "subscriptionId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("token", new Google.Apis.Discovery.Parameter - { - Name = "token", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } + /// Constructs a new resource. + public VariantsResource(Google.Apis.Services.IClientService service) + { + this.service = service; } /// - /// Deprecated: Use purchases.subscriptionsv2.revoke instead. Refunds and immediately revokes a user's - /// subscription purchase. Access to the subscription will be terminated immediately and it will stop - /// recurring. + /// Creates an APK which is suitable for inclusion in a system image from an already uploaded Android App + /// Bundle. /// - /// - /// The package name of the application for which this subscription was purchased (for example, - /// 'com.some.thing'). - /// - /// The purchased subscription ID (for example, 'monthly001'). - /// The token provided to the user's device when the subscription was purchased. - public virtual RevokeRequest Revoke(string packageName, string subscriptionId, string token) + /// The body of the request. + /// Package name of the app. + /// The version code of the App Bundle. + public virtual CreateRequest Create(Google.Apis.AndroidPublisher.v3.Data.Variant body, string packageName, long versionCode) { - return new RevokeRequest(this.service, packageName, subscriptionId, token); + return new CreateRequest(this.service, body, packageName, versionCode); } /// - /// Deprecated: Use purchases.subscriptionsv2.revoke instead. Refunds and immediately revokes a user's - /// subscription purchase. Access to the subscription will be terminated immediately and it will stop - /// recurring. + /// Creates an APK which is suitable for inclusion in a system image from an already uploaded Android App + /// Bundle. /// - public class RevokeRequest : AndroidPublisherBaseServiceRequest + public class CreateRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Revoke request. - public RevokeRequest(Google.Apis.Services.IClientService service, string packageName, string subscriptionId, string token) : base(service) + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.Variant body, string packageName, long versionCode) : base(service) { PackageName = packageName; - SubscriptionId = subscriptionId; - Token = token; - InitParameters(); - } - - /// - /// The package name of the application for which this subscription was purchased (for example, - /// 'com.some.thing'). - /// + VersionCode = versionCode; + Body = body; + InitParameters(); + } + + /// Package name of the app. [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// The purchased subscription ID (for example, 'monthly001'). - [Google.Apis.Util.RequestParameterAttribute("subscriptionId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string SubscriptionId { get; private set; } + /// The version code of the App Bundle. + [Google.Apis.Util.RequestParameterAttribute("versionCode", Google.Apis.Util.RequestParameterType.Path)] + public virtual long VersionCode { get; private set; } - /// The token provided to the user's device when the subscription was purchased. - [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Token { get; private set; } + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.Variant Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "revoke"; + public override string MethodName => "create"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptions/{subscriptionId}/tokens/{token}:revoke"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants"; - /// Initializes Revoke parameter list. + /// Initializes Create parameter list. protected override void InitParameters() { base.InitParameters(); @@ -10667,17 +13012,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("subscriptionId", new Google.Apis.Discovery.Parameter - { - Name = "subscriptionId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("token", new Google.Apis.Discovery.Parameter + RequestParameters.Add("versionCode", new Google.Apis.Discovery.Parameter { - Name = "token", + Name = "versionCode", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -10685,72 +13022,55 @@ protected override void InitParameters() }); } } - } - - /// Gets the Subscriptionsv2 resource. - public virtual Subscriptionsv2Resource Subscriptionsv2 { get; } - - /// The "subscriptionsv2" collection of methods. - public class Subscriptionsv2Resource - { - private const string Resource = "subscriptionsv2"; - - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; - - /// Constructs a new resource. - public Subscriptionsv2Resource(Google.Apis.Services.IClientService service) - { - this.service = service; - } - /// Get metadata about a subscription - /// - /// The package of the application for which this subscription was purchased (for example, - /// 'com.some.thing'). - /// - /// - /// Required. The token provided to the user's device when the subscription was purchased. - /// - public virtual GetRequest Get(string packageName, string token) + /// + /// Downloads a previously created system APK which is suitable for inclusion in a system image. + /// + /// Package name of the app. + /// The version code of the App Bundle. + /// The ID of a previously created system APK variant. + public virtual DownloadRequest Download(string packageName, long versionCode, long variantId) { - return new GetRequest(this.service, packageName, token); + return new DownloadRequest(this.service, packageName, versionCode, variantId); } - /// Get metadata about a subscription - public class GetRequest : AndroidPublisherBaseServiceRequest + /// + /// Downloads a previously created system APK which is suitable for inclusion in a system image. + /// + public class DownloadRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string packageName, string token) : base(service) + /// Constructs a new Download request. + public DownloadRequest(Google.Apis.Services.IClientService service, string packageName, long versionCode, long variantId) : base(service) { PackageName = packageName; - Token = token; + VersionCode = versionCode; + VariantId = variantId; + MediaDownloader = new Google.Apis.Download.MediaDownloader(service); InitParameters(); } - /// - /// The package of the application for which this subscription was purchased (for example, - /// 'com.some.thing'). - /// + /// Package name of the app. [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// - /// Required. The token provided to the user's device when the subscription was purchased. - /// - [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Token { get; private set; } + /// The version code of the App Bundle. + [Google.Apis.Util.RequestParameterAttribute("versionCode", Google.Apis.Util.RequestParameterType.Path)] + public virtual long VersionCode { get; private set; } + + /// The ID of a previously created system APK variant. + [Google.Apis.Util.RequestParameterAttribute("variantId", Google.Apis.Util.RequestParameterType.Path)] + public virtual long VariantId { get; private set; } /// Gets the method name. - public override string MethodName => "get"; + public override string MethodName => "download"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptionsv2/tokens/{token}"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants/{variantId}:download"; - /// Initializes Get parameter list. + /// Initializes Download parameter list. protected override void InitParameters() { base.InitParameters(); @@ -10762,72 +13082,155 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("token", new Google.Apis.Discovery.Parameter + RequestParameters.Add("versionCode", new Google.Apis.Discovery.Parameter { - Name = "token", + Name = "versionCode", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("variantId", new Google.Apis.Discovery.Parameter + { + Name = "variantId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = null, }); } + + /// Gets the media downloader. + public Google.Apis.Download.IMediaDownloader MediaDownloader { get; private set; } + + /// + /// Synchronously download the media into the given stream. + /// + /// Warning: This method hides download errors; use + /// instead. + /// + /// + /// + /// This method uses the property to perform the download. Progress event + /// handlers and other configuration may be performed using that property prior to calling this method. + /// + public virtual void Download(System.IO.Stream stream) + { + var mediaDownloader = (Google.Apis.Download.MediaDownloader)MediaDownloader; + mediaDownloader.Range = null; + mediaDownloader.Download(this.GenerateRequestUri(), stream); + } + + /// Synchronously download the media into the given stream. + /// + /// This method uses the property to perform the download. Progress event + /// handlers and other configuration may be performed using that property prior to calling this method. + /// + /// + /// The final status of the download; including whether the download succeeded or failed. + /// + public virtual Google.Apis.Download.IDownloadProgress DownloadWithStatus(System.IO.Stream stream) + { + var mediaDownloader = (Google.Apis.Download.MediaDownloader)MediaDownloader; + mediaDownloader.Range = null; + return mediaDownloader.Download(this.GenerateRequestUri(), stream); + } + + /// Asynchronously download the media into the given stream. + /// + /// This method uses the property to perform the download. Progress event + /// handlers and other configuration may be performed using that property prior to calling this method. + /// + public virtual System.Threading.Tasks.Task DownloadAsync(System.IO.Stream stream) + { + var mediaDownloader = (Google.Apis.Download.MediaDownloader)MediaDownloader; + mediaDownloader.Range = null; + return mediaDownloader.DownloadAsync(this.GenerateRequestUri(), stream); + } + + /// Asynchronously download the media into the given stream. + /// + /// This method uses the property to perform the download. Progress event + /// handlers and other configuration may be performed using that property prior to calling this method. + /// + public virtual System.Threading.Tasks.Task DownloadAsync(System.IO.Stream stream, + System.Threading.CancellationToken cancellationToken) + { + var mediaDownloader = (Google.Apis.Download.MediaDownloader)MediaDownloader; + mediaDownloader.Range = null; + return mediaDownloader.DownloadAsync(this.GenerateRequestUri(), stream, cancellationToken); + } + + /// Synchronously download a range of the media into the given stream. + /// + /// This method uses the property to perform the download. Progress event + /// handlers and other configuration may be performed using that property prior to calling this method. + /// + public virtual Google.Apis.Download.IDownloadProgress DownloadRange(System.IO.Stream stream, System.Net.Http.Headers.RangeHeaderValue range) + { + var mediaDownloader = (Google.Apis.Download.MediaDownloader)MediaDownloader; + mediaDownloader.Range = range; + return mediaDownloader.Download(this.GenerateRequestUri(), stream); + } + + /// Asynchronously download a range of the media into the given stream. + /// + /// This method uses the property to perform the download. Progress event + /// handlers and other configuration may be performed using that property prior to calling this method. + /// + public virtual System.Threading.Tasks.Task DownloadRangeAsync(System.IO.Stream stream, + System.Net.Http.Headers.RangeHeaderValue range, + System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + var mediaDownloader = (Google.Apis.Download.MediaDownloader)MediaDownloader; + mediaDownloader.Range = range; + return mediaDownloader.DownloadAsync(this.GenerateRequestUri(), stream, cancellationToken); + } } - /// Revoke a subscription purchase for the user. - /// The body of the request. - /// - /// Required. The package of the application for which this subscription was purchased (for example, - /// 'com.some.thing'). - /// - /// - /// Required. The token provided to the user's device when the subscription was purchased. - /// - public virtual RevokeRequest Revoke(Google.Apis.AndroidPublisher.v3.Data.RevokeSubscriptionPurchaseRequest body, string packageName, string token) + /// Returns a previously created system APK variant. + /// Package name of the app. + /// The version code of the App Bundle. + /// The ID of a previously created system APK variant. + public virtual GetRequest Get(string packageName, long versionCode, long variantId) { - return new RevokeRequest(this.service, body, packageName, token); + return new GetRequest(this.service, packageName, versionCode, variantId); } - /// Revoke a subscription purchase for the user. - public class RevokeRequest : AndroidPublisherBaseServiceRequest + /// Returns a previously created system APK variant. + public class GetRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Revoke request. - public RevokeRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.RevokeSubscriptionPurchaseRequest body, string packageName, string token) : base(service) + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string packageName, long versionCode, long variantId) : base(service) { PackageName = packageName; - Token = token; - Body = body; + VersionCode = versionCode; + VariantId = variantId; InitParameters(); } - /// - /// Required. The package of the application for which this subscription was purchased (for example, - /// 'com.some.thing'). - /// + /// Package name of the app. [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// - /// Required. The token provided to the user's device when the subscription was purchased. - /// - [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Token { get; private set; } - - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.RevokeSubscriptionPurchaseRequest Body { get; set; } + /// The version code of the App Bundle. + [Google.Apis.Util.RequestParameterAttribute("versionCode", Google.Apis.Util.RequestParameterType.Path)] + public virtual long VersionCode { get; private set; } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// The ID of a previously created system APK variant. + [Google.Apis.Util.RequestParameterAttribute("variantId", Google.Apis.Util.RequestParameterType.Path)] + public virtual long VariantId { get; private set; } /// Gets the method name. - public override string MethodName => "revoke"; + public override string MethodName => "get"; /// Gets the HTTP method. - public override string HttpMethod => "POST"; + public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/subscriptionsv2/tokens/{token}:revoke"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants/{variantId}"; - /// Initializes Revoke parameter list. + /// Initializes Get parameter list. protected override void InitParameters() { base.InitParameters(); @@ -10839,9 +13242,17 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("token", new Google.Apis.Discovery.Parameter + RequestParameters.Add("versionCode", new Google.Apis.Discovery.Parameter { - Name = "token", + Name = "versionCode", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("variantId", new Google.Apis.Discovery.Parameter + { + Name = "variantId", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -10849,113 +13260,33 @@ protected override void InitParameters() }); } } - } - - /// Gets the Voidedpurchases resource. - public virtual VoidedpurchasesResource Voidedpurchases { get; } - - /// The "voidedpurchases" collection of methods. - public class VoidedpurchasesResource - { - private const string Resource = "voidedpurchases"; - - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; - - /// Constructs a new resource. - public VoidedpurchasesResource(Google.Apis.Services.IClientService service) - { - this.service = service; - } - /// Lists the purchases that were canceled, refunded or charged-back. - /// - /// The package name of the application for which voided purchases need to be returned (for example, - /// 'com.some.thing'). - /// - public virtual ListRequest List(string packageName) + /// Returns the list of previously created system APK variants. + /// Package name of the app. + /// The version code of the App Bundle. + public virtual ListRequest List(string packageName, long versionCode) { - return new ListRequest(this.service, packageName); + return new ListRequest(this.service, packageName, versionCode); } - /// Lists the purchases that were canceled, refunded or charged-back. - public class ListRequest : AndroidPublisherBaseServiceRequest + /// Returns the list of previously created system APK variants. + public class ListRequest : AndroidPublisherBaseServiceRequest { /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string packageName) : base(service) + public ListRequest(Google.Apis.Services.IClientService service, string packageName, long versionCode) : base(service) { PackageName = packageName; + VersionCode = versionCode; InitParameters(); } - /// - /// The package name of the application for which voided purchases need to be returned (for example, - /// 'com.some.thing'). - /// + /// Package name of the app. [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] public virtual string PackageName { get; private set; } - /// - /// The time, in milliseconds since the Epoch, of the newest voided purchase that you want to see in the - /// response. The value of this parameter cannot be greater than the current time and is ignored if a - /// pagination token is set. Default value is current time. Note: This filter is applied on the time at - /// which the record is seen as voided by our systems and not the actual voided time returned in the - /// response. - /// - [Google.Apis.Util.RequestParameterAttribute("endTime", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable EndTime { get; set; } - - /// - /// Optional. Whether to include voided purchases of quantity-based partial refunds, which are - /// applicable only to multi-quantity purchases. If true, additional voided purchases may be returned - /// with voidedQuantity that indicates the refund quantity of a quantity-based partial refund. The - /// default value is false. - /// - [Google.Apis.Util.RequestParameterAttribute("includeQuantityBasedPartialRefund", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable IncludeQuantityBasedPartialRefund { get; set; } - - /// - /// Defines how many results the list operation should return. The default number depends on the - /// resource collection. - /// - [Google.Apis.Util.RequestParameterAttribute("maxResults", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable MaxResults { get; set; } - - /// - /// Defines the index of the first element to return. This can only be used if indexed paging is - /// enabled. - /// - [Google.Apis.Util.RequestParameterAttribute("startIndex", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable StartIndex { get; set; } - - /// - /// The time, in milliseconds since the Epoch, of the oldest voided purchase that you want to see in the - /// response. The value of this parameter cannot be older than 30 days and is ignored if a pagination - /// token is set. Default value is current time minus 30 days. Note: This filter is applied on the time - /// at which the record is seen as voided by our systems and not the actual voided time returned in the - /// response. - /// - [Google.Apis.Util.RequestParameterAttribute("startTime", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable StartTime { get; set; } - - /// - /// Defines the token of the page to return, usually taken from TokenPagination. This can only be used - /// if token paging is enabled. - /// - [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Token { get; set; } - - /// - /// The type of voided purchases that you want to see in the response. Possible values are: 0. Only - /// voided in-app product purchases will be returned in the response. This is the default value. 1. Both - /// voided in-app purchases and voided subscription purchases will be returned in the response. Note: - /// Before requesting to receive voided subscription purchases, you must switch to use orderId in the - /// response which uniquely identifies one-time purchases and subscriptions. Otherwise, you will receive - /// multiple subscription orders with the same PurchaseToken, because subscription renewal orders share - /// the same PurchaseToken. - /// - [Google.Apis.Util.RequestParameterAttribute("type", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Type { get; set; } + /// The version code of the App Bundle. + [Google.Apis.Util.RequestParameterAttribute("versionCode", Google.Apis.Util.RequestParameterType.Path)] + public virtual long VersionCode { get; private set; } /// Gets the method name. public override string MethodName => "list"; @@ -10964,7 +13295,7 @@ public ListRequest(Google.Apis.Services.IClientService service, string packageNa public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/purchases/voidedpurchases"; + public override string RestPath => "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants"; /// Initializes List parameter list. protected override void InitParameters() @@ -10978,188 +13309,171 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("endTime", new Google.Apis.Discovery.Parameter - { - Name = "endTime", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("includeQuantityBasedPartialRefund", new Google.Apis.Discovery.Parameter - { - Name = "includeQuantityBasedPartialRefund", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("maxResults", new Google.Apis.Discovery.Parameter - { - Name = "maxResults", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("startIndex", new Google.Apis.Discovery.Parameter - { - Name = "startIndex", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("startTime", new Google.Apis.Discovery.Parameter - { - Name = "startTime", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("token", new Google.Apis.Discovery.Parameter - { - Name = "token", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("type", new Google.Apis.Discovery.Parameter + RequestParameters.Add("versionCode", new Google.Apis.Discovery.Parameter { - Name = "type", - IsRequired = false, - ParameterType = "query", + Name = "versionCode", + IsRequired = true, + ParameterType = "path", DefaultValue = null, Pattern = null, }); } } } - } - - /// The "reviews" collection of methods. - public class ReviewsResource - { - private const string Resource = "reviews"; - - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; - - /// Constructs a new resource. - public ReviewsResource(Google.Apis.Services.IClientService service) - { - this.service = service; - } + } + + /// The "users" collection of methods. + public class UsersResource + { + private const string Resource = "users"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public UsersResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// Grant access for a user to the given developer account. + /// The body of the request. + /// + /// Required. The developer account to add the user to. Format: developers/{developer} + /// + public virtual CreateRequest Create(Google.Apis.AndroidPublisher.v3.Data.User body, string parent) + { + return new CreateRequest(this.service, body, parent); + } + + /// Grant access for a user to the given developer account. + public class CreateRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.User body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// Required. The developer account to add the user to. Format: developers/{developer} + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.AndroidPublisher.v3.Data.User Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/{+parent}/users"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^developers/[^/]+$", + }); + } + } - /// Gets a single review. - /// Package name of the app. - /// Unique identifier for a review. - public virtual GetRequest Get(string packageName, string reviewId) + /// Removes all access for the user to the given developer account. + /// + /// Required. The name of the user to delete. Format: developers/{developer}/users/{email} + /// + public virtual DeleteRequest Delete(string name) { - return new GetRequest(this.service, packageName, reviewId); + return new DeleteRequest(this.service, name); } - /// Gets a single review. - public class GetRequest : AndroidPublisherBaseServiceRequest + /// Removes all access for the user to the given developer account. + public class DeleteRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string packageName, string reviewId) : base(service) + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) { - PackageName = packageName; - ReviewId = reviewId; + Name = name; InitParameters(); } - /// Package name of the app. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } - - /// Unique identifier for a review. - [Google.Apis.Util.RequestParameterAttribute("reviewId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ReviewId { get; private set; } - - /// Language localization code. - [Google.Apis.Util.RequestParameterAttribute("translationLanguage", Google.Apis.Util.RequestParameterType.Query)] - public virtual string TranslationLanguage { get; set; } + /// + /// Required. The name of the user to delete. Format: developers/{developer}/users/{email} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } /// Gets the method name. - public override string MethodName => "get"; + public override string MethodName => "delete"; /// Gets the HTTP method. - public override string HttpMethod => "GET"; + public override string HttpMethod => "DELETE"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/reviews/{reviewId}"; + public override string RestPath => "androidpublisher/v3/{+name}"; - /// Initializes Get parameter list. + /// Initializes Delete parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("reviewId", new Google.Apis.Discovery.Parameter + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { - Name = "reviewId", + Name = "name", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("translationLanguage", new Google.Apis.Discovery.Parameter - { - Name = "translationLanguage", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, + Pattern = @"^developers/[^/]+/users/[^/]+$", }); } } - /// Lists all reviews. - /// Package name of the app. - public virtual ListRequest List(string packageName) + /// Lists all users with access to a developer account. + /// + /// Required. The developer account to fetch users from. Format: developers/{developer} + /// + public virtual ListRequest List(string parent) { - return new ListRequest(this.service, packageName); + return new ListRequest(this.service, parent); } - /// Lists all reviews. - public class ListRequest : AndroidPublisherBaseServiceRequest + /// Lists all users with access to a developer account. + public class ListRequest : AndroidPublisherBaseServiceRequest { /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string packageName) : base(service) + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { - PackageName = packageName; + Parent = parent; InitParameters(); } - /// Package name of the app. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } - - /// How many results the list operation should return. - [Google.Apis.Util.RequestParameterAttribute("maxResults", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable MaxResults { get; set; } - - /// The index of the first element to return. - [Google.Apis.Util.RequestParameterAttribute("startIndex", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable StartIndex { get; set; } + /// Required. The developer account to fetch users from. Format: developers/{developer} + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } - /// Pagination token. If empty, list starts at the first review. - [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Token { get; set; } + /// + /// The maximum number of results to return. This must be set to -1 to disable pagination. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } - /// Language localization code. - [Google.Apis.Util.RequestParameterAttribute("translationLanguage", Google.Apis.Util.RequestParameterType.Query)] - public virtual string TranslationLanguage { get; set; } + /// + /// A token received from a previous call to this method, in order to retrieve further results. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } /// Gets the method name. public override string MethodName => "list"; @@ -11168,47 +13482,31 @@ public ListRequest(Google.Apis.Services.IClientService service, string packageNa public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/reviews"; + public override string RestPath => "androidpublisher/v3/{+parent}/users"; /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { - Name = "packageName", + Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("maxResults", new Google.Apis.Discovery.Parameter - { - Name = "maxResults", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("startIndex", new Google.Apis.Discovery.Parameter - { - Name = "startIndex", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, + Pattern = @"^developers/[^/]+$", }); - RequestParameters.Add("token", new Google.Apis.Discovery.Parameter + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter { - Name = "token", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); - RequestParameters.Add("translationLanguage", new Google.Apis.Discovery.Parameter + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter { - Name = "translationLanguage", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -11217,3752 +13515,4098 @@ protected override void InitParameters() } } - /// Replies to a single review, or updates an existing reply. + /// Updates access for the user to the developer account. /// The body of the request. - /// Package name of the app. - /// Unique identifier for a review. - public virtual ReplyRequest Reply(Google.Apis.AndroidPublisher.v3.Data.ReviewsReplyRequest body, string packageName, string reviewId) + /// + /// Required. Resource name for this user, following the pattern "developers/{developer}/users/{email}". + /// + public virtual PatchRequest Patch(Google.Apis.AndroidPublisher.v3.Data.User body, string name) { - return new ReplyRequest(this.service, body, packageName, reviewId); + return new PatchRequest(this.service, body, name); } - /// Replies to a single review, or updates an existing reply. - public class ReplyRequest : AndroidPublisherBaseServiceRequest + /// Updates access for the user to the developer account. + public class PatchRequest : AndroidPublisherBaseServiceRequest { - /// Constructs a new Reply request. - public ReplyRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.ReviewsReplyRequest body, string packageName, string reviewId) : base(service) + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.User body, string name) : base(service) { - PackageName = packageName; - ReviewId = reviewId; + Name = name; Body = body; InitParameters(); } - /// Package name of the app. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// + /// Required. Resource name for this user, following the pattern "developers/{developer}/users/{email}". + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// Unique identifier for a review. - [Google.Apis.Util.RequestParameterAttribute("reviewId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string ReviewId { get; private set; } + /// Optional. The list of fields to be updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.ReviewsReplyRequest Body { get; set; } + Google.Apis.AndroidPublisher.v3.Data.User Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "reply"; + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "androidpublisher/v3/{+name}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^developers/[^/]+/users/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } +} +namespace Google.Apis.AndroidPublisher.v3.Data +{ + /// Represents an Abi. + public class Abi : Google.Apis.Requests.IDirectResponseSchema + { + /// Alias for an abi. + [Newtonsoft.Json.JsonPropertyAttribute("alias")] + public virtual string Alias { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Targeting based on Abi. + public class AbiTargeting : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other + /// main splits. + /// + [Newtonsoft.Json.JsonPropertyAttribute("alternatives")] + public virtual System.Collections.Generic.IList Alternatives { get; set; } - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Value of an abi. + [Newtonsoft.Json.JsonPropertyAttribute("value")] + public virtual System.Collections.Generic.IList Value { get; set; } - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/reviews/{reviewId}:reply"; + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Initializes Reply parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("reviewId", new Google.Apis.Discovery.Parameter - { - Name = "reviewId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } - } + /// Represents a targeting rule of the form: User never had {scope} before. + public class AcquisitionTargetingRule : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Required. The scope of subscriptions this rule considers. Only allows "this subscription" and "any + /// subscription in app". + /// + [Newtonsoft.Json.JsonPropertyAttribute("scope")] + public virtual TargetingRuleScope Scope { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } } - /// The "systemapks" collection of methods. - public class SystemapksResource + /// Request message for ActivateBasePlan. + public class ActivateBasePlanRequest : Google.Apis.Requests.IDirectResponseSchema { - private const string Resource = "systemapks"; + /// Required. The unique base plan ID of the base plan to activate. + [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] + public virtual string BasePlanId { get; set; } - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; + /// + /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. + /// + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } - /// Constructs a new resource. - public SystemapksResource(Google.Apis.Services.IClientService service) - { - this.service = service; - Variants = new VariantsResource(service); - } + /// Required. The parent app (package name) of the base plan to activate. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } - /// Gets the Variants resource. - public virtual VariantsResource Variants { get; } + /// Required. The parent subscription (ID) of the base plan to activate. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } - /// The "variants" collection of methods. - public class VariantsResource - { - private const string Resource = "variants"; + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; + /// Request message for ActivateOneTimeProductOffer. + public class ActivateOneTimeProductOfferRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. The latency tolerance for the propagation of this update. Defaults to latency-sensitive. + /// + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } - /// Constructs a new resource. - public VariantsResource(Google.Apis.Services.IClientService service) - { - this.service = service; - } + /// Required. The offer ID of the offer to activate. + [Newtonsoft.Json.JsonPropertyAttribute("offerId")] + public virtual string OfferId { get; set; } - /// - /// Creates an APK which is suitable for inclusion in a system image from an already uploaded Android App - /// Bundle. - /// - /// The body of the request. - /// Package name of the app. - /// The version code of the App Bundle. - public virtual CreateRequest Create(Google.Apis.AndroidPublisher.v3.Data.Variant body, string packageName, long versionCode) - { - return new CreateRequest(this.service, body, packageName, versionCode); - } + /// Required. The parent app (package name) of the offer to activate. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } - /// - /// Creates an APK which is suitable for inclusion in a system image from an already uploaded Android App - /// Bundle. - /// - public class CreateRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Create request. - public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.Variant body, string packageName, long versionCode) : base(service) - { - PackageName = packageName; - VersionCode = versionCode; - Body = body; - InitParameters(); - } + /// Required. The parent one-time product (ID) of the offer to activate. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } - /// Package name of the app. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// Required. The parent purchase option (ID) of the offer to activate. + [Newtonsoft.Json.JsonPropertyAttribute("purchaseOptionId")] + public virtual string PurchaseOptionId { get; set; } - /// The version code of the App Bundle. - [Google.Apis.Util.RequestParameterAttribute("versionCode", Google.Apis.Util.RequestParameterType.Path)] - public virtual long VersionCode { get; private set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.Variant Body { get; set; } + /// Request message for UpdatePurchaseOptionState. + public class ActivatePurchaseOptionRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. + /// + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// Required. The parent app (package name) of the purchase option to activate. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } - /// Gets the method name. - public override string MethodName => "create"; + /// Required. The parent one-time product (ID) of the purchase option to activate. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Required. The purchase option ID of the purchase option to activate. + [Newtonsoft.Json.JsonPropertyAttribute("purchaseOptionId")] + public virtual string PurchaseOptionId { get; set; } - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants"; + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Initializes Create parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("versionCode", new Google.Apis.Discovery.Parameter - { - Name = "versionCode", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } - } + /// Request message for ActivateSubscriptionOffer. + public class ActivateSubscriptionOfferRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. The parent base plan (ID) of the offer to activate. + [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] + public virtual string BasePlanId { get; set; } - /// - /// Downloads a previously created system APK which is suitable for inclusion in a system image. - /// - /// Package name of the app. - /// The version code of the App Bundle. - /// The ID of a previously created system APK variant. - public virtual DownloadRequest Download(string packageName, long versionCode, long variantId) - { - return new DownloadRequest(this.service, packageName, versionCode, variantId); - } + /// + /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. + /// + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } - /// - /// Downloads a previously created system APK which is suitable for inclusion in a system image. - /// - public class DownloadRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Download request. - public DownloadRequest(Google.Apis.Services.IClientService service, string packageName, long versionCode, long variantId) : base(service) - { - PackageName = packageName; - VersionCode = versionCode; - VariantId = variantId; - MediaDownloader = new Google.Apis.Download.MediaDownloader(service); - InitParameters(); - } + /// Required. The unique offer ID of the offer to activate. + [Newtonsoft.Json.JsonPropertyAttribute("offerId")] + public virtual string OfferId { get; set; } - /// Package name of the app. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// Required. The parent app (package name) of the offer to activate. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } - /// The version code of the App Bundle. - [Google.Apis.Util.RequestParameterAttribute("versionCode", Google.Apis.Util.RequestParameterType.Path)] - public virtual long VersionCode { get; private set; } + /// Required. The parent subscription (ID) of the offer to activate. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } - /// The ID of a previously created system APK variant. - [Google.Apis.Util.RequestParameterAttribute("variantId", Google.Apis.Util.RequestParameterType.Path)] - public virtual long VariantId { get; private set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Gets the method name. - public override string MethodName => "download"; + /// Request message for AddTargeting. + public class AddTargetingRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Specifies targeting updates such as regions, android sdk versions etc. + [Newtonsoft.Json.JsonPropertyAttribute("targetingUpdate")] + public virtual TargetingUpdate TargetingUpdate { get; set; } - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Response message for AddTargeting. + public class AddTargetingResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants/{variantId}:download"; + /// Object representation to describe all set of users. + public class AllUsers : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. Set to true if all set of users are needed. + [Newtonsoft.Json.JsonPropertyAttribute("isAllUsersRequested")] + public virtual System.Nullable IsAllUsersRequested { get; set; } - /// Initializes Download parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("versionCode", new Google.Apis.Discovery.Parameter - { - Name = "versionCode", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("variantId", new Google.Apis.Discovery.Parameter - { - Name = "variantId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Gets the media downloader. - public Google.Apis.Download.IMediaDownloader MediaDownloader { get; private set; } + /// Android api level targeting data for app recovery action targeting. + public class AndroidSdks : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Android api levels of devices targeted by recovery action. See + /// https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels for different api levels in + /// android. + /// + [Newtonsoft.Json.JsonPropertyAttribute("sdkLevels")] + public virtual System.Collections.Generic.IList> SdkLevels { get; set; } - /// - /// Synchronously download the media into the given stream. - /// - /// Warning: This method hides download errors; use - /// instead. - /// - /// - /// - /// This method uses the property to perform the download. Progress event - /// handlers and other configuration may be performed using that property prior to calling this method. - /// - public virtual void Download(System.IO.Stream stream) - { - var mediaDownloader = (Google.Apis.Download.MediaDownloader)MediaDownloader; - mediaDownloader.Range = null; - mediaDownloader.Download(this.GenerateRequestUri(), stream); - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Synchronously download the media into the given stream. - /// - /// This method uses the property to perform the download. Progress event - /// handlers and other configuration may be performed using that property prior to calling this method. - /// - /// - /// The final status of the download; including whether the download succeeded or failed. - /// - public virtual Google.Apis.Download.IDownloadProgress DownloadWithStatus(System.IO.Stream stream) - { - var mediaDownloader = (Google.Apis.Download.MediaDownloader)MediaDownloader; - mediaDownloader.Range = null; - return mediaDownloader.Download(this.GenerateRequestUri(), stream); - } + /// Information about an APK. The resource for ApksService. + public class Apk : Google.Apis.Requests.IDirectResponseSchema + { + /// Information about the binary payload of this APK. + [Newtonsoft.Json.JsonPropertyAttribute("binary")] + public virtual ApkBinary Binary { get; set; } - /// Asynchronously download the media into the given stream. - /// - /// This method uses the property to perform the download. Progress event - /// handlers and other configuration may be performed using that property prior to calling this method. - /// - public virtual System.Threading.Tasks.Task DownloadAsync(System.IO.Stream stream) - { - var mediaDownloader = (Google.Apis.Download.MediaDownloader)MediaDownloader; - mediaDownloader.Range = null; - return mediaDownloader.DownloadAsync(this.GenerateRequestUri(), stream); - } + /// The version code of the APK, as specified in the manifest file. + [Newtonsoft.Json.JsonPropertyAttribute("versionCode")] + public virtual System.Nullable VersionCode { get; set; } - /// Asynchronously download the media into the given stream. - /// - /// This method uses the property to perform the download. Progress event - /// handlers and other configuration may be performed using that property prior to calling this method. - /// - public virtual System.Threading.Tasks.Task DownloadAsync(System.IO.Stream stream, - System.Threading.CancellationToken cancellationToken) - { - var mediaDownloader = (Google.Apis.Download.MediaDownloader)MediaDownloader; - mediaDownloader.Range = null; - return mediaDownloader.DownloadAsync(this.GenerateRequestUri(), stream, cancellationToken); - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Synchronously download a range of the media into the given stream. - /// - /// This method uses the property to perform the download. Progress event - /// handlers and other configuration may be performed using that property prior to calling this method. - /// - public virtual Google.Apis.Download.IDownloadProgress DownloadRange(System.IO.Stream stream, System.Net.Http.Headers.RangeHeaderValue range) - { - var mediaDownloader = (Google.Apis.Download.MediaDownloader)MediaDownloader; - mediaDownloader.Range = range; - return mediaDownloader.Download(this.GenerateRequestUri(), stream); - } + /// Represents the binary payload of an APK. + public class ApkBinary : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// A sha1 hash of the APK payload, encoded as a hex string and matching the output of the sha1sum command. + /// + [Newtonsoft.Json.JsonPropertyAttribute("sha1")] + public virtual string Sha1 { get; set; } - /// Asynchronously download a range of the media into the given stream. - /// - /// This method uses the property to perform the download. Progress event - /// handlers and other configuration may be performed using that property prior to calling this method. - /// - public virtual System.Threading.Tasks.Task DownloadRangeAsync(System.IO.Stream stream, - System.Net.Http.Headers.RangeHeaderValue range, - System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) - { - var mediaDownloader = (Google.Apis.Download.MediaDownloader)MediaDownloader; - mediaDownloader.Range = range; - return mediaDownloader.DownloadAsync(this.GenerateRequestUri(), stream, cancellationToken); - } - } + /// + /// A sha256 hash of the APK payload, encoded as a hex string and matching the output of the sha256sum command. + /// + [Newtonsoft.Json.JsonPropertyAttribute("sha256")] + public virtual string Sha256 { get; set; } - /// Returns a previously created system APK variant. - /// Package name of the app. - /// The version code of the App Bundle. - /// The ID of a previously created system APK variant. - public virtual GetRequest Get(string packageName, long versionCode, long variantId) - { - return new GetRequest(this.service, packageName, versionCode, variantId); - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Returns a previously created system APK variant. - public class GetRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string packageName, long versionCode, long variantId) : base(service) - { - PackageName = packageName; - VersionCode = versionCode; - VariantId = variantId; - InitParameters(); - } + /// Description of the created apks. + public class ApkDescription : Google.Apis.Requests.IDirectResponseSchema + { + /// Set only for asset slices. + [Newtonsoft.Json.JsonPropertyAttribute("assetSliceMetadata")] + public virtual SplitApkMetadata AssetSliceMetadata { get; set; } - /// Package name of the app. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// Set only for Instant split APKs. + [Newtonsoft.Json.JsonPropertyAttribute("instantApkMetadata")] + public virtual SplitApkMetadata InstantApkMetadata { get; set; } - /// The version code of the App Bundle. - [Google.Apis.Util.RequestParameterAttribute("versionCode", Google.Apis.Util.RequestParameterType.Path)] - public virtual long VersionCode { get; private set; } + /// + /// Path of the Apk, will be in the following format: .apk where DownloadId is the ID used to download the apk + /// using GeneratedApks.Download API. + /// + [Newtonsoft.Json.JsonPropertyAttribute("path")] + public virtual string Path { get; set; } - /// The ID of a previously created system APK variant. - [Google.Apis.Util.RequestParameterAttribute("variantId", Google.Apis.Util.RequestParameterType.Path)] - public virtual long VariantId { get; private set; } + /// Set only for Split APKs. + [Newtonsoft.Json.JsonPropertyAttribute("splitApkMetadata")] + public virtual SplitApkMetadata SplitApkMetadata { get; set; } - /// Gets the method name. - public override string MethodName => "get"; + /// Set only for standalone APKs. + [Newtonsoft.Json.JsonPropertyAttribute("standaloneApkMetadata")] + public virtual StandaloneApkMetadata StandaloneApkMetadata { get; set; } - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// Apk-level targeting. + [Newtonsoft.Json.JsonPropertyAttribute("targeting")] + public virtual ApkTargeting Targeting { get; set; } - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants/{variantId}"; + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Initializes Get parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("versionCode", new Google.Apis.Discovery.Parameter - { - Name = "versionCode", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("variantId", new Google.Apis.Discovery.Parameter - { - Name = "variantId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } - } + /// A set of apks representing a module. + public class ApkSet : Google.Apis.Requests.IDirectResponseSchema + { + /// Description of the generated apks. + [Newtonsoft.Json.JsonPropertyAttribute("apkDescription")] + public virtual System.Collections.Generic.IList ApkDescription { get; set; } - /// Returns the list of previously created system APK variants. - /// Package name of the app. - /// The version code of the App Bundle. - public virtual ListRequest List(string packageName, long versionCode) - { - return new ListRequest(this.service, packageName, versionCode); - } + /// Metadata about the module represented by this ApkSet + [Newtonsoft.Json.JsonPropertyAttribute("moduleMetadata")] + public virtual ModuleMetadata ModuleMetadata { get; set; } - /// Returns the list of previously created system APK variants. - public class ListRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string packageName, long versionCode) : base(service) - { - PackageName = packageName; - VersionCode = versionCode; - InitParameters(); - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Package name of the app. - [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PackageName { get; private set; } + /// Represents a set of apk-level targetings. + public class ApkTargeting : Google.Apis.Requests.IDirectResponseSchema + { + /// The abi that the apk targets + [Newtonsoft.Json.JsonPropertyAttribute("abiTargeting")] + public virtual AbiTargeting AbiTargeting { get; set; } - /// The version code of the App Bundle. - [Google.Apis.Util.RequestParameterAttribute("versionCode", Google.Apis.Util.RequestParameterType.Path)] - public virtual long VersionCode { get; private set; } + /// The language that the apk targets + [Newtonsoft.Json.JsonPropertyAttribute("languageTargeting")] + public virtual LanguageTargeting LanguageTargeting { get; set; } - /// Gets the method name. - public override string MethodName => "list"; + /// Multi-api-level targeting. + [Newtonsoft.Json.JsonPropertyAttribute("multiAbiTargeting")] + public virtual MultiAbiTargeting MultiAbiTargeting { get; set; } - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// The screen density that this apk supports. + [Newtonsoft.Json.JsonPropertyAttribute("screenDensityTargeting")] + public virtual ScreenDensityTargeting ScreenDensityTargeting { get; set; } - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/applications/{packageName}/systemApks/{versionCode}/variants"; + /// The sdk version that the apk targets + [Newtonsoft.Json.JsonPropertyAttribute("sdkVersionTargeting")] + public virtual SdkVersionTargeting SdkVersionTargeting { get; set; } - /// Initializes List parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("packageName", new Google.Apis.Discovery.Parameter - { - Name = "packageName", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("versionCode", new Google.Apis.Discovery.Parameter - { - Name = "versionCode", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } - } - } + /// Texture-compression-format-level targeting + [Newtonsoft.Json.JsonPropertyAttribute("textureCompressionFormatTargeting")] + public virtual TextureCompressionFormatTargeting TextureCompressionFormatTargeting { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } } - /// The "users" collection of methods. - public class UsersResource + /// Request to create a new externally hosted APK. + public class ApksAddExternallyHostedRequest : Google.Apis.Requests.IDirectResponseSchema { - private const string Resource = "users"; + /// The definition of the externally-hosted APK and where it is located. + [Newtonsoft.Json.JsonPropertyAttribute("externallyHostedApk")] + public virtual ExternallyHostedApk ExternallyHostedApk { get; set; } - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Constructs a new resource. - public UsersResource(Google.Apis.Services.IClientService service) - { - this.service = service; - } + /// Response for creating a new externally hosted APK. + public class ApksAddExternallyHostedResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The definition of the externally-hosted APK and where it is located. + [Newtonsoft.Json.JsonPropertyAttribute("externallyHostedApk")] + public virtual ExternallyHostedApk ExternallyHostedApk { get; set; } - /// Grant access for a user to the given developer account. - /// The body of the request. - /// - /// Required. The developer account to add the user to. Format: developers/{developer} - /// - public virtual CreateRequest Create(Google.Apis.AndroidPublisher.v3.Data.User body, string parent) - { - return new CreateRequest(this.service, body, parent); - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Grant access for a user to the given developer account. - public class CreateRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Create request. - public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.User body, string parent) : base(service) - { - Parent = parent; - Body = body; - InitParameters(); - } + /// Response listing all APKs. + public class ApksListResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// All APKs. + [Newtonsoft.Json.JsonPropertyAttribute("apks")] + public virtual System.Collections.Generic.IList Apks { get; set; } - /// Required. The developer account to add the user to. Format: developers/{developer} - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } + /// The kind of this response ("androidpublisher#apksListResponse"). + [Newtonsoft.Json.JsonPropertyAttribute("kind")] + public virtual string Kind { get; set; } - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.User Body { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// The app details. The resource for DetailsService. + public class AppDetails : Google.Apis.Requests.IDirectResponseSchema + { + /// The user-visible support email for this app. + [Newtonsoft.Json.JsonPropertyAttribute("contactEmail")] + public virtual string ContactEmail { get; set; } - /// Gets the method name. - public override string MethodName => "create"; + /// The user-visible support telephone number for this app. + [Newtonsoft.Json.JsonPropertyAttribute("contactPhone")] + public virtual string ContactPhone { get; set; } - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// The user-visible website for this app. + [Newtonsoft.Json.JsonPropertyAttribute("contactWebsite")] + public virtual string ContactWebsite { get; set; } - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/{+parent}/users"; + /// Default language code, in BCP 47 format (eg "en-US"). + [Newtonsoft.Json.JsonPropertyAttribute("defaultLanguage")] + public virtual string DefaultLanguage { get; set; } - /// Initializes Create parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter - { - Name = "parent", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^developers/[^/]+$", - }); - } - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Removes all access for the user to the given developer account. - /// - /// Required. The name of the user to delete. Format: developers/{developer}/users/{email} - /// - public virtual DeleteRequest Delete(string name) - { - return new DeleteRequest(this.service, name); - } + /// An app edit. The resource for EditsService. + public class AppEdit : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Output only. The time (as seconds since Epoch) at which the edit will expire and will be no longer valid for + /// use. + /// + [Newtonsoft.Json.JsonPropertyAttribute("expiryTimeSeconds")] + public virtual string ExpiryTimeSeconds { get; set; } - /// Removes all access for the user to the given developer account. - public class DeleteRequest : AndroidPublisherBaseServiceRequest - { - /// Constructs a new Delete request. - public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) - { - Name = name; - InitParameters(); - } + /// Output only. Identifier of the edit. Can be used in subsequent API calls. + [Newtonsoft.Json.JsonPropertyAttribute("id")] + public virtual string Id { get; set; } - /// - /// Required. The name of the user to delete. Format: developers/{developer}/users/{email} - /// - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Gets the method name. - public override string MethodName => "delete"; + /// Information about an app recovery action. + public class AppRecoveryAction : Google.Apis.Requests.IDirectResponseSchema + { + /// ID corresponding to the app recovery action. + [Newtonsoft.Json.JsonPropertyAttribute("appRecoveryId")] + public virtual System.Nullable AppRecoveryId { get; set; } - /// Gets the HTTP method. - public override string HttpMethod => "DELETE"; + private string _cancelTimeRaw; - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/{+name}"; + private object _cancelTime; + + /// + /// Timestamp of when the app recovery action is canceled by the developer. Only set if the recovery action has + /// been canceled. + /// + [Newtonsoft.Json.JsonPropertyAttribute("cancelTime")] + public virtual string CancelTimeRaw + { + get => _cancelTimeRaw; + set + { + _cancelTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _cancelTimeRaw = value; + } + } - /// Initializes Delete parameter list. - protected override void InitParameters() + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CancelTimeDateTimeOffset instead.")] + public virtual object CancelTime + { + get => _cancelTime; + set { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter - { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^developers/[^/]+/users/[^/]+$", - }); + _cancelTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _cancelTime = value; } } - /// Lists all users with access to a developer account. - /// - /// Required. The developer account to fetch users from. Format: developers/{developer} - /// - public virtual ListRequest List(string parent) + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CancelTimeDateTimeOffset { - return new ListRequest(this.service, parent); + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CancelTimeRaw); + set => CancelTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// Lists all users with access to a developer account. - public class ListRequest : AndroidPublisherBaseServiceRequest + private string _createTimeRaw; + + private object _createTime; + + /// + /// Timestamp of when the app recovery action is created by the developer. It is always set after creation of + /// the recovery action. + /// + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw { - /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + get => _createTimeRaw; + set { - Parent = parent; - InitParameters(); + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; } + } - /// Required. The developer account to fetch users from. Format: developers/{developer} - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } - - /// - /// The maximum number of results to return. This must be set to -1 to disable pagination. - /// - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - - /// - /// A token received from a previous call to this method, in order to retrieve further results. - /// - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } - /// Gets the method name. - public override string MethodName => "list"; + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + private string _deployTimeRaw; - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/{+parent}/users"; + private object _deployTime; - /// Initializes List parameter list. - protected override void InitParameters() + /// + /// Timestamp of when the app recovery action is deployed to the users. Only set if the recovery action has been + /// deployed. + /// + [Newtonsoft.Json.JsonPropertyAttribute("deployTime")] + public virtual string DeployTimeRaw + { + get => _deployTimeRaw; + set { - base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter - { - Name = "parent", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^developers/[^/]+$", - }); - RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter - { - Name = "pageSize", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter - { - Name = "pageToken", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); + _deployTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _deployTimeRaw = value; } } - /// Updates access for the user to the developer account. - /// The body of the request. - /// - /// Required. Resource name for this user, following the pattern "developers/{developer}/users/{email}". - /// - public virtual PatchRequest Patch(Google.Apis.AndroidPublisher.v3.Data.User body, string name) + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use DeployTimeDateTimeOffset instead.")] + public virtual object DeployTime { - return new PatchRequest(this.service, body, name); + get => _deployTime; + set + { + _deployTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _deployTime = value; + } } - /// Updates access for the user to the developer account. - public class PatchRequest : AndroidPublisherBaseServiceRequest + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? DeployTimeDateTimeOffset { - /// Constructs a new Patch request. - public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidPublisher.v3.Data.User body, string name) : base(service) - { - Name = name; - Body = body; - InitParameters(); - } + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(DeployTimeRaw); + set => DeployTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } - /// - /// Required. Resource name for this user, following the pattern "developers/{developer}/users/{email}". - /// - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + private string _lastUpdateTimeRaw; - /// Optional. The list of fields to be updated. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } + private object _lastUpdateTime; - /// Gets or sets the body of this request. - Google.Apis.AndroidPublisher.v3.Data.User Body { get; set; } + /// + /// Timestamp of when the developer last updated recovery action. In case the action is cancelled, it + /// corresponds to cancellation time. It is always set after creation of the recovery action. + /// + [Newtonsoft.Json.JsonPropertyAttribute("lastUpdateTime")] + public virtual string LastUpdateTimeRaw + { + get => _lastUpdateTimeRaw; + set + { + _lastUpdateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _lastUpdateTimeRaw = value; + } + } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use LastUpdateTimeDateTimeOffset instead.")] + public virtual object LastUpdateTime + { + get => _lastUpdateTime; + set + { + _lastUpdateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _lastUpdateTime = value; + } + } - /// Gets the method name. - public override string MethodName => "patch"; + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? LastUpdateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(LastUpdateTimeRaw); + set => LastUpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } - /// Gets the HTTP method. - public override string HttpMethod => "PATCH"; + /// + /// Data about the remote in-app update action such as such as recovered user base, recoverable user base etc. + /// Set only if the recovery action type is Remote In-App Update. + /// + [Newtonsoft.Json.JsonPropertyAttribute("remoteInAppUpdateData")] + public virtual RemoteInAppUpdateData RemoteInAppUpdateData { get; set; } - /// Gets the REST path. - public override string RestPath => "androidpublisher/v3/{+name}"; + /// The status of the recovery action. + [Newtonsoft.Json.JsonPropertyAttribute("status")] + public virtual string Status { get; set; } - /// Initializes Patch parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter - { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^developers/[^/]+/users/[^/]+$", - }); - RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter - { - Name = "updateMask", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } + /// + /// Specifies targeting criteria for the recovery action such as regions, android sdk versions, app versions + /// etc. + /// + [Newtonsoft.Json.JsonPropertyAttribute("targeting")] + public virtual Targeting Targeting { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } } -} -namespace Google.Apis.AndroidPublisher.v3.Data -{ - /// Represents an Abi. - public class Abi : Google.Apis.Requests.IDirectResponseSchema + + /// Data format for a list of app versions. + public class AppVersionList : Google.Apis.Requests.IDirectResponseSchema { - /// Alias for an abi. - [Newtonsoft.Json.JsonPropertyAttribute("alias")] - public virtual string Alias { get; set; } + /// List of app version codes. + [Newtonsoft.Json.JsonPropertyAttribute("versionCodes")] + public virtual System.Collections.Generic.IList> VersionCodes { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Targeting based on Abi. - public class AbiTargeting : Google.Apis.Requests.IDirectResponseSchema + /// Data format for a continuous range of app versions. + public class AppVersionRange : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other - /// main splits. - /// - [Newtonsoft.Json.JsonPropertyAttribute("alternatives")] - public virtual System.Collections.Generic.IList Alternatives { get; set; } + /// Highest app version in the range, inclusive. + [Newtonsoft.Json.JsonPropertyAttribute("versionCodeEnd")] + public virtual System.Nullable VersionCodeEnd { get; set; } - /// Value of an abi. - [Newtonsoft.Json.JsonPropertyAttribute("value")] - public virtual System.Collections.Generic.IList Value { get; set; } + /// Lowest app version in the range, inclusive. + [Newtonsoft.Json.JsonPropertyAttribute("versionCodeStart")] + public virtual System.Nullable VersionCodeStart { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Represents a targeting rule of the form: User never had {scope} before. - public class AcquisitionTargetingRule : Google.Apis.Requests.IDirectResponseSchema + /// Deprecated: subscription archiving is not supported. + public class ArchiveSubscriptionRequest : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Required. The scope of subscriptions this rule considers. Only allows "this subscription" and "any - /// subscription in app". - /// - [Newtonsoft.Json.JsonPropertyAttribute("scope")] - public virtual TargetingRuleScope Scope { get; set; } - /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for ActivateBasePlan. - public class ActivateBasePlanRequest : Google.Apis.Requests.IDirectResponseSchema + /// Metadata of an asset module. + public class AssetModuleMetadata : Google.Apis.Requests.IDirectResponseSchema { - /// Required. The unique base plan ID of the base plan to activate. - [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] - public virtual string BasePlanId { get; set; } + /// Indicates the delivery type for persistent install. + [Newtonsoft.Json.JsonPropertyAttribute("deliveryType")] + public virtual string DeliveryType { get; set; } - /// - /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. - /// - [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] - public virtual string LatencyTolerance { get; set; } + /// Module name. + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } - /// Required. The parent app (package name) of the base plan to activate. - [Newtonsoft.Json.JsonPropertyAttribute("packageName")] - public virtual string PackageName { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Required. The parent subscription (ID) of the base plan to activate. - [Newtonsoft.Json.JsonPropertyAttribute("productId")] - public virtual string ProductId { get; set; } + /// Set of asset slices belonging to a single asset module. + public class AssetSliceSet : Google.Apis.Requests.IDirectResponseSchema + { + /// Asset slices. + [Newtonsoft.Json.JsonPropertyAttribute("apkDescription")] + public virtual System.Collections.Generic.IList ApkDescription { get; set; } + + /// Module level metadata. + [Newtonsoft.Json.JsonPropertyAttribute("assetModuleMetadata")] + public virtual AssetModuleMetadata AssetModuleMetadata { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for ActivateSubscriptionOffer. - public class ActivateSubscriptionOfferRequest : Google.Apis.Requests.IDirectResponseSchema + /// Represents a base plan that automatically renews at the end of its subscription period. + public class AutoRenewingBasePlanType : Google.Apis.Requests.IDirectResponseSchema { - /// Required. The parent base plan (ID) of the offer to activate. - [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] - public virtual string BasePlanId { get; set; } + /// + /// Optional. Account hold period of the subscription, specified in ISO 8601 format. Acceptable values must be + /// in days and between P0D and P60D. If not specified, the default value is P30D. The sum of + /// gracePeriodDuration and accountHoldDuration must be between P30D and P60D days, inclusive. + /// + [Newtonsoft.Json.JsonPropertyAttribute("accountHoldDuration")] + public virtual string AccountHoldDuration { get; set; } /// - /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. + /// Required. Immutable. Subscription period, specified in ISO 8601 format. For a list of acceptable billing + /// periods, refer to the help center. The duration is immutable after the base plan is created. /// - [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] - public virtual string LatencyTolerance { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("billingPeriodDuration")] + public virtual string BillingPeriodDuration { get; set; } - /// Required. The unique offer ID of the offer to activate. - [Newtonsoft.Json.JsonPropertyAttribute("offerId")] - public virtual string OfferId { get; set; } + /// + /// Grace period of the subscription, specified in ISO 8601 format. Acceptable values must be in days and + /// between P0D and the lesser of 30D and base plan billing period. If not specified, a default value will be + /// used based on the billing period. The sum of gracePeriodDuration and accountHoldDuration must be between + /// P30D and P60D days, inclusive. + /// + [Newtonsoft.Json.JsonPropertyAttribute("gracePeriodDuration")] + public virtual string GracePeriodDuration { get; set; } - /// Required. The parent app (package name) of the offer to activate. - [Newtonsoft.Json.JsonPropertyAttribute("packageName")] - public virtual string PackageName { get; set; } + /// + /// Whether the renewing base plan is backward compatible. The backward compatible base plan is returned by the + /// Google Play Billing Library deprecated method querySkuDetailsAsync(). Only one renewing base plan can be + /// marked as legacy compatible for a given subscription. + /// + [Newtonsoft.Json.JsonPropertyAttribute("legacyCompatible")] + public virtual System.Nullable LegacyCompatible { get; set; } - /// Required. The parent subscription (ID) of the offer to activate. - [Newtonsoft.Json.JsonPropertyAttribute("productId")] - public virtual string ProductId { get; set; } + /// + /// Subscription offer id which is legacy compatible. The backward compatible subscription offer is returned by + /// the Google Play Billing Library deprecated method querySkuDetailsAsync(). Only one subscription offer can be + /// marked as legacy compatible for a given renewing base plan. To have no Subscription offer as legacy + /// compatible set this field as empty string. + /// + [Newtonsoft.Json.JsonPropertyAttribute("legacyCompatibleSubscriptionOfferId")] + public virtual string LegacyCompatibleSubscriptionOfferId { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// + /// The proration mode for the base plan determines what happens when a user switches to this plan from another + /// base plan. If unspecified, defaults to CHARGE_ON_NEXT_BILLING_DATE. + /// + [Newtonsoft.Json.JsonPropertyAttribute("prorationMode")] + public virtual string ProrationMode { get; set; } - /// Request message for AddTargeting. - public class AddTargetingRequest : Google.Apis.Requests.IDirectResponseSchema - { - /// Specifies targeting updates such as regions, android sdk versions etc. - [Newtonsoft.Json.JsonPropertyAttribute("targetingUpdate")] - public virtual TargetingUpdate TargetingUpdate { get; set; } + /// + /// Whether users should be able to resubscribe to this base plan in Google Play surfaces. Defaults to + /// RESUBSCRIBE_STATE_ACTIVE if not specified. + /// + [Newtonsoft.Json.JsonPropertyAttribute("resubscribeState")] + public virtual string ResubscribeState { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for AddTargeting. - public class AddTargetingResponse : Google.Apis.Requests.IDirectResponseSchema + /// Information related to an auto renewing plan. + public class AutoRenewingPlan : Google.Apis.Requests.IDirectResponseSchema { + /// + /// If the subscription is currently set to auto-renew, e.g. the user has not canceled the subscription + /// + [Newtonsoft.Json.JsonPropertyAttribute("autoRenewEnabled")] + public virtual System.Nullable AutoRenewEnabled { get; set; } + + /// The installment plan commitment and state related info for the auto renewing plan. + [Newtonsoft.Json.JsonPropertyAttribute("installmentDetails")] + public virtual InstallmentPlan InstallmentDetails { get; set; } + + /// The information of the last price change for the item since subscription signup. + [Newtonsoft.Json.JsonPropertyAttribute("priceChangeDetails")] + public virtual SubscriptionItemPriceChangeDetails PriceChangeDetails { get; set; } + + /// + /// The current recurring price of the auto renewing plan. Note that the price does not take into account + /// discounts and taxes, call orders.get API instead if transaction details are needed. + /// + [Newtonsoft.Json.JsonPropertyAttribute("recurringPrice")] + public virtual Money RecurringPrice { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// Object representation to describe all set of users. - public class AllUsers : Google.Apis.Requests.IDirectResponseSchema + /// A single base plan for a subscription. + public class BasePlan : Google.Apis.Requests.IDirectResponseSchema { - /// Required. Set to true if all set of users are needed. - [Newtonsoft.Json.JsonPropertyAttribute("isAllUsersRequested")] - public virtual System.Nullable IsAllUsersRequested { get; set; } + /// Set when the base plan automatically renews at a regular interval. + [Newtonsoft.Json.JsonPropertyAttribute("autoRenewingBasePlanType")] + public virtual AutoRenewingBasePlanType AutoRenewingBasePlanType { get; set; } + + /// + /// Required. Immutable. The unique identifier of this base plan. Must be unique within the subscription, and + /// conform with RFC-1034. That is, this ID can only contain lower-case letters (a-z), numbers (0-9), and + /// hyphens (-), and be at most 63 characters. + /// + [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] + public virtual string BasePlanId { get; set; } + + /// + /// Set for installments base plans where a user is committed to a specified number of payments. + /// + [Newtonsoft.Json.JsonPropertyAttribute("installmentsBasePlanType")] + public virtual InstallmentsBasePlanType InstallmentsBasePlanType { get; set; } + + /// + /// List of up to 20 custom tags specified for this base plan, and returned to the app through the billing + /// library. Subscription offers for this base plan will also receive these offer tags in the billing library. + /// + [Newtonsoft.Json.JsonPropertyAttribute("offerTags")] + public virtual System.Collections.Generic.IList OfferTags { get; set; } + + /// + /// Pricing information for any new locations Play may launch in the future. If omitted, the BasePlan will not + /// be automatically available any new locations Play may launch in the future. + /// + [Newtonsoft.Json.JsonPropertyAttribute("otherRegionsConfig")] + public virtual OtherRegionsBasePlanConfig OtherRegionsConfig { get; set; } + + /// Set when the base plan does not automatically renew at the end of the billing period. + [Newtonsoft.Json.JsonPropertyAttribute("prepaidBasePlanType")] + public virtual PrepaidBasePlanType PrepaidBasePlanType { get; set; } + + /// Region-specific information for this base plan. + [Newtonsoft.Json.JsonPropertyAttribute("regionalConfigs")] + public virtual System.Collections.Generic.IList RegionalConfigs { get; set; } + + /// + /// Output only. The state of the base plan, i.e. whether it's active. Draft and inactive base plans can be + /// activated or deleted. Active base plans can be made inactive. Inactive base plans can be canceled. This + /// field cannot be changed by updating the resource. Use the dedicated endpoints instead. + /// + [Newtonsoft.Json.JsonPropertyAttribute("state")] + public virtual string State { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Android api level targeting data for app recovery action targeting. - public class AndroidSdks : Google.Apis.Requests.IDirectResponseSchema + /// Request message for BatchDeleteOneTimeProductOffers. + public class BatchDeleteOneTimeProductOffersRequest : Google.Apis.Requests.IDirectResponseSchema { /// - /// Android api levels of devices targeted by recovery action. See - /// https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels for different api levels in - /// android. + /// Required. A list of update requests of up to 100 elements. All requests must correspond to different offers. /// - [Newtonsoft.Json.JsonPropertyAttribute("sdkLevels")] - public virtual System.Collections.Generic.IList> SdkLevels { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Information about an APK. The resource for ApksService. - public class Apk : Google.Apis.Requests.IDirectResponseSchema + /// Request message for BatchDeleteOneTimeProduct. + public class BatchDeleteOneTimeProductsRequest : Google.Apis.Requests.IDirectResponseSchema { - /// Information about the binary payload of this APK. - [Newtonsoft.Json.JsonPropertyAttribute("binary")] - public virtual ApkBinary Binary { get; set; } - - /// The version code of the APK, as specified in the manifest file. - [Newtonsoft.Json.JsonPropertyAttribute("versionCode")] - public virtual System.Nullable VersionCode { get; set; } + /// + /// Required. A list of delete requests of up to 100 elements. All requests must delete different one-time + /// products. + /// + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Represents the binary payload of an APK. - public class ApkBinary : Google.Apis.Requests.IDirectResponseSchema + /// Request message for BatchDeletePurchaseOption. + public class BatchDeletePurchaseOptionsRequest : Google.Apis.Requests.IDirectResponseSchema { /// - /// A sha1 hash of the APK payload, encoded as a hex string and matching the output of the sha1sum command. - /// - [Newtonsoft.Json.JsonPropertyAttribute("sha1")] - public virtual string Sha1 { get; set; } - - /// - /// A sha256 hash of the APK payload, encoded as a hex string and matching the output of the sha256sum command. + /// Required. A list of delete requests of up to 100 elements. All requests must delete purchase options from + /// different one-time products. /// - [Newtonsoft.Json.JsonPropertyAttribute("sha256")] - public virtual string Sha256 { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Description of the created apks. - public class ApkDescription : Google.Apis.Requests.IDirectResponseSchema + /// Request message for the BatchGetOneTimeProductOffers endpoint. + public class BatchGetOneTimeProductOffersRequest : Google.Apis.Requests.IDirectResponseSchema { - /// Set only for asset slices. - [Newtonsoft.Json.JsonPropertyAttribute("assetSliceMetadata")] - public virtual SplitApkMetadata AssetSliceMetadata { get; set; } - - /// Set only for Instant split APKs. - [Newtonsoft.Json.JsonPropertyAttribute("instantApkMetadata")] - public virtual SplitApkMetadata InstantApkMetadata { get; set; } - /// - /// Path of the Apk, will be in the following format: .apk where DownloadId is the ID used to download the apk - /// using GeneratedApks.Download API. + /// Required. A list of get requests of up to 100 elements. All requests must retrieve different offers. /// - [Newtonsoft.Json.JsonPropertyAttribute("path")] - public virtual string Path { get; set; } - - /// Set only for Split APKs. - [Newtonsoft.Json.JsonPropertyAttribute("splitApkMetadata")] - public virtual SplitApkMetadata SplitApkMetadata { get; set; } - - /// Set only for standalone APKs. - [Newtonsoft.Json.JsonPropertyAttribute("standaloneApkMetadata")] - public virtual StandaloneApkMetadata StandaloneApkMetadata { get; set; } - - /// Apk-level targeting. - [Newtonsoft.Json.JsonPropertyAttribute("targeting")] - public virtual ApkTargeting Targeting { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// A set of apks representing a module. - public class ApkSet : Google.Apis.Requests.IDirectResponseSchema + /// Response message for the BatchGetOneTimeProductOffers endpoint. + public class BatchGetOneTimeProductOffersResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Description of the generated apks. - [Newtonsoft.Json.JsonPropertyAttribute("apkDescription")] - public virtual System.Collections.Generic.IList ApkDescription { get; set; } - - /// Metadata about the module represented by this ApkSet - [Newtonsoft.Json.JsonPropertyAttribute("moduleMetadata")] - public virtual ModuleMetadata ModuleMetadata { get; set; } + /// The list of updated one-time product offers, in the same order as the request. + [Newtonsoft.Json.JsonPropertyAttribute("oneTimeProductOffers")] + public virtual System.Collections.Generic.IList OneTimeProductOffers { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Represents a set of apk-level targetings. - public class ApkTargeting : Google.Apis.Requests.IDirectResponseSchema + /// Response message for the BatchGetOneTimeProducts endpoint. + public class BatchGetOneTimeProductsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// The abi that the apk targets - [Newtonsoft.Json.JsonPropertyAttribute("abiTargeting")] - public virtual AbiTargeting AbiTargeting { get; set; } - - /// The language that the apk targets - [Newtonsoft.Json.JsonPropertyAttribute("languageTargeting")] - public virtual LanguageTargeting LanguageTargeting { get; set; } - - /// Multi-api-level targeting. - [Newtonsoft.Json.JsonPropertyAttribute("multiAbiTargeting")] - public virtual MultiAbiTargeting MultiAbiTargeting { get; set; } - - /// The screen density that this apk supports. - [Newtonsoft.Json.JsonPropertyAttribute("screenDensityTargeting")] - public virtual ScreenDensityTargeting ScreenDensityTargeting { get; set; } - - /// The sdk version that the apk targets - [Newtonsoft.Json.JsonPropertyAttribute("sdkVersionTargeting")] - public virtual SdkVersionTargeting SdkVersionTargeting { get; set; } - - /// Texture-compression-format-level targeting - [Newtonsoft.Json.JsonPropertyAttribute("textureCompressionFormatTargeting")] - public virtual TextureCompressionFormatTargeting TextureCompressionFormatTargeting { get; set; } + /// The list of requested one-time products, in the same order as the request. + [Newtonsoft.Json.JsonPropertyAttribute("oneTimeProducts")] + public virtual System.Collections.Generic.IList OneTimeProducts { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request to create a new externally hosted APK. - public class ApksAddExternallyHostedRequest : Google.Apis.Requests.IDirectResponseSchema + /// Response for the orders.batchGet API. + public class BatchGetOrdersResponse : Google.Apis.Requests.IDirectResponseSchema { - /// The definition of the externally-hosted APK and where it is located. - [Newtonsoft.Json.JsonPropertyAttribute("externallyHostedApk")] - public virtual ExternallyHostedApk ExternallyHostedApk { get; set; } + /// Details for the requested order IDs. + [Newtonsoft.Json.JsonPropertyAttribute("orders")] + public virtual System.Collections.Generic.IList Orders { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response for creating a new externally hosted APK. - public class ApksAddExternallyHostedResponse : Google.Apis.Requests.IDirectResponseSchema + /// Request message for BatchGetSubscriptionOffers endpoint. + public class BatchGetSubscriptionOffersRequest : Google.Apis.Requests.IDirectResponseSchema { - /// The definition of the externally-hosted APK and where it is located. - [Newtonsoft.Json.JsonPropertyAttribute("externallyHostedApk")] - public virtual ExternallyHostedApk ExternallyHostedApk { get; set; } + /// + /// Required. A list of update requests of up to 100 elements. All requests must update different subscriptions. + /// + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response listing all APKs. - public class ApksListResponse : Google.Apis.Requests.IDirectResponseSchema + /// Response message for BatchGetSubscriptionOffers endpoint. + public class BatchGetSubscriptionOffersResponse : Google.Apis.Requests.IDirectResponseSchema { - /// All APKs. - [Newtonsoft.Json.JsonPropertyAttribute("apks")] - public virtual System.Collections.Generic.IList Apks { get; set; } - - /// The kind of this response ("androidpublisher#apksListResponse"). - [Newtonsoft.Json.JsonPropertyAttribute("kind")] - public virtual string Kind { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("subscriptionOffers")] + public virtual System.Collections.Generic.IList SubscriptionOffers { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The app details. The resource for DetailsService. - public class AppDetails : Google.Apis.Requests.IDirectResponseSchema + /// Response message for BatchGetSubscriptions endpoint. + public class BatchGetSubscriptionsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// The user-visible support email for this app. - [Newtonsoft.Json.JsonPropertyAttribute("contactEmail")] - public virtual string ContactEmail { get; set; } - - /// The user-visible support telephone number for this app. - [Newtonsoft.Json.JsonPropertyAttribute("contactPhone")] - public virtual string ContactPhone { get; set; } - - /// The user-visible website for this app. - [Newtonsoft.Json.JsonPropertyAttribute("contactWebsite")] - public virtual string ContactWebsite { get; set; } - - /// Default language code, in BCP 47 format (eg "en-US"). - [Newtonsoft.Json.JsonPropertyAttribute("defaultLanguage")] - public virtual string DefaultLanguage { get; set; } + /// The list of requested subscriptions, in the same order as the request. + [Newtonsoft.Json.JsonPropertyAttribute("subscriptions")] + public virtual System.Collections.Generic.IList Subscriptions { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// An app edit. The resource for EditsService. - public class AppEdit : Google.Apis.Requests.IDirectResponseSchema + /// Request message for BatchMigrateBasePlanPrices. + public class BatchMigrateBasePlanPricesRequest : Google.Apis.Requests.IDirectResponseSchema { /// - /// Output only. The time (as seconds since Epoch) at which the edit will expire and will be no longer valid for - /// use. + /// Required. Up to 100 price migration requests. All requests must update different base plans. /// - [Newtonsoft.Json.JsonPropertyAttribute("expiryTimeSeconds")] - public virtual string ExpiryTimeSeconds { get; set; } - - /// Output only. Identifier of the edit. Can be used in subsequent API calls. - [Newtonsoft.Json.JsonPropertyAttribute("id")] - public virtual string Id { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Information about an app recovery action. - public class AppRecoveryAction : Google.Apis.Requests.IDirectResponseSchema + /// Response message for BatchMigrateBasePlanPrices. + public class BatchMigrateBasePlanPricesResponse : Google.Apis.Requests.IDirectResponseSchema { - /// ID corresponding to the app recovery action. - [Newtonsoft.Json.JsonPropertyAttribute("appRecoveryId")] - public virtual System.Nullable AppRecoveryId { get; set; } - - private string _cancelTimeRaw; + /// Contains one response per requested price migration, in the same order as the request. + [Newtonsoft.Json.JsonPropertyAttribute("responses")] + public virtual System.Collections.Generic.IList Responses { get; set; } - private object _cancelTime; + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request message for BatchUpdateBasePlanStates. + public class BatchUpdateBasePlanStatesRequest : Google.Apis.Requests.IDirectResponseSchema + { /// - /// Timestamp of when the app recovery action is canceled by the developer. Only set if the recovery action has - /// been canceled. + /// Required. The update request list of up to 100 elements. All requests must update different base plans. /// - [Newtonsoft.Json.JsonPropertyAttribute("cancelTime")] - public virtual string CancelTimeRaw - { - get => _cancelTimeRaw; - set - { - _cancelTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _cancelTimeRaw = value; - } - } - - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CancelTimeDateTimeOffset instead.")] - public virtual object CancelTime - { - get => _cancelTime; - set - { - _cancelTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _cancelTime = value; - } - } + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? CancelTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CancelTimeRaw); - set => CancelTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - private string _createTimeRaw; + /// Response message for BatchUpdateBasePlanStates. + public class BatchUpdateBasePlanStatesResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// The list of updated subscriptions. This list will match the requests one to one, in the same order. + /// + [Newtonsoft.Json.JsonPropertyAttribute("subscriptions")] + public virtual System.Collections.Generic.IList Subscriptions { get; set; } - private object _createTime; + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request message for BatchUpdateOneTimeProductOfferStates. + public class BatchUpdateOneTimeProductOfferStatesRequest : Google.Apis.Requests.IDirectResponseSchema + { /// - /// Timestamp of when the app recovery action is created by the developer. It is always set after creation of - /// the recovery action. + /// Required. The update request list of up to 100 elements. All requests must update different offers. /// - [Newtonsoft.Json.JsonPropertyAttribute("createTime")] - public virtual string CreateTimeRaw - { - get => _createTimeRaw; - set - { - _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _createTimeRaw = value; - } - } - - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] - public virtual object CreateTime - { - get => _createTime; - set - { - _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _createTime = value; - } - } + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? CreateTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); - set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - private string _deployTimeRaw; + /// Response message for BatchUpdateOneTimeProductOfferStates. + public class BatchUpdateOneTimeProductOfferStatesResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The updated one-time product offers list, in the same order as the request. + [Newtonsoft.Json.JsonPropertyAttribute("oneTimeProductOffers")] + public virtual System.Collections.Generic.IList OneTimeProductOffers { get; set; } - private object _deployTime; + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request message for BatchUpdateOneTimeProductOffers. + public class BatchUpdateOneTimeProductOffersRequest : Google.Apis.Requests.IDirectResponseSchema + { /// - /// Timestamp of when the app recovery action is deployed to the users. Only set if the recovery action has been - /// deployed. + /// Required. A list of update requests of up to 100 elements. All requests must update different offers. /// - [Newtonsoft.Json.JsonPropertyAttribute("deployTime")] - public virtual string DeployTimeRaw - { - get => _deployTimeRaw; - set - { - _deployTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _deployTimeRaw = value; - } - } - - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use DeployTimeDateTimeOffset instead.")] - public virtual object DeployTime - { - get => _deployTime; - set - { - _deployTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _deployTime = value; - } - } + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? DeployTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(DeployTimeRaw); - set => DeployTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - private string _lastUpdateTimeRaw; + /// Response message for BatchUpdateOneTimeProductOffers. + public class BatchUpdateOneTimeProductOffersResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The list of updated one-time product offers, in the same order as the request. + [Newtonsoft.Json.JsonPropertyAttribute("oneTimeProductOffers")] + public virtual System.Collections.Generic.IList OneTimeProductOffers { get; set; } - private object _lastUpdateTime; + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request message for BatchUpdateOneTimeProduct. + public class BatchUpdateOneTimeProductsRequest : Google.Apis.Requests.IDirectResponseSchema + { /// - /// Timestamp of when the developer last updated recovery action. In case the action is cancelled, it - /// corresponds to cancellation time. It is always set after creation of the recovery action. + /// Required. A list of update requests of up to 100 elements. All requests must update different one-time + /// products. /// - [Newtonsoft.Json.JsonPropertyAttribute("lastUpdateTime")] - public virtual string LastUpdateTimeRaw - { - get => _lastUpdateTimeRaw; - set - { - _lastUpdateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _lastUpdateTimeRaw = value; - } - } + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use LastUpdateTimeDateTimeOffset instead.")] - public virtual object LastUpdateTime - { - get => _lastUpdateTime; - set - { - _lastUpdateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _lastUpdateTime = value; - } - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Response message for BatchUpdateOneTimeProduct. + public class BatchUpdateOneTimeProductsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The list of updated one-time products list, in the same order as the request. + [Newtonsoft.Json.JsonPropertyAttribute("oneTimeProducts")] + public virtual System.Collections.Generic.IList OneTimeProducts { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request message for BatchUpdatePurchaseOptionStates. + public class BatchUpdatePurchaseOptionStatesRequest : Google.Apis.Requests.IDirectResponseSchema + { /// - /// representation of . + /// Required. The update request list of up to 100 elements. All requests must update different purchase + /// options. /// - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? LastUpdateTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(LastUpdateTimeRaw); - set => LastUpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Response message for BatchUpdatePurchaseOptionStates. + public class BatchUpdatePurchaseOptionStatesResponse : Google.Apis.Requests.IDirectResponseSchema + { /// - /// Data about the remote in-app update action such as such as recovered user base, recoverable user base etc. - /// Set only if the recovery action type is Remote In-App Update. + /// The list of updated one-time products. This list will match the requests one to one, in the same order. /// - [Newtonsoft.Json.JsonPropertyAttribute("remoteInAppUpdateData")] - public virtual RemoteInAppUpdateData RemoteInAppUpdateData { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("oneTimeProducts")] + public virtual System.Collections.Generic.IList OneTimeProducts { get; set; } - /// The status of the recovery action. - [Newtonsoft.Json.JsonPropertyAttribute("status")] - public virtual string Status { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request message for BatchUpdateSubscriptionOfferStates. + public class BatchUpdateSubscriptionOfferStatesRequest : Google.Apis.Requests.IDirectResponseSchema + { /// - /// Specifies targeting criteria for the recovery action such as regions, android sdk versions, app versions - /// etc. + /// Required. The update request list of up to 100 elements. All requests must update different offers. /// - [Newtonsoft.Json.JsonPropertyAttribute("targeting")] - public virtual Targeting Targeting { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Data format for a list of app versions. - public class AppVersionList : Google.Apis.Requests.IDirectResponseSchema + /// Response message for BatchUpdateSubscriptionOfferStates. + public class BatchUpdateSubscriptionOfferStatesResponse : Google.Apis.Requests.IDirectResponseSchema { - /// List of app version codes. - [Newtonsoft.Json.JsonPropertyAttribute("versionCodes")] - public virtual System.Collections.Generic.IList> VersionCodes { get; set; } + /// The updated subscription offers list. + [Newtonsoft.Json.JsonPropertyAttribute("subscriptionOffers")] + public virtual System.Collections.Generic.IList SubscriptionOffers { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Data format for a continuous range of app versions. - public class AppVersionRange : Google.Apis.Requests.IDirectResponseSchema + /// Request message for BatchUpdateSubscriptionOffers. + public class BatchUpdateSubscriptionOffersRequest : Google.Apis.Requests.IDirectResponseSchema { - /// Highest app version in the range, inclusive. - [Newtonsoft.Json.JsonPropertyAttribute("versionCodeEnd")] - public virtual System.Nullable VersionCodeEnd { get; set; } - - /// Lowest app version in the range, inclusive. - [Newtonsoft.Json.JsonPropertyAttribute("versionCodeStart")] - public virtual System.Nullable VersionCodeStart { get; set; } + /// + /// Required. A list of update requests of up to 100 elements. All requests must update different subscription + /// offers. + /// + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Deprecated: subscription archiving is not supported. - public class ArchiveSubscriptionRequest : Google.Apis.Requests.IDirectResponseSchema + /// Response message for BatchUpdateSubscriptionOffers. + public class BatchUpdateSubscriptionOffersResponse : Google.Apis.Requests.IDirectResponseSchema { + /// The updated subscription offers list. + [Newtonsoft.Json.JsonPropertyAttribute("subscriptionOffers")] + public virtual System.Collections.Generic.IList SubscriptionOffers { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// Metadata of an asset module. - public class AssetModuleMetadata : Google.Apis.Requests.IDirectResponseSchema + /// Request message for BatchUpdateSubscription. + public class BatchUpdateSubscriptionsRequest : Google.Apis.Requests.IDirectResponseSchema { - /// Indicates the delivery type for persistent install. - [Newtonsoft.Json.JsonPropertyAttribute("deliveryType")] - public virtual string DeliveryType { get; set; } - - /// Module name. - [Newtonsoft.Json.JsonPropertyAttribute("name")] - public virtual string Name { get; set; } + /// + /// Required. A list of update requests of up to 100 elements. All requests must update different subscriptions. + /// + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Set of asset slices belonging to a single asset module. - public class AssetSliceSet : Google.Apis.Requests.IDirectResponseSchema + /// Response message for BatchUpdateSubscription. + public class BatchUpdateSubscriptionsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Asset slices. - [Newtonsoft.Json.JsonPropertyAttribute("apkDescription")] - public virtual System.Collections.Generic.IList ApkDescription { get; set; } - - /// Module level metadata. - [Newtonsoft.Json.JsonPropertyAttribute("assetModuleMetadata")] - public virtual AssetModuleMetadata AssetModuleMetadata { get; set; } + /// The updated subscriptions list. + [Newtonsoft.Json.JsonPropertyAttribute("subscriptions")] + public virtual System.Collections.Generic.IList Subscriptions { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Represents a base plan that automatically renews at the end of its subscription period. - public class AutoRenewingBasePlanType : Google.Apis.Requests.IDirectResponseSchema + /// Information about an app bundle. The resource for BundlesService. + public class Bundle : Google.Apis.Requests.IDirectResponseSchema { /// - /// Optional. Account hold period of the subscription, specified in ISO 8601 format. Acceptable values must be - /// in days and between P0D and P60D. If not specified, the default value is P30D. The sum of - /// gracePeriodDuration and accountHoldDuration must be between P30D and P60D days, inclusive. + /// A sha1 hash of the upload payload, encoded as a hex string and matching the output of the sha1sum command. /// - [Newtonsoft.Json.JsonPropertyAttribute("accountHoldDuration")] - public virtual string AccountHoldDuration { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("sha1")] + public virtual string Sha1 { get; set; } /// - /// Required. Immutable. Subscription period, specified in ISO 8601 format. For a list of acceptable billing - /// periods, refer to the help center. The duration is immutable after the base plan is created. + /// A sha256 hash of the upload payload, encoded as a hex string and matching the output of the sha256sum + /// command. /// - [Newtonsoft.Json.JsonPropertyAttribute("billingPeriodDuration")] - public virtual string BillingPeriodDuration { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("sha256")] + public virtual string Sha256 { get; set; } /// - /// Grace period of the subscription, specified in ISO 8601 format. Acceptable values must be in days and - /// between P0D and the lesser of 30D and base plan billing period. If not specified, a default value will be - /// used based on the billing period. The sum of gracePeriodDuration and accountHoldDuration must be between - /// P30D and P60D days, inclusive. + /// The version code of the Android App Bundle, as specified in the Android App Bundle's base module APK + /// manifest file. /// - [Newtonsoft.Json.JsonPropertyAttribute("gracePeriodDuration")] - public virtual string GracePeriodDuration { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("versionCode")] + public virtual System.Nullable VersionCode { get; set; } - /// - /// Whether the renewing base plan is backward compatible. The backward compatible base plan is returned by the - /// Google Play Billing Library deprecated method querySkuDetailsAsync(). Only one renewing base plan can be - /// marked as legacy compatible for a given subscription. - /// - [Newtonsoft.Json.JsonPropertyAttribute("legacyCompatible")] - public virtual System.Nullable LegacyCompatible { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// - /// Subscription offer id which is legacy compatible. The backward compatible subscription offer is returned by - /// the Google Play Billing Library deprecated method querySkuDetailsAsync(). Only one subscription offer can be - /// marked as legacy compatible for a given renewing base plan. To have no Subscription offer as legacy - /// compatible set this field as empty string. - /// - [Newtonsoft.Json.JsonPropertyAttribute("legacyCompatibleSubscriptionOfferId")] - public virtual string LegacyCompatibleSubscriptionOfferId { get; set; } + /// Response listing all app bundles. + public class BundlesListResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// All app bundles. + [Newtonsoft.Json.JsonPropertyAttribute("bundles")] + public virtual System.Collections.Generic.IList Bundles { get; set; } + + /// The kind of this response ("androidpublisher#bundlesListResponse"). + [Newtonsoft.Json.JsonPropertyAttribute("kind")] + public virtual string Kind { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Address information for the customer, for use in tax computation. + public class BuyerAddress : Google.Apis.Requests.IDirectResponseSchema + { + /// Two letter country code based on ISO-3166-1 Alpha-2 (UN country codes). + [Newtonsoft.Json.JsonPropertyAttribute("buyerCountry")] + public virtual string BuyerCountry { get; set; } /// - /// The proration mode for the base plan determines what happens when a user switches to this plan from another - /// base plan. If unspecified, defaults to CHARGE_ON_NEXT_BILLING_DATE. + /// Postal code of an address. When Google is the Merchant of Record for the order, this information is not + /// included. /// - [Newtonsoft.Json.JsonPropertyAttribute("prorationMode")] - public virtual string ProrationMode { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("buyerPostcode")] + public virtual string BuyerPostcode { get; set; } /// - /// Whether users should be able to resubscribe to this base plan in Google Play surfaces. Defaults to - /// RESUBSCRIBE_STATE_ACTIVE if not specified. + /// Top-level administrative subdivision of the buyer address country. When Google is the Merchant of Record for + /// the order, this information is not included. /// - [Newtonsoft.Json.JsonPropertyAttribute("resubscribeState")] - public virtual string ResubscribeState { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("buyerState")] + public virtual string BuyerState { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Information related to an auto renewing plan. - public class AutoRenewingPlan : Google.Apis.Requests.IDirectResponseSchema + /// Request message for CancelAppRecovery. + public class CancelAppRecoveryRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Response message for CancelAppRecovery. + public class CancelAppRecoveryResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Request message for CancelOneTimeProductOffer. + public class CancelOneTimeProductOfferRequest : Google.Apis.Requests.IDirectResponseSchema { /// - /// If the subscription is currently set to auto-renew, e.g. the user has not canceled the subscription + /// Optional. The latency tolerance for the propagation of this update. Defaults to latency-sensitive. /// - [Newtonsoft.Json.JsonPropertyAttribute("autoRenewEnabled")] - public virtual System.Nullable AutoRenewEnabled { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } - /// The installment plan commitment and state related info for the auto renewing plan. - [Newtonsoft.Json.JsonPropertyAttribute("installmentDetails")] - public virtual InstallmentPlan InstallmentDetails { get; set; } + /// Required. The offer ID of the offer to cancel. + [Newtonsoft.Json.JsonPropertyAttribute("offerId")] + public virtual string OfferId { get; set; } - /// The information of the last price change for the item since subscription signup. - [Newtonsoft.Json.JsonPropertyAttribute("priceChangeDetails")] - public virtual SubscriptionItemPriceChangeDetails PriceChangeDetails { get; set; } + /// Required. The parent app (package name) of the offer to cancel. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } - /// - /// The current recurring price of the auto renewing plan. Note that the price does not take into account - /// discounts and taxes, call orders.get API instead if transaction details are needed. - /// - [Newtonsoft.Json.JsonPropertyAttribute("recurringPrice")] - public virtual Money RecurringPrice { get; set; } + /// Required. The parent one-time product (ID) of the offer to cancel. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } + + /// Required. The parent purchase option (ID) of the offer to cancel. + [Newtonsoft.Json.JsonPropertyAttribute("purchaseOptionId")] + public virtual string PurchaseOptionId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// A single base plan for a subscription. - public class BasePlan : Google.Apis.Requests.IDirectResponseSchema + /// Result of the cancel survey when the subscription was canceled by the user. + public class CancelSurveyResult : Google.Apis.Requests.IDirectResponseSchema { - /// Set when the base plan automatically renews at a regular interval. - [Newtonsoft.Json.JsonPropertyAttribute("autoRenewingBasePlanType")] - public virtual AutoRenewingBasePlanType AutoRenewingBasePlanType { get; set; } + /// The reason the user selected in the cancel survey. + [Newtonsoft.Json.JsonPropertyAttribute("reason")] + public virtual string Reason { get; set; } /// - /// Required. Immutable. The unique identifier of this base plan. Must be unique within the subscription, and - /// conform with RFC-1034. That is, this ID can only contain lower-case letters (a-z), numbers (0-9), and - /// hyphens (-), and be at most 63 characters. + /// Only set for CANCEL_SURVEY_REASON_OTHERS. This is the user's freeform response to the survey. /// - [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] - public virtual string BasePlanId { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("reasonUserInput")] + public virtual string ReasonUserInput { get; set; } - /// - /// Set for installments base plans where a user is committed to a specified number of payments. - /// - [Newtonsoft.Json.JsonPropertyAttribute("installmentsBasePlanType")] - public virtual InstallmentsBasePlanType InstallmentsBasePlanType { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// - /// List of up to 20 custom tags specified for this base plan, and returned to the app through the billing - /// library. Subscription offers for this base plan will also receive these offer tags in the billing library. - /// - [Newtonsoft.Json.JsonPropertyAttribute("offerTags")] - public virtual System.Collections.Generic.IList OfferTags { get; set; } + /// + /// Information specific to a subscription in the SUBSCRIPTION_STATE_CANCELED or SUBSCRIPTION_STATE_EXPIRED state. + /// + public class CanceledStateContext : Google.Apis.Requests.IDirectResponseSchema + { + /// Subscription was canceled by the developer. + [Newtonsoft.Json.JsonPropertyAttribute("developerInitiatedCancellation")] + public virtual DeveloperInitiatedCancellation DeveloperInitiatedCancellation { get; set; } - /// - /// Pricing information for any new locations Play may launch in the future. If omitted, the BasePlan will not - /// be automatically available any new locations Play may launch in the future. - /// - [Newtonsoft.Json.JsonPropertyAttribute("otherRegionsConfig")] - public virtual OtherRegionsBasePlanConfig OtherRegionsConfig { get; set; } + /// Subscription was replaced by a new subscription. + [Newtonsoft.Json.JsonPropertyAttribute("replacementCancellation")] + public virtual ReplacementCancellation ReplacementCancellation { get; set; } - /// Set when the base plan does not automatically renew at the end of the billing period. - [Newtonsoft.Json.JsonPropertyAttribute("prepaidBasePlanType")] - public virtual PrepaidBasePlanType PrepaidBasePlanType { get; set; } + /// Subscription was canceled by the system, for example because of a billing problem. + [Newtonsoft.Json.JsonPropertyAttribute("systemInitiatedCancellation")] + public virtual SystemInitiatedCancellation SystemInitiatedCancellation { get; set; } - /// Region-specific information for this base plan. - [Newtonsoft.Json.JsonPropertyAttribute("regionalConfigs")] - public virtual System.Collections.Generic.IList RegionalConfigs { get; set; } + /// Subscription was canceled by user. + [Newtonsoft.Json.JsonPropertyAttribute("userInitiatedCancellation")] + public virtual UserInitiatedCancellation UserInitiatedCancellation { get; set; } - /// - /// Output only. The state of the base plan, i.e. whether it's active. Draft and inactive base plans can be - /// activated or deleted. Active base plans can be made inactive. Inactive base plans can be canceled. This - /// field cannot be changed by updating the resource. Use the dedicated endpoints instead. - /// - [Newtonsoft.Json.JsonPropertyAttribute("state")] - public virtual string State { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Details of when the order was canceled. + public class CancellationEvent : Google.Apis.Requests.IDirectResponseSchema + { + private string _eventTimeRaw; + + private object _eventTime; + + /// The time when the order was canceled. + [Newtonsoft.Json.JsonPropertyAttribute("eventTime")] + public virtual string EventTimeRaw + { + get => _eventTimeRaw; + set + { + _eventTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _eventTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EventTimeDateTimeOffset instead.")] + public virtual object EventTime + { + get => _eventTime; + set + { + _eventTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _eventTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EventTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EventTimeRaw); + set => EventTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response for the orders.batchGet API. - public class BatchGetOrdersResponse : Google.Apis.Requests.IDirectResponseSchema + /// An entry of conversation between user and developer. + public class Comment : Google.Apis.Requests.IDirectResponseSchema { - /// Details for the requested order IDs. - [Newtonsoft.Json.JsonPropertyAttribute("orders")] - public virtual System.Collections.Generic.IList Orders { get; set; } + /// A comment from a developer. + [Newtonsoft.Json.JsonPropertyAttribute("developerComment")] + public virtual DeveloperComment DeveloperComment { get; set; } + + /// A comment from a user. + [Newtonsoft.Json.JsonPropertyAttribute("userComment")] + public virtual UserComment UserComment { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for BatchGetSubscriptionOffers endpoint. - public class BatchGetSubscriptionOffersRequest : Google.Apis.Requests.IDirectResponseSchema + /// Request message for ConvertRegionPrices. + public class ConvertRegionPricesRequest : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Required. A list of update requests of up to 100 elements. All requests must update different subscriptions. - /// - [Newtonsoft.Json.JsonPropertyAttribute("requests")] - public virtual System.Collections.Generic.IList Requests { get; set; } + /// The intital price to convert other regions from. Tax exclusive. + [Newtonsoft.Json.JsonPropertyAttribute("price")] + public virtual Money Price { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for BatchGetSubscriptionOffers endpoint. - public class BatchGetSubscriptionOffersResponse : Google.Apis.Requests.IDirectResponseSchema + /// Response message for ConvertRegionPrices. + public class ConvertRegionPricesResponse : Google.Apis.Requests.IDirectResponseSchema { - [Newtonsoft.Json.JsonPropertyAttribute("subscriptionOffers")] - public virtual System.Collections.Generic.IList SubscriptionOffers { get; set; } + /// + /// Converted other regions prices in USD and EUR, to use for countries where Play doesn't support a country's + /// local currency. + /// + [Newtonsoft.Json.JsonPropertyAttribute("convertedOtherRegionsPrice")] + public virtual ConvertedOtherRegionsPrice ConvertedOtherRegionsPrice { get; set; } + + /// Map from region code to converted region price. + [Newtonsoft.Json.JsonPropertyAttribute("convertedRegionPrices")] + public virtual System.Collections.Generic.IDictionary ConvertedRegionPrices { get; set; } + + /// The region version at which the prices were generated. + [Newtonsoft.Json.JsonPropertyAttribute("regionVersion")] + public virtual RegionsVersion RegionVersion { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for BatchGetSubscriptions endpoint. - public class BatchGetSubscriptionsResponse : Google.Apis.Requests.IDirectResponseSchema + /// Converted other regions prices. + public class ConvertedOtherRegionsPrice : Google.Apis.Requests.IDirectResponseSchema { - /// The list of requested subscriptions, in the same order as the request. - [Newtonsoft.Json.JsonPropertyAttribute("subscriptions")] - public virtual System.Collections.Generic.IList Subscriptions { get; set; } + /// Price in EUR to use for the "Other regions" location exclusive of taxes. + [Newtonsoft.Json.JsonPropertyAttribute("eurPrice")] + public virtual Money EurPrice { get; set; } + + /// Price in USD to use for the "Other regions" location exclusive of taxes. + [Newtonsoft.Json.JsonPropertyAttribute("usdPrice")] + public virtual Money UsdPrice { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for BatchMigrateBasePlanPrices. - public class BatchMigrateBasePlanPricesRequest : Google.Apis.Requests.IDirectResponseSchema + /// A converted region price. + public class ConvertedRegionPrice : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Required. Up to 100 price migration requests. All requests must update different base plans. - /// - [Newtonsoft.Json.JsonPropertyAttribute("requests")] - public virtual System.Collections.Generic.IList Requests { get; set; } + /// The converted price tax inclusive. + [Newtonsoft.Json.JsonPropertyAttribute("price")] + public virtual Money Price { get; set; } + + /// The region code of the region. + [Newtonsoft.Json.JsonPropertyAttribute("regionCode")] + public virtual string RegionCode { get; set; } + + /// The tax amount of the converted price. + [Newtonsoft.Json.JsonPropertyAttribute("taxAmount")] + public virtual Money TaxAmount { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for BatchMigrateBasePlanPrices. - public class BatchMigrateBasePlanPricesResponse : Google.Apis.Requests.IDirectResponseSchema + /// Country targeting specification. + public class CountryTargeting : Google.Apis.Requests.IDirectResponseSchema { - /// Contains one response per requested price migration, in the same order as the request. - [Newtonsoft.Json.JsonPropertyAttribute("responses")] - public virtual System.Collections.Generic.IList Responses { get; set; } + /// + /// Countries to target, specified as two letter [CLDR + /// codes](https://unicode.org/cldr/charts/latest/supplemental/territory_containment_un_m_49.html). + /// + [Newtonsoft.Json.JsonPropertyAttribute("countries")] + public virtual System.Collections.Generic.IList Countries { get; set; } + + /// Include "rest of world" as well as explicitly targeted countries. + [Newtonsoft.Json.JsonPropertyAttribute("includeRestOfWorld")] + public virtual System.Nullable IncludeRestOfWorld { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for BatchUpdateBasePlanStates. - public class BatchUpdateBasePlanStatesRequest : Google.Apis.Requests.IDirectResponseSchema + /// Request message for CreateDraftAppRecovery. + public class CreateDraftAppRecoveryRequest : Google.Apis.Requests.IDirectResponseSchema { /// - /// Required. The update request list of up to 100 elements. All requests must update different base plans. + /// Action type is remote in-app update. As a consequence of this action, a downloadable recovery module is also + /// created for testing purposes. /// - [Newtonsoft.Json.JsonPropertyAttribute("requests")] - public virtual System.Collections.Generic.IList Requests { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("remoteInAppUpdate")] + public virtual RemoteInAppUpdate RemoteInAppUpdate { get; set; } + + /// + /// Specifies targeting criteria for the recovery action such as regions, android sdk versions, app versions + /// etc. + /// + [Newtonsoft.Json.JsonPropertyAttribute("targeting")] + public virtual Targeting Targeting { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for BatchUpdateBasePlanStates. - public class BatchUpdateBasePlanStatesResponse : Google.Apis.Requests.IDirectResponseSchema + /// Request message for DeactivateBasePlan. + public class DeactivateBasePlanRequest : Google.Apis.Requests.IDirectResponseSchema { + /// Required. The unique base plan ID of the base plan to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] + public virtual string BasePlanId { get; set; } + /// - /// The list of updated subscriptions. This list will match the requests one to one, in the same order. + /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. /// - [Newtonsoft.Json.JsonPropertyAttribute("subscriptions")] - public virtual System.Collections.Generic.IList Subscriptions { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } + + /// Required. The parent app (package name) of the base plan to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } + + /// Required. The parent subscription (ID) of the base plan to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for BatchUpdateSubscriptionOfferStates. - public class BatchUpdateSubscriptionOfferStatesRequest : Google.Apis.Requests.IDirectResponseSchema + /// Request message for DeactivateOneTimeProductOffer. + public class DeactivateOneTimeProductOfferRequest : Google.Apis.Requests.IDirectResponseSchema { /// - /// Required. The update request list of up to 100 elements. All requests must update different offers. + /// Optional. The latency tolerance for the propagation of this update. Defaults to latency-sensitive. /// - [Newtonsoft.Json.JsonPropertyAttribute("requests")] - public virtual System.Collections.Generic.IList Requests { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// Required. The offer ID of the offer to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("offerId")] + public virtual string OfferId { get; set; } - /// Response message for BatchUpdateSubscriptionOfferStates. - public class BatchUpdateSubscriptionOfferStatesResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// The updated subscription offers list. - [Newtonsoft.Json.JsonPropertyAttribute("subscriptionOffers")] - public virtual System.Collections.Generic.IList SubscriptionOffers { get; set; } + /// Required. The parent app (package name) of the offer to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } + + /// Required. The parent one-time product (ID) of the offer to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } + + /// Required. The parent purchase option (ID) of the offer to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("purchaseOptionId")] + public virtual string PurchaseOptionId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for BatchUpdateSubscriptionOffers. - public class BatchUpdateSubscriptionOffersRequest : Google.Apis.Requests.IDirectResponseSchema + /// Request message for UpdatePurchaseOptionState. + public class DeactivatePurchaseOptionRequest : Google.Apis.Requests.IDirectResponseSchema { /// - /// Required. A list of update requests of up to 100 elements. All requests must update different subscription - /// offers. + /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. /// - [Newtonsoft.Json.JsonPropertyAttribute("requests")] - public virtual System.Collections.Generic.IList Requests { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// Required. The parent app (package name) of the purchase option to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } - /// Response message for BatchUpdateSubscriptionOffers. - public class BatchUpdateSubscriptionOffersResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// The updated subscription offers list. - [Newtonsoft.Json.JsonPropertyAttribute("subscriptionOffers")] - public virtual System.Collections.Generic.IList SubscriptionOffers { get; set; } + /// Required. The parent one-time product (ID) of the purchase option to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } + + /// Required. The purchase option ID of the purchase option to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("purchaseOptionId")] + public virtual string PurchaseOptionId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for BatchUpdateSubscription. - public class BatchUpdateSubscriptionsRequest : Google.Apis.Requests.IDirectResponseSchema + /// Request message for DeactivateSubscriptionOffer. + public class DeactivateSubscriptionOfferRequest : Google.Apis.Requests.IDirectResponseSchema { + /// Required. The parent base plan (ID) of the offer to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] + public virtual string BasePlanId { get; set; } + /// - /// Required. A list of update requests of up to 100 elements. All requests must update different subscriptions. + /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. /// - [Newtonsoft.Json.JsonPropertyAttribute("requests")] - public virtual System.Collections.Generic.IList Requests { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } + + /// Required. The unique offer ID of the offer to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("offerId")] + public virtual string OfferId { get; set; } + + /// Required. The parent app (package name) of the offer to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } + + /// Required. The parent subscription (ID) of the offer to deactivate. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for BatchUpdateSubscription. - public class BatchUpdateSubscriptionsResponse : Google.Apis.Requests.IDirectResponseSchema + /// Information related to deferred item replacement. + public class DeferredItemReplacement : Google.Apis.Requests.IDirectResponseSchema { - /// The updated subscriptions list. - [Newtonsoft.Json.JsonPropertyAttribute("subscriptions")] - public virtual System.Collections.Generic.IList Subscriptions { get; set; } + /// The product_id going to replace the existing product_id. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Information about an app bundle. The resource for BundlesService. - public class Bundle : Google.Apis.Requests.IDirectResponseSchema + /// Request message for deleting an one-time product offer. + public class DeleteOneTimeProductOfferRequest : Google.Apis.Requests.IDirectResponseSchema { /// - /// A sha1 hash of the upload payload, encoded as a hex string and matching the output of the sha1sum command. + /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. /// - [Newtonsoft.Json.JsonPropertyAttribute("sha1")] - public virtual string Sha1 { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } - /// - /// A sha256 hash of the upload payload, encoded as a hex string and matching the output of the sha256sum - /// command. - /// - [Newtonsoft.Json.JsonPropertyAttribute("sha256")] - public virtual string Sha256 { get; set; } + /// Required. The unique offer ID of the offer to delete. + [Newtonsoft.Json.JsonPropertyAttribute("offerId")] + public virtual string OfferId { get; set; } - /// - /// The version code of the Android App Bundle, as specified in the Android App Bundle's base module APK - /// manifest file. - /// - [Newtonsoft.Json.JsonPropertyAttribute("versionCode")] - public virtual System.Nullable VersionCode { get; set; } + /// Required. The parent app (package name) of the offer to delete. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } + + /// Required. The parent one-time product (ID) of the offer to delete. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } + + /// Required. The parent purchase option (ID) of the offer to delete. + [Newtonsoft.Json.JsonPropertyAttribute("purchaseOptionId")] + public virtual string PurchaseOptionId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response listing all app bundles. - public class BundlesListResponse : Google.Apis.Requests.IDirectResponseSchema + /// Request message for deleting a one-time product. + public class DeleteOneTimeProductRequest : Google.Apis.Requests.IDirectResponseSchema { - /// All app bundles. - [Newtonsoft.Json.JsonPropertyAttribute("bundles")] - public virtual System.Collections.Generic.IList Bundles { get; set; } + /// + /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. + /// + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } - /// The kind of this response ("androidpublisher#bundlesListResponse"). - [Newtonsoft.Json.JsonPropertyAttribute("kind")] - public virtual string Kind { get; set; } + /// Required. The parent app (package name) of the one-time product to delete. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } + + /// Required. The one-time product ID of the one-time product to delete. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Address information for the customer, for use in tax computation. - public class BuyerAddress : Google.Apis.Requests.IDirectResponseSchema + /// Request message for deleting a purchase option. + public class DeletePurchaseOptionRequest : Google.Apis.Requests.IDirectResponseSchema { - /// Two letter country code based on ISO-3166-1 Alpha-2 (UN country codes). - [Newtonsoft.Json.JsonPropertyAttribute("buyerCountry")] - public virtual string BuyerCountry { get; set; } - /// - /// Postal code of an address. When Google is the Merchant of Record for the order, this information is not - /// included. + /// Optional. This field has no effect for purchase options with no offers under them. For purchase options with + /// associated offers: * If `force` is set to false (default), an error will be returned. * If `force` is set to + /// true, any associated offers under the purchase option will be deleted. /// - [Newtonsoft.Json.JsonPropertyAttribute("buyerPostcode")] - public virtual string BuyerPostcode { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("force")] + public virtual System.Nullable Force { get; set; } /// - /// Top-level administrative subdivision of the buyer address country. When Google is the Merchant of Record for - /// the order, this information is not included. + /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. /// - [Newtonsoft.Json.JsonPropertyAttribute("buyerState")] - public virtual string BuyerState { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// Required. The parent app (package name) of the purchase option to delete. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } + + /// Required. The parent one-time product (ID) of the purchase option to delete. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } + + /// Required. The purchase option ID of the purchase option to delete. + [Newtonsoft.Json.JsonPropertyAttribute("purchaseOptionId")] + public virtual string PurchaseOptionId { get; set; } - /// Request message for CancelAppRecovery. - public class CancelAppRecoveryRequest : Google.Apis.Requests.IDirectResponseSchema - { /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for CancelAppRecovery. - public class CancelAppRecoveryResponse : Google.Apis.Requests.IDirectResponseSchema + /// Represents a deobfuscation file. + public class DeobfuscationFile : Google.Apis.Requests.IDirectResponseSchema { + /// The type of the deobfuscation file. + [Newtonsoft.Json.JsonPropertyAttribute("symbolType")] + public virtual string SymbolType { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// Result of the cancel survey when the subscription was canceled by the user. - public class CancelSurveyResult : Google.Apis.Requests.IDirectResponseSchema + /// Responses for the upload. + public class DeobfuscationFilesUploadResponse : Google.Apis.Requests.IDirectResponseSchema { - /// The reason the user selected in the cancel survey. - [Newtonsoft.Json.JsonPropertyAttribute("reason")] - public virtual string Reason { get; set; } - - /// - /// Only set for CANCEL_SURVEY_REASON_OTHERS. This is the user's freeform response to the survey. - /// - [Newtonsoft.Json.JsonPropertyAttribute("reasonUserInput")] - public virtual string ReasonUserInput { get; set; } + /// The uploaded Deobfuscation File configuration. + [Newtonsoft.Json.JsonPropertyAttribute("deobfuscationFile")] + public virtual DeobfuscationFile DeobfuscationFile { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// Information specific to a subscription in the SUBSCRIPTION_STATE_CANCELED or SUBSCRIPTION_STATE_EXPIRED state. - /// - public class CanceledStateContext : Google.Apis.Requests.IDirectResponseSchema - { - /// Subscription was canceled by the developer. - [Newtonsoft.Json.JsonPropertyAttribute("developerInitiatedCancellation")] - public virtual DeveloperInitiatedCancellation DeveloperInitiatedCancellation { get; set; } - - /// Subscription was replaced by a new subscription. - [Newtonsoft.Json.JsonPropertyAttribute("replacementCancellation")] - public virtual ReplacementCancellation ReplacementCancellation { get; set; } - - /// Subscription was canceled by the system, for example because of a billing problem. - [Newtonsoft.Json.JsonPropertyAttribute("systemInitiatedCancellation")] - public virtual SystemInitiatedCancellation SystemInitiatedCancellation { get; set; } - - /// Subscription was canceled by user. - [Newtonsoft.Json.JsonPropertyAttribute("userInitiatedCancellation")] - public virtual UserInitiatedCancellation UserInitiatedCancellation { get; set; } - + /// Request message for DeployAppRecovery. + public class DeployAppRecoveryRequest : Google.Apis.Requests.IDirectResponseSchema + { /// The ETag of the item. public virtual string ETag { get; set; } } - /// Details of when the order was canceled. - public class CancellationEvent : Google.Apis.Requests.IDirectResponseSchema + /// Response message for DeployAppRecovery. + public class DeployAppRecoveryResponse : Google.Apis.Requests.IDirectResponseSchema { - private string _eventTimeRaw; - - private object _eventTime; + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// The time when the order was canceled. - [Newtonsoft.Json.JsonPropertyAttribute("eventTime")] - public virtual string EventTimeRaw - { - get => _eventTimeRaw; - set - { - _eventTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _eventTimeRaw = value; - } - } + /// Developer entry from conversation between user and developer. + public class DeveloperComment : Google.Apis.Requests.IDirectResponseSchema + { + /// The last time at which this comment was updated. + [Newtonsoft.Json.JsonPropertyAttribute("lastModified")] + public virtual Timestamp LastModified { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EventTimeDateTimeOffset instead.")] - public virtual object EventTime - { - get => _eventTime; - set - { - _eventTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _eventTime = value; - } - } + /// The content of the comment, i.e. reply body. + [Newtonsoft.Json.JsonPropertyAttribute("text")] + public virtual string Text { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? EventTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EventTimeRaw); - set => EventTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Information specific to cancellations initiated by developers. + public class DeveloperInitiatedCancellation : Google.Apis.Requests.IDirectResponseSchema + { /// The ETag of the item. public virtual string ETag { get; set; } } - /// An entry of conversation between user and developer. - public class Comment : Google.Apis.Requests.IDirectResponseSchema + /// Represents a device feature. + public class DeviceFeature : Google.Apis.Requests.IDirectResponseSchema { - /// A comment from a developer. - [Newtonsoft.Json.JsonPropertyAttribute("developerComment")] - public virtual DeveloperComment DeveloperComment { get; set; } + /// Name of the feature. + [Newtonsoft.Json.JsonPropertyAttribute("featureName")] + public virtual string FeatureName { get; set; } - /// A comment from a user. - [Newtonsoft.Json.JsonPropertyAttribute("userComment")] - public virtual UserComment UserComment { get; set; } + /// + /// The feature version specified by android:glEsVersion or android:version in in the AndroidManifest. + /// + [Newtonsoft.Json.JsonPropertyAttribute("featureVersion")] + public virtual System.Nullable FeatureVersion { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for ConvertRegionPrices. - public class ConvertRegionPricesRequest : Google.Apis.Requests.IDirectResponseSchema + /// Targeting for a device feature. + public class DeviceFeatureTargeting : Google.Apis.Requests.IDirectResponseSchema { - /// The intital price to convert other regions from. Tax exclusive. - [Newtonsoft.Json.JsonPropertyAttribute("price")] - public virtual Money Price { get; set; } + /// Feature of the device. + [Newtonsoft.Json.JsonPropertyAttribute("requiredFeature")] + public virtual DeviceFeature RequiredFeature { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for ConvertRegionPrices. - public class ConvertRegionPricesResponse : Google.Apis.Requests.IDirectResponseSchema + /// + /// A group of devices. A group is defined by a set of device selectors. A device belongs to the group if it matches + /// any selector (logical OR). + /// + public class DeviceGroup : Google.Apis.Requests.IDirectResponseSchema { /// - /// Converted other regions prices in USD and EUR, to use for countries where Play doesn't support a country's - /// local currency. + /// Device selectors for this group. A device matching any of the selectors is included in this group. /// - [Newtonsoft.Json.JsonPropertyAttribute("convertedOtherRegionsPrice")] - public virtual ConvertedOtherRegionsPrice ConvertedOtherRegionsPrice { get; set; } - - /// Map from region code to converted region price. - [Newtonsoft.Json.JsonPropertyAttribute("convertedRegionPrices")] - public virtual System.Collections.Generic.IDictionary ConvertedRegionPrices { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("deviceSelectors")] + public virtual System.Collections.Generic.IList DeviceSelectors { get; set; } - /// The region version at which the prices were generated. - [Newtonsoft.Json.JsonPropertyAttribute("regionVersion")] - public virtual RegionsVersion RegionVersion { get; set; } + /// The name of the group. + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Converted other regions prices. - public class ConvertedOtherRegionsPrice : Google.Apis.Requests.IDirectResponseSchema + /// Identifier of a device. + public class DeviceId : Google.Apis.Requests.IDirectResponseSchema { - /// Price in EUR to use for the "Other regions" location exclusive of taxes. - [Newtonsoft.Json.JsonPropertyAttribute("eurPrice")] - public virtual Money EurPrice { get; set; } + /// Value of Build.BRAND. + [Newtonsoft.Json.JsonPropertyAttribute("buildBrand")] + public virtual string BuildBrand { get; set; } - /// Price in USD to use for the "Other regions" location exclusive of taxes. - [Newtonsoft.Json.JsonPropertyAttribute("usdPrice")] - public virtual Money UsdPrice { get; set; } + /// Value of Build.DEVICE. + [Newtonsoft.Json.JsonPropertyAttribute("buildDevice")] + public virtual string BuildDevice { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// A converted region price. - public class ConvertedRegionPrice : Google.Apis.Requests.IDirectResponseSchema + /// Characteristics of the user's device. + public class DeviceMetadata : Google.Apis.Requests.IDirectResponseSchema { - /// The converted price tax inclusive. - [Newtonsoft.Json.JsonPropertyAttribute("price")] - public virtual Money Price { get; set; } + /// Device CPU make, e.g. "Qualcomm" + [Newtonsoft.Json.JsonPropertyAttribute("cpuMake")] + public virtual string CpuMake { get; set; } - /// The region code of the region. - [Newtonsoft.Json.JsonPropertyAttribute("regionCode")] - public virtual string RegionCode { get; set; } + /// Device CPU model, e.g. "MSM8974" + [Newtonsoft.Json.JsonPropertyAttribute("cpuModel")] + public virtual string CpuModel { get; set; } - /// The tax amount of the converted price. - [Newtonsoft.Json.JsonPropertyAttribute("taxAmount")] - public virtual Money TaxAmount { get; set; } + /// Device class (e.g. tablet) + [Newtonsoft.Json.JsonPropertyAttribute("deviceClass")] + public virtual string DeviceClass { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// OpenGL version + [Newtonsoft.Json.JsonPropertyAttribute("glEsVersion")] + public virtual System.Nullable GlEsVersion { get; set; } - /// Country targeting specification. - public class CountryTargeting : Google.Apis.Requests.IDirectResponseSchema - { - /// - /// Countries to target, specified as two letter [CLDR - /// codes](https://unicode.org/cldr/charts/latest/supplemental/territory_containment_un_m_49.html). - /// - [Newtonsoft.Json.JsonPropertyAttribute("countries")] - public virtual System.Collections.Generic.IList Countries { get; set; } + /// Device manufacturer (e.g. Motorola) + [Newtonsoft.Json.JsonPropertyAttribute("manufacturer")] + public virtual string Manufacturer { get; set; } - /// Include "rest of world" as well as explicitly targeted countries. - [Newtonsoft.Json.JsonPropertyAttribute("includeRestOfWorld")] - public virtual System.Nullable IncludeRestOfWorld { get; set; } + /// Comma separated list of native platforms (e.g. "arm", "arm7") + [Newtonsoft.Json.JsonPropertyAttribute("nativePlatform")] + public virtual string NativePlatform { get; set; } + + /// Device model name (e.g. Droid) + [Newtonsoft.Json.JsonPropertyAttribute("productName")] + public virtual string ProductName { get; set; } + + /// Device RAM in Megabytes, e.g. "2048" + [Newtonsoft.Json.JsonPropertyAttribute("ramMb")] + public virtual System.Nullable RamMb { get; set; } + + /// Screen density in DPI + [Newtonsoft.Json.JsonPropertyAttribute("screenDensityDpi")] + public virtual System.Nullable ScreenDensityDpi { get; set; } + + /// Screen height in pixels + [Newtonsoft.Json.JsonPropertyAttribute("screenHeightPx")] + public virtual System.Nullable ScreenHeightPx { get; set; } + + /// Screen width in pixels + [Newtonsoft.Json.JsonPropertyAttribute("screenWidthPx")] + public virtual System.Nullable ScreenWidthPx { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for CreateDraftAppRecovery. - public class CreateDraftAppRecoveryRequest : Google.Apis.Requests.IDirectResponseSchema + /// Conditions about a device's RAM capabilities. + public class DeviceRam : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Action type is remote in-app update. As a consequence of this action, a downloadable recovery module is also - /// created for testing purposes. - /// - [Newtonsoft.Json.JsonPropertyAttribute("remoteInAppUpdate")] - public virtual RemoteInAppUpdate RemoteInAppUpdate { get; set; } + /// Maximum RAM in bytes (bound excluded). + [Newtonsoft.Json.JsonPropertyAttribute("maxBytes")] + public virtual System.Nullable MaxBytes { get; set; } - /// - /// Specifies targeting criteria for the recovery action such as regions, android sdk versions, app versions - /// etc. - /// - [Newtonsoft.Json.JsonPropertyAttribute("targeting")] - public virtual Targeting Targeting { get; set; } + /// Minimum RAM in bytes (bound included). + [Newtonsoft.Json.JsonPropertyAttribute("minBytes")] + public virtual System.Nullable MinBytes { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for DeactivateBasePlan. - public class DeactivateBasePlanRequest : Google.Apis.Requests.IDirectResponseSchema + /// + /// Selector for a device group. A selector consists of a set of conditions on the device that should all match + /// (logical AND) to determine a device group eligibility. For instance, if a selector specifies RAM conditions, + /// device model inclusion and device model exclusion, a device is considered to match if: device matches RAM + /// conditions AND device matches one of the included device models AND device doesn't match excluded device models + /// + public class DeviceSelector : Google.Apis.Requests.IDirectResponseSchema { - /// Required. The unique base plan ID of the base plan to deactivate. - [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] - public virtual string BasePlanId { get; set; } + /// Conditions on the device's RAM. + [Newtonsoft.Json.JsonPropertyAttribute("deviceRam")] + public virtual DeviceRam DeviceRam { get; set; } + + /// Device models excluded by this selector, even if they match all other conditions. + [Newtonsoft.Json.JsonPropertyAttribute("excludedDeviceIds")] + public virtual System.Collections.Generic.IList ExcludedDeviceIds { get; set; } /// - /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. + /// A device that has any of these system features is excluded by this selector, even if it matches all other + /// conditions. /// - [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] - public virtual string LatencyTolerance { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("forbiddenSystemFeatures")] + public virtual System.Collections.Generic.IList ForbiddenSystemFeatures { get; set; } - /// Required. The parent app (package name) of the base plan to deactivate. - [Newtonsoft.Json.JsonPropertyAttribute("packageName")] - public virtual string PackageName { get; set; } + /// Device models included by this selector. + [Newtonsoft.Json.JsonPropertyAttribute("includedDeviceIds")] + public virtual System.Collections.Generic.IList IncludedDeviceIds { get; set; } - /// Required. The parent subscription (ID) of the base plan to deactivate. - [Newtonsoft.Json.JsonPropertyAttribute("productId")] - public virtual string ProductId { get; set; } + /// A device needs to have all these system features to be included by the selector. + [Newtonsoft.Json.JsonPropertyAttribute("requiredSystemFeatures")] + public virtual System.Collections.Generic.IList RequiredSystemFeatures { get; set; } + + /// Optional. The SoCs included by this selector. Only works for Android S+ devices. + [Newtonsoft.Json.JsonPropertyAttribute("systemOnChips")] + public virtual System.Collections.Generic.IList SystemOnChips { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for DeactivateSubscriptionOffer. - public class DeactivateSubscriptionOfferRequest : Google.Apis.Requests.IDirectResponseSchema + /// The device spec used to generate a system APK. + public class DeviceSpec : Google.Apis.Requests.IDirectResponseSchema { - /// Required. The parent base plan (ID) of the offer to deactivate. - [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] - public virtual string BasePlanId { get; set; } + /// Screen dpi. + [Newtonsoft.Json.JsonPropertyAttribute("screenDensity")] + public virtual System.Nullable ScreenDensity { get; set; } /// - /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. + /// Supported ABI architectures in the order of preference. The values should be the string as reported by the + /// platform, e.g. "armeabi-v7a", "x86_64". /// - [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] - public virtual string LatencyTolerance { get; set; } - - /// Required. The unique offer ID of the offer to deactivate. - [Newtonsoft.Json.JsonPropertyAttribute("offerId")] - public virtual string OfferId { get; set; } - - /// Required. The parent app (package name) of the offer to deactivate. - [Newtonsoft.Json.JsonPropertyAttribute("packageName")] - public virtual string PackageName { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("supportedAbis")] + public virtual System.Collections.Generic.IList SupportedAbis { get; set; } - /// Required. The parent subscription (ID) of the offer to deactivate. - [Newtonsoft.Json.JsonPropertyAttribute("productId")] - public virtual string ProductId { get; set; } + /// All installed locales represented as BCP-47 strings, e.g. "en-US". + [Newtonsoft.Json.JsonPropertyAttribute("supportedLocales")] + public virtual System.Collections.Generic.IList SupportedLocales { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Information related to deferred item replacement. - public class DeferredItemReplacement : Google.Apis.Requests.IDirectResponseSchema + /// + /// A single device tier. Devices matching any of the device groups in device_group_names are considered to match + /// the tier. + /// + public class DeviceTier : Google.Apis.Requests.IDirectResponseSchema { - /// The product_id going to replace the existing product_id. - [Newtonsoft.Json.JsonPropertyAttribute("productId")] - public virtual string ProductId { get; set; } + /// + /// Groups of devices included in this tier. These groups must be defined explicitly under device_groups in this + /// configuration. + /// + [Newtonsoft.Json.JsonPropertyAttribute("deviceGroupNames")] + public virtual System.Collections.Generic.IList DeviceGroupNames { get; set; } + + /// + /// The priority level of the tier. Tiers are evaluated in descending order of level: the highest level tier has + /// the highest priority. The highest tier matching a given device is selected for that device. You should use a + /// contiguous range of levels for your tiers in a tier set; tier levels in a tier set must be unique. For + /// instance, if your tier set has 4 tiers (including the global fallback), you should define tiers 1, 2 and 3 + /// in this configuration. Note: tier 0 is implicitly defined as a global fallback and selected for devices that + /// don't match any of the tiers explicitly defined here. You mustn't define level 0 explicitly in this + /// configuration. + /// + [Newtonsoft.Json.JsonPropertyAttribute("level")] + public virtual System.Nullable Level { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Represents a deobfuscation file. - public class DeobfuscationFile : Google.Apis.Requests.IDirectResponseSchema + /// Configuration describing device targeting criteria for the content of an app. + public class DeviceTierConfig : Google.Apis.Requests.IDirectResponseSchema { - /// The type of the deobfuscation file. - [Newtonsoft.Json.JsonPropertyAttribute("symbolType")] - public virtual string SymbolType { get; set; } + /// Definition of device groups for the app. + [Newtonsoft.Json.JsonPropertyAttribute("deviceGroups")] + public virtual System.Collections.Generic.IList DeviceGroups { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// Output only. The device tier config ID. + [Newtonsoft.Json.JsonPropertyAttribute("deviceTierConfigId")] + public virtual System.Nullable DeviceTierConfigId { get; set; } - /// Responses for the upload. - public class DeobfuscationFilesUploadResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// The uploaded Deobfuscation File configuration. - [Newtonsoft.Json.JsonPropertyAttribute("deobfuscationFile")] - public virtual DeobfuscationFile DeobfuscationFile { get; set; } + /// Definition of the set of device tiers for the app. + [Newtonsoft.Json.JsonPropertyAttribute("deviceTierSet")] + public virtual DeviceTierSet DeviceTierSet { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// Definition of user country sets for the app. + [Newtonsoft.Json.JsonPropertyAttribute("userCountrySets")] + public virtual System.Collections.Generic.IList UserCountrySets { get; set; } - /// Request message for DeployAppRecovery. - public class DeployAppRecoveryRequest : Google.Apis.Requests.IDirectResponseSchema - { /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for DeployAppRecovery. - public class DeployAppRecoveryResponse : Google.Apis.Requests.IDirectResponseSchema + /// + /// A set of device tiers. A tier set determines what variation of app content gets served to a specific device, for + /// device-targeted content. You should assign a priority level to each tier, which determines the ordering by which + /// they are evaluated by Play. See the documentation of DeviceTier.level for more details. + /// + public class DeviceTierSet : Google.Apis.Requests.IDirectResponseSchema { + /// Device tiers belonging to the set. + [Newtonsoft.Json.JsonPropertyAttribute("deviceTiers")] + public virtual System.Collections.Generic.IList DeviceTiers { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// Developer entry from conversation between user and developer. - public class DeveloperComment : Google.Apis.Requests.IDirectResponseSchema + /// An expansion file. The resource for ExpansionFilesService. + public class ExpansionFile : Google.Apis.Requests.IDirectResponseSchema { - /// The last time at which this comment was updated. - [Newtonsoft.Json.JsonPropertyAttribute("lastModified")] - public virtual Timestamp LastModified { get; set; } + /// + /// If set, this field indicates that this APK has an expansion file uploaded to it: this APK does not reference + /// another APK's expansion file. The field's value is the size of the uploaded expansion file in bytes. + /// + [Newtonsoft.Json.JsonPropertyAttribute("fileSize")] + public virtual System.Nullable FileSize { get; set; } - /// The content of the comment, i.e. reply body. - [Newtonsoft.Json.JsonPropertyAttribute("text")] - public virtual string Text { get; set; } + /// + /// If set, this APK's expansion file references another APK's expansion file. The file_size field will not be + /// set. + /// + [Newtonsoft.Json.JsonPropertyAttribute("referencesVersion")] + public virtual System.Nullable ReferencesVersion { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Information specific to cancellations initiated by developers. - public class DeveloperInitiatedCancellation : Google.Apis.Requests.IDirectResponseSchema + /// Response for uploading an expansion file. + public class ExpansionFilesUploadResponse : Google.Apis.Requests.IDirectResponseSchema { + /// The uploaded expansion file configuration. + [Newtonsoft.Json.JsonPropertyAttribute("expansionFile")] + public virtual ExpansionFile ExpansionFile { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// Represents a device feature. - public class DeviceFeature : Google.Apis.Requests.IDirectResponseSchema + /// User account identifier in the third-party service. + public class ExternalAccountIdentifiers : Google.Apis.Requests.IDirectResponseSchema { - /// Name of the feature. - [Newtonsoft.Json.JsonPropertyAttribute("featureName")] - public virtual string FeatureName { get; set; } + /// + /// User account identifier in the third-party service. Only present if account linking happened as part of the + /// subscription purchase flow. + /// + [Newtonsoft.Json.JsonPropertyAttribute("externalAccountId")] + public virtual string ExternalAccountId { get; set; } /// - /// The feature version specified by android:glEsVersion or android:version in in the AndroidManifest. + /// An obfuscated version of the id that is uniquely associated with the user's account in your app. Present for + /// the following purchases: * If account linking happened as part of the subscription purchase flow. * It was + /// specified using + /// https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid + /// when the purchase was made. /// - [Newtonsoft.Json.JsonPropertyAttribute("featureVersion")] - public virtual System.Nullable FeatureVersion { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("obfuscatedExternalAccountId")] + public virtual string ObfuscatedExternalAccountId { get; set; } + + /// + /// An obfuscated version of the id that is uniquely associated with the user's profile in your app. Only + /// present if specified using + /// https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid + /// when the purchase was made. + /// + [Newtonsoft.Json.JsonPropertyAttribute("obfuscatedExternalProfileId")] + public virtual string ObfuscatedExternalProfileId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Targeting for a device feature. - public class DeviceFeatureTargeting : Google.Apis.Requests.IDirectResponseSchema + /// Details of an external subscription. + public class ExternalSubscription : Google.Apis.Requests.IDirectResponseSchema { - /// Feature of the device. - [Newtonsoft.Json.JsonPropertyAttribute("requiredFeature")] - public virtual DeviceFeature RequiredFeature { get; set; } + /// Required. The type of the external subscription. + [Newtonsoft.Json.JsonPropertyAttribute("subscriptionType")] + public virtual string SubscriptionType { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// A group of devices. A group is defined by a set of device selectors. A device belongs to the group if it matches - /// any selector (logical OR). - /// - public class DeviceGroup : Google.Apis.Requests.IDirectResponseSchema + /// The details of an external transaction. + public class ExternalTransaction : Google.Apis.Requests.IDirectResponseSchema { + private string _createTimeRaw; + + private object _createTime; + /// - /// Device selectors for this group. A device matching any of the selectors is included in this group. + /// Output only. The time when this transaction was created. This is the time when Google was notified of the + /// transaction. /// - [Newtonsoft.Json.JsonPropertyAttribute("deviceSelectors")] - public virtual System.Collections.Generic.IList DeviceSelectors { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw + { + get => _createTimeRaw; + set + { + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; + } + } - /// The name of the group. - [Newtonsoft.Json.JsonPropertyAttribute("name")] - public virtual string Name { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } - /// Identifier of a device. - public class DeviceId : Google.Apis.Requests.IDirectResponseSchema - { - /// Value of Build.BRAND. - [Newtonsoft.Json.JsonPropertyAttribute("buildBrand")] - public virtual string BuildBrand { get; set; } + /// + /// Output only. The current transaction amount before tax. This represents the current pre-tax amount including + /// any refunds that may have been applied to this transaction. + /// + [Newtonsoft.Json.JsonPropertyAttribute("currentPreTaxAmount")] + public virtual Price CurrentPreTaxAmount { get; set; } + + /// + /// Output only. The current tax amount. This represents the current tax amount including any refunds that may + /// have been applied to this transaction. + /// + [Newtonsoft.Json.JsonPropertyAttribute("currentTaxAmount")] + public virtual Price CurrentTaxAmount { get; set; } + + /// + /// Output only. The id of this transaction. All transaction ids under the same package name must be unique. Set + /// when creating the external transaction. + /// + [Newtonsoft.Json.JsonPropertyAttribute("externalTransactionId")] + public virtual string ExternalTransactionId { get; set; } + + /// This is a one-time transaction and not part of a subscription. + [Newtonsoft.Json.JsonPropertyAttribute("oneTimeTransaction")] + public virtual OneTimeExternalTransaction OneTimeTransaction { get; set; } - /// Value of Build.DEVICE. - [Newtonsoft.Json.JsonPropertyAttribute("buildDevice")] - public virtual string BuildDevice { get; set; } + /// + /// Required. The original transaction amount before taxes. This represents the pre-tax amount originally + /// notified to Google before any refunds were applied. + /// + [Newtonsoft.Json.JsonPropertyAttribute("originalPreTaxAmount")] + public virtual Price OriginalPreTaxAmount { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// + /// Required. The original tax amount. This represents the tax amount originally notified to Google before any + /// refunds were applied. + /// + [Newtonsoft.Json.JsonPropertyAttribute("originalTaxAmount")] + public virtual Price OriginalTaxAmount { get; set; } - /// Characteristics of the user's device. - public class DeviceMetadata : Google.Apis.Requests.IDirectResponseSchema - { - /// Device CPU make, e.g. "Qualcomm" - [Newtonsoft.Json.JsonPropertyAttribute("cpuMake")] - public virtual string CpuMake { get; set; } + /// + /// Output only. The resource name of the external transaction. The package name of the application the inapp + /// products were sold (for example, 'com.some.app'). + /// + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } - /// Device CPU model, e.g. "MSM8974" - [Newtonsoft.Json.JsonPropertyAttribute("cpuModel")] - public virtual string CpuModel { get; set; } + /// This transaction is part of a recurring series of transactions. + [Newtonsoft.Json.JsonPropertyAttribute("recurringTransaction")] + public virtual RecurringExternalTransaction RecurringTransaction { get; set; } - /// Device class (e.g. tablet) - [Newtonsoft.Json.JsonPropertyAttribute("deviceClass")] - public virtual string DeviceClass { get; set; } + /// + /// Output only. If set, this transaction was a test purchase. Google will not charge for a test transaction. + /// + [Newtonsoft.Json.JsonPropertyAttribute("testPurchase")] + public virtual ExternalTransactionTestPurchase TestPurchase { get; set; } - /// OpenGL version - [Newtonsoft.Json.JsonPropertyAttribute("glEsVersion")] - public virtual System.Nullable GlEsVersion { get; set; } + /// + /// Optional. The transaction program code, used to help determine service fee for eligible apps participating + /// in partner programs. Developers participating in the Play Media Experience Program + /// (https://play.google.com/console/about/programs/mediaprogram/) must provide the program code when reporting + /// alternative billing transactions. If you are an eligible developer, please contact your BDM for more + /// information on how to set this field. Note: this field can not be used for external offers transactions. + /// + [Newtonsoft.Json.JsonPropertyAttribute("transactionProgramCode")] + public virtual System.Nullable TransactionProgramCode { get; set; } - /// Device manufacturer (e.g. Motorola) - [Newtonsoft.Json.JsonPropertyAttribute("manufacturer")] - public virtual string Manufacturer { get; set; } + /// Output only. The current state of the transaction. + [Newtonsoft.Json.JsonPropertyAttribute("transactionState")] + public virtual string TransactionState { get; set; } - /// Comma separated list of native platforms (e.g. "arm", "arm7") - [Newtonsoft.Json.JsonPropertyAttribute("nativePlatform")] - public virtual string NativePlatform { get; set; } + private string _transactionTimeRaw; - /// Device model name (e.g. Droid) - [Newtonsoft.Json.JsonPropertyAttribute("productName")] - public virtual string ProductName { get; set; } + private object _transactionTime; - /// Device RAM in Megabytes, e.g. "2048" - [Newtonsoft.Json.JsonPropertyAttribute("ramMb")] - public virtual System.Nullable RamMb { get; set; } + /// Required. The time when the transaction was completed. + [Newtonsoft.Json.JsonPropertyAttribute("transactionTime")] + public virtual string TransactionTimeRaw + { + get => _transactionTimeRaw; + set + { + _transactionTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _transactionTimeRaw = value; + } + } - /// Screen density in DPI - [Newtonsoft.Json.JsonPropertyAttribute("screenDensityDpi")] - public virtual System.Nullable ScreenDensityDpi { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use TransactionTimeDateTimeOffset instead.")] + public virtual object TransactionTime + { + get => _transactionTime; + set + { + _transactionTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _transactionTime = value; + } + } - /// Screen height in pixels - [Newtonsoft.Json.JsonPropertyAttribute("screenHeightPx")] - public virtual System.Nullable ScreenHeightPx { get; set; } + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? TransactionTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(TransactionTimeRaw); + set => TransactionTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } - /// Screen width in pixels - [Newtonsoft.Json.JsonPropertyAttribute("screenWidthPx")] - public virtual System.Nullable ScreenWidthPx { get; set; } + /// Required. User address for tax computation. + [Newtonsoft.Json.JsonPropertyAttribute("userTaxAddress")] + public virtual ExternalTransactionAddress UserTaxAddress { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Conditions about a device's RAM capabilities. - public class DeviceRam : Google.Apis.Requests.IDirectResponseSchema + /// User's address for the external transaction. + public class ExternalTransactionAddress : Google.Apis.Requests.IDirectResponseSchema { - /// Maximum RAM in bytes (bound excluded). - [Newtonsoft.Json.JsonPropertyAttribute("maxBytes")] - public virtual System.Nullable MaxBytes { get; set; } + /// + /// Optional. Top-level administrative subdivision of the country/region. Only required for transactions in + /// India. Valid values are "ANDAMAN AND NICOBAR ISLANDS", "ANDHRA PRADESH", "ARUNACHAL PRADESH", "ASSAM", + /// "BIHAR", "CHANDIGARH", "CHHATTISGARH", "DADRA AND NAGAR HAVELI", "DADRA AND NAGAR HAVELI AND DAMAN AND DIU", + /// "DAMAN AND DIU", "DELHI", "GOA", "GUJARAT", "HARYANA", "HIMACHAL PRADESH", "JAMMU AND KASHMIR", "JHARKHAND", + /// "KARNATAKA", "KERALA", "LADAKH", "LAKSHADWEEP", "MADHYA PRADESH", "MAHARASHTRA", "MANIPUR", "MEGHALAYA", + /// "MIZORAM", "NAGALAND", "ODISHA", "PUDUCHERRY", "PUNJAB", "RAJASTHAN", "SIKKIM", "TAMIL NADU", "TELANGANA", + /// "TRIPURA", "UTTAR PRADESH", "UTTARAKHAND", and "WEST BENGAL". + /// + [Newtonsoft.Json.JsonPropertyAttribute("administrativeArea")] + public virtual string AdministrativeArea { get; set; } - /// Minimum RAM in bytes (bound included). - [Newtonsoft.Json.JsonPropertyAttribute("minBytes")] - public virtual System.Nullable MinBytes { get; set; } + /// Required. Two letter region code based on ISO-3166-1 Alpha-2 (UN region codes). + [Newtonsoft.Json.JsonPropertyAttribute("regionCode")] + public virtual string RegionCode { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// - /// Selector for a device group. A selector consists of a set of conditions on the device that should all match - /// (logical AND) to determine a device group eligibility. For instance, if a selector specifies RAM conditions, - /// device model inclusion and device model exclusion, a device is considered to match if: device matches RAM - /// conditions AND device matches one of the included device models AND device doesn't match excluded device models + /// Represents a transaction performed using a test account. These transactions will not be charged by Google. /// - public class DeviceSelector : Google.Apis.Requests.IDirectResponseSchema + public class ExternalTransactionTestPurchase : Google.Apis.Requests.IDirectResponseSchema { - /// Conditions on the device's RAM. - [Newtonsoft.Json.JsonPropertyAttribute("deviceRam")] - public virtual DeviceRam DeviceRam { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Device models excluded by this selector, even if they match all other conditions. - [Newtonsoft.Json.JsonPropertyAttribute("excludedDeviceIds")] - public virtual System.Collections.Generic.IList ExcludedDeviceIds { get; set; } + /// + /// Defines an APK available for this application that is hosted externally and not uploaded to Google Play. This + /// function is only available to organizations using Managed Play whose application is configured to restrict + /// distribution to the organizations. + /// + public class ExternallyHostedApk : Google.Apis.Requests.IDirectResponseSchema + { + /// The application label. + [Newtonsoft.Json.JsonPropertyAttribute("applicationLabel")] + public virtual string ApplicationLabel { get; set; } /// - /// A device that has any of these system features is excluded by this selector, even if it matches all other - /// conditions. + /// A certificate (or array of certificates if a certificate-chain is used) used to sign this APK, represented + /// as a base64 encoded byte array. /// - [Newtonsoft.Json.JsonPropertyAttribute("forbiddenSystemFeatures")] - public virtual System.Collections.Generic.IList ForbiddenSystemFeatures { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("certificateBase64s")] + public virtual System.Collections.Generic.IList CertificateBase64s { get; set; } - /// Device models included by this selector. - [Newtonsoft.Json.JsonPropertyAttribute("includedDeviceIds")] - public virtual System.Collections.Generic.IList IncludedDeviceIds { get; set; } + /// The URL at which the APK is hosted. This must be an https URL. + [Newtonsoft.Json.JsonPropertyAttribute("externallyHostedUrl")] + public virtual string ExternallyHostedUrl { get; set; } - /// A device needs to have all these system features to be included by the selector. - [Newtonsoft.Json.JsonPropertyAttribute("requiredSystemFeatures")] - public virtual System.Collections.Generic.IList RequiredSystemFeatures { get; set; } + /// The sha1 checksum of this APK, represented as a base64 encoded byte array. + [Newtonsoft.Json.JsonPropertyAttribute("fileSha1Base64")] + public virtual string FileSha1Base64 { get; set; } - /// Optional. The SoCs included by this selector. Only works for Android S+ devices. - [Newtonsoft.Json.JsonPropertyAttribute("systemOnChips")] - public virtual System.Collections.Generic.IList SystemOnChips { get; set; } + /// The sha256 checksum of this APK, represented as a base64 encoded byte array. + [Newtonsoft.Json.JsonPropertyAttribute("fileSha256Base64")] + public virtual string FileSha256Base64 { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// The file size in bytes of this APK. + [Newtonsoft.Json.JsonPropertyAttribute("fileSize")] + public virtual System.Nullable FileSize { get; set; } - /// The device spec used to generate a system APK. - public class DeviceSpec : Google.Apis.Requests.IDirectResponseSchema - { - /// Screen dpi. - [Newtonsoft.Json.JsonPropertyAttribute("screenDensity")] - public virtual System.Nullable ScreenDensity { get; set; } + /// The icon image from the APK, as a base64 encoded byte array. + [Newtonsoft.Json.JsonPropertyAttribute("iconBase64")] + public virtual string IconBase64 { get; set; } - /// - /// Supported ABI architectures in the order of preference. The values should be the string as reported by the - /// platform, e.g. "armeabi-v7a", "x86_64". - /// - [Newtonsoft.Json.JsonPropertyAttribute("supportedAbis")] - public virtual System.Collections.Generic.IList SupportedAbis { get; set; } + /// The maximum SDK supported by this APK (optional). + [Newtonsoft.Json.JsonPropertyAttribute("maximumSdk")] + public virtual System.Nullable MaximumSdk { get; set; } - /// All installed locales represented as BCP-47 strings, e.g. "en-US". - [Newtonsoft.Json.JsonPropertyAttribute("supportedLocales")] - public virtual System.Collections.Generic.IList SupportedLocales { get; set; } + /// The minimum SDK targeted by this APK. + [Newtonsoft.Json.JsonPropertyAttribute("minimumSdk")] + public virtual System.Nullable MinimumSdk { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// The native code environments supported by this APK (optional). + [Newtonsoft.Json.JsonPropertyAttribute("nativeCodes")] + public virtual System.Collections.Generic.IList NativeCodes { get; set; } - /// - /// A single device tier. Devices matching any of the device groups in device_group_names are considered to match - /// the tier. - /// - public class DeviceTier : Google.Apis.Requests.IDirectResponseSchema - { - /// - /// Groups of devices included in this tier. These groups must be defined explicitly under device_groups in this - /// configuration. - /// - [Newtonsoft.Json.JsonPropertyAttribute("deviceGroupNames")] - public virtual System.Collections.Generic.IList DeviceGroupNames { get; set; } + /// The package name. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } + + /// The features required by this APK (optional). + [Newtonsoft.Json.JsonPropertyAttribute("usesFeatures")] + public virtual System.Collections.Generic.IList UsesFeatures { get; set; } + + /// The permissions requested by this APK. + [Newtonsoft.Json.JsonPropertyAttribute("usesPermissions")] + public virtual System.Collections.Generic.IList UsesPermissions { get; set; } + + /// The version code of this APK. + [Newtonsoft.Json.JsonPropertyAttribute("versionCode")] + public virtual System.Nullable VersionCode { get; set; } - /// - /// The priority level of the tier. Tiers are evaluated in descending order of level: the highest level tier has - /// the highest priority. The highest tier matching a given device is selected for that device. You should use a - /// contiguous range of levels for your tiers in a tier set; tier levels in a tier set must be unique. For - /// instance, if your tier set has 4 tiers (including the global fallback), you should define tiers 1, 2 and 3 - /// in this configuration. Note: tier 0 is implicitly defined as a global fallback and selected for devices that - /// don't match any of the tiers explicitly defined here. You mustn't define level 0 explicitly in this - /// configuration. - /// - [Newtonsoft.Json.JsonPropertyAttribute("level")] - public virtual System.Nullable Level { get; set; } + /// The version name of this APK. + [Newtonsoft.Json.JsonPropertyAttribute("versionName")] + public virtual string VersionName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Configuration describing device targeting criteria for the content of an app. - public class DeviceTierConfig : Google.Apis.Requests.IDirectResponseSchema + /// A full refund of the remaining amount of a transaction. + public class FullRefund : Google.Apis.Requests.IDirectResponseSchema { - /// Definition of device groups for the app. - [Newtonsoft.Json.JsonPropertyAttribute("deviceGroups")] - public virtual System.Collections.Generic.IList DeviceGroups { get; set; } - - /// Output only. The device tier config ID. - [Newtonsoft.Json.JsonPropertyAttribute("deviceTierConfigId")] - public virtual System.Nullable DeviceTierConfigId { get; set; } - - /// Definition of the set of device tiers for the app. - [Newtonsoft.Json.JsonPropertyAttribute("deviceTierSet")] - public virtual DeviceTierSet DeviceTierSet { get; set; } - - /// Definition of user country sets for the app. - [Newtonsoft.Json.JsonPropertyAttribute("userCountrySets")] - public virtual System.Collections.Generic.IList UserCountrySets { get; set; } - /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// A set of device tiers. A tier set determines what variation of app content gets served to a specific device, for - /// device-targeted content. You should assign a priority level to each tier, which determines the ordering by which - /// they are evaluated by Play. See the documentation of DeviceTier.level for more details. - /// - public class DeviceTierSet : Google.Apis.Requests.IDirectResponseSchema + /// Response to list generated APKs. + public class GeneratedApksListResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Device tiers belonging to the set. - [Newtonsoft.Json.JsonPropertyAttribute("deviceTiers")] - public virtual System.Collections.Generic.IList DeviceTiers { get; set; } + /// All generated APKs, grouped by the APK signing key. + [Newtonsoft.Json.JsonPropertyAttribute("generatedApks")] + public virtual System.Collections.Generic.IList GeneratedApks { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// An expansion file. The resource for ExpansionFilesService. - public class ExpansionFile : Google.Apis.Requests.IDirectResponseSchema + /// + /// Download metadata for split, standalone and universal APKs, as well as asset pack slices, signed with a given + /// key. + /// + public class GeneratedApksPerSigningKey : Google.Apis.Requests.IDirectResponseSchema { + /// SHA256 hash of the APK signing public key certificate. + [Newtonsoft.Json.JsonPropertyAttribute("certificateSha256Hash")] + public virtual string CertificateSha256Hash { get; set; } + /// - /// If set, this field indicates that this APK has an expansion file uploaded to it: this APK does not reference - /// another APK's expansion file. The field's value is the size of the uploaded expansion file in bytes. + /// List of asset pack slices which will be served for this app bundle, signed with a key corresponding to + /// certificate_sha256_hash. /// - [Newtonsoft.Json.JsonPropertyAttribute("fileSize")] - public virtual System.Nullable FileSize { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("generatedAssetPackSlices")] + public virtual System.Collections.Generic.IList GeneratedAssetPackSlices { get; set; } /// - /// If set, this APK's expansion file references another APK's expansion file. The file_size field will not be - /// set. + /// Generated recovery apks for recovery actions signed with a key corresponding to certificate_sha256_hash. + /// This includes all generated recovery APKs, also those in draft or cancelled state. This field is not set if + /// no recovery actions were created for this signing key. /// - [Newtonsoft.Json.JsonPropertyAttribute("referencesVersion")] - public virtual System.Nullable ReferencesVersion { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("generatedRecoveryModules")] + public virtual System.Collections.Generic.IList GeneratedRecoveryModules { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// List of generated split APKs, signed with a key corresponding to certificate_sha256_hash. + [Newtonsoft.Json.JsonPropertyAttribute("generatedSplitApks")] + public virtual System.Collections.Generic.IList GeneratedSplitApks { get; set; } - /// Response for uploading an expansion file. - public class ExpansionFilesUploadResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// The uploaded expansion file configuration. - [Newtonsoft.Json.JsonPropertyAttribute("expansionFile")] - public virtual ExpansionFile ExpansionFile { get; set; } + /// + /// List of generated standalone APKs, signed with a key corresponding to certificate_sha256_hash. + /// + [Newtonsoft.Json.JsonPropertyAttribute("generatedStandaloneApks")] + public virtual System.Collections.Generic.IList GeneratedStandaloneApks { get; set; } + + /// + /// Generated universal APK, signed with a key corresponding to certificate_sha256_hash. This field is not set + /// if no universal APK was generated for this signing key. + /// + [Newtonsoft.Json.JsonPropertyAttribute("generatedUniversalApk")] + public virtual GeneratedUniversalApk GeneratedUniversalApk { get; set; } + + /// Contains targeting information about the generated apks. + [Newtonsoft.Json.JsonPropertyAttribute("targetingInfo")] + public virtual TargetingInfo TargetingInfo { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// User account identifier in the third-party service. - public class ExternalAccountIdentifiers : Google.Apis.Requests.IDirectResponseSchema + /// Download metadata for an asset pack slice. + public class GeneratedAssetPackSlice : Google.Apis.Requests.IDirectResponseSchema { /// - /// User account identifier in the third-party service. Only present if account linking happened as part of the - /// subscription purchase flow. + /// Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` + /// method. /// - [Newtonsoft.Json.JsonPropertyAttribute("externalAccountId")] - public virtual string ExternalAccountId { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("downloadId")] + public virtual string DownloadId { get; set; } - /// - /// An obfuscated version of the id that is uniquely associated with the user's account in your app. Present for - /// the following purchases: * If account linking happened as part of the subscription purchase flow. * It was - /// specified using - /// https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid - /// when the purchase was made. - /// - [Newtonsoft.Json.JsonPropertyAttribute("obfuscatedExternalAccountId")] - public virtual string ObfuscatedExternalAccountId { get; set; } + /// Name of the module that this asset slice belongs to. + [Newtonsoft.Json.JsonPropertyAttribute("moduleName")] + public virtual string ModuleName { get; set; } - /// - /// An obfuscated version of the id that is uniquely associated with the user's profile in your app. Only - /// present if specified using - /// https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid - /// when the purchase was made. - /// - [Newtonsoft.Json.JsonPropertyAttribute("obfuscatedExternalProfileId")] - public virtual string ObfuscatedExternalProfileId { get; set; } + /// Asset slice ID. + [Newtonsoft.Json.JsonPropertyAttribute("sliceId")] + public virtual string SliceId { get; set; } + + /// Asset module version. + [Newtonsoft.Json.JsonPropertyAttribute("version")] + public virtual System.Nullable Version { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Details of an external subscription. - public class ExternalSubscription : Google.Apis.Requests.IDirectResponseSchema + /// Download metadata for an app recovery module. + public class GeneratedRecoveryApk : Google.Apis.Requests.IDirectResponseSchema { - /// Required. The type of the external subscription. - [Newtonsoft.Json.JsonPropertyAttribute("subscriptionType")] - public virtual string SubscriptionType { get; set; } + /// + /// Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` + /// method. + /// + [Newtonsoft.Json.JsonPropertyAttribute("downloadId")] + public virtual string DownloadId { get; set; } + + /// Name of the module which recovery apk belongs to. + [Newtonsoft.Json.JsonPropertyAttribute("moduleName")] + public virtual string ModuleName { get; set; } + + /// ID of the recovery action. + [Newtonsoft.Json.JsonPropertyAttribute("recoveryId")] + public virtual System.Nullable RecoveryId { get; set; } + + /// The status of the recovery action corresponding to the recovery apk. + [Newtonsoft.Json.JsonPropertyAttribute("recoveryStatus")] + public virtual string RecoveryStatus { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The details of an external transaction. - public class ExternalTransaction : Google.Apis.Requests.IDirectResponseSchema + /// Download metadata for a split APK. + public class GeneratedSplitApk : Google.Apis.Requests.IDirectResponseSchema { - private string _createTimeRaw; - - private object _createTime; - /// - /// Output only. The time when this transaction was created. This is the time when Google was notified of the - /// transaction. + /// Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` + /// method. /// - [Newtonsoft.Json.JsonPropertyAttribute("createTime")] - public virtual string CreateTimeRaw - { - get => _createTimeRaw; - set - { - _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _createTimeRaw = value; - } - } + [Newtonsoft.Json.JsonPropertyAttribute("downloadId")] + public virtual string DownloadId { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] - public virtual object CreateTime - { - get => _createTime; - set - { - _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _createTime = value; - } - } + /// Name of the module that this APK belongs to. + [Newtonsoft.Json.JsonPropertyAttribute("moduleName")] + public virtual string ModuleName { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? CreateTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); - set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } + /// Split ID. Empty for the main split of the base module. + [Newtonsoft.Json.JsonPropertyAttribute("splitId")] + public virtual string SplitId { get; set; } - /// - /// Output only. The current transaction amount before tax. This represents the current pre-tax amount including - /// any refunds that may have been applied to this transaction. - /// - [Newtonsoft.Json.JsonPropertyAttribute("currentPreTaxAmount")] - public virtual Price CurrentPreTaxAmount { get; set; } + /// ID of the generated variant. + [Newtonsoft.Json.JsonPropertyAttribute("variantId")] + public virtual System.Nullable VariantId { get; set; } - /// - /// Output only. The current tax amount. This represents the current tax amount including any refunds that may - /// have been applied to this transaction. - /// - [Newtonsoft.Json.JsonPropertyAttribute("currentTaxAmount")] - public virtual Price CurrentTaxAmount { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Download metadata for a standalone APK. + public class GeneratedStandaloneApk : Google.Apis.Requests.IDirectResponseSchema + { /// - /// Output only. The id of this transaction. All transaction ids under the same package name must be unique. Set - /// when creating the external transaction. + /// Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` + /// method. /// - [Newtonsoft.Json.JsonPropertyAttribute("externalTransactionId")] - public virtual string ExternalTransactionId { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("downloadId")] + public virtual string DownloadId { get; set; } - /// This is a one-time transaction and not part of a subscription. - [Newtonsoft.Json.JsonPropertyAttribute("oneTimeTransaction")] - public virtual OneTimeExternalTransaction OneTimeTransaction { get; set; } + /// ID of the generated variant. + [Newtonsoft.Json.JsonPropertyAttribute("variantId")] + public virtual System.Nullable VariantId { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Download metadata for a universal APK. + public class GeneratedUniversalApk : Google.Apis.Requests.IDirectResponseSchema + { /// - /// Required. The original transaction amount before taxes. This represents the pre-tax amount originally - /// notified to Google before any refunds were applied. + /// Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` + /// method. /// - [Newtonsoft.Json.JsonPropertyAttribute("originalPreTaxAmount")] - public virtual Price OriginalPreTaxAmount { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("downloadId")] + public virtual string DownloadId { get; set; } - /// - /// Required. The original tax amount. This represents the tax amount originally notified to Google before any - /// refunds were applied. - /// - [Newtonsoft.Json.JsonPropertyAttribute("originalTaxAmount")] - public virtual Price OriginalTaxAmount { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// - /// Output only. The resource name of the external transaction. The package name of the application the inapp - /// products were sold (for example, 'com.some.app'). - /// + /// Request message for GetOneTimeProductOffers. + public class GetOneTimeProductOfferRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. The unique offer ID of the offer to get. + [Newtonsoft.Json.JsonPropertyAttribute("offerId")] + public virtual string OfferId { get; set; } + + /// Required. The parent app (package name) of the offer to get. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } - /// This transaction is part of a recurring series of transactions. - [Newtonsoft.Json.JsonPropertyAttribute("recurringTransaction")] - public virtual RecurringExternalTransaction RecurringTransaction { get; set; } + /// Required. The parent one-time product (ID) of the offer to get. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } - /// - /// Output only. If set, this transaction was a test purchase. Google will not charge for a test transaction. - /// - [Newtonsoft.Json.JsonPropertyAttribute("testPurchase")] - public virtual ExternalTransactionTestPurchase TestPurchase { get; set; } + /// Required. The parent purchase option (ID) of the offer to get. + [Newtonsoft.Json.JsonPropertyAttribute("purchaseOptionId")] + public virtual string PurchaseOptionId { get; set; } - /// - /// Optional. The transaction program code, used to help determine service fee for eligible apps participating - /// in partner programs. Developers participating in the Play Media Experience Program - /// (https://play.google.com/console/about/programs/mediaprogram/) must provide the program code when reporting - /// alternative billing transactions. If you are an eligible developer, please contact your BDM for more - /// information on how to set this field. Note: this field can not be used for external offers transactions. - /// - [Newtonsoft.Json.JsonPropertyAttribute("transactionProgramCode")] - public virtual System.Nullable TransactionProgramCode { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Output only. The current state of the transaction. - [Newtonsoft.Json.JsonPropertyAttribute("transactionState")] - public virtual string TransactionState { get; set; } + /// Request message for GetSubscriptionOffer. + public class GetSubscriptionOfferRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. The parent base plan (ID) of the offer to get. + [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] + public virtual string BasePlanId { get; set; } - private string _transactionTimeRaw; + /// Required. The unique offer ID of the offer to get. + [Newtonsoft.Json.JsonPropertyAttribute("offerId")] + public virtual string OfferId { get; set; } - private object _transactionTime; + /// Required. The parent app (package name) of the offer to get. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } - /// Required. The time when the transaction was completed. - [Newtonsoft.Json.JsonPropertyAttribute("transactionTime")] - public virtual string TransactionTimeRaw - { - get => _transactionTimeRaw; - set - { - _transactionTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _transactionTimeRaw = value; - } - } + /// Required. The parent subscription (ID) of the offer to get. + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use TransactionTimeDateTimeOffset instead.")] - public virtual object TransactionTime - { - get => _transactionTime; - set - { - _transactionTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _transactionTime = value; - } - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// An access grant resource. + public class Grant : Google.Apis.Requests.IDirectResponseSchema + { + /// The permissions granted to the user for this app. + [Newtonsoft.Json.JsonPropertyAttribute("appLevelPermissions")] + public virtual System.Collections.Generic.IList AppLevelPermissions { get; set; } /// - /// representation of . + /// Required. Resource name for this grant, following the pattern + /// "developers/{developer}/users/{email}/grants/{package_name}". If this grant is for a draft app, the app ID + /// will be used in this resource name instead of the package name. /// - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? TransactionTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(TransactionTimeRaw); - set => TransactionTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } - /// Required. User address for tax computation. - [Newtonsoft.Json.JsonPropertyAttribute("userTaxAddress")] - public virtual ExternalTransactionAddress UserTaxAddress { get; set; } + /// Immutable. The package name of the app. This will be empty for draft apps. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// User's address for the external transaction. - public class ExternalTransactionAddress : Google.Apis.Requests.IDirectResponseSchema + /// An uploaded image. The resource for ImagesService. + public class Image : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Optional. Top-level administrative subdivision of the country/region. Only required for transactions in - /// India. Valid values are "ANDAMAN AND NICOBAR ISLANDS", "ANDHRA PRADESH", "ARUNACHAL PRADESH", "ASSAM", - /// "BIHAR", "CHANDIGARH", "CHHATTISGARH", "DADRA AND NAGAR HAVELI", "DADRA AND NAGAR HAVELI AND DAMAN AND DIU", - /// "DAMAN AND DIU", "DELHI", "GOA", "GUJARAT", "HARYANA", "HIMACHAL PRADESH", "JAMMU AND KASHMIR", "JHARKHAND", - /// "KARNATAKA", "KERALA", "LADAKH", "LAKSHADWEEP", "MADHYA PRADESH", "MAHARASHTRA", "MANIPUR", "MEGHALAYA", - /// "MIZORAM", "NAGALAND", "ODISHA", "PUDUCHERRY", "PUNJAB", "RAJASTHAN", "SIKKIM", "TAMIL NADU", "TELANGANA", - /// "TRIPURA", "UTTAR PRADESH", "UTTARAKHAND", and "WEST BENGAL". - /// - [Newtonsoft.Json.JsonPropertyAttribute("administrativeArea")] - public virtual string AdministrativeArea { get; set; } + /// A unique id representing this image. + [Newtonsoft.Json.JsonPropertyAttribute("id")] + public virtual string Id { get; set; } - /// Required. Two letter region code based on ISO-3166-1 Alpha-2 (UN region codes). - [Newtonsoft.Json.JsonPropertyAttribute("regionCode")] - public virtual string RegionCode { get; set; } + /// A sha1 hash of the image. + [Newtonsoft.Json.JsonPropertyAttribute("sha1")] + public virtual string Sha1 { get; set; } + + /// A sha256 hash of the image. + [Newtonsoft.Json.JsonPropertyAttribute("sha256")] + public virtual string Sha256 { get; set; } + + /// A URL that will serve a preview of the image. + [Newtonsoft.Json.JsonPropertyAttribute("url")] + public virtual string Url { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// Represents a transaction performed using a test account. These transactions will not be charged by Google. - /// - public class ExternalTransactionTestPurchase : Google.Apis.Requests.IDirectResponseSchema + /// Response for deleting all images. + public class ImagesDeleteAllResponse : Google.Apis.Requests.IDirectResponseSchema { + /// The deleted images. + [Newtonsoft.Json.JsonPropertyAttribute("deleted")] + public virtual System.Collections.Generic.IList Deleted { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// Defines an APK available for this application that is hosted externally and not uploaded to Google Play. This - /// function is only available to organizations using Managed Play whose application is configured to restrict - /// distribution to the organizations. - /// - public class ExternallyHostedApk : Google.Apis.Requests.IDirectResponseSchema + /// Response listing all images. + public class ImagesListResponse : Google.Apis.Requests.IDirectResponseSchema { - /// The application label. - [Newtonsoft.Json.JsonPropertyAttribute("applicationLabel")] - public virtual string ApplicationLabel { get; set; } - - /// - /// A certificate (or array of certificates if a certificate-chain is used) used to sign this APK, represented - /// as a base64 encoded byte array. - /// - [Newtonsoft.Json.JsonPropertyAttribute("certificateBase64s")] - public virtual System.Collections.Generic.IList CertificateBase64s { get; set; } + /// All listed Images. + [Newtonsoft.Json.JsonPropertyAttribute("images")] + public virtual System.Collections.Generic.IList Images { get; set; } - /// The URL at which the APK is hosted. This must be an https URL. - [Newtonsoft.Json.JsonPropertyAttribute("externallyHostedUrl")] - public virtual string ExternallyHostedUrl { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// The sha1 checksum of this APK, represented as a base64 encoded byte array. - [Newtonsoft.Json.JsonPropertyAttribute("fileSha1Base64")] - public virtual string FileSha1Base64 { get; set; } + /// Response for uploading an image. + public class ImagesUploadResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The uploaded image. + [Newtonsoft.Json.JsonPropertyAttribute("image")] + public virtual Image Image { get; set; } - /// The sha256 checksum of this APK, represented as a base64 encoded byte array. - [Newtonsoft.Json.JsonPropertyAttribute("fileSha256Base64")] - public virtual string FileSha256Base64 { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// The file size in bytes of this APK. - [Newtonsoft.Json.JsonPropertyAttribute("fileSize")] - public virtual System.Nullable FileSize { get; set; } + /// An in-app product. The resource for InappproductsService. + public class InAppProduct : Google.Apis.Requests.IDirectResponseSchema + { + /// Default language of the localized data, as defined by BCP-47. e.g. "en-US". + [Newtonsoft.Json.JsonPropertyAttribute("defaultLanguage")] + public virtual string DefaultLanguage { get; set; } - /// The icon image from the APK, as a base64 encoded byte array. - [Newtonsoft.Json.JsonPropertyAttribute("iconBase64")] - public virtual string IconBase64 { get; set; } + /// + /// Default price. Cannot be zero, as in-app products are never free. Always in the developer's Checkout + /// merchant currency. + /// + [Newtonsoft.Json.JsonPropertyAttribute("defaultPrice")] + public virtual Price DefaultPrice { get; set; } - /// The maximum SDK supported by this APK (optional). - [Newtonsoft.Json.JsonPropertyAttribute("maximumSdk")] - public virtual System.Nullable MaximumSdk { get; set; } + /// + /// Grace period of the subscription, specified in ISO 8601 format. Allows developers to give their subscribers + /// a grace period when the payment for the new recurrence period is declined. Acceptable values are P0D (zero + /// days), P3D (three days), P7D (seven days), P14D (14 days), and P30D (30 days). + /// + [Newtonsoft.Json.JsonPropertyAttribute("gracePeriod")] + public virtual string GracePeriod { get; set; } - /// The minimum SDK targeted by this APK. - [Newtonsoft.Json.JsonPropertyAttribute("minimumSdk")] - public virtual System.Nullable MinimumSdk { get; set; } + /// + /// List of localized title and description data. Map key is the language of the localized data, as defined by + /// BCP-47, e.g. "en-US". + /// + [Newtonsoft.Json.JsonPropertyAttribute("listings")] + public virtual System.Collections.Generic.IDictionary Listings { get; set; } - /// The native code environments supported by this APK (optional). - [Newtonsoft.Json.JsonPropertyAttribute("nativeCodes")] - public virtual System.Collections.Generic.IList NativeCodes { get; set; } + /// Details about taxes and legal compliance. Only applicable to managed products. + [Newtonsoft.Json.JsonPropertyAttribute("managedProductTaxesAndComplianceSettings")] + public virtual ManagedProductTaxAndComplianceSettings ManagedProductTaxesAndComplianceSettings { get; set; } - /// The package name. + /// Package name of the parent app. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } - /// The features required by this APK (optional). - [Newtonsoft.Json.JsonPropertyAttribute("usesFeatures")] - public virtual System.Collections.Generic.IList UsesFeatures { get; set; } + /// + /// Prices per buyer region. None of these can be zero, as in-app products are never free. Map key is region + /// code, as defined by ISO 3166-2. + /// + [Newtonsoft.Json.JsonPropertyAttribute("prices")] + public virtual System.Collections.Generic.IDictionary Prices { get; set; } - /// The permissions requested by this APK. - [Newtonsoft.Json.JsonPropertyAttribute("usesPermissions")] - public virtual System.Collections.Generic.IList UsesPermissions { get; set; } + /// The type of the product, e.g. a recurring subscription. + [Newtonsoft.Json.JsonPropertyAttribute("purchaseType")] + public virtual string PurchaseType { get; set; } - /// The version code of this APK. - [Newtonsoft.Json.JsonPropertyAttribute("versionCode")] - public virtual System.Nullable VersionCode { get; set; } + /// Stock-keeping-unit (SKU) of the product, unique within an app. + [Newtonsoft.Json.JsonPropertyAttribute("sku")] + public virtual string Sku { get; set; } - /// The version name of this APK. - [Newtonsoft.Json.JsonPropertyAttribute("versionName")] - public virtual string VersionName { get; set; } + /// The status of the product, e.g. whether it's active. + [Newtonsoft.Json.JsonPropertyAttribute("status")] + public virtual string Status { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// + /// Subscription period, specified in ISO 8601 format. Acceptable values are P1W (one week), P1M (one month), + /// P3M (three months), P6M (six months), and P1Y (one year). + /// + [Newtonsoft.Json.JsonPropertyAttribute("subscriptionPeriod")] + public virtual string SubscriptionPeriod { get; set; } - /// A full refund of the remaining amount of a transaction. - public class FullRefund : Google.Apis.Requests.IDirectResponseSchema - { - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// Details about taxes and legal compliance. Only applicable to subscription products. + [Newtonsoft.Json.JsonPropertyAttribute("subscriptionTaxesAndComplianceSettings")] + public virtual SubscriptionTaxAndComplianceSettings SubscriptionTaxesAndComplianceSettings { get; set; } - /// Response to list generated APKs. - public class GeneratedApksListResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// All generated APKs, grouped by the APK signing key. - [Newtonsoft.Json.JsonPropertyAttribute("generatedApks")] - public virtual System.Collections.Generic.IList GeneratedApks { get; set; } + /// + /// Trial period, specified in ISO 8601 format. Acceptable values are anything between P7D (seven days) and + /// P999D (999 days). + /// + [Newtonsoft.Json.JsonPropertyAttribute("trialPeriod")] + public virtual string TrialPeriod { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// Download metadata for split, standalone and universal APKs, as well as asset pack slices, signed with a given - /// key. - /// - public class GeneratedApksPerSigningKey : Google.Apis.Requests.IDirectResponseSchema + /// Store listing of a single in-app product. + public class InAppProductListing : Google.Apis.Requests.IDirectResponseSchema { - /// SHA256 hash of the APK signing public key certificate. - [Newtonsoft.Json.JsonPropertyAttribute("certificateSha256Hash")] - public virtual string CertificateSha256Hash { get; set; } + /// Localized entitlement benefits for a subscription. + [Newtonsoft.Json.JsonPropertyAttribute("benefits")] + public virtual System.Collections.Generic.IList Benefits { get; set; } - /// - /// List of asset pack slices which will be served for this app bundle, signed with a key corresponding to - /// certificate_sha256_hash. - /// - [Newtonsoft.Json.JsonPropertyAttribute("generatedAssetPackSlices")] - public virtual System.Collections.Generic.IList GeneratedAssetPackSlices { get; set; } + /// Description for the store listing. + [Newtonsoft.Json.JsonPropertyAttribute("description")] + public virtual string Description { get; set; } - /// - /// Generated recovery apks for recovery actions signed with a key corresponding to certificate_sha256_hash. - /// This includes all generated recovery APKs, also those in draft or cancelled state. This field is not set if - /// no recovery actions were created for this signing key. - /// - [Newtonsoft.Json.JsonPropertyAttribute("generatedRecoveryModules")] - public virtual System.Collections.Generic.IList GeneratedRecoveryModules { get; set; } + /// Title for the store listing. + [Newtonsoft.Json.JsonPropertyAttribute("title")] + public virtual string Title { get; set; } - /// List of generated split APKs, signed with a key corresponding to certificate_sha256_hash. - [Newtonsoft.Json.JsonPropertyAttribute("generatedSplitApks")] - public virtual System.Collections.Generic.IList GeneratedSplitApks { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request to delete multiple in-app products. + public class InappproductsBatchDeleteRequest : Google.Apis.Requests.IDirectResponseSchema + { /// - /// List of generated standalone APKs, signed with a key corresponding to certificate_sha256_hash. + /// Individual delete requests. At least one request is required. Can contain up to 100 requests. All requests + /// must correspond to different in-app products. /// - [Newtonsoft.Json.JsonPropertyAttribute("generatedStandaloneApks")] - public virtual System.Collections.Generic.IList GeneratedStandaloneApks { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } - /// - /// Generated universal APK, signed with a key corresponding to certificate_sha256_hash. This field is not set - /// if no universal APK was generated for this signing key. - /// - [Newtonsoft.Json.JsonPropertyAttribute("generatedUniversalApk")] - public virtual GeneratedUniversalApk GeneratedUniversalApk { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Contains targeting information about the generated apks. - [Newtonsoft.Json.JsonPropertyAttribute("targetingInfo")] - public virtual TargetingInfo TargetingInfo { get; set; } + /// Response message for BatchGetSubscriptions endpoint. + public class InappproductsBatchGetResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The list of requested in-app products, in the same order as the request. + [Newtonsoft.Json.JsonPropertyAttribute("inappproduct")] + public virtual System.Collections.Generic.IList Inappproduct { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Download metadata for an asset pack slice. - public class GeneratedAssetPackSlice : Google.Apis.Requests.IDirectResponseSchema + /// Request to update or insert one or more in-app products. + public class InappproductsBatchUpdateRequest : Google.Apis.Requests.IDirectResponseSchema { /// - /// Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` - /// method. + /// Required. Individual update requests. At least one request is required. Can contain up to 100 requests. All + /// requests must correspond to different in-app products. /// - [Newtonsoft.Json.JsonPropertyAttribute("downloadId")] - public virtual string DownloadId { get; set; } - - /// Name of the module that this asset slice belongs to. - [Newtonsoft.Json.JsonPropertyAttribute("moduleName")] - public virtual string ModuleName { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("requests")] + public virtual System.Collections.Generic.IList Requests { get; set; } - /// Asset slice ID. - [Newtonsoft.Json.JsonPropertyAttribute("sliceId")] - public virtual string SliceId { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Asset module version. - [Newtonsoft.Json.JsonPropertyAttribute("version")] - public virtual System.Nullable Version { get; set; } + /// Response for a batch in-app product update. + public class InappproductsBatchUpdateResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The updated or inserted in-app products. + [Newtonsoft.Json.JsonPropertyAttribute("inappproducts")] + public virtual System.Collections.Generic.IList Inappproducts { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Download metadata for an app recovery module. - public class GeneratedRecoveryApk : Google.Apis.Requests.IDirectResponseSchema + /// Request to delete an in-app product. + public class InappproductsDeleteRequest : Google.Apis.Requests.IDirectResponseSchema { /// - /// Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` - /// method. + /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. /// - [Newtonsoft.Json.JsonPropertyAttribute("downloadId")] - public virtual string DownloadId { get; set; } - - /// Name of the module which recovery apk belongs to. - [Newtonsoft.Json.JsonPropertyAttribute("moduleName")] - public virtual string ModuleName { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } - /// ID of the recovery action. - [Newtonsoft.Json.JsonPropertyAttribute("recoveryId")] - public virtual System.Nullable RecoveryId { get; set; } + /// Package name of the app. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } - /// The status of the recovery action corresponding to the recovery apk. - [Newtonsoft.Json.JsonPropertyAttribute("recoveryStatus")] - public virtual string RecoveryStatus { get; set; } + /// Unique identifier for the in-app product. + [Newtonsoft.Json.JsonPropertyAttribute("sku")] + public virtual string Sku { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Download metadata for a split APK. - public class GeneratedSplitApk : Google.Apis.Requests.IDirectResponseSchema + /// Response listing all in-app products. + public class InappproductsListResponse : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` - /// method. - /// - [Newtonsoft.Json.JsonPropertyAttribute("downloadId")] - public virtual string DownloadId { get; set; } + /// All in-app products. + [Newtonsoft.Json.JsonPropertyAttribute("inappproduct")] + public virtual System.Collections.Generic.IList Inappproduct { get; set; } - /// Name of the module that this APK belongs to. - [Newtonsoft.Json.JsonPropertyAttribute("moduleName")] - public virtual string ModuleName { get; set; } + /// The kind of this response ("androidpublisher#inappproductsListResponse"). + [Newtonsoft.Json.JsonPropertyAttribute("kind")] + public virtual string Kind { get; set; } - /// Split ID. Empty for the main split of the base module. - [Newtonsoft.Json.JsonPropertyAttribute("splitId")] - public virtual string SplitId { get; set; } + /// Deprecated and unset. + [Newtonsoft.Json.JsonPropertyAttribute("pageInfo")] + public virtual PageInfo PageInfo { get; set; } - /// ID of the generated variant. - [Newtonsoft.Json.JsonPropertyAttribute("variantId")] - public virtual System.Nullable VariantId { get; set; } + /// Pagination token, to handle a number of products that is over one page. + [Newtonsoft.Json.JsonPropertyAttribute("tokenPagination")] + public virtual TokenPagination TokenPagination { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Download metadata for a standalone APK. - public class GeneratedStandaloneApk : Google.Apis.Requests.IDirectResponseSchema + /// Request to update an in-app product. + public class InappproductsUpdateRequest : Google.Apis.Requests.IDirectResponseSchema { /// - /// Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` - /// method. + /// If set to true, and the in-app product with the given package_name and sku doesn't exist, the in-app product + /// will be created. /// - [Newtonsoft.Json.JsonPropertyAttribute("downloadId")] - public virtual string DownloadId { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("allowMissing")] + public virtual System.Nullable AllowMissing { get; set; } - /// ID of the generated variant. - [Newtonsoft.Json.JsonPropertyAttribute("variantId")] - public virtual System.Nullable VariantId { get; set; } + /// + /// If true the prices for all regions targeted by the parent app that don't have a price specified for this + /// in-app product will be auto converted to the target currency based on the default price. Defaults to false. + /// + [Newtonsoft.Json.JsonPropertyAttribute("autoConvertMissingPrices")] + public virtual System.Nullable AutoConvertMissingPrices { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// The new in-app product. + [Newtonsoft.Json.JsonPropertyAttribute("inappproduct")] + public virtual InAppProduct Inappproduct { get; set; } - /// Download metadata for a universal APK. - public class GeneratedUniversalApk : Google.Apis.Requests.IDirectResponseSchema - { /// - /// Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` - /// method. + /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. /// - [Newtonsoft.Json.JsonPropertyAttribute("downloadId")] - public virtual string DownloadId { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } + + /// Package name of the app. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } + + /// Unique identifier for the in-app product. + [Newtonsoft.Json.JsonPropertyAttribute("sku")] + public virtual string Sku { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for GetSubscriptionOffer. - public class GetSubscriptionOfferRequest : Google.Apis.Requests.IDirectResponseSchema + /// Information to a installment plan. + public class InstallmentPlan : Google.Apis.Requests.IDirectResponseSchema { - /// Required. The parent base plan (ID) of the offer to get. - [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] - public virtual string BasePlanId { get; set; } + /// Total number of payments the user is initially committed for. + [Newtonsoft.Json.JsonPropertyAttribute("initialCommittedPaymentsCount")] + public virtual System.Nullable InitialCommittedPaymentsCount { get; set; } - /// Required. The unique offer ID of the offer to get. - [Newtonsoft.Json.JsonPropertyAttribute("offerId")] - public virtual string OfferId { get; set; } + /// + /// If present, this installment plan is pending to be canceled. The cancellation will happen only after the + /// user finished all committed payments. + /// + [Newtonsoft.Json.JsonPropertyAttribute("pendingCancellation")] + public virtual PendingCancellation PendingCancellation { get; set; } - /// Required. The parent app (package name) of the offer to get. - [Newtonsoft.Json.JsonPropertyAttribute("packageName")] - public virtual string PackageName { get; set; } + /// Total number of committed payments remaining to be paid for in this renewal cycle. + [Newtonsoft.Json.JsonPropertyAttribute("remainingCommittedPaymentsCount")] + public virtual System.Nullable RemainingCommittedPaymentsCount { get; set; } - /// Required. The parent subscription (ID) of the offer to get. - [Newtonsoft.Json.JsonPropertyAttribute("productId")] - public virtual string ProductId { get; set; } + /// + /// Total number of payments the user will be committed for after each commitment period. Empty means the + /// installment plan will fall back to a normal auto-renew subscription after initial commitment. + /// + [Newtonsoft.Json.JsonPropertyAttribute("subsequentCommittedPaymentsCount")] + public virtual System.Nullable SubsequentCommittedPaymentsCount { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// An access grant resource. - public class Grant : Google.Apis.Requests.IDirectResponseSchema + /// Represents an installments base plan where a user commits to a specified number of payments. + public class InstallmentsBasePlanType : Google.Apis.Requests.IDirectResponseSchema { - /// The permissions granted to the user for this app. - [Newtonsoft.Json.JsonPropertyAttribute("appLevelPermissions")] - public virtual System.Collections.Generic.IList AppLevelPermissions { get; set; } + /// + /// Optional. Account hold period of the subscription, specified in ISO 8601 format. Acceptable values must be + /// in days and between P0D and P60D. If not specified, the default value is P30D. The sum of + /// gracePeriodDuration and accountHoldDuration must be between P30D and P60D days, inclusive. + /// + [Newtonsoft.Json.JsonPropertyAttribute("accountHoldDuration")] + public virtual string AccountHoldDuration { get; set; } /// - /// Required. Resource name for this grant, following the pattern - /// "developers/{developer}/users/{email}/grants/{package_name}". If this grant is for a draft app, the app ID - /// will be used in this resource name instead of the package name. + /// Required. Immutable. Subscription period, specified in ISO 8601 format. For a list of acceptable billing + /// periods, refer to the help center. The duration is immutable after the base plan is created. /// - [Newtonsoft.Json.JsonPropertyAttribute("name")] - public virtual string Name { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("billingPeriodDuration")] + public virtual string BillingPeriodDuration { get; set; } - /// Immutable. The package name of the app. This will be empty for draft apps. - [Newtonsoft.Json.JsonPropertyAttribute("packageName")] - public virtual string PackageName { get; set; } + /// + /// Required. Immutable. The number of payments the user is committed to. It is immutable after the base plan is + /// created. + /// + [Newtonsoft.Json.JsonPropertyAttribute("committedPaymentsCount")] + public virtual System.Nullable CommittedPaymentsCount { get; set; } + + /// + /// Grace period of the subscription, specified in ISO 8601 format. Acceptable values must be in days and + /// between P0D and the lesser of 30D and base plan billing period. If not specified, a default value will be + /// used based on the billing period. The sum of gracePeriodDuration and accountHoldDuration must be between + /// P30D and P60D days, inclusive. + /// + [Newtonsoft.Json.JsonPropertyAttribute("gracePeriodDuration")] + public virtual string GracePeriodDuration { get; set; } + + /// + /// The proration mode for the base plan determines what happens when a user switches to this plan from another + /// base plan. If unspecified, defaults to CHARGE_ON_NEXT_BILLING_DATE. + /// + [Newtonsoft.Json.JsonPropertyAttribute("prorationMode")] + public virtual string ProrationMode { get; set; } + + /// + /// Required. Immutable. Installments base plan renewal type. Determines the behavior at the end of the initial + /// commitment. The renewal type is immutable after the base plan is created. + /// + [Newtonsoft.Json.JsonPropertyAttribute("renewalType")] + public virtual string RenewalType { get; set; } + + /// + /// Whether users should be able to resubscribe to this base plan in Google Play surfaces. Defaults to + /// RESUBSCRIBE_STATE_ACTIVE if not specified. + /// + [Newtonsoft.Json.JsonPropertyAttribute("resubscribeState")] + public virtual string ResubscribeState { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// An uploaded image. The resource for ImagesService. - public class Image : Google.Apis.Requests.IDirectResponseSchema + /// + /// An artifact resource which gets created when uploading an APK or Android App Bundle through internal app + /// sharing. + /// + public class InternalAppSharingArtifact : Google.Apis.Requests.IDirectResponseSchema { - /// A unique id representing this image. - [Newtonsoft.Json.JsonPropertyAttribute("id")] - public virtual string Id { get; set; } + /// The sha256 fingerprint of the certificate used to sign the generated artifact. + [Newtonsoft.Json.JsonPropertyAttribute("certificateFingerprint")] + public virtual string CertificateFingerprint { get; set; } - /// A sha1 hash of the image. - [Newtonsoft.Json.JsonPropertyAttribute("sha1")] - public virtual string Sha1 { get; set; } + /// + /// The download URL generated for the uploaded artifact. Users that are authorized to download can follow the + /// link to the Play Store app to install it. + /// + [Newtonsoft.Json.JsonPropertyAttribute("downloadUrl")] + public virtual string DownloadUrl { get; set; } - /// A sha256 hash of the image. + /// + /// The sha256 hash of the artifact represented as a lowercase hexadecimal number, matching the output of the + /// sha256sum command. + /// [Newtonsoft.Json.JsonPropertyAttribute("sha256")] public virtual string Sha256 { get; set; } - /// A URL that will serve a preview of the image. - [Newtonsoft.Json.JsonPropertyAttribute("url")] - public virtual string Url { get; set; } - /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response for deleting all images. - public class ImagesDeleteAllResponse : Google.Apis.Requests.IDirectResponseSchema + /// Contains the introductory price information for a subscription. + public class IntroductoryPriceInfo : Google.Apis.Requests.IDirectResponseSchema { - /// The deleted images. - [Newtonsoft.Json.JsonPropertyAttribute("deleted")] - public virtual System.Collections.Generic.IList Deleted { get; set; } + /// + /// Introductory price of the subscription, not including tax. The currency is the same as price_currency_code. + /// Price is expressed in micro-units, where 1,000,000 micro-units represents one unit of the currency. For + /// example, if the subscription price is €1.99, price_amount_micros is 1990000. + /// + [Newtonsoft.Json.JsonPropertyAttribute("introductoryPriceAmountMicros")] + public virtual System.Nullable IntroductoryPriceAmountMicros { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// + /// ISO 4217 currency code for the introductory subscription price. For example, if the price is specified in + /// British pounds sterling, price_currency_code is "GBP". + /// + [Newtonsoft.Json.JsonPropertyAttribute("introductoryPriceCurrencyCode")] + public virtual string IntroductoryPriceCurrencyCode { get; set; } - /// Response listing all images. - public class ImagesListResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// All listed Images. - [Newtonsoft.Json.JsonPropertyAttribute("images")] - public virtual System.Collections.Generic.IList Images { get; set; } + /// The number of billing period to offer introductory pricing. + [Newtonsoft.Json.JsonPropertyAttribute("introductoryPriceCycles")] + public virtual System.Nullable IntroductoryPriceCycles { get; set; } + + /// + /// Introductory price period, specified in ISO 8601 format. Common values are (but not limited to) "P1W" (one + /// week), "P1M" (one month), "P3M" (three months), "P6M" (six months), and "P1Y" (one year). + /// + [Newtonsoft.Json.JsonPropertyAttribute("introductoryPricePeriod")] + public virtual string IntroductoryPricePeriod { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response for uploading an image. - public class ImagesUploadResponse : Google.Apis.Requests.IDirectResponseSchema + /// Targeting based on language. + public class LanguageTargeting : Google.Apis.Requests.IDirectResponseSchema { - /// The uploaded image. - [Newtonsoft.Json.JsonPropertyAttribute("image")] - public virtual Image Image { get; set; } + /// Alternative languages. + [Newtonsoft.Json.JsonPropertyAttribute("alternatives")] + public virtual System.Collections.Generic.IList Alternatives { get; set; } + + /// ISO-639: 2 or 3 letter language code. + [Newtonsoft.Json.JsonPropertyAttribute("value")] + public virtual System.Collections.Generic.IList Value { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// An in-app product. The resource for InappproductsService. - public class InAppProduct : Google.Apis.Requests.IDirectResponseSchema + /// Details of a line item. + public class LineItem : Google.Apis.Requests.IDirectResponseSchema { - /// Default language of the localized data, as defined by BCP-47. e.g. "en-US". - [Newtonsoft.Json.JsonPropertyAttribute("defaultLanguage")] - public virtual string DefaultLanguage { get; set; } - - /// - /// Default price. Cannot be zero, as in-app products are never free. Always in the developer's Checkout - /// merchant currency. - /// - [Newtonsoft.Json.JsonPropertyAttribute("defaultPrice")] - public virtual Price DefaultPrice { get; set; } - - /// - /// Grace period of the subscription, specified in ISO 8601 format. Allows developers to give their subscribers - /// a grace period when the payment for the new recurrence period is declined. Acceptable values are P0D (zero - /// days), P3D (three days), P7D (seven days), P14D (14 days), and P30D (30 days). - /// - [Newtonsoft.Json.JsonPropertyAttribute("gracePeriod")] - public virtual string GracePeriod { get; set; } - /// - /// List of localized title and description data. Map key is the language of the localized data, as defined by - /// BCP-47, e.g. "en-US". + /// Item's listed price on Play Store, this may or may not include tax. Excludes any discounts or promotions. /// - [Newtonsoft.Json.JsonPropertyAttribute("listings")] - public virtual System.Collections.Generic.IDictionary Listings { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("listingPrice")] + public virtual Money ListingPrice { get; set; } - /// Details about taxes and legal compliance. Only applicable to managed products. - [Newtonsoft.Json.JsonPropertyAttribute("managedProductTaxesAndComplianceSettings")] - public virtual ManagedProductTaxAndComplianceSettings ManagedProductTaxesAndComplianceSettings { get; set; } + /// Details of a one-time purchase. + [Newtonsoft.Json.JsonPropertyAttribute("oneTimePurchaseDetails")] + public virtual OneTimePurchaseDetails OneTimePurchaseDetails { get; set; } - /// Package name of the parent app. - [Newtonsoft.Json.JsonPropertyAttribute("packageName")] - public virtual string PackageName { get; set; } + /// Details of a paid app purchase. + [Newtonsoft.Json.JsonPropertyAttribute("paidAppDetails")] + public virtual PaidAppDetails PaidAppDetails { get; set; } /// - /// Prices per buyer region. None of these can be zero, as in-app products are never free. Map key is region - /// code, as defined by ISO 3166-2. + /// The purchased product ID or in-app SKU (for example, 'monthly001' or 'com.some.thing.inapp1'). /// - [Newtonsoft.Json.JsonPropertyAttribute("prices")] - public virtual System.Collections.Generic.IDictionary Prices { get; set; } - - /// The type of the product, e.g. a recurring subscription. - [Newtonsoft.Json.JsonPropertyAttribute("purchaseType")] - public virtual string PurchaseType { get; set; } - - /// Stock-keeping-unit (SKU) of the product, unique within an app. - [Newtonsoft.Json.JsonPropertyAttribute("sku")] - public virtual string Sku { get; set; } - - /// The status of the product, e.g. whether it's active. - [Newtonsoft.Json.JsonPropertyAttribute("status")] - public virtual string Status { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } /// - /// Subscription period, specified in ISO 8601 format. Acceptable values are P1W (one week), P1M (one month), - /// P3M (three months), P6M (six months), and P1Y (one year). + /// Developer-specified name of the product. Displayed in buyer's locale. Example: coins, monthly subscription, + /// etc. /// - [Newtonsoft.Json.JsonPropertyAttribute("subscriptionPeriod")] - public virtual string SubscriptionPeriod { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("productTitle")] + public virtual string ProductTitle { get; set; } - /// Details about taxes and legal compliance. Only applicable to subscription products. - [Newtonsoft.Json.JsonPropertyAttribute("subscriptionTaxesAndComplianceSettings")] - public virtual SubscriptionTaxAndComplianceSettings SubscriptionTaxesAndComplianceSettings { get; set; } + /// Details of a subscription purchase. + [Newtonsoft.Json.JsonPropertyAttribute("subscriptionDetails")] + public virtual SubscriptionDetails SubscriptionDetails { get; set; } + + /// The tax paid for this line item. + [Newtonsoft.Json.JsonPropertyAttribute("tax")] + public virtual Money Tax { get; set; } /// - /// Trial period, specified in ISO 8601 format. Acceptable values are anything between P7D (seven days) and - /// P999D (999 days). + /// The total amount paid by the user for this line item, taking into account discounts and tax. /// - [Newtonsoft.Json.JsonPropertyAttribute("trialPeriod")] - public virtual string TrialPeriod { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("total")] + public virtual Money Total { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Store listing of a single in-app product. - public class InAppProductListing : Google.Apis.Requests.IDirectResponseSchema + /// + /// Response message for ListAppRecoveries. -- api-linter: core::0158::response-next-page-token-field=disabled + /// + public class ListAppRecoveriesResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Localized entitlement benefits for a subscription. - [Newtonsoft.Json.JsonPropertyAttribute("benefits")] - public virtual System.Collections.Generic.IList Benefits { get; set; } - - /// Description for the store listing. - [Newtonsoft.Json.JsonPropertyAttribute("description")] - public virtual string Description { get; set; } - - /// Title for the store listing. - [Newtonsoft.Json.JsonPropertyAttribute("title")] - public virtual string Title { get; set; } + /// List of recovery actions associated with the requested package name. + [Newtonsoft.Json.JsonPropertyAttribute("recoveryActions")] + public virtual System.Collections.Generic.IList RecoveryActions { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request to delete multiple in-app products. - public class InappproductsBatchDeleteRequest : Google.Apis.Requests.IDirectResponseSchema + /// Response listing existing device tier configs. + public class ListDeviceTierConfigsResponse : Google.Apis.Requests.IDirectResponseSchema { + /// Device tier configs created by the developer. + [Newtonsoft.Json.JsonPropertyAttribute("deviceTierConfigs")] + public virtual System.Collections.Generic.IList DeviceTierConfigs { get; set; } + /// - /// Individual delete requests. At least one request is required. Can contain up to 100 requests. All requests - /// must correspond to different in-app products. + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. /// - [Newtonsoft.Json.JsonPropertyAttribute("requests")] - public virtual System.Collections.Generic.IList Requests { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for BatchGetSubscriptions endpoint. - public class InappproductsBatchGetResponse : Google.Apis.Requests.IDirectResponseSchema + /// Response message for ListOneTimeProductOffers. + public class ListOneTimeProductOffersResponse : Google.Apis.Requests.IDirectResponseSchema { - /// The list of requested in-app products, in the same order as the request. - [Newtonsoft.Json.JsonPropertyAttribute("inappproduct")] - public virtual System.Collections.Generic.IList Inappproduct { get; set; } + /// + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. + /// + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// The one_time_product offers from the specified request. + [Newtonsoft.Json.JsonPropertyAttribute("oneTimeProductOffers")] + public virtual System.Collections.Generic.IList OneTimeProductOffers { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request to update or insert one or more in-app products. - public class InappproductsBatchUpdateRequest : Google.Apis.Requests.IDirectResponseSchema + /// Response message for ListOneTimeProducts. + public class ListOneTimeProductsResponse : Google.Apis.Requests.IDirectResponseSchema { /// - /// Required. Individual update requests. At least one request is required. Can contain up to 100 requests. All - /// requests must correspond to different in-app products. + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. /// - [Newtonsoft.Json.JsonPropertyAttribute("requests")] - public virtual System.Collections.Generic.IList Requests { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// The one-time products from the specified app. + [Newtonsoft.Json.JsonPropertyAttribute("oneTimeProducts")] + public virtual System.Collections.Generic.IList OneTimeProducts { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response for a batch in-app product update. - public class InappproductsBatchUpdateResponse : Google.Apis.Requests.IDirectResponseSchema + /// Response message for ListSubscriptionOffers. + public class ListSubscriptionOffersResponse : Google.Apis.Requests.IDirectResponseSchema { - /// The updated or inserted in-app products. - [Newtonsoft.Json.JsonPropertyAttribute("inappproducts")] - public virtual System.Collections.Generic.IList Inappproducts { get; set; } + /// + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. + /// + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// The subscription offers from the specified subscription. + [Newtonsoft.Json.JsonPropertyAttribute("subscriptionOffers")] + public virtual System.Collections.Generic.IList SubscriptionOffers { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request to delete an in-app product. - public class InappproductsDeleteRequest : Google.Apis.Requests.IDirectResponseSchema + /// Response message for ListSubscriptions. + public class ListSubscriptionsResponse : Google.Apis.Requests.IDirectResponseSchema { /// - /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. /// - [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] - public virtual string LatencyTolerance { get; set; } - - /// Package name of the app. - [Newtonsoft.Json.JsonPropertyAttribute("packageName")] - public virtual string PackageName { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } - /// Unique identifier for the in-app product. - [Newtonsoft.Json.JsonPropertyAttribute("sku")] - public virtual string Sku { get; set; } + /// The subscriptions from the specified app. + [Newtonsoft.Json.JsonPropertyAttribute("subscriptions")] + public virtual System.Collections.Generic.IList Subscriptions { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response listing all in-app products. - public class InappproductsListResponse : Google.Apis.Requests.IDirectResponseSchema + /// A response containing one or more users with access to an account. + public class ListUsersResponse : Google.Apis.Requests.IDirectResponseSchema { - /// All in-app products. - [Newtonsoft.Json.JsonPropertyAttribute("inappproduct")] - public virtual System.Collections.Generic.IList Inappproduct { get; set; } - - /// The kind of this response ("androidpublisher#inappproductsListResponse"). - [Newtonsoft.Json.JsonPropertyAttribute("kind")] - public virtual string Kind { get; set; } - - /// Deprecated and unset. - [Newtonsoft.Json.JsonPropertyAttribute("pageInfo")] - public virtual PageInfo PageInfo { get; set; } + /// + /// A token to pass to subsequent calls in order to retrieve subsequent results. This will not be set if there + /// are no more results to return. + /// + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } - /// Pagination token, to handle a number of products that is over one page. - [Newtonsoft.Json.JsonPropertyAttribute("tokenPagination")] - public virtual TokenPagination TokenPagination { get; set; } + /// The resulting users. + [Newtonsoft.Json.JsonPropertyAttribute("users")] + public virtual System.Collections.Generic.IList Users { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request to update an in-app product. - public class InappproductsUpdateRequest : Google.Apis.Requests.IDirectResponseSchema + /// A localized store listing. The resource for ListingsService. + public class Listing : Google.Apis.Requests.IDirectResponseSchema { - /// - /// If set to true, and the in-app product with the given package_name and sku doesn't exist, the in-app product - /// will be created. - /// - [Newtonsoft.Json.JsonPropertyAttribute("allowMissing")] - public virtual System.Nullable AllowMissing { get; set; } + /// Full description of the app. + [Newtonsoft.Json.JsonPropertyAttribute("fullDescription")] + public virtual string FullDescription { get; set; } /// - /// If true the prices for all regions targeted by the parent app that don't have a price specified for this - /// in-app product will be auto converted to the target currency based on the default price. Defaults to false. + /// Language localization code (a BCP-47 language tag; for example, "de-AT" for Austrian German). /// - [Newtonsoft.Json.JsonPropertyAttribute("autoConvertMissingPrices")] - public virtual System.Nullable AutoConvertMissingPrices { get; set; } - - /// The new in-app product. - [Newtonsoft.Json.JsonPropertyAttribute("inappproduct")] - public virtual InAppProduct Inappproduct { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("language")] + public virtual string Language { get; set; } - /// - /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. - /// - [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] - public virtual string LatencyTolerance { get; set; } + /// Short description of the app. + [Newtonsoft.Json.JsonPropertyAttribute("shortDescription")] + public virtual string ShortDescription { get; set; } - /// Package name of the app. - [Newtonsoft.Json.JsonPropertyAttribute("packageName")] - public virtual string PackageName { get; set; } + /// Localized title of the app. + [Newtonsoft.Json.JsonPropertyAttribute("title")] + public virtual string Title { get; set; } - /// Unique identifier for the in-app product. - [Newtonsoft.Json.JsonPropertyAttribute("sku")] - public virtual string Sku { get; set; } + /// URL of a promotional YouTube video for the app. + [Newtonsoft.Json.JsonPropertyAttribute("video")] + public virtual string Video { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Information to a installment plan. - public class InstallmentPlan : Google.Apis.Requests.IDirectResponseSchema + /// Response listing all localized listings. + public class ListingsListResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Total number of payments the user is initially committed for. - [Newtonsoft.Json.JsonPropertyAttribute("initialCommittedPaymentsCount")] - public virtual System.Nullable InitialCommittedPaymentsCount { get; set; } + /// The kind of this response ("androidpublisher#listingsListResponse"). + [Newtonsoft.Json.JsonPropertyAttribute("kind")] + public virtual string Kind { get; set; } - /// - /// If present, this installment plan is pending to be canceled. The cancellation will happen only after the - /// user finished all committed payments. - /// - [Newtonsoft.Json.JsonPropertyAttribute("pendingCancellation")] - public virtual PendingCancellation PendingCancellation { get; set; } + /// All localized listings. + [Newtonsoft.Json.JsonPropertyAttribute("listings")] + public virtual System.Collections.Generic.IList Listings { get; set; } - /// Total number of committed payments remaining to be paid for in this renewal cycle. - [Newtonsoft.Json.JsonPropertyAttribute("remainingCommittedPaymentsCount")] - public virtual System.Nullable RemainingCommittedPaymentsCount { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Localized text in given language. + public class LocalizedText : Google.Apis.Requests.IDirectResponseSchema + { /// - /// Total number of payments the user will be committed for after each commitment period. Empty means the - /// installment plan will fall back to a normal auto-renew subscription after initial commitment. + /// Language localization code (a BCP-47 language tag; for example, "de-AT" for Austrian German). /// - [Newtonsoft.Json.JsonPropertyAttribute("subsequentCommittedPaymentsCount")] - public virtual System.Nullable SubsequentCommittedPaymentsCount { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("language")] + public virtual string Language { get; set; } + + /// The text in the given language. + [Newtonsoft.Json.JsonPropertyAttribute("text")] + public virtual string Text { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Represents an installments base plan where a user commits to a specified number of payments. - public class InstallmentsBasePlanType : Google.Apis.Requests.IDirectResponseSchema + /// Details about taxation and legal compliance for managed products. + public class ManagedProductTaxAndComplianceSettings : Google.Apis.Requests.IDirectResponseSchema { /// - /// Optional. Account hold period of the subscription, specified in ISO 8601 format. Acceptable values must be - /// in days and between P0D and P60D. If not specified, the default value is P30D. The sum of - /// gracePeriodDuration and accountHoldDuration must be between P30D and P60D days, inclusive. + /// Digital content or service classification for products distributed to users in the European Economic Area + /// (EEA). The withdrawal regime under EEA consumer laws depends on this classification. Refer to the [Help + /// Center article](https://support.google.com/googleplay/android-developer/answer/10463498) for more + /// information. /// - [Newtonsoft.Json.JsonPropertyAttribute("accountHoldDuration")] - public virtual string AccountHoldDuration { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("eeaWithdrawalRightType")] + public virtual string EeaWithdrawalRightType { get; set; } /// - /// Required. Immutable. Subscription period, specified in ISO 8601 format. For a list of acceptable billing - /// periods, refer to the help center. The duration is immutable after the base plan is created. + /// Whether this in-app product is declared as a product representing a tokenized digital asset. /// - [Newtonsoft.Json.JsonPropertyAttribute("billingPeriodDuration")] - public virtual string BillingPeriodDuration { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("isTokenizedDigitalAsset")] + public virtual System.Nullable IsTokenizedDigitalAsset { get; set; } /// - /// Required. Immutable. The number of payments the user is committed to. It is immutable after the base plan is - /// created. + /// A mapping from region code to tax rate details. The keys are region codes as defined by Unicode's "CLDR". /// - [Newtonsoft.Json.JsonPropertyAttribute("committedPaymentsCount")] - public virtual System.Nullable CommittedPaymentsCount { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("taxRateInfoByRegionCode")] + public virtual System.Collections.Generic.IDictionary TaxRateInfoByRegionCode { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Request message for MigrateBasePlanPrices. + public class MigrateBasePlanPricesRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. The unique base plan ID of the base plan to update prices on. + [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] + public virtual string BasePlanId { get; set; } /// - /// Grace period of the subscription, specified in ISO 8601 format. Acceptable values must be in days and - /// between P0D and the lesser of 30D and base plan billing period. If not specified, a default value will be - /// used based on the billing period. The sum of gracePeriodDuration and accountHoldDuration must be between - /// P30D and P60D days, inclusive. + /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. /// - [Newtonsoft.Json.JsonPropertyAttribute("gracePeriodDuration")] - public virtual string GracePeriodDuration { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } /// - /// The proration mode for the base plan determines what happens when a user switches to this plan from another - /// base plan. If unspecified, defaults to CHARGE_ON_NEXT_BILLING_DATE. + /// Required. Package name of the parent app. Must be equal to the package_name field on the Subscription + /// resource. /// - [Newtonsoft.Json.JsonPropertyAttribute("prorationMode")] - public virtual string ProrationMode { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } /// - /// Required. Immutable. Installments base plan renewal type. Determines the behavior at the end of the initial - /// commitment. The renewal type is immutable after the base plan is created. + /// Required. The ID of the subscription to update. Must be equal to the product_id field on the Subscription + /// resource. /// - [Newtonsoft.Json.JsonPropertyAttribute("renewalType")] - public virtual string RenewalType { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } + + /// Required. The regional prices to update. + [Newtonsoft.Json.JsonPropertyAttribute("regionalPriceMigrations")] + public virtual System.Collections.Generic.IList RegionalPriceMigrations { get; set; } /// - /// Whether users should be able to resubscribe to this base plan in Google Play surfaces. Defaults to - /// RESUBSCRIBE_STATE_ACTIVE if not specified. + /// Required. The version of the available regions being used for the regional_price_migrations. /// - [Newtonsoft.Json.JsonPropertyAttribute("resubscribeState")] - public virtual string ResubscribeState { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("regionsVersion")] + public virtual RegionsVersion RegionsVersion { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// An artifact resource which gets created when uploading an APK or Android App Bundle through internal app - /// sharing. - /// - public class InternalAppSharingArtifact : Google.Apis.Requests.IDirectResponseSchema + /// Response message for MigrateBasePlanPrices. + public class MigrateBasePlanPricesResponse : Google.Apis.Requests.IDirectResponseSchema { - /// The sha256 fingerprint of the certificate used to sign the generated artifact. - [Newtonsoft.Json.JsonPropertyAttribute("certificateFingerprint")] - public virtual string CertificateFingerprint { get; set; } - - /// - /// The download URL generated for the uploaded artifact. Users that are authorized to download can follow the - /// link to the Play Store app to install it. - /// - [Newtonsoft.Json.JsonPropertyAttribute("downloadUrl")] - public virtual string DownloadUrl { get; set; } - - /// - /// The sha256 hash of the artifact represented as a lowercase hexadecimal number, matching the output of the - /// sha256sum command. - /// - [Newtonsoft.Json.JsonPropertyAttribute("sha256")] - public virtual string Sha256 { get; set; } - /// The ETag of the item. public virtual string ETag { get; set; } } - /// Contains the introductory price information for a subscription. - public class IntroductoryPriceInfo : Google.Apis.Requests.IDirectResponseSchema + /// Metadata of a module. + public class ModuleMetadata : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Introductory price of the subscription, not including tax. The currency is the same as price_currency_code. - /// Price is expressed in micro-units, where 1,000,000 micro-units represents one unit of the currency. For - /// example, if the subscription price is €1.99, price_amount_micros is 1990000. - /// - [Newtonsoft.Json.JsonPropertyAttribute("introductoryPriceAmountMicros")] - public virtual System.Nullable IntroductoryPriceAmountMicros { get; set; } + /// Indicates the delivery type (e.g. on-demand) of the module. + [Newtonsoft.Json.JsonPropertyAttribute("deliveryType")] + public virtual string DeliveryType { get; set; } /// - /// ISO 4217 currency code for the introductory subscription price. For example, if the price is specified in - /// British pounds sterling, price_currency_code is "GBP". + /// Names of the modules that this module directly depends on. Each module implicitly depends on the base + /// module. /// - [Newtonsoft.Json.JsonPropertyAttribute("introductoryPriceCurrencyCode")] - public virtual string IntroductoryPriceCurrencyCode { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("dependencies")] + public virtual System.Collections.Generic.IList Dependencies { get; set; } - /// The number of billing period to offer introductory pricing. - [Newtonsoft.Json.JsonPropertyAttribute("introductoryPriceCycles")] - public virtual System.Nullable IntroductoryPriceCycles { get; set; } + /// Indicates the type of this feature module. + [Newtonsoft.Json.JsonPropertyAttribute("moduleType")] + public virtual string ModuleType { get; set; } - /// - /// Introductory price period, specified in ISO 8601 format. Common values are (but not limited to) "P1W" (one - /// week), "P1M" (one month), "P3M" (three months), "P6M" (six months), and "P1Y" (one year). - /// - [Newtonsoft.Json.JsonPropertyAttribute("introductoryPricePeriod")] - public virtual string IntroductoryPricePeriod { get; set; } + /// Module name. + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// The targeting that makes a conditional module installed. Relevant only for Split APKs. + [Newtonsoft.Json.JsonPropertyAttribute("targeting")] + public virtual ModuleTargeting Targeting { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Targeting based on language. - public class LanguageTargeting : Google.Apis.Requests.IDirectResponseSchema + /// Targeting on the module level. + public class ModuleTargeting : Google.Apis.Requests.IDirectResponseSchema { - /// Alternative languages. - [Newtonsoft.Json.JsonPropertyAttribute("alternatives")] - public virtual System.Collections.Generic.IList Alternatives { get; set; } + /// Targeting for device features. + [Newtonsoft.Json.JsonPropertyAttribute("deviceFeatureTargeting")] + public virtual System.Collections.Generic.IList DeviceFeatureTargeting { get; set; } - /// ISO-639: 2 or 3 letter language code. - [Newtonsoft.Json.JsonPropertyAttribute("value")] - public virtual System.Collections.Generic.IList Value { get; set; } + /// The sdk version that the variant targets + [Newtonsoft.Json.JsonPropertyAttribute("sdkVersionTargeting")] + public virtual SdkVersionTargeting SdkVersionTargeting { get; set; } + + /// Countries-level targeting + [Newtonsoft.Json.JsonPropertyAttribute("userCountriesTargeting")] + public virtual UserCountriesTargeting UserCountriesTargeting { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Details of a line item. - public class LineItem : Google.Apis.Requests.IDirectResponseSchema + /// Represents an amount of money with its currency type. + public class Money : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Item's listed price on Play Store, this may or may not include tax. Excludes any discounts or promotions. - /// - [Newtonsoft.Json.JsonPropertyAttribute("listingPrice")] - public virtual Money ListingPrice { get; set; } - - /// Details of a one-time purchase. - [Newtonsoft.Json.JsonPropertyAttribute("oneTimePurchaseDetails")] - public virtual OneTimePurchaseDetails OneTimePurchaseDetails { get; set; } - - /// Details of a paid app purchase. - [Newtonsoft.Json.JsonPropertyAttribute("paidAppDetails")] - public virtual PaidAppDetails PaidAppDetails { get; set; } + /// The three-letter currency code defined in ISO 4217. + [Newtonsoft.Json.JsonPropertyAttribute("currencyCode")] + public virtual string CurrencyCode { get; set; } /// - /// The purchased product ID or in-app SKU (for example, 'monthly001' or 'com.some.thing.inapp1'). + /// Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 + /// inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be + /// positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is + /// represented as `units`=-1 and `nanos`=-750,000,000. /// - [Newtonsoft.Json.JsonPropertyAttribute("productId")] - public virtual string ProductId { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("nanos")] + public virtual System.Nullable Nanos { get; set; } /// - /// Developer-specified name of the product. Displayed in buyer's locale. Example: coins, monthly subscription, - /// etc. + /// The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. /// - [Newtonsoft.Json.JsonPropertyAttribute("productTitle")] - public virtual string ProductTitle { get; set; } - - /// Details of a subscription purchase. - [Newtonsoft.Json.JsonPropertyAttribute("subscriptionDetails")] - public virtual SubscriptionDetails SubscriptionDetails { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("units")] + public virtual System.Nullable Units { get; set; } - /// The tax paid for this line item. - [Newtonsoft.Json.JsonPropertyAttribute("tax")] - public virtual Money Tax { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// - /// The total amount paid by the user for this line item, taking into account discounts and tax. - /// - [Newtonsoft.Json.JsonPropertyAttribute("total")] - public virtual Money Total { get; set; } + /// Represents a list of ABIs. + public class MultiAbi : Google.Apis.Requests.IDirectResponseSchema + { + /// A list of targeted ABIs, as represented by the Android Platform + [Newtonsoft.Json.JsonPropertyAttribute("abi")] + public virtual System.Collections.Generic.IList Abi { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// Response message for ListAppRecoveries. -- api-linter: core::0158::response-next-page-token-field=disabled - /// - public class ListAppRecoveriesResponse : Google.Apis.Requests.IDirectResponseSchema + /// Targeting based on multiple abis. + public class MultiAbiTargeting : Google.Apis.Requests.IDirectResponseSchema { - /// List of recovery actions associated with the requested package name. - [Newtonsoft.Json.JsonPropertyAttribute("recoveryActions")] - public virtual System.Collections.Generic.IList RecoveryActions { get; set; } + /// + /// Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other + /// main splits. + /// + [Newtonsoft.Json.JsonPropertyAttribute("alternatives")] + public virtual System.Collections.Generic.IList Alternatives { get; set; } + + /// Value of a multi abi. + [Newtonsoft.Json.JsonPropertyAttribute("value")] + public virtual System.Collections.Generic.IList Value { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response listing existing device tier configs. - public class ListDeviceTierConfigsResponse : Google.Apis.Requests.IDirectResponseSchema + /// Offer details information related to a purchase line item. + public class OfferDetails : Google.Apis.Requests.IDirectResponseSchema { - /// Device tier configs created by the developer. - [Newtonsoft.Json.JsonPropertyAttribute("deviceTierConfigs")] - public virtual System.Collections.Generic.IList DeviceTierConfigs { get; set; } + /// The base plan ID. Present for all base plan and offers. + [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] + public virtual string BasePlanId { get; set; } + + /// The offer ID. Only present for discounted offers. + [Newtonsoft.Json.JsonPropertyAttribute("offerId")] + public virtual string OfferId { get; set; } /// - /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no - /// subsequent pages. + /// The latest offer tags associated with the offer. It includes tags inherited from the base plan. /// - [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] - public virtual string NextPageToken { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("offerTags")] + public virtual System.Collections.Generic.IList OfferTags { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for ListSubscriptionOffers. - public class ListSubscriptionOffersResponse : Google.Apis.Requests.IDirectResponseSchema + /// Represents a custom tag specified for a product offer. + public class OfferTag : Google.Apis.Requests.IDirectResponseSchema { /// - /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no - /// subsequent pages. + /// Must conform with RFC-1034. That is, this string can only contain lower-case letters (a-z), numbers (0-9), + /// and hyphens (-), and be at most 20 characters. /// - [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] - public virtual string NextPageToken { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("tag")] + public virtual string Tag { get; set; } - /// The subscription offers from the specified subscription. - [Newtonsoft.Json.JsonPropertyAttribute("subscriptionOffers")] - public virtual System.Collections.Generic.IList SubscriptionOffers { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// A single use promotion code. + public class OneTimeCode : Google.Apis.Requests.IDirectResponseSchema + { /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for ListSubscriptions. - public class ListSubscriptionsResponse : Google.Apis.Requests.IDirectResponseSchema + /// Represents a one-time transaction. + public class OneTimeExternalTransaction : Google.Apis.Requests.IDirectResponseSchema { /// - /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no - /// subsequent pages. - /// - [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] - public virtual string NextPageToken { get; set; } - - /// The subscriptions from the specified app. - [Newtonsoft.Json.JsonPropertyAttribute("subscriptions")] - public virtual System.Collections.Generic.IList Subscriptions { get; set; } + /// Input only. Provided during the call to Create. Retrieved from the client when the alternative billing flow + /// is launched. + /// + [Newtonsoft.Json.JsonPropertyAttribute("externalTransactionToken")] + public virtual string ExternalTransactionToken { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// A response containing one or more users with access to an account. - public class ListUsersResponse : Google.Apis.Requests.IDirectResponseSchema + /// A single one-time product for an app. + public class OneTimeProduct : Google.Apis.Requests.IDirectResponseSchema { /// - /// A token to pass to subsequent calls in order to retrieve subsequent results. This will not be set if there - /// are no more results to return. + /// Required. Set of localized title and description data. Must not have duplicate entries with the same + /// language_code. /// - [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] - public virtual string NextPageToken { get; set; } - - /// The resulting users. - [Newtonsoft.Json.JsonPropertyAttribute("users")] - public virtual System.Collections.Generic.IList Users { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("listings")] + public virtual System.Collections.Generic.IList Listings { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// + /// Optional. List of up to 20 custom tags specified for this one-time product, and returned to the app through + /// the billing library. Purchase options and offers for this product will also receive these tags in the + /// billing library. + /// + [Newtonsoft.Json.JsonPropertyAttribute("offerTags")] + public virtual System.Collections.Generic.IList OfferTags { get; set; } - /// A localized store listing. The resource for ListingsService. - public class Listing : Google.Apis.Requests.IDirectResponseSchema - { - /// Full description of the app. - [Newtonsoft.Json.JsonPropertyAttribute("fullDescription")] - public virtual string FullDescription { get; set; } + /// Required. Immutable. Package name of the parent app. + [Newtonsoft.Json.JsonPropertyAttribute("packageName")] + public virtual string PackageName { get; set; } /// - /// Language localization code (a BCP-47 language tag; for example, "de-AT" for Austrian German). + /// Required. Immutable. Unique product ID of the product. Unique within the parent app. Product IDs must start + /// with a number or lowercase letter, and can contain numbers (0-9), lowercase letters (a-z), underscores (_), + /// and periods (.). /// - [Newtonsoft.Json.JsonPropertyAttribute("language")] - public virtual string Language { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("productId")] + public virtual string ProductId { get; set; } - /// Short description of the app. - [Newtonsoft.Json.JsonPropertyAttribute("shortDescription")] - public virtual string ShortDescription { get; set; } + /// Required. The set of purchase options for this one-time product. + [Newtonsoft.Json.JsonPropertyAttribute("purchaseOptions")] + public virtual System.Collections.Generic.IList PurchaseOptions { get; set; } - /// Localized title of the app. - [Newtonsoft.Json.JsonPropertyAttribute("title")] - public virtual string Title { get; set; } + /// + /// Output only. The version of the regions configuration that was used to generate the one-time product. + /// + [Newtonsoft.Json.JsonPropertyAttribute("regionsVersion")] + public virtual RegionsVersion RegionsVersion { get; set; } - /// URL of a promotional YouTube video for the app. - [Newtonsoft.Json.JsonPropertyAttribute("video")] - public virtual string Video { get; set; } + /// + /// Optional. Countries where the purchase of this one-time product is restricted to payment methods registered + /// in the same country. If empty, no payment location restrictions are imposed. + /// + [Newtonsoft.Json.JsonPropertyAttribute("restrictedPaymentCountries")] + public virtual RestrictedPaymentCountries RestrictedPaymentCountries { get; set; } + + /// Details about taxes and legal compliance. + [Newtonsoft.Json.JsonPropertyAttribute("taxAndComplianceSettings")] + public virtual OneTimeProductTaxAndComplianceSettings TaxAndComplianceSettings { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response listing all localized listings. - public class ListingsListResponse : Google.Apis.Requests.IDirectResponseSchema + /// A purchase option that can be bought. + public class OneTimeProductBuyPurchaseOption : Google.Apis.Requests.IDirectResponseSchema { - /// The kind of this response ("androidpublisher#listingsListResponse"). - [Newtonsoft.Json.JsonPropertyAttribute("kind")] - public virtual string Kind { get; set; } + /// + /// Optional. Whether this purchase option will be available in legacy PBL flows that do not support one-time + /// products model. Up to one "buy" purchase option can be marked as backwards compatible. + /// + [Newtonsoft.Json.JsonPropertyAttribute("legacyCompatible")] + public virtual System.Nullable LegacyCompatible { get; set; } - /// All localized listings. - [Newtonsoft.Json.JsonPropertyAttribute("listings")] - public virtual System.Collections.Generic.IList Listings { get; set; } + /// + /// Optional. Whether this purchase option allows multi-quantity. Multi-quantity allows buyer to purchase more + /// than one item in a single checkout. + /// + [Newtonsoft.Json.JsonPropertyAttribute("multiQuantityEnabled")] + public virtual System.Nullable MultiQuantityEnabled { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Localized text in given language. - public class LocalizedText : Google.Apis.Requests.IDirectResponseSchema + /// Configuration specific to discounted offers. + public class OneTimeProductDiscountedOffer : Google.Apis.Requests.IDirectResponseSchema { + private string _endTimeRaw; + + private object _endTime; + + /// Time when the offer will stop being available. + [Newtonsoft.Json.JsonPropertyAttribute("endTime")] + public virtual string EndTimeRaw + { + get => _endTimeRaw; + set + { + _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _endTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] + public virtual object EndTime + { + get => _endTime; + set + { + _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _endTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EndTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); + set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + /// - /// Language localization code (a BCP-47 language tag; for example, "de-AT" for Austrian German). + /// Optional. The number of times this offer can be redeemed. If unset or set to 0, allows for unlimited offer + /// redemptions. Otherwise must be a number between 1 and 50 inclusive. /// - [Newtonsoft.Json.JsonPropertyAttribute("language")] - public virtual string Language { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("redemptionLimit")] + public virtual System.Nullable RedemptionLimit { get; set; } - /// The text in the given language. - [Newtonsoft.Json.JsonPropertyAttribute("text")] - public virtual string Text { get; set; } + private string _startTimeRaw; + + private object _startTime; + + /// Time when the offer will start being available. + [Newtonsoft.Json.JsonPropertyAttribute("startTime")] + public virtual string StartTimeRaw + { + get => _startTimeRaw; + set + { + _startTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _startTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use StartTimeDateTimeOffset instead.")] + public virtual object StartTime + { + get => _startTime; + set + { + _startTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _startTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? StartTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(StartTimeRaw); + set => StartTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Details about taxation and legal compliance for managed products. - public class ManagedProductTaxAndComplianceSettings : Google.Apis.Requests.IDirectResponseSchema + /// Regional store listing for a one-time product. + public class OneTimeProductListing : Google.Apis.Requests.IDirectResponseSchema { /// - /// Digital content or service classification for products distributed to users in the European Economic Area - /// (EEA). The withdrawal regime under EEA consumer laws depends on this classification. Refer to the [Help - /// Center article](https://support.google.com/googleplay/android-developer/answer/10463498) for more - /// information. + /// Required. The description of this product in the language of this listing. The maximum length is 200 + /// characters. /// - [Newtonsoft.Json.JsonPropertyAttribute("eeaWithdrawalRightType")] - public virtual string EeaWithdrawalRightType { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("description")] + public virtual string Description { get; set; } - /// - /// Whether this in-app product is declared as a product representing a tokenized digital asset. - /// - [Newtonsoft.Json.JsonPropertyAttribute("isTokenizedDigitalAsset")] - public virtual System.Nullable IsTokenizedDigitalAsset { get; set; } + /// Required. The language of this listing, as defined by BCP-47, e.g., "en-US". + [Newtonsoft.Json.JsonPropertyAttribute("languageCode")] + public virtual string LanguageCode { get; set; } /// - /// A mapping from region code to tax rate details. The keys are region codes as defined by Unicode's "CLDR". + /// Required. The title of this product in the language of this listing. The maximum length is 55 characters. /// - [Newtonsoft.Json.JsonPropertyAttribute("taxRateInfoByRegionCode")] - public virtual System.Collections.Generic.IDictionary TaxRateInfoByRegionCode { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("title")] + public virtual string Title { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request message for MigrateBasePlanPrices. - public class MigrateBasePlanPricesRequest : Google.Apis.Requests.IDirectResponseSchema + /// A single offer for a one-time product. + public class OneTimeProductOffer : Google.Apis.Requests.IDirectResponseSchema { - /// Required. The unique base plan ID of the base plan to update prices on. - [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] - public virtual string BasePlanId { get; set; } + /// A discounted offer. + [Newtonsoft.Json.JsonPropertyAttribute("discountedOffer")] + public virtual OneTimeProductDiscountedOffer DiscountedOffer { get; set; } /// - /// Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. + /// Required. Immutable. The ID of this product offer. Must be unique within the purchase option. It must start + /// with a number or lower-case letter, and can only contain lower-case letters (a-z), numbers (0-9), and + /// hyphens (-). The maximum length is 63 characters. /// - [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] - public virtual string LatencyTolerance { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("offerId")] + public virtual string OfferId { get; set; } /// - /// Required. Package name of the parent app. Must be equal to the package_name field on the Subscription - /// resource. + /// Optional. List of up to 20 custom tags specified for this offer, and returned to the app through the billing + /// library. /// + [Newtonsoft.Json.JsonPropertyAttribute("offerTags")] + public virtual System.Collections.Generic.IList OfferTags { get; set; } + + /// Required. Immutable. The package name of the app the parent product belongs to. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } - /// - /// Required. The ID of the subscription to update. Must be equal to the product_id field on the Subscription - /// resource. - /// + /// A pre-order offer. + [Newtonsoft.Json.JsonPropertyAttribute("preOrderOffer")] + public virtual OneTimeProductPreOrderOffer PreOrderOffer { get; set; } + + /// Required. Immutable. The ID of the parent product this offer belongs to. [Newtonsoft.Json.JsonPropertyAttribute("productId")] public virtual string ProductId { get; set; } - /// Required. The regional prices to update. - [Newtonsoft.Json.JsonPropertyAttribute("regionalPriceMigrations")] - public virtual System.Collections.Generic.IList RegionalPriceMigrations { get; set; } + /// Required. Immutable. The ID of the purchase option to which this offer is an extension. + [Newtonsoft.Json.JsonPropertyAttribute("purchaseOptionId")] + public virtual string PurchaseOptionId { get; set; } /// - /// Required. The version of the available regions being used for the regional_price_migrations. + /// Set of regional pricing and availability information for this offer. Must not have duplicate entries with + /// the same region_code. + /// + [Newtonsoft.Json.JsonPropertyAttribute("regionalPricingAndAvailabilityConfigs")] + public virtual System.Collections.Generic.IList RegionalPricingAndAvailabilityConfigs { get; set; } + + /// + /// Output only. The version of the regions configuration that was used to generate the one-time product offer. /// [Newtonsoft.Json.JsonPropertyAttribute("regionsVersion")] public virtual RegionsVersion RegionsVersion { get; set; } + /// + /// Output only. The current state of this offer. This field cannot be changed by updating the resource. Use the + /// dedicated endpoints instead. + /// + [Newtonsoft.Json.JsonPropertyAttribute("state")] + public virtual string State { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response message for MigrateBasePlanPrices. - public class MigrateBasePlanPricesResponse : Google.Apis.Requests.IDirectResponseSchema + /// Options for one-time product offers without a regional price override. + public class OneTimeProductOfferNoPriceOverrideOptions : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } - /// Metadata of a module. - public class ModuleMetadata : Google.Apis.Requests.IDirectResponseSchema + /// Regional pricing and availability configuration for a one-time product offer. + public class OneTimeProductOfferRegionalPricingAndAvailabilityConfig : Google.Apis.Requests.IDirectResponseSchema { - /// Indicates the delivery type (e.g. on-demand) of the module. - [Newtonsoft.Json.JsonPropertyAttribute("deliveryType")] - public virtual string DeliveryType { get; set; } + /// + /// The absolute value of the discount that is subtracted from the purchase option price. It should be between 0 + /// and the purchase option price. + /// + [Newtonsoft.Json.JsonPropertyAttribute("absoluteDiscount")] + public virtual Money AbsoluteDiscount { get; set; } + + /// Required. The availability for this region. + [Newtonsoft.Json.JsonPropertyAttribute("availability")] + public virtual string Availability { get; set; } + + /// The price defined in the purchase option for this region will be used. + [Newtonsoft.Json.JsonPropertyAttribute("noOverride")] + public virtual OneTimeProductOfferNoPriceOverrideOptions NoOverride { get; set; } /// - /// Names of the modules that this module directly depends on. Each module implicitly depends on the base - /// module. + /// Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g., "US". /// - [Newtonsoft.Json.JsonPropertyAttribute("dependencies")] - public virtual System.Collections.Generic.IList Dependencies { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("regionCode")] + public virtual string RegionCode { get; set; } - /// Indicates the type of this feature module. - [Newtonsoft.Json.JsonPropertyAttribute("moduleType")] - public virtual string ModuleType { get; set; } + /// + /// The fraction of the purchase option price that the user pays for this offer. For example, if the purchase + /// option price for this region is $12, then a 50% discount would correspond to a price of $6. The discount + /// must be specified as a fraction strictly larger than 0 and strictly smaller than 1. The resulting price will + /// be rounded to the nearest billable unit (e.g. cents for USD). The relative discount is considered invalid if + /// the discounted price ends up being smaller than the minimum price allowed in this region. + /// + [Newtonsoft.Json.JsonPropertyAttribute("relativeDiscount")] + public virtual System.Nullable RelativeDiscount { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Configuration specific to pre-order offers. + public class OneTimeProductPreOrderOffer : Google.Apis.Requests.IDirectResponseSchema + { + private string _endTimeRaw; + + private object _endTime; + + /// Required. Time when the pre-order will stop being available. + [Newtonsoft.Json.JsonPropertyAttribute("endTime")] + public virtual string EndTimeRaw + { + get => _endTimeRaw; + set + { + _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _endTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] + public virtual object EndTime + { + get => _endTime; + set + { + _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _endTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EndTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); + set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// Required. Immutable. Specifies how price changes affect pre-existing pre-orders. + [Newtonsoft.Json.JsonPropertyAttribute("priceChangeBehavior")] + public virtual string PriceChangeBehavior { get; set; } + + private string _releaseTimeRaw; + + private object _releaseTime; + + /// + /// Required. Time on which the product associated with the pre-order will be released and the pre-order orders + /// fulfilled. + /// + [Newtonsoft.Json.JsonPropertyAttribute("releaseTime")] + public virtual string ReleaseTimeRaw + { + get => _releaseTimeRaw; + set + { + _releaseTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _releaseTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use ReleaseTimeDateTimeOffset instead.")] + public virtual object ReleaseTime + { + get => _releaseTime; + set + { + _releaseTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _releaseTime = value; + } + } - /// Module name. - [Newtonsoft.Json.JsonPropertyAttribute("name")] - public virtual string Name { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? ReleaseTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(ReleaseTimeRaw); + set => ReleaseTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } - /// The targeting that makes a conditional module installed. Relevant only for Split APKs. - [Newtonsoft.Json.JsonPropertyAttribute("targeting")] - public virtual ModuleTargeting Targeting { get; set; } + private string _startTimeRaw; - /// The ETag of the item. - public virtual string ETag { get; set; } - } + private object _startTime; - /// Targeting on the module level. - public class ModuleTargeting : Google.Apis.Requests.IDirectResponseSchema - { - /// Targeting for device features. - [Newtonsoft.Json.JsonPropertyAttribute("deviceFeatureTargeting")] - public virtual System.Collections.Generic.IList DeviceFeatureTargeting { get; set; } + /// Required. Time when the pre-order will start being available. + [Newtonsoft.Json.JsonPropertyAttribute("startTime")] + public virtual string StartTimeRaw + { + get => _startTimeRaw; + set + { + _startTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _startTimeRaw = value; + } + } - /// The sdk version that the variant targets - [Newtonsoft.Json.JsonPropertyAttribute("sdkVersionTargeting")] - public virtual SdkVersionTargeting SdkVersionTargeting { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use StartTimeDateTimeOffset instead.")] + public virtual object StartTime + { + get => _startTime; + set + { + _startTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _startTime = value; + } + } - /// Countries-level targeting - [Newtonsoft.Json.JsonPropertyAttribute("userCountriesTargeting")] - public virtual UserCountriesTargeting UserCountriesTargeting { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? StartTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(StartTimeRaw); + set => StartTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Represents an amount of money with its currency type. - public class Money : Google.Apis.Requests.IDirectResponseSchema + /// A single purchase option for a one-time product. + public class OneTimeProductPurchaseOption : Google.Apis.Requests.IDirectResponseSchema { - /// The three-letter currency code defined in ISO 4217. - [Newtonsoft.Json.JsonPropertyAttribute("currencyCode")] - public virtual string CurrencyCode { get; set; } + /// A purchase option that can be bought. + [Newtonsoft.Json.JsonPropertyAttribute("buyOption")] + public virtual OneTimeProductBuyPurchaseOption BuyOption { get; set; } /// - /// Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 - /// inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be - /// positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is - /// represented as `units`=-1 and `nanos`=-750,000,000. + /// Pricing information for any new locations Play may launch in the future. If omitted, the purchase option + /// will not be automatically available in any new locations Play may launch in the future. /// - [Newtonsoft.Json.JsonPropertyAttribute("nanos")] - public virtual System.Nullable Nanos { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("newRegionsConfig")] + public virtual OneTimeProductPurchaseOptionNewRegionsConfig NewRegionsConfig { get; set; } /// - /// The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. + /// Optional. List of up to 20 custom tags specified for this purchase option, and returned to the app through + /// the billing library. Offers for this purchase option will also receive these tags in the billing library. /// - [Newtonsoft.Json.JsonPropertyAttribute("units")] - public virtual System.Nullable Units { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("offerTags")] + public virtual System.Collections.Generic.IList OfferTags { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// + /// Required. Immutable. The unique identifier of this purchase option. Must be unique within the one-time + /// product. It must start with a number or lower-case letter, and can only contain lower-case letters (a-z), + /// numbers (0-9), and hyphens (-). The maximum length is 63 characters. + /// + [Newtonsoft.Json.JsonPropertyAttribute("purchaseOptionId")] + public virtual string PurchaseOptionId { get; set; } - /// Represents a list of ABIs. - public class MultiAbi : Google.Apis.Requests.IDirectResponseSchema - { - /// A list of targeted ABIs, as represented by the Android Platform - [Newtonsoft.Json.JsonPropertyAttribute("abi")] - public virtual System.Collections.Generic.IList Abi { get; set; } + /// Regional pricing and availability information for this purchase option. + [Newtonsoft.Json.JsonPropertyAttribute("regionalPricingAndAvailabilityConfigs")] + public virtual System.Collections.Generic.IList RegionalPricingAndAvailabilityConfigs { get; set; } + + /// A purchase option that can be rented. + [Newtonsoft.Json.JsonPropertyAttribute("rentOption")] + public virtual OneTimeProductRentPurchaseOption RentOption { get; set; } + + /// + /// Output only. The state of the purchase option, i.e., whether it's active. This field cannot be changed by + /// updating the resource. Use the dedicated endpoints instead. + /// + [Newtonsoft.Json.JsonPropertyAttribute("state")] + public virtual string State { get; set; } + + /// Optional. Details about taxes and legal compliance. + [Newtonsoft.Json.JsonPropertyAttribute("taxAndComplianceSettings")] + public virtual PurchaseOptionTaxAndComplianceSettings TaxAndComplianceSettings { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Targeting based on multiple abis. - public class MultiAbiTargeting : Google.Apis.Requests.IDirectResponseSchema + /// Pricing information for any new regions Play may launch in the future. + public class OneTimeProductPurchaseOptionNewRegionsConfig : Google.Apis.Requests.IDirectResponseSchema { /// - /// Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other - /// main splits. + /// Required. The regional availability for the new regions config. When set to AVAILABLE, the pricing + /// information will be used for any new regions Play may launch in the future. /// - [Newtonsoft.Json.JsonPropertyAttribute("alternatives")] - public virtual System.Collections.Generic.IList Alternatives { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("availability")] + public virtual string Availability { get; set; } - /// Value of a multi abi. - [Newtonsoft.Json.JsonPropertyAttribute("value")] - public virtual System.Collections.Generic.IList Value { get; set; } + /// Required. Price in EUR to use for any new regions Play may launch in. + [Newtonsoft.Json.JsonPropertyAttribute("eurPrice")] + public virtual Money EurPrice { get; set; } + + /// Required. Price in USD to use for any new regions Play may launch in. + [Newtonsoft.Json.JsonPropertyAttribute("usdPrice")] + public virtual Money UsdPrice { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Offer details information related to a purchase line item. - public class OfferDetails : Google.Apis.Requests.IDirectResponseSchema + /// Regional pricing and availability configuration for a purchase option. + public class OneTimeProductPurchaseOptionRegionalPricingAndAvailabilityConfig : Google.Apis.Requests.IDirectResponseSchema { - /// The base plan ID. Present for all base plan and offers. - [Newtonsoft.Json.JsonPropertyAttribute("basePlanId")] - public virtual string BasePlanId { get; set; } + /// The availability of the purchase option. + [Newtonsoft.Json.JsonPropertyAttribute("availability")] + public virtual string Availability { get; set; } - /// The offer ID. Only present for discounted offers. - [Newtonsoft.Json.JsonPropertyAttribute("offerId")] - public virtual string OfferId { get; set; } + /// + /// The price of the purchase option in the specified region. Must be set in the currency that is linked to the + /// specified region. + /// + [Newtonsoft.Json.JsonPropertyAttribute("price")] + public virtual Money Price { get; set; } /// - /// The latest offer tags associated with the offer. It includes tags inherited from the base plan. + /// Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g., "US". /// - [Newtonsoft.Json.JsonPropertyAttribute("offerTags")] - public virtual System.Collections.Generic.IList OfferTags { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("regionCode")] + public virtual string RegionCode { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Represents a custom tag specified for a product offer. - public class OfferTag : Google.Apis.Requests.IDirectResponseSchema + /// A purchase option that can be rented. + public class OneTimeProductRentPurchaseOption : Google.Apis.Requests.IDirectResponseSchema { /// - /// Must conform with RFC-1034. That is, this string can only contain lower-case letters (a-z), numbers (0-9), - /// and hyphens (-), and be at most 20 characters. + /// Optional. The amount of time the user has after starting consuming the entitlement before it is revoked. + /// Specified in ISO 8601 format. /// - [Newtonsoft.Json.JsonPropertyAttribute("tag")] - public virtual string Tag { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("expirationPeriod")] + public virtual string ExpirationPeriod { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// + /// Required. The amount of time a user has the entitlement for. Starts at purchase flow completion. Specified + /// in ISO 8601 format. + /// + [Newtonsoft.Json.JsonPropertyAttribute("rentalPeriod")] + public virtual string RentalPeriod { get; set; } - /// A single use promotion code. - public class OneTimeCode : Google.Apis.Requests.IDirectResponseSchema - { /// The ETag of the item. public virtual string ETag { get; set; } } - /// Represents a one-time transaction. - public class OneTimeExternalTransaction : Google.Apis.Requests.IDirectResponseSchema + /// Details about taxation, Google Play policy and legal compliance for one-time products. + public class OneTimeProductTaxAndComplianceSettings : Google.Apis.Requests.IDirectResponseSchema { /// - /// Input only. Provided during the call to Create. Retrieved from the client when the alternative billing flow - /// is launched. + /// Whether this one-time product is declared as a product representing a tokenized digital asset. /// - [Newtonsoft.Json.JsonPropertyAttribute("externalTransactionToken")] - public virtual string ExternalTransactionToken { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("isTokenizedDigitalAsset")] + public virtual System.Nullable IsTokenizedDigitalAsset { get; set; } + + /// Regional tax configuration. + [Newtonsoft.Json.JsonPropertyAttribute("regionalTaxConfigs")] + public virtual System.Collections.Generic.IList RegionalTaxConfigs { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } @@ -15915,6 +18559,23 @@ public class ProductPurchasesAcknowledgeRequest : Google.Apis.Requests.IDirectRe public virtual string ETag { get; set; } } + /// + /// Details about taxation, Google Play policy and legal compliance for one-time product purchase options. + /// + public class PurchaseOptionTaxAndComplianceSettings : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. Digital content or service classification for products distributed to users in eligible regions. + /// If unset, it defaults to `WITHDRAWAL_RIGHT_DIGITAL_CONTENT`. Refer to the [Help Center + /// article](https://support.google.com/googleplay/android-developer/answer/10463498) for more information. + /// + [Newtonsoft.Json.JsonPropertyAttribute("withdrawalRightType")] + public virtual string WithdrawalRightType { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Context about the purchase state. public class PurchaseStateContext : Google.Apis.Requests.IDirectResponseSchema { @@ -16245,6 +18906,39 @@ public class RegionalSubscriptionOfferPhaseFreePriceOverride : Google.Apis.Reque public virtual string ETag { get; set; } } + /// Details about taxation in a given geographical region. + public class RegionalTaxConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// You must tell us if your app contains streaming products to correctly charge US state and local sales tax. + /// Field only supported in the United States. + /// + [Newtonsoft.Json.JsonPropertyAttribute("eligibleForStreamingServiceTaxRate")] + public virtual System.Nullable EligibleForStreamingServiceTaxRate { get; set; } + + /// Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g. "US". + [Newtonsoft.Json.JsonPropertyAttribute("regionCode")] + public virtual string RegionCode { get; set; } + + /// + /// To collect communications or amusement taxes in the United States, choose the appropriate tax category. + /// [Learn more](https://support.google.com/googleplay/android-developer/answer/10463498#streaming_tax). + /// + [Newtonsoft.Json.JsonPropertyAttribute("streamingTaxType")] + public virtual string StreamingTaxType { get; set; } + + /// + /// Tax tier to specify reduced tax rate. Developers who sell digital news, magazines, newspapers, books, or + /// audiobooks in various regions may be eligible for reduced tax rates. [Learn + /// more](https://support.google.com/googleplay/android-developer/answer/10463498). + /// + [Newtonsoft.Json.JsonPropertyAttribute("taxTier")] + public virtual string TaxTier { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Specified details about taxation in a given geographical region. public class RegionalTaxRateInfo : Google.Apis.Requests.IDirectResponseSchema { @@ -18060,6 +20754,114 @@ public class UpdateBasePlanStateRequest : Google.Apis.Requests.IDirectResponseSc public virtual string ETag { get; set; } } + /// Request message for UpdateOneTimeProductOffer. + public class UpdateOneTimeProductOfferRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. If set to true, and the offer with the given package_name, product_id, purchase_option_id and + /// offer_id doesn't exist, an offer will be created. If a new offer is created, the update_mask is ignored. + /// + [Newtonsoft.Json.JsonPropertyAttribute("allowMissing")] + public virtual System.Nullable AllowMissing { get; set; } + + /// + /// Optional. The latency tolerance for the propagation of this offer update. Defaults to latency-sensitive. + /// + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } + + /// Required. The one-time product offer to update. + [Newtonsoft.Json.JsonPropertyAttribute("oneTimeProductOffer")] + public virtual OneTimeProductOffer OneTimeProductOffer { get; set; } + + /// Required. The version of the available regions being used for the offer. + [Newtonsoft.Json.JsonPropertyAttribute("regionsVersion")] + public virtual RegionsVersion RegionsVersion { get; set; } + + /// Required. The list of fields to be updated. + [Newtonsoft.Json.JsonPropertyAttribute("updateMask")] + public virtual object UpdateMask { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Request message to update the state of a one-time product offer. + public class UpdateOneTimeProductOfferStateRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Activates an offer. Once activated, the offer is available to users, as long as its conditions are met. + /// + [Newtonsoft.Json.JsonPropertyAttribute("activateOneTimeProductOfferRequest")] + public virtual ActivateOneTimeProductOfferRequest ActivateOneTimeProductOfferRequest { get; set; } + + /// + /// Cancels an offer. Once cancelled, the offer is not available to users. Any pending orders related to this + /// offer will be cancelled. This state transition is specific to pre-orders. + /// + [Newtonsoft.Json.JsonPropertyAttribute("cancelOneTimeProductOfferRequest")] + public virtual CancelOneTimeProductOfferRequest CancelOneTimeProductOfferRequest { get; set; } + + /// + /// Deactivates an offer. Once deactivated, the offer is no longer available to users. This state transition is + /// specific to discounted offers. + /// + [Newtonsoft.Json.JsonPropertyAttribute("deactivateOneTimeProductOfferRequest")] + public virtual DeactivateOneTimeProductOfferRequest DeactivateOneTimeProductOfferRequest { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Request message for UpdateOneTimeProduct. + public class UpdateOneTimeProductRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. If set to true, and the one-time product with the given package_name and product_id doesn't exist, + /// the one-time product will be created. If a new one-time product is created, update_mask is ignored. + /// + [Newtonsoft.Json.JsonPropertyAttribute("allowMissing")] + public virtual System.Nullable AllowMissing { get; set; } + + /// + /// Optional. The latency tolerance for the propagation of this product upsert. Defaults to latency-sensitive. + /// + [Newtonsoft.Json.JsonPropertyAttribute("latencyTolerance")] + public virtual string LatencyTolerance { get; set; } + + /// Required. The one-time product to upsert. + [Newtonsoft.Json.JsonPropertyAttribute("oneTimeProduct")] + public virtual OneTimeProduct OneTimeProduct { get; set; } + + /// Required. The version of the available regions being used for the one-time product. + [Newtonsoft.Json.JsonPropertyAttribute("regionsVersion")] + public virtual RegionsVersion RegionsVersion { get; set; } + + /// Required. The list of fields to be updated. + [Newtonsoft.Json.JsonPropertyAttribute("updateMask")] + public virtual object UpdateMask { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Request message to update the state of a one-time product purchase option. + public class UpdatePurchaseOptionStateRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Activates a purchase option. Once activated, the purchase option will be available. + [Newtonsoft.Json.JsonPropertyAttribute("activatePurchaseOptionRequest")] + public virtual ActivatePurchaseOptionRequest ActivatePurchaseOptionRequest { get; set; } + + /// + /// Deactivates a purchase option. Once deactivated, the purchase option will become unavailable. + /// + [Newtonsoft.Json.JsonPropertyAttribute("deactivatePurchaseOptionRequest")] + public virtual DeactivatePurchaseOptionRequest DeactivatePurchaseOptionRequest { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request message for UpdateSubscriptionOffer. public class UpdateSubscriptionOfferRequest : Google.Apis.Requests.IDirectResponseSchema { diff --git a/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.csproj b/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.csproj index a01a8b2088..54dd71b243 100644 --- a/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.csproj +++ b/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.csproj @@ -3,7 +3,7 @@ Google.Apis.AndroidPublisher.v3 Client Library - 1.70.0.3843 + 1.70.0.3852 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.CloudRetail.v2/Google.Apis.CloudRetail.v2.cs b/Src/Generated/Google.Apis.CloudRetail.v2/Google.Apis.CloudRetail.v2.cs index 1fe78a6d4d..92e422e9ca 100644 --- a/Src/Generated/Google.Apis.CloudRetail.v2/Google.Apis.CloudRetail.v2.cs +++ b/Src/Generated/Google.Apis.CloudRetail.v2/Google.Apis.CloudRetail.v2.cs @@ -8263,6 +8263,43 @@ public class GoogleCloudRetailV2OutputResult : Google.Apis.Requests.IDirectRespo public virtual string ETag { get; set; } } + /// Detailed panel information associated with a user event. + public class GoogleCloudRetailV2PanelInfo : Google.Apis.Requests.IDirectResponseSchema + { + /// Optional. The attribution token of the panel. + [Newtonsoft.Json.JsonPropertyAttribute("attributionToken")] + public virtual string AttributionToken { get; set; } + + /// Optional. The display name of the panel. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// Required. The panel ID. + [Newtonsoft.Json.JsonPropertyAttribute("panelId")] + public virtual string PanelId { get; set; } + + /// + /// Optional. The ordered position of the panel, if shown to the user with other panels. If set, then + /// total_panels must also be set. + /// + [Newtonsoft.Json.JsonPropertyAttribute("panelPosition")] + public virtual System.Nullable PanelPosition { get; set; } + + /// Optional. The product details associated with the panel. + [Newtonsoft.Json.JsonPropertyAttribute("productDetails")] + public virtual System.Collections.Generic.IList ProductDetails { get; set; } + + /// + /// Optional. The total number of panels, including this one, shown to the user. Must be set if panel_position + /// is set. + /// + [Newtonsoft.Json.JsonPropertyAttribute("totalPanels")] + public virtual System.Nullable TotalPanels { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request for pausing training of a model. public class GoogleCloudRetailV2PauseModelRequest : Google.Apis.Requests.IDirectResponseSchema { @@ -11483,6 +11520,12 @@ public virtual System.DateTimeOffset? EventTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("pageViewId")] public virtual string PageViewId { get; set; } + /// + /// Optional. List of panels associated with this event. Used for panel-level impression data. + /// + [Newtonsoft.Json.JsonPropertyAttribute("panels")] + public virtual System.Collections.Generic.IList Panels { get; set; } + /// /// The main product details related to the event. This field is optional except for the following event types: /// * `add-to-cart` * `detail-page-view` * `purchase-complete` In a `search` event, this field represents the diff --git a/Src/Generated/Google.Apis.CloudRetail.v2/Google.Apis.CloudRetail.v2.csproj b/Src/Generated/Google.Apis.CloudRetail.v2/Google.Apis.CloudRetail.v2.csproj index e319869827..3f87e2018e 100644 --- a/Src/Generated/Google.Apis.CloudRetail.v2/Google.Apis.CloudRetail.v2.csproj +++ b/Src/Generated/Google.Apis.CloudRetail.v2/Google.Apis.CloudRetail.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudRetail.v2 Client Library - 1.70.0.3836 + 1.70.0.3850 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.CloudRetail.v2alpha/Google.Apis.CloudRetail.v2alpha.cs b/Src/Generated/Google.Apis.CloudRetail.v2alpha/Google.Apis.CloudRetail.v2alpha.cs index f0285b9cbd..e05b1022cb 100644 --- a/Src/Generated/Google.Apis.CloudRetail.v2alpha/Google.Apis.CloudRetail.v2alpha.cs +++ b/Src/Generated/Google.Apis.CloudRetail.v2alpha/Google.Apis.CloudRetail.v2alpha.cs @@ -9482,6 +9482,10 @@ public class GoogleCloudRetailV2alphaConversationalSearchRequest : Google.Apis.R [Newtonsoft.Json.JsonPropertyAttribute("query")] public virtual string Query { get; set; } + /// Optional. The safety settings to be applied to the generated content. + [Newtonsoft.Json.JsonPropertyAttribute("safetySettings")] + public virtual System.Collections.Generic.IList SafetySettings { get; set; } + /// Optional. Search parameters. [Newtonsoft.Json.JsonPropertyAttribute("searchParams")] public virtual GoogleCloudRetailV2alphaConversationalSearchRequestSearchParams SearchParams { get; set; } @@ -11191,6 +11195,10 @@ public class GoogleCloudRetailV2alphaMerchantCenterFeedFilter : Google.Apis.Requ [Newtonsoft.Json.JsonPropertyAttribute("dataSourceId")] public virtual System.Nullable DataSourceId { get; set; } + /// Merchant Center primary feed ID. Deprecated: use data_source_id instead. + [Newtonsoft.Json.JsonPropertyAttribute("primaryFeedId")] + public virtual System.Nullable PrimaryFeedId { get; set; } + /// Merchant Center primary feed name. The name is used for the display purposes only. [Newtonsoft.Json.JsonPropertyAttribute("primaryFeedName")] public virtual string PrimaryFeedName { get; set; } @@ -11672,6 +11680,43 @@ public class GoogleCloudRetailV2alphaOutputResult : Google.Apis.Requests.IDirect public virtual string ETag { get; set; } } + /// Detailed panel information associated with a user event. + public class GoogleCloudRetailV2alphaPanelInfo : Google.Apis.Requests.IDirectResponseSchema + { + /// Optional. The attribution token of the panel. + [Newtonsoft.Json.JsonPropertyAttribute("attributionToken")] + public virtual string AttributionToken { get; set; } + + /// Optional. The display name of the panel. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// Required. The panel ID. + [Newtonsoft.Json.JsonPropertyAttribute("panelId")] + public virtual string PanelId { get; set; } + + /// + /// Optional. The ordered position of the panel, if shown to the user with other panels. If set, then + /// total_panels must also be set. + /// + [Newtonsoft.Json.JsonPropertyAttribute("panelPosition")] + public virtual System.Nullable PanelPosition { get; set; } + + /// Optional. The product details associated with the panel. + [Newtonsoft.Json.JsonPropertyAttribute("productDetails")] + public virtual System.Collections.Generic.IList ProductDetails { get; set; } + + /// + /// Optional. The total number of panels, including this one, shown to the user. Must be set if panel_position + /// is set. + /// + [Newtonsoft.Json.JsonPropertyAttribute("totalPanels")] + public virtual System.Nullable TotalPanels { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request for pausing training of a model. public class GoogleCloudRetailV2alphaPauseModelRequest : Google.Apis.Requests.IDirectResponseSchema { @@ -13449,6 +13494,28 @@ public class GoogleCloudRetailV2alphaRuleTwowaySynonymsAction : Google.Apis.Requ public virtual string ETag { get; set; } } + /// Safety settings. + public class GoogleCloudRetailV2alphaSafetySetting : Google.Apis.Requests.IDirectResponseSchema + { + /// Harm category. + [Newtonsoft.Json.JsonPropertyAttribute("category")] + public virtual string Category { get; set; } + + /// + /// Optional. Specify if the threshold is used for probability or severity score. If not specified, the + /// threshold is used for probability score. + /// + [Newtonsoft.Json.JsonPropertyAttribute("method")] + public virtual string Method { get; set; } + + /// The harm block threshold. + [Newtonsoft.Json.JsonPropertyAttribute("threshold")] + public virtual string Threshold { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request message for SearchService.Search method. public class GoogleCloudRetailV2alphaSearchRequest : Google.Apis.Requests.IDirectResponseSchema { @@ -14940,6 +15007,12 @@ public virtual System.DateTimeOffset? EventTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("pageViewId")] public virtual string PageViewId { get; set; } + /// + /// Optional. List of panels associated with this event. Used for panel-level impression data. + /// + [Newtonsoft.Json.JsonPropertyAttribute("panels")] + public virtual System.Collections.Generic.IList Panels { get; set; } + /// /// The main product details related to the event. This field is optional except for the following event types: /// * `add-to-cart` * `detail-page-view` * `purchase-complete` In a `search` event, this field represents the diff --git a/Src/Generated/Google.Apis.CloudRetail.v2alpha/Google.Apis.CloudRetail.v2alpha.csproj b/Src/Generated/Google.Apis.CloudRetail.v2alpha/Google.Apis.CloudRetail.v2alpha.csproj index a9ff9fe809..0815262ba9 100644 --- a/Src/Generated/Google.Apis.CloudRetail.v2alpha/Google.Apis.CloudRetail.v2alpha.csproj +++ b/Src/Generated/Google.Apis.CloudRetail.v2alpha/Google.Apis.CloudRetail.v2alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudRetail.v2alpha Client Library - 1.70.0.3843 + 1.70.0.3850 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.CloudRetail.v2beta/Google.Apis.CloudRetail.v2beta.cs b/Src/Generated/Google.Apis.CloudRetail.v2beta/Google.Apis.CloudRetail.v2beta.cs index abf7a95a2a..b8beaf2556 100644 --- a/Src/Generated/Google.Apis.CloudRetail.v2beta/Google.Apis.CloudRetail.v2beta.cs +++ b/Src/Generated/Google.Apis.CloudRetail.v2beta/Google.Apis.CloudRetail.v2beta.cs @@ -10616,6 +10616,10 @@ public class GoogleCloudRetailV2betaMerchantCenterFeedFilter : Google.Apis.Reque [Newtonsoft.Json.JsonPropertyAttribute("dataSourceId")] public virtual System.Nullable DataSourceId { get; set; } + /// Merchant Center primary feed ID. Deprecated: use data_source_id instead. + [Newtonsoft.Json.JsonPropertyAttribute("primaryFeedId")] + public virtual System.Nullable PrimaryFeedId { get; set; } + /// Merchant Center primary feed name. The name is used for the display purposes only. [Newtonsoft.Json.JsonPropertyAttribute("primaryFeedName")] public virtual string PrimaryFeedName { get; set; } @@ -11024,6 +11028,43 @@ public class GoogleCloudRetailV2betaOutputResult : Google.Apis.Requests.IDirectR public virtual string ETag { get; set; } } + /// Detailed panel information associated with a user event. + public class GoogleCloudRetailV2betaPanelInfo : Google.Apis.Requests.IDirectResponseSchema + { + /// Optional. The attribution token of the panel. + [Newtonsoft.Json.JsonPropertyAttribute("attributionToken")] + public virtual string AttributionToken { get; set; } + + /// Optional. The display name of the panel. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// Required. The panel ID. + [Newtonsoft.Json.JsonPropertyAttribute("panelId")] + public virtual string PanelId { get; set; } + + /// + /// Optional. The ordered position of the panel, if shown to the user with other panels. If set, then + /// total_panels must also be set. + /// + [Newtonsoft.Json.JsonPropertyAttribute("panelPosition")] + public virtual System.Nullable PanelPosition { get; set; } + + /// Optional. The product details associated with the panel. + [Newtonsoft.Json.JsonPropertyAttribute("productDetails")] + public virtual System.Collections.Generic.IList ProductDetails { get; set; } + + /// + /// Optional. The total number of panels, including this one, shown to the user. Must be set if panel_position + /// is set. + /// + [Newtonsoft.Json.JsonPropertyAttribute("totalPanels")] + public virtual System.Nullable TotalPanels { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request for pausing training of a model. public class GoogleCloudRetailV2betaPauseModelRequest : Google.Apis.Requests.IDirectResponseSchema { @@ -14244,6 +14285,12 @@ public virtual System.DateTimeOffset? EventTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("pageViewId")] public virtual string PageViewId { get; set; } + /// + /// Optional. List of panels associated with this event. Used for panel-level impression data. + /// + [Newtonsoft.Json.JsonPropertyAttribute("panels")] + public virtual System.Collections.Generic.IList Panels { get; set; } + /// /// The main product details related to the event. This field is optional except for the following event types: /// * `add-to-cart` * `detail-page-view` * `purchase-complete` In a `search` event, this field represents the diff --git a/Src/Generated/Google.Apis.CloudRetail.v2beta/Google.Apis.CloudRetail.v2beta.csproj b/Src/Generated/Google.Apis.CloudRetail.v2beta/Google.Apis.CloudRetail.v2beta.csproj index c7da4e7055..fd5ef23e85 100644 --- a/Src/Generated/Google.Apis.CloudRetail.v2beta/Google.Apis.CloudRetail.v2beta.csproj +++ b/Src/Generated/Google.Apis.CloudRetail.v2beta/Google.Apis.CloudRetail.v2beta.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudRetail.v2beta Client Library - 1.70.0.3843 + 1.70.0.3850 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.cs b/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.cs index 9d9acdaf70..63a6e12070 100644 --- a/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.cs +++ b/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.cs @@ -16297,6 +16297,24 @@ public virtual System.DateTimeOffset? StartTimeDateTimeOffset public virtual string ETag { get; set; } } + /// + /// Configure document processing to fall back to the configured processing option below if document processing is + /// unavailable in the original request location. + /// + public class GooglePrivacyDlpV2DocumentFallbackLocation : Google.Apis.Requests.IDirectResponseSchema + { + /// Processing will happen in the global region. + [Newtonsoft.Json.JsonPropertyAttribute("globalProcessing")] + public virtual GooglePrivacyDlpV2GlobalProcessing GlobalProcessing { get; set; } + + /// Processing will happen in a multi-region that contains the current region if available. + [Newtonsoft.Json.JsonPropertyAttribute("multiRegionProcessing")] + public virtual GooglePrivacyDlpV2MultiRegionProcessing MultiRegionProcessing { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Location of a finding within a document. public class GooglePrivacyDlpV2DocumentLocation : Google.Apis.Requests.IDirectResponseSchema { @@ -19163,6 +19181,10 @@ public class GooglePrivacyDlpV2PrivacyMetric : Google.Apis.Requests.IDirectRespo /// public class GooglePrivacyDlpV2ProcessingLocation : Google.Apis.Requests.IDirectResponseSchema { + /// Document processing will fall back using this configuration. + [Newtonsoft.Json.JsonPropertyAttribute("documentFallbackLocation")] + public virtual GooglePrivacyDlpV2DocumentFallbackLocation DocumentFallbackLocation { get; set; } + /// Image processing will fall back using this configuration. [Newtonsoft.Json.JsonPropertyAttribute("imageFallbackLocation")] public virtual GooglePrivacyDlpV2ImageFallbackLocation ImageFallbackLocation { get; set; } diff --git a/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.csproj b/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.csproj index 8f89956e7b..0336ef5639 100644 --- a/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.csproj +++ b/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.DLP.v2 Client Library - 1.70.0.3832 + 1.70.0.3846 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.Document.v1/Google.Apis.Document.v1.cs b/Src/Generated/Google.Apis.Document.v1/Google.Apis.Document.v1.cs index 8e578d7bd6..28c628c3a9 100644 --- a/Src/Generated/Google.Apis.Document.v1/Google.Apis.Document.v1.cs +++ b/Src/Generated/Google.Apis.Document.v1/Google.Apis.Document.v1.cs @@ -5885,7 +5885,7 @@ public class GoogleCloudDocumentaiV1Processor : Google.Apis.Requests.IDirectResp private object _createTime; - /// The time the processor was created. + /// Output only. The time the processor was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -6039,7 +6039,7 @@ public class GoogleCloudDocumentaiV1ProcessorVersion : Google.Apis.Requests.IDir private object _createTime; - /// The time the processor version was created. + /// Output only. The time the processor version was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -6072,7 +6072,7 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// If set, information about the eventual deprecation of this version. + /// Output only. If set, information about the eventual deprecation of this version. [Newtonsoft.Json.JsonPropertyAttribute("deprecationInfo")] public virtual GoogleCloudDocumentaiV1ProcessorVersionDeprecationInfo DeprecationInfo { get; set; } @@ -6080,7 +6080,7 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("displayName")] public virtual string DisplayName { get; set; } - /// The schema of the processor version. Describes the output. + /// Output only. The schema of the processor version. Describes the output. [Newtonsoft.Json.JsonPropertyAttribute("documentSchema")] public virtual GoogleCloudDocumentaiV1DocumentSchema DocumentSchema { get; set; } @@ -6092,15 +6092,15 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("googleManaged")] public virtual System.Nullable GoogleManaged { get; set; } - /// The KMS key name used for encryption. + /// Output only. The KMS key name used for encryption. [Newtonsoft.Json.JsonPropertyAttribute("kmsKeyName")] public virtual string KmsKeyName { get; set; } - /// The KMS key version with which data is encrypted. + /// Output only. The KMS key version with which data is encrypted. [Newtonsoft.Json.JsonPropertyAttribute("kmsKeyVersionName")] public virtual string KmsKeyVersionName { get; set; } - /// The most recently invoked evaluation for the processor version. + /// Output only. The most recently invoked evaluation for the processor version. [Newtonsoft.Json.JsonPropertyAttribute("latestEvaluation")] public virtual GoogleCloudDocumentaiV1EvaluationReference LatestEvaluation { get; set; } diff --git a/Src/Generated/Google.Apis.Document.v1/Google.Apis.Document.v1.csproj b/Src/Generated/Google.Apis.Document.v1/Google.Apis.Document.v1.csproj index 3d5574935e..be73fd1ad6 100644 --- a/Src/Generated/Google.Apis.Document.v1/Google.Apis.Document.v1.csproj +++ b/Src/Generated/Google.Apis.Document.v1/Google.Apis.Document.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Document.v1 Client Library - 1.70.0.3819 + 1.70.0.3849 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.Document.v1beta3/Google.Apis.Document.v1beta3.cs b/Src/Generated/Google.Apis.Document.v1beta3/Google.Apis.Document.v1beta3.cs index 20775d1de7..26abeeb694 100644 --- a/Src/Generated/Google.Apis.Document.v1beta3/Google.Apis.Document.v1beta3.cs +++ b/Src/Generated/Google.Apis.Document.v1beta3/Google.Apis.Document.v1beta3.cs @@ -7702,7 +7702,7 @@ public class GoogleCloudDocumentaiV1beta3Processor : Google.Apis.Requests.IDirec private object _createTime; - /// The time the processor was created. + /// Output only. The time the processor was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -7856,7 +7856,7 @@ public class GoogleCloudDocumentaiV1beta3ProcessorVersion : Google.Apis.Requests private object _createTime; - /// The time the processor version was created. + /// Output only. The time the processor version was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -7889,7 +7889,7 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// If set, information about the eventual deprecation of this version. + /// Output only. If set, information about the eventual deprecation of this version. [Newtonsoft.Json.JsonPropertyAttribute("deprecationInfo")] public virtual GoogleCloudDocumentaiV1beta3ProcessorVersionDeprecationInfo DeprecationInfo { get; set; } @@ -7897,7 +7897,7 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("displayName")] public virtual string DisplayName { get; set; } - /// The schema of the processor version. Describes the output. + /// Output only. The schema of the processor version. Describes the output. [Newtonsoft.Json.JsonPropertyAttribute("documentSchema")] public virtual GoogleCloudDocumentaiV1beta3DocumentSchema DocumentSchema { get; set; } @@ -7909,15 +7909,15 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("googleManaged")] public virtual System.Nullable GoogleManaged { get; set; } - /// The KMS key name used for encryption. + /// Output only. The KMS key name used for encryption. [Newtonsoft.Json.JsonPropertyAttribute("kmsKeyName")] public virtual string KmsKeyName { get; set; } - /// The KMS key version with which data is encrypted. + /// Output only. The KMS key version with which data is encrypted. [Newtonsoft.Json.JsonPropertyAttribute("kmsKeyVersionName")] public virtual string KmsKeyVersionName { get; set; } - /// The most recently invoked evaluation for the processor version. + /// Output only. The most recently invoked evaluation for the processor version. [Newtonsoft.Json.JsonPropertyAttribute("latestEvaluation")] public virtual GoogleCloudDocumentaiV1beta3EvaluationReference LatestEvaluation { get; set; } diff --git a/Src/Generated/Google.Apis.Document.v1beta3/Google.Apis.Document.v1beta3.csproj b/Src/Generated/Google.Apis.Document.v1beta3/Google.Apis.Document.v1beta3.csproj index 7bf7e838dd..13e9c5765a 100644 --- a/Src/Generated/Google.Apis.Document.v1beta3/Google.Apis.Document.v1beta3.csproj +++ b/Src/Generated/Google.Apis.Document.v1beta3/Google.Apis.Document.v1beta3.csproj @@ -3,7 +3,7 @@ Google.Apis.Document.v1beta3 Client Library - 1.70.0.3819 + 1.70.0.3849 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.FirebaseML.v2beta/Google.Apis.FirebaseML.v2beta.cs b/Src/Generated/Google.Apis.FirebaseML.v2beta/Google.Apis.FirebaseML.v2beta.cs index d62f7a5c51..ff29b43d2e 100644 --- a/Src/Generated/Google.Apis.FirebaseML.v2beta/Google.Apis.FirebaseML.v2beta.cs +++ b/Src/Generated/Google.Apis.FirebaseML.v2beta/Google.Apis.FirebaseML.v2beta.cs @@ -1672,6 +1672,13 @@ public class GoogleCloudAiplatformV1beta1GroundingChunk : Google.Apis.Requests.I /// Chunk from Google Maps. public class GoogleCloudAiplatformV1beta1GroundingChunkMaps : Google.Apis.Requests.IDirectResponseSchema { + /// + /// Sources used to generate the place answer. This includes review snippets and photos that were used to + /// generate the answer, as well as uris to flag content. + /// + [Newtonsoft.Json.JsonPropertyAttribute("placeAnswerSources")] + public virtual GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSources PlaceAnswerSources { get; set; } + /// /// This Place's resource name, in `places/{place_id}` format. Can be used to look up the Place. /// @@ -1694,6 +1701,72 @@ public class GoogleCloudAiplatformV1beta1GroundingChunkMaps : Google.Apis.Reques public virtual string ETag { get; set; } } + /// Sources used to generate the place answer. + public class GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSources : Google.Apis.Requests.IDirectResponseSchema + { + /// A link where users can flag a problem with the generated answer. + [Newtonsoft.Json.JsonPropertyAttribute("flagContentUri")] + public virtual string FlagContentUri { get; set; } + + /// Snippets of reviews that are used to generate the answer. + [Newtonsoft.Json.JsonPropertyAttribute("reviewSnippets")] + public virtual System.Collections.Generic.IList ReviewSnippets { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Author attribution for a photo or review. + public class GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSourcesAuthorAttribution : Google.Apis.Requests.IDirectResponseSchema + { + /// Name of the author of the Photo or Review. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// Profile photo URI of the author of the Photo or Review. + [Newtonsoft.Json.JsonPropertyAttribute("photoUri")] + public virtual string PhotoUri { get; set; } + + /// URI of the author of the Photo or Review. + [Newtonsoft.Json.JsonPropertyAttribute("uri")] + public virtual string Uri { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Encapsulates a review snippet. + public class GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSourcesReviewSnippet : Google.Apis.Requests.IDirectResponseSchema + { + /// This review's author. + [Newtonsoft.Json.JsonPropertyAttribute("authorAttribution")] + public virtual GoogleCloudAiplatformV1beta1GroundingChunkMapsPlaceAnswerSourcesAuthorAttribution AuthorAttribution { get; set; } + + /// A link where users can flag a problem with the review. + [Newtonsoft.Json.JsonPropertyAttribute("flagContentUri")] + public virtual string FlagContentUri { get; set; } + + /// A link to show the review on Google Maps. + [Newtonsoft.Json.JsonPropertyAttribute("googleMapsUri")] + public virtual string GoogleMapsUri { get; set; } + + /// + /// A string of formatted recent time, expressing the review time relative to the current time in a form + /// appropriate for the language and country. + /// + [Newtonsoft.Json.JsonPropertyAttribute("relativePublishTimeDescription")] + public virtual string RelativePublishTimeDescription { get; set; } + + /// + /// A reference representing this place review which may be used to look up this place review again. + /// + [Newtonsoft.Json.JsonPropertyAttribute("review")] + public virtual string Review { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Chunk from context retrieved by the retrieval tools. public class GoogleCloudAiplatformV1beta1GroundingChunkRetrievedContext : Google.Apis.Requests.IDirectResponseSchema { diff --git a/Src/Generated/Google.Apis.FirebaseML.v2beta/Google.Apis.FirebaseML.v2beta.csproj b/Src/Generated/Google.Apis.FirebaseML.v2beta/Google.Apis.FirebaseML.v2beta.csproj index af1e51d8ba..3c612b23b4 100644 --- a/Src/Generated/Google.Apis.FirebaseML.v2beta/Google.Apis.FirebaseML.v2beta.csproj +++ b/Src/Generated/Google.Apis.FirebaseML.v2beta/Google.Apis.FirebaseML.v2beta.csproj @@ -3,7 +3,7 @@ Google.Apis.FirebaseML.v2beta Client Library - 1.70.0.3848 + 1.70.0.3853 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.GKEHub.v1beta1/Google.Apis.GKEHub.v1beta1.cs b/Src/Generated/Google.Apis.GKEHub.v1beta1/Google.Apis.GKEHub.v1beta1.cs index ca395399d4..996f1f7d2f 100644 --- a/Src/Generated/Google.Apis.GKEHub.v1beta1/Google.Apis.GKEHub.v1beta1.cs +++ b/Src/Generated/Google.Apis.GKEHub.v1beta1/Google.Apis.GKEHub.v1beta1.cs @@ -2490,6 +2490,10 @@ public virtual System.DateTimeOffset? LastConnectionTimeDateTimeOffset set => LastConnectionTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } + /// Output only. The type of the membership. + [Newtonsoft.Json.JsonPropertyAttribute("membershipType")] + public virtual string MembershipType { get; set; } + /// Optional. The monitoring config information for this membership. [Newtonsoft.Json.JsonPropertyAttribute("monitoringConfig")] public virtual MonitoringConfig MonitoringConfig { get; set; } diff --git a/Src/Generated/Google.Apis.GKEHub.v1beta1/Google.Apis.GKEHub.v1beta1.csproj b/Src/Generated/Google.Apis.GKEHub.v1beta1/Google.Apis.GKEHub.v1beta1.csproj index 7672a7ee77..7ef0fa9a25 100644 --- a/Src/Generated/Google.Apis.GKEHub.v1beta1/Google.Apis.GKEHub.v1beta1.csproj +++ b/Src/Generated/Google.Apis.GKEHub.v1beta1/Google.Apis.GKEHub.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.GKEHub.v1beta1 Client Library - 1.69.0.3757 + 1.70.0.3848 Google LLC Copyright 2025 Google LLC Google @@ -60,8 +60,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.GKEHub.v2alpha/Google.Apis.GKEHub.v2alpha.csproj b/Src/Generated/Google.Apis.GKEHub.v2alpha/Google.Apis.GKEHub.v2alpha.csproj index a0330d7cba..b29290c14a 100644 --- a/Src/Generated/Google.Apis.GKEHub.v2alpha/Google.Apis.GKEHub.v2alpha.csproj +++ b/Src/Generated/Google.Apis.GKEHub.v2alpha/Google.Apis.GKEHub.v2alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.GKEHub.v2alpha Client Library - 1.70.0.3815 + 1.70.0.3848 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.GKEHub.v2beta/Google.Apis.GKEHub.v2beta.csproj b/Src/Generated/Google.Apis.GKEHub.v2beta/Google.Apis.GKEHub.v2beta.csproj index 08270d9e61..3892c776db 100644 --- a/Src/Generated/Google.Apis.GKEHub.v2beta/Google.Apis.GKEHub.v2beta.csproj +++ b/Src/Generated/Google.Apis.GKEHub.v2beta/Google.Apis.GKEHub.v2beta.csproj @@ -3,7 +3,7 @@ Google.Apis.GKEHub.v2beta Client Library - 1.70.0.3815 + 1.70.0.3848 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.cs b/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.cs index 09aa419f8c..789573e0f1 100644 --- a/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.cs +++ b/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.cs @@ -1482,8 +1482,10 @@ protected override void InitParameters() /// Returns details about a membership. For an example, see [Get details about a user's or Google Chat app's /// membership](https://developers.google.com/workspace/chat/get-members). Supports the following types of /// [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App - /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with the - /// authorization scope: - `https://www.googleapis.com/auth/chat.bot` - [User + /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with one + /// of the following authorization scopes: - `https://www.googleapis.com/auth/chat.bot` - + /// `https://www.googleapis.com/auth/chat.app.memberships` (requires [administrator + /// approval](https://support.google.com/a?p=chat-app-auth)) - [User /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one /// of the following authorization scopes: - `https://www.googleapis.com/auth/chat.memberships.readonly` - /// `https://www.googleapis.com/auth/chat.memberships` - User authentication grants administrator privileges @@ -1508,8 +1510,10 @@ public virtual GetRequest Get(string name) /// Returns details about a membership. For an example, see [Get details about a user's or Google Chat app's /// membership](https://developers.google.com/workspace/chat/get-members). Supports the following types of /// [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App - /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with the - /// authorization scope: - `https://www.googleapis.com/auth/chat.bot` - [User + /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with one + /// of the following authorization scopes: - `https://www.googleapis.com/auth/chat.bot` - + /// `https://www.googleapis.com/auth/chat.app.memberships` (requires [administrator + /// approval](https://support.google.com/a?p=chat-app-auth)) - [User /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one /// of the following authorization scopes: - `https://www.googleapis.com/auth/chat.memberships.readonly` - /// `https://www.googleapis.com/auth/chat.memberships` - User authentication grants administrator privileges @@ -1589,8 +1593,10 @@ protected override void InitParameters() /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) lists /// memberships in spaces that the authenticated user has access to. Supports the following types of /// [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App - /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with the - /// authorization scope: - `https://www.googleapis.com/auth/chat.bot` - [User + /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with one + /// of the following authorization scopes: - `https://www.googleapis.com/auth/chat.bot` - + /// `https://www.googleapis.com/auth/chat.app.memberships` (requires [administrator + /// approval](https://support.google.com/a?p=chat-app-auth)) - [User /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one /// of the following authorization scopes: - `https://www.googleapis.com/auth/chat.memberships.readonly` - /// `https://www.googleapis.com/auth/chat.memberships` - `https://www.googleapis.com/auth/chat.import` @@ -1616,8 +1622,10 @@ public virtual ListRequest List(string parent) /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) lists /// memberships in spaces that the authenticated user has access to. Supports the following types of /// [authentication](https://developers.google.com/workspace/chat/authenticate-authorize): - [App - /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with the - /// authorization scope: - `https://www.googleapis.com/auth/chat.bot` - [User + /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) with one + /// of the following authorization scopes: - `https://www.googleapis.com/auth/chat.bot` - + /// `https://www.googleapis.com/auth/chat.app.memberships` (requires [administrator + /// approval](https://support.google.com/a?p=chat-app-auth)) - [User /// authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one /// of the following authorization scopes: - `https://www.googleapis.com/auth/chat.memberships.readonly` - /// `https://www.googleapis.com/auth/chat.memberships` - `https://www.googleapis.com/auth/chat.import` @@ -8970,6 +8978,18 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } + /// + /// Optional. Immutable. The customer id of the domain of the space. Required only when creating a space with + /// [app authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-app) and + /// `SpaceType` is `SPACE`, otherwise should not be set. In the format `customers/{customer}`, where `customer` + /// is the `id` from the [Admin SDK customer resource]( + /// https://developers.google.com/admin-sdk/directory/reference/rest/v1/customers). Private apps can also use + /// the `customers/my_customer` alias to create the space in the same Google Workspace organization as the app. + /// For DMs, this field isn't populated. [Developer Preview](https://developers.google.com/workspace/preview). + /// + [Newtonsoft.Json.JsonPropertyAttribute("customer")] + public virtual string Customer { get; set; } + /// /// Optional. The space's display name. Required when [creating a /// space](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/create) with a `spaceType` diff --git a/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.csproj b/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.csproj index 9956ebfb01..dc6677d9fd 100644 --- a/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.csproj +++ b/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.HangoutsChat.v1 Client Library - 1.70.0.3843 + 1.70.0.3850 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.HomeGraphService.v1/Google.Apis.HomeGraphService.v1.cs b/Src/Generated/Google.Apis.HomeGraphService.v1/Google.Apis.HomeGraphService.v1.cs index 4bc91c2f34..31f03e163e 100644 --- a/Src/Generated/Google.Apis.HomeGraphService.v1/Google.Apis.HomeGraphService.v1.cs +++ b/Src/Generated/Google.Apis.HomeGraphService.v1/Google.Apis.HomeGraphService.v1.cs @@ -703,7 +703,11 @@ public class DeviceNames : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("defaultNames")] public virtual System.Collections.Generic.IList DefaultNames { get; set; } - /// Primary name of the device, generally provided by the user. + /// + /// Primary name of the device, generally provided by the user. Names will be truncated if over the 60 Unicode + /// code point (character) limit and no errors will be thrown. Developers are responsible for handling long + /// names. + /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } diff --git a/Src/Generated/Google.Apis.HomeGraphService.v1/Google.Apis.HomeGraphService.v1.csproj b/Src/Generated/Google.Apis.HomeGraphService.v1/Google.Apis.HomeGraphService.v1.csproj index a156082114..a571f11831 100644 --- a/Src/Generated/Google.Apis.HomeGraphService.v1/Google.Apis.HomeGraphService.v1.csproj +++ b/Src/Generated/Google.Apis.HomeGraphService.v1/Google.Apis.HomeGraphService.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.HomeGraphService.v1 Client Library - 1.69.0.3752 + 1.70.0.3849 Google LLC Copyright 2025 Google LLC Google @@ -59,8 +59,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.cs b/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.cs index 1f5163f3fc..62e925d520 100644 --- a/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.cs +++ b/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.cs @@ -512,6 +512,7 @@ public ProvidersResource(Google.Apis.Services.IClientService service) this.service = service; Keys = new KeysResource(service); Operations = new OperationsResource(service); + ScimTenants = new ScimTenantsResource(service); } /// Gets the Keys resource. @@ -991,6 +992,897 @@ protected override void InitParameters() } } + /// Gets the ScimTenants resource. + public virtual ScimTenantsResource ScimTenants { get; } + + /// The "scimTenants" collection of methods. + public class ScimTenantsResource + { + private const string Resource = "scimTenants"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public ScimTenantsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + Tokens = new TokensResource(service); + } + + /// Gets the Tokens resource. + public virtual TokensResource Tokens { get; } + + /// The "tokens" collection of methods. + public class TokensResource + { + private const string Resource = "tokens"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public TokensResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// + /// Creates a new WorkforcePoolProviderScimToken in a WorkforcePoolProviderScimTenant. You + /// cannot reuse the name of a deleted SCIM token until 30 days after deletion. + /// + /// The body of the request. + /// + /// Required. The parent tenant to create scim token. Format: + /// 'locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}' + /// + public virtual CreateRequest Create(Google.Apis.Iam.v1.Data.WorkforcePoolProviderScimToken body, string parent) + { + return new CreateRequest(this.service, body, parent); + } + + /// + /// Creates a new WorkforcePoolProviderScimToken in a WorkforcePoolProviderScimTenant. You + /// cannot reuse the name of a deleted SCIM token until 30 days after deletion. + /// + public class CreateRequest : IamBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.WorkforcePoolProviderScimToken body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// + /// Required. The parent tenant to create scim token. Format: + /// 'locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}' + /// + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Required. The ID to use for the scim token, which becomes the final component of the + /// resource name. This value should be 4-32 characters and follow this pattern: + /// "([a-z]([a-z0-9\\-]{2,30}[a-z0-9]))" + /// + [Google.Apis.Util.RequestParameterAttribute("workforcePoolProviderScimTokenId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string WorkforcePoolProviderScimTokenId { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Iam.v1.Data.WorkforcePoolProviderScimToken Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/tokens"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+$", + }); + RequestParameters.Add("workforcePoolProviderScimTokenId", new Google.Apis.Discovery.Parameter + { + Name = "workforcePoolProviderScimTokenId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Deletes a WorkforcePoolProviderScimToken. You can undelete a scim token for 30 days. After + /// 30 days, deletion is permanent. You cannot update deleted scim tokens. However, you can view + /// and list them. + /// + /// + /// Required. The name of the scim token to delete. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}/tokens/{token}` + /// + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } + + /// + /// Deletes a WorkforcePoolProviderScimToken. You can undelete a scim token for 30 days. After + /// 30 days, deletion is permanent. You cannot update deleted scim tokens. However, you can view + /// and list them. + /// + public class DeleteRequest : IamBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// + /// Required. The name of the scim token to delete. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}/tokens/{token}` + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+/tokens/[^/]+$", + }); + } + } + + /// Gets an individual WorkforcePoolProviderScimToken. + /// + /// Required. The name of the scim token to retrieve. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}/tokens/{token}` + /// + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } + + /// Gets an individual WorkforcePoolProviderScimToken. + public class GetRequest : IamBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// + /// Required. The name of the scim token to retrieve. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}/tokens/{token}` + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+/tokens/[^/]+$", + }); + } + } + + /// + /// Lists all non-deleted WorkforcePoolProviderScimTokenss in a WorkforcePoolProviderScimTenant. + /// If `show_deleted` is set to `true`, then deleted SCIM tokens are also listed. + /// + /// + /// Required. The parent to list scim tokens. Format: + /// 'locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}' + /// + public virtual ListRequest List(string parent) + { + return new ListRequest(this.service, parent); + } + + /// + /// Lists all non-deleted WorkforcePoolProviderScimTokenss in a WorkforcePoolProviderScimTenant. + /// If `show_deleted` is set to `true`, then deleted SCIM tokens are also listed. + /// + public class ListRequest : IamBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// + /// Required. The parent to list scim tokens. Format: + /// 'locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}' + /// + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. The maximum number of scim tokens to return. If unspecified, at most 2 scim + /// tokens will be returned. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// Optional. A page token, received from a previous `ListWorkforcePoolProviderScimTokens` + /// call. Provide this to retrieve the subsequent page. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Optional. Whether to return soft-deleted scim tokens. + [Google.Apis.Util.RequestParameterAttribute("showDeleted", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ShowDeleted { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/tokens"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+$", + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("showDeleted", new Google.Apis.Discovery.Parameter + { + Name = "showDeleted", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Updates an existing WorkforcePoolProviderScimToken. + /// The body of the request. + /// + /// Identifier. The resource name of the SCIM Token. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/ + /// {workforce_pool_provider}/scimTenants/{scim_tenant}/tokens/{token}` + /// + public virtual PatchRequest Patch(Google.Apis.Iam.v1.Data.WorkforcePoolProviderScimToken body, string name) + { + return new PatchRequest(this.service, body, name); + } + + /// Updates an existing WorkforcePoolProviderScimToken. + public class PatchRequest : IamBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.WorkforcePoolProviderScimToken body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Identifier. The resource name of the SCIM Token. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/ + /// {workforce_pool_provider}/scimTenants/{scim_tenant}/tokens/{token}` + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Optional. The list of fields to update. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Iam.v1.Data.WorkforcePoolProviderScimToken Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+/tokens/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Undeletes a WorkforcePoolProviderScimToken, as long as it was deleted fewer than 30 days + /// ago. + /// + /// The body of the request. + /// + /// Required. The name of the scim token to undelete. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}/tokens/{token}` + /// + public virtual UndeleteRequest Undelete(Google.Apis.Iam.v1.Data.UndeleteWorkforcePoolProviderScimTokenRequest body, string name) + { + return new UndeleteRequest(this.service, body, name); + } + + /// + /// Undeletes a WorkforcePoolProviderScimToken, as long as it was deleted fewer than 30 days + /// ago. + /// + public class UndeleteRequest : IamBaseServiceRequest + { + /// Constructs a new Undelete request. + public UndeleteRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.UndeleteWorkforcePoolProviderScimTokenRequest body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Required. The name of the scim token to undelete. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}/tokens/{token}` + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Iam.v1.Data.UndeleteWorkforcePoolProviderScimTokenRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "undelete"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}:undelete"; + + /// Initializes Undelete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+/tokens/[^/]+$", + }); + } + } + } + + /// + /// Creates a new WorkforcePoolProviderScimTenant in a WorkforcePoolProvider. You cannot reuse the + /// name of a deleted scim tenant until 30 days after deletion. + /// + /// The body of the request. + /// + /// Required. The parent to create scim tenant. Format: + /// 'locations/{location}/workforcePools/{workforce_pool}/providers/{provider}' + /// + public virtual CreateRequest Create(Google.Apis.Iam.v1.Data.WorkforcePoolProviderScimTenant body, string parent) + { + return new CreateRequest(this.service, body, parent); + } + + /// + /// Creates a new WorkforcePoolProviderScimTenant in a WorkforcePoolProvider. You cannot reuse the + /// name of a deleted scim tenant until 30 days after deletion. + /// + public class CreateRequest : IamBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.WorkforcePoolProviderScimTenant body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// + /// Required. The parent to create scim tenant. Format: + /// 'locations/{location}/workforcePools/{workforce_pool}/providers/{provider}' + /// + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Required. The ID to use for the scim tenant, which becomes the final component of the + /// resource name. This value should be 4-32 characters, and may contain the characters + /// [a-z0-9-]. + /// + [Google.Apis.Util.RequestParameterAttribute("workforcePoolProviderScimTenantId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string WorkforcePoolProviderScimTenantId { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Iam.v1.Data.WorkforcePoolProviderScimTenant Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/scimTenants"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+$", + }); + RequestParameters.Add("workforcePoolProviderScimTenantId", new Google.Apis.Discovery.Parameter + { + Name = "workforcePoolProviderScimTenantId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Deletes a WorkforcePoolProviderScimTenant. You can undelete a scim tenant for 30 days. After 30 + /// days, deletion is permanent. You cannot update deleted scim tenants. However, you can view and + /// list them. + /// + /// + /// Required. The name of the scim tenant to delete. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}` + /// + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } + + /// + /// Deletes a WorkforcePoolProviderScimTenant. You can undelete a scim tenant for 30 days. After 30 + /// days, deletion is permanent. You cannot update deleted scim tenants. However, you can view and + /// list them. + /// + public class DeleteRequest : IamBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// + /// Required. The name of the scim tenant to delete. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}` + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+$", + }); + } + } + + /// Gets an individual WorkforcePoolProviderScimTenant. + /// + /// Required. The name of the scim tenant to retrieve. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}` + /// + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } + + /// Gets an individual WorkforcePoolProviderScimTenant. + public class GetRequest : IamBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// + /// Required. The name of the scim tenant to retrieve. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}` + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+$", + }); + } + } + + /// + /// Lists all non-deleted WorkforcePoolProviderScimTenants in a WorkforcePoolProvider. If + /// `show_deleted` is set to `true`, then deleted scim tenants are also listed. + /// + /// + /// Required. The parent to list scim tenants. Format: + /// 'locations/{location}/workforcePools/{workforce_pool}/providers/{provider}' + /// + public virtual ListRequest List(string parent) + { + return new ListRequest(this.service, parent); + } + + /// + /// Lists all non-deleted WorkforcePoolProviderScimTenants in a WorkforcePoolProvider. If + /// `show_deleted` is set to `true`, then deleted scim tenants are also listed. + /// + public class ListRequest : IamBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// + /// Required. The parent to list scim tenants. Format: + /// 'locations/{location}/workforcePools/{workforce_pool}/providers/{provider}' + /// + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. The maximum number of scim tenants to return. If unspecified, at most 1 scim + /// tenant will be returned. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// Optional. A page token, received from a previous `ListScimTenants` call. Provide this to + /// retrieve the subsequent page. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Optional. Whether to return soft-deleted scim tenants. + [Google.Apis.Util.RequestParameterAttribute("showDeleted", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ShowDeleted { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/scimTenants"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+$", + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("showDeleted", new Google.Apis.Discovery.Parameter + { + Name = "showDeleted", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Updates an existing WorkforcePoolProviderScimTenant. + /// The body of the request. + /// + /// Identifier. The resource name of the SCIM Tenant. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/ + /// {workforce_pool_provider}/scimTenants/{scim_tenant}` + /// + public virtual PatchRequest Patch(Google.Apis.Iam.v1.Data.WorkforcePoolProviderScimTenant body, string name) + { + return new PatchRequest(this.service, body, name); + } + + /// Updates an existing WorkforcePoolProviderScimTenant. + public class PatchRequest : IamBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.WorkforcePoolProviderScimTenant body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Identifier. The resource name of the SCIM Tenant. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/ + /// {workforce_pool_provider}/scimTenants/{scim_tenant}` + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Optional. The list of fields to update. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Iam.v1.Data.WorkforcePoolProviderScimTenant Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Undeletes a WorkforcePoolProviderScimTenant, as long as it was deleted fewer than 30 days ago. + /// + /// The body of the request. + /// + /// Required. The name of the scim tenant to undelete. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}` + /// + public virtual UndeleteRequest Undelete(Google.Apis.Iam.v1.Data.UndeleteWorkforcePoolProviderScimTenantRequest body, string name) + { + return new UndeleteRequest(this.service, body, name); + } + + /// + /// Undeletes a WorkforcePoolProviderScimTenant, as long as it was deleted fewer than 30 days ago. + /// + public class UndeleteRequest : IamBaseServiceRequest + { + /// Constructs a new Undelete request. + public UndeleteRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.UndeleteWorkforcePoolProviderScimTenantRequest body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Required. The name of the scim tenant to undelete. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/{provider}/scimTenants/{scim_tenant}` + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Iam.v1.Data.UndeleteWorkforcePoolProviderScimTenantRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "undelete"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}:undelete"; + + /// Initializes Undelete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^locations/[^/]+/workforcePools/[^/]+/providers/[^/]+/scimTenants/[^/]+$", + }); + } + } + } + /// /// Creates a new WorkforcePoolProvider in a WorkforcePool. You cannot reuse the name of a deleted /// provider until 30 days after deletion. @@ -10282,6 +11174,42 @@ public class ListWorkforcePoolProviderKeysResponse : Google.Apis.Requests.IDirec public virtual string ETag { get; set; } } + /// Response message for ListWorkforcePoolProviderScimTenants. + public class ListWorkforcePoolProviderScimTenantsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, + /// there are no subsequent pages. + /// + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// Output only. A list of scim tenants. + [Newtonsoft.Json.JsonPropertyAttribute("workforcePoolProviderScimTenants")] + public virtual System.Collections.Generic.IList WorkforcePoolProviderScimTenants { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Response message for ListWorkforcePoolProviderScimTokens. + public class ListWorkforcePoolProviderScimTokensResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, + /// there are no subsequent pages. + /// + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// Output only. A list of scim tokens. + [Newtonsoft.Json.JsonPropertyAttribute("workforcePoolProviderScimTokens")] + public virtual System.Collections.Generic.IList WorkforcePoolProviderScimTokens { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Response message for ListWorkforcePoolProviders. public class ListWorkforcePoolProvidersResponse : Google.Apis.Requests.IDirectResponseSchema { @@ -11614,6 +12542,20 @@ public class UndeleteWorkforcePoolProviderRequest : Google.Apis.Requests.IDirect public virtual string ETag { get; set; } } + /// Request message for UndeleteWorkforcePoolProviderScimTenant. + public class UndeleteWorkforcePoolProviderScimTenantRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Request message for UndeleteWorkforcePoolProviderScimToken. + public class UndeleteWorkforcePoolProviderScimTokenRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Request message for UndeleteWorkforcePool. public class UndeleteWorkforcePoolRequest : Google.Apis.Requests.IDirectResponseSchema { @@ -11897,6 +12839,18 @@ public virtual System.DateTimeOffset? ExpireTimeDateTimeOffset set => ExpireTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } + /// + /// Optional. The configuration for OAuth 2.0 client used to get the extended group memberships for user + /// identities. Only the `AZURE_AD_GROUPS_ID` attribute type is supported. Extended groups supports a subset of + /// Google Cloud services. When the user accesses these services, extended group memberships override the mapped + /// `google.groups` attribute. Extended group memberships cannot be used in attribute mapping or attribute + /// condition expressions. To keep extended group memberships up to date, extended groups are retrieved when the + /// user signs in and at regular intervals during the user's active session. Each user identity in the workforce + /// identity pool must map to a specific, unique Microsoft Entra ID user. + /// + [Newtonsoft.Json.JsonPropertyAttribute("extendedAttributesOauth2Client")] + public virtual GoogleIamAdminV1WorkforcePoolProviderExtraAttributesOAuth2Client ExtendedAttributesOauth2Client { get; set; } + /// /// Optional. The configuration for OAuth 2.0 client used to get the additional user attributes. This should be /// used when users can't get the desired claims in authentication credentials. Currently this configuration is @@ -11998,6 +12952,120 @@ public virtual System.DateTimeOffset? ExpireTimeDateTimeOffset public virtual string ETag { get; set; } } + /// + /// Represents a scim tenant. Used for provisioning and managing identity data (such as Users and Groups) in + /// cross-domain environments. + /// + public class WorkforcePoolProviderScimTenant : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Output only. Represents the base URI as defined in [RFC 7644, Section + /// 1.3](https://datatracker.ietf.org/doc/html/rfc7644#section-1.3). Clients must use this as the root address + /// for managing resources under the tenant. Format: https://iamscim.googleapis.com/{version}/{tenant_id}/ + /// + [Newtonsoft.Json.JsonPropertyAttribute("baseUri")] + public virtual string BaseUri { get; set; } + + /// Optional. Maps BYOID claims to SCIM claims. + [Newtonsoft.Json.JsonPropertyAttribute("claimMapping")] + public virtual System.Collections.Generic.IDictionary ClaimMapping { get; set; } + + /// + /// Optional. The user-specified description of the scim tenant. Cannot exceed 256 characters. + /// + [Newtonsoft.Json.JsonPropertyAttribute("description")] + public virtual string Description { get; set; } + + /// + /// Optional. The user-specified display name of the scim tenant. Cannot exceed 32 characters. + /// + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// + /// Identifier. The resource name of the SCIM Tenant. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/ + /// {workforce_pool_provider}/scimTenants/{scim_tenant}` + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + private string _purgeTimeRaw; + + private object _purgeTime; + + /// Output only. The timestamp when the scim tenant is going to be purged. + [Newtonsoft.Json.JsonPropertyAttribute("purgeTime")] + public virtual string PurgeTimeRaw + { + get => _purgeTimeRaw; + set + { + _purgeTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _purgeTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use PurgeTimeDateTimeOffset instead.")] + public virtual object PurgeTime + { + get => _purgeTime; + set + { + _purgeTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _purgeTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? PurgeTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(PurgeTimeRaw); + set => PurgeTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// Output only. The state of the tenant. + [Newtonsoft.Json.JsonPropertyAttribute("state")] + public virtual string State { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// Represents a token for the WorkforcePoolProviderScimTenant. Used for authenticating SCIM Provisioning requests. + /// + public class WorkforcePoolProviderScimToken : Google.Apis.Requests.IDirectResponseSchema + { + /// Optional. The user-specified display name of the scim token. Cannot exceed 32 characters. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// + /// Identifier. The resource name of the SCIM Token. Format: + /// `locations/{location}/workforcePools/{workforce_pool}/providers/ + /// {workforce_pool_provider}/scimTenants/{scim_tenant}/tokens/{token}` + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// + /// Output only. The token string. Provide this to the IdP for authentication. Will be set only during creation. + /// + [Newtonsoft.Json.JsonPropertyAttribute("securityToken")] + public virtual string SecurityToken { get; set; } + + /// Output only. The state of the token. + [Newtonsoft.Json.JsonPropertyAttribute("state")] + public virtual string State { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// /// Represents a collection of workload identities. You can define IAM policies to grant these identities access to /// Google Cloud resources. diff --git a/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.csproj b/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.csproj index 3066aaadf7..e48e24d614 100644 --- a/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.csproj +++ b/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Iam.v1 Client Library - 1.70.0.3830 + 1.70.0.3851 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.cs b/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.cs index 8fb6623ac1..7357628fde 100644 --- a/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.cs +++ b/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.cs @@ -879,6 +879,51 @@ public DeveloperRegistrationResource(Google.Apis.Services.IClientService service this.service = service; } + /// Retrieves a developer registration for a merchant. + /// Required. The `name` (ID) of the developer registration. + public virtual GetDeveloperRegistrationRequest GetDeveloperRegistration(string name) + { + return new GetDeveloperRegistrationRequest(this.service, name); + } + + /// Retrieves a developer registration for a merchant. + public class GetDeveloperRegistrationRequest : MerchantBaseServiceRequest + { + /// Constructs a new GetDeveloperRegistration request. + public GetDeveloperRegistrationRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The `name` (ID) of the developer registration. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "getDeveloperRegistration"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "accounts/v1beta/{+name}"; + + /// Initializes GetDeveloperRegistration parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^accounts/[^/]+/developerRegistration$", + }); + } + } + /// /// Registers the GCP used for the API call to the shopping account passed in the request. Will create a /// user with an "API developer" and add the "developer_email" as a contact with "API notifications" email @@ -889,7 +934,7 @@ public DeveloperRegistrationResource(Google.Apis.Services.IClientService service /// Required. The name of the developer registration to be created for the merchant account that the GCP /// will be registered with. Format: `accounts/{account}/developerRegistration` /// - public virtual RegisterGcpRequest RegisterGcp(Google.Apis.Merchant.accounts_v1beta.Data.RegisterGCPRequest body, string name) + public virtual RegisterGcpRequest RegisterGcp(Google.Apis.Merchant.accounts_v1beta.Data.RegisterGcpRequest body, string name) { return new RegisterGcpRequest(this.service, body, name); } @@ -902,7 +947,7 @@ public virtual RegisterGcpRequest RegisterGcp(Google.Apis.Merchant.accounts_v1be public class RegisterGcpRequest : MerchantBaseServiceRequest { /// Constructs a new RegisterGcp request. - public RegisterGcpRequest(Google.Apis.Services.IClientService service, Google.Apis.Merchant.accounts_v1beta.Data.RegisterGCPRequest body, string name) : base(service) + public RegisterGcpRequest(Google.Apis.Services.IClientService service, Google.Apis.Merchant.accounts_v1beta.Data.RegisterGcpRequest body, string name) : base(service) { Name = name; Body = body; @@ -917,7 +962,7 @@ public RegisterGcpRequest(Google.Apis.Services.IClientService service, Google.Ap public virtual string Name { get; private set; } /// Gets or sets the body of this request. - Google.Apis.Merchant.accounts_v1beta.Data.RegisterGCPRequest Body { get; set; } + Google.Apis.Merchant.accounts_v1beta.Data.RegisterGcpRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; @@ -955,7 +1000,7 @@ protected override void InitParameters() /// Required. The name of the developer registration to be created for the merchant account that the GCP /// will be registered with. Format: `accounts/{account}/developerRegistration` /// - public virtual UnregisterGcpRequest UnregisterGcp(Google.Apis.Merchant.accounts_v1beta.Data.UnregisterGCPRequest body, string name) + public virtual UnregisterGcpRequest UnregisterGcp(Google.Apis.Merchant.accounts_v1beta.Data.UnregisterGcpRequest body, string name) { return new UnregisterGcpRequest(this.service, body, name); } @@ -967,7 +1012,7 @@ public virtual UnregisterGcpRequest UnregisterGcp(Google.Apis.Merchant.accounts_ public class UnregisterGcpRequest : MerchantBaseServiceRequest { /// Constructs a new UnregisterGcp request. - public UnregisterGcpRequest(Google.Apis.Services.IClientService service, Google.Apis.Merchant.accounts_v1beta.Data.UnregisterGCPRequest body, string name) : base(service) + public UnregisterGcpRequest(Google.Apis.Services.IClientService service, Google.Apis.Merchant.accounts_v1beta.Data.UnregisterGcpRequest body, string name) : base(service) { Name = name; Body = body; @@ -982,7 +1027,7 @@ public UnregisterGcpRequest(Google.Apis.Services.IClientService service, Google. public virtual string Name { get; private set; } /// Gets or sets the body of this request. - Google.Apis.Merchant.accounts_v1beta.Data.UnregisterGCPRequest Body { get; set; } + Google.Apis.Merchant.accounts_v1beta.Data.UnregisterGcpRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; @@ -4802,51 +4847,6 @@ protected override void InitParameters() } } - /// Retrieves a developer registration for a merchant. - /// Required. The `name` (ID) of the developer registration. - public virtual GetDeveloperRegistrationRequest GetDeveloperRegistration(string name) - { - return new GetDeveloperRegistrationRequest(this.service, name); - } - - /// Retrieves a developer registration for a merchant. - public class GetDeveloperRegistrationRequest : MerchantBaseServiceRequest - { - /// Constructs a new GetDeveloperRegistration request. - public GetDeveloperRegistrationRequest(Google.Apis.Services.IClientService service, string name) : base(service) - { - Name = name; - InitParameters(); - } - - /// Required. The `name` (ID) of the developer registration. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } - - /// Gets the method name. - public override string MethodName => "getDeveloperRegistration"; - - /// Gets the HTTP method. - public override string HttpMethod => "GET"; - - /// Gets the REST path. - public override string RestPath => "accounts/v1beta/{+name}"; - - /// Initializes GetDeveloperRegistration parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter - { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^accounts/[^/]+/developerRegistration$", - }); - } - } - /// /// Note: For the `accounts.list` method, quota and limits usage are charged for each user, and not for the /// Merchant Center ID or the advanced account ID. To list several sub-accounts, you should use the @@ -7835,7 +7835,7 @@ public class Region : Google.Apis.Requests.IDirectResponseSchema } /// Request message for the RegisterGCP method. - public class RegisterGCPRequest : Google.Apis.Requests.IDirectResponseSchema + public class RegisterGcpRequest : Google.Apis.Requests.IDirectResponseSchema { /// /// Immutable. If the developer email provided is associated with a user in the merchant account provided, the @@ -8385,7 +8385,7 @@ public class UnclaimHomepageRequest : Google.Apis.Requests.IDirectResponseSchema } /// Request message for the UnregisterGCP method. - public class UnregisterGCPRequest : Google.Apis.Requests.IDirectResponseSchema + public class UnregisterGcpRequest : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } diff --git a/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.csproj b/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.csproj index 902180d28a..42f6337c99 100644 --- a/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.csproj +++ b/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.csproj @@ -3,7 +3,7 @@ Google.Apis.Merchant.accounts_v1beta Client Library - 1.70.0.3848 + 1.70.0.3854 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.Merchant.datasources_v1beta/Google.Apis.Merchant.datasources_v1beta.csproj b/Src/Generated/Google.Apis.Merchant.datasources_v1beta/Google.Apis.Merchant.datasources_v1beta.csproj index 8daf23c19b..2357bd6ad9 100644 --- a/Src/Generated/Google.Apis.Merchant.datasources_v1beta/Google.Apis.Merchant.datasources_v1beta.csproj +++ b/Src/Generated/Google.Apis.Merchant.datasources_v1beta/Google.Apis.Merchant.datasources_v1beta.csproj @@ -3,7 +3,7 @@ Google.Apis.Merchant.datasources_v1beta Client Library - 1.70.0.3843 + 1.70.0.3854 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.Merchant.inventories_v1beta/Google.Apis.Merchant.inventories_v1beta.csproj b/Src/Generated/Google.Apis.Merchant.inventories_v1beta/Google.Apis.Merchant.inventories_v1beta.csproj index 4e6484c674..0a9962661f 100644 --- a/Src/Generated/Google.Apis.Merchant.inventories_v1beta/Google.Apis.Merchant.inventories_v1beta.csproj +++ b/Src/Generated/Google.Apis.Merchant.inventories_v1beta/Google.Apis.Merchant.inventories_v1beta.csproj @@ -3,7 +3,7 @@ Google.Apis.Merchant.inventories_v1beta Client Library - 1.70.0.3826 + 1.70.0.3854 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.NetworkSecurity.v1/Google.Apis.NetworkSecurity.v1.cs b/Src/Generated/Google.Apis.NetworkSecurity.v1/Google.Apis.NetworkSecurity.v1.cs index 1ff70b5d15..6273b6cce3 100644 --- a/Src/Generated/Google.Apis.NetworkSecurity.v1/Google.Apis.NetworkSecurity.v1.cs +++ b/Src/Generated/Google.Apis.NetworkSecurity.v1/Google.Apis.NetworkSecurity.v1.cs @@ -5292,7 +5292,7 @@ protected override void InitParameters() /// The body of the request. /// /// Required. Name of the ClientTlsPolicy resource. It matches the pattern - /// `projects/*/locations/{location}/clientTlsPolicies/{client_tls_policy}` + /// `projects/{project}/locations/{location}/clientTlsPolicies/{client_tls_policy}` /// public virtual PatchRequest Patch(Google.Apis.NetworkSecurity.v1.Data.ClientTlsPolicy body, string name) { @@ -5312,7 +5312,7 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Net /// /// Required. Name of the ClientTlsPolicy resource. It matches the pattern - /// `projects/*/locations/{location}/clientTlsPolicies/{client_tls_policy}` + /// `projects/{project}/locations/{location}/clientTlsPolicies/{client_tls_policy}` /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } @@ -12233,11 +12233,22 @@ public class AuthzPolicyAuthzRuleFrom : Google.Apis.Requests.IDirectResponseSche public class AuthzPolicyAuthzRuleFromRequestSource : Google.Apis.Requests.IDirectResponseSchema { /// - /// Optional. A list of IPs or CIDRs to match against the source IP of a request. Limited to 5 ip_blocks. + /// Optional. A list of IP addresses or IP address ranges to match against the source IP address of the request. + /// Limited to 5 ip_blocks. /// [Newtonsoft.Json.JsonPropertyAttribute("ipBlocks")] public virtual System.Collections.Generic.IList IpBlocks { get; set; } + /// + /// Optional. A list of identities derived from the client's certificate. This field will not match on a request + /// unless frontend mutual TLS is enabled for the forwarding rule or Gateway and the client certificate has been + /// successfully validated by mTLS. Each identity is a string whose value is matched against a list of URI SANs, + /// DNS Name SANs, or the common name in the client's certificate. A match happens when any principal matches + /// with the rule. Limited to 5 principals. + /// + [Newtonsoft.Json.JsonPropertyAttribute("principals")] + public virtual System.Collections.Generic.IList Principals { get; set; } + /// /// Optional. A list of resources to match against the resource of the source VM of a request. Limited to 5 /// resources. @@ -12279,6 +12290,28 @@ public class AuthzPolicyAuthzRuleIpBlock : Google.Apis.Requests.IDirectResponseS public virtual string ETag { get; set; } } + /// Describes the properties of a principal to be matched against. + public class AuthzPolicyAuthzRulePrincipal : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Required. A non-empty string whose value is matched against the principal value based on the + /// principal_selector. Only exact match can be applied for CLIENT_CERT_URI_SAN, CLIENT_CERT_DNS_NAME_SAN, + /// CLIENT_CERT_COMMON_NAME selectors. + /// + [Newtonsoft.Json.JsonPropertyAttribute("principal")] + public virtual AuthzPolicyAuthzRuleStringMatch Principal { get; set; } + + /// + /// Optional. An enum to decide what principal value the principal rule will match against. If not specified, + /// the PrincipalSelector is CLIENT_CERT_URI_SAN. + /// + [Newtonsoft.Json.JsonPropertyAttribute("principalSelector")] + public virtual string PrincipalSelector { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// /// Describes the properties of a client VM resource accessing the internal application load balancers. /// @@ -12514,7 +12547,7 @@ public class AuthzPolicyTarget : Google.Apis.Requests.IDirectResponseSchema /// are issued by public certificate authorities, in addition to certificates trusted by the TrustConfig. * /// `clientCertificate` is a client certificate that the load balancer uses to express its identity to the backend, /// if the connection to the backend uses mTLS. You can attach the BackendAuthenticationConfig to the load - /// balancer’s BackendService directly determining how that BackendService negotiates TLS. + /// balancer's BackendService directly determining how that BackendService negotiates TLS. /// public class BackendAuthenticationConfig : Google.Apis.Requests.IDirectResponseSchema { @@ -12720,7 +12753,7 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset /// /// Required. Name of the ClientTlsPolicy resource. It matches the pattern - /// `projects/*/locations/{location}/clientTlsPolicies/{client_tls_policy}` + /// `projects/{project}/locations/{location}/clientTlsPolicies/{client_tls_policy}` /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } diff --git a/Src/Generated/Google.Apis.NetworkSecurity.v1/Google.Apis.NetworkSecurity.v1.csproj b/Src/Generated/Google.Apis.NetworkSecurity.v1/Google.Apis.NetworkSecurity.v1.csproj index fcab8a25b2..f48c00560b 100644 --- a/Src/Generated/Google.Apis.NetworkSecurity.v1/Google.Apis.NetworkSecurity.v1.csproj +++ b/Src/Generated/Google.Apis.NetworkSecurity.v1/Google.Apis.NetworkSecurity.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.NetworkSecurity.v1 Client Library - 1.70.0.3807 + 1.70.0.3847 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.NetworkServices.v1/Google.Apis.NetworkServices.v1.cs b/Src/Generated/Google.Apis.NetworkServices.v1/Google.Apis.NetworkServices.v1.cs index 1d03b71877..2f867b03ea 100644 --- a/Src/Generated/Google.Apis.NetworkServices.v1/Google.Apis.NetworkServices.v1.cs +++ b/Src/Generated/Google.Apis.NetworkServices.v1/Google.Apis.NetworkServices.v1.cs @@ -7692,7 +7692,7 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset /// /// Required. One or more port numbers (1-65535), on which the Gateway will receive traffic. The proxy binds to - /// the specified ports. Gateways of type 'SECURE_WEB_GATEWAY' are limited to 1 port. Gateways of type + /// the specified ports. Gateways of type 'SECURE_WEB_GATEWAY' are limited to 5 ports. Gateways of type /// 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6 and support multiple ports. /// [Newtonsoft.Json.JsonPropertyAttribute("ports")] @@ -11036,7 +11036,7 @@ public class WasmPluginLogConfig : Google.Apis.Requests.IDirectResponseSchema public virtual System.Nullable Enable { get; set; } /// - /// Non-empty default. Specificies the lowest level of the plugin logs that are exported to Cloud Logging. This + /// Non-empty default. Specifies the lowest level of the plugin logs that are exported to Cloud Logging. This /// setting relates to the logs generated by using logging statements in your Wasm code. This field is can be /// set only if logging is enabled for the plugin. If the field is not provided when logging is enabled, it is /// set to `INFO` by default. diff --git a/Src/Generated/Google.Apis.NetworkServices.v1/Google.Apis.NetworkServices.v1.csproj b/Src/Generated/Google.Apis.NetworkServices.v1/Google.Apis.NetworkServices.v1.csproj index 6131c8c68a..922654573f 100644 --- a/Src/Generated/Google.Apis.NetworkServices.v1/Google.Apis.NetworkServices.v1.csproj +++ b/Src/Generated/Google.Apis.NetworkServices.v1/Google.Apis.NetworkServices.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.NetworkServices.v1 Client Library - 1.70.0.3819 + 1.70.0.3842 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.NetworkServices.v1beta1/Google.Apis.NetworkServices.v1beta1.cs b/Src/Generated/Google.Apis.NetworkServices.v1beta1/Google.Apis.NetworkServices.v1beta1.cs index 1e5668017f..1597729bf2 100644 --- a/Src/Generated/Google.Apis.NetworkServices.v1beta1/Google.Apis.NetworkServices.v1beta1.cs +++ b/Src/Generated/Google.Apis.NetworkServices.v1beta1/Google.Apis.NetworkServices.v1beta1.cs @@ -7233,7 +7233,7 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset /// /// Required. One or more port numbers (1-65535), on which the Gateway will receive traffic. The proxy binds to - /// the specified ports. Gateways of type 'SECURE_WEB_GATEWAY' are limited to 1 port. Gateways of type + /// the specified ports. Gateways of type 'SECURE_WEB_GATEWAY' are limited to 5 ports. Gateways of type /// 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6 and support multiple ports. /// [Newtonsoft.Json.JsonPropertyAttribute("ports")] @@ -10644,7 +10644,7 @@ public class WasmPluginLogConfig : Google.Apis.Requests.IDirectResponseSchema public virtual System.Nullable Enable { get; set; } /// - /// Non-empty default. Specificies the lowest level of the plugin logs that are exported to Cloud Logging. This + /// Non-empty default. Specifies the lowest level of the plugin logs that are exported to Cloud Logging. This /// setting relates to the logs generated by using logging statements in your Wasm code. This field is can be /// set only if logging is enabled for the plugin. If the field is not provided when logging is enabled, it is /// set to `INFO` by default. diff --git a/Src/Generated/Google.Apis.NetworkServices.v1beta1/Google.Apis.NetworkServices.v1beta1.csproj b/Src/Generated/Google.Apis.NetworkServices.v1beta1/Google.Apis.NetworkServices.v1beta1.csproj index bf0c888a64..d49e8b0dfa 100644 --- a/Src/Generated/Google.Apis.NetworkServices.v1beta1/Google.Apis.NetworkServices.v1beta1.csproj +++ b/Src/Generated/Google.Apis.NetworkServices.v1beta1/Google.Apis.NetworkServices.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.NetworkServices.v1beta1 Client Library - 1.70.0.3829 + 1.70.0.3842 Google LLC Copyright 2025 Google LLC Google diff --git a/Src/Generated/Google.Apis.SA360.v0/Google.Apis.SA360.v0.cs b/Src/Generated/Google.Apis.SA360.v0/Google.Apis.SA360.v0.cs index c1e22f89f2..966567af97 100644 --- a/Src/Generated/Google.Apis.SA360.v0/Google.Apis.SA360.v0.cs +++ b/Src/Generated/Google.Apis.SA360.v0/Google.Apis.SA360.v0.cs @@ -2772,6 +2772,10 @@ public class GoogleAdsSearchads360V0ErrorsErrorCode : Google.Apis.Requests.IDire [Newtonsoft.Json.JsonPropertyAttribute("authorizationError")] public virtual string AuthorizationError { get; set; } + /// The reasons for the conversion custom variable error + [Newtonsoft.Json.JsonPropertyAttribute("conversionCustomVariableError")] + public virtual string ConversionCustomVariableError { get; set; } + /// The reasons for the custom column error [Newtonsoft.Json.JsonPropertyAttribute("customColumnError")] public virtual string CustomColumnError { get; set; } @@ -3166,8 +3170,7 @@ public class GoogleAdsSearchads360V0ResourcesAd : Google.Apis.Requests.IDirectRe /// /// Immutable. The name of the ad. This is only used to be able to identify the ad. It does not need to be - /// unique and does not affect the served ad. The name field is currently only supported for DisplayUploadAd, - /// ImageAd, ShoppingComparisonListingAd and VideoAd. + /// unique and does not affect the served ad. /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } diff --git a/Src/Generated/Google.Apis.SA360.v0/Google.Apis.SA360.v0.csproj b/Src/Generated/Google.Apis.SA360.v0/Google.Apis.SA360.v0.csproj index b82521a3f8..2c47cca265 100644 --- a/Src/Generated/Google.Apis.SA360.v0/Google.Apis.SA360.v0.csproj +++ b/Src/Generated/Google.Apis.SA360.v0/Google.Apis.SA360.v0.csproj @@ -3,7 +3,7 @@ Google.Apis.SA360.v0 Client Library - 1.69.0.3749 + 1.70.0.3854 Google LLC Copyright 2025 Google LLC Google @@ -59,8 +59,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.cs b/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.cs index c4ded16ae7..00bd713618 100644 --- a/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.cs +++ b/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.cs @@ -3517,6 +3517,15 @@ public class PhpSettings : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("common")] public virtual CommonLanguageSettings Common { get; set; } + /// + /// The package name to use in Php. Clobbers the php_namespace option set in the protobuf. This should be used + /// **only** by APIs who have already set the language_settings.php.package_name" field in gapic.yaml. API teams + /// should use the protobuf php_namespace option where possible. Example of a YAML configuration:: publishing: + /// library_settings: php_settings: library_package: Google\Cloud\PubSub\V1 + /// + [Newtonsoft.Json.JsonPropertyAttribute("libraryPackage")] + public virtual string LibraryPackage { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } diff --git a/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.csproj b/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.csproj index 0ceafed48f..7c7a7fdcaa 100644 --- a/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.csproj +++ b/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.ServiceConsumerManagement.v1 Client Library - 1.69.0.3787 + 1.70.0.3822 Google LLC Copyright 2025 Google LLC Google @@ -59,8 +59,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ServiceConsumerManagement.v1beta1/Google.Apis.ServiceConsumerManagement.v1beta1.cs b/Src/Generated/Google.Apis.ServiceConsumerManagement.v1beta1/Google.Apis.ServiceConsumerManagement.v1beta1.cs index 729ab39e63..063fca821c 100644 --- a/Src/Generated/Google.Apis.ServiceConsumerManagement.v1beta1/Google.Apis.ServiceConsumerManagement.v1beta1.cs +++ b/Src/Generated/Google.Apis.ServiceConsumerManagement.v1beta1/Google.Apis.ServiceConsumerManagement.v1beta1.cs @@ -3860,6 +3860,15 @@ public class PhpSettings : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("common")] public virtual CommonLanguageSettings Common { get; set; } + /// + /// The package name to use in Php. Clobbers the php_namespace option set in the protobuf. This should be used + /// **only** by APIs who have already set the language_settings.php.package_name" field in gapic.yaml. API teams + /// should use the protobuf php_namespace option where possible. Example of a YAML configuration:: publishing: + /// library_settings: php_settings: library_package: Google\Cloud\PubSub\V1 + /// + [Newtonsoft.Json.JsonPropertyAttribute("libraryPackage")] + public virtual string LibraryPackage { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } diff --git a/Src/Generated/Google.Apis.ServiceConsumerManagement.v1beta1/Google.Apis.ServiceConsumerManagement.v1beta1.csproj b/Src/Generated/Google.Apis.ServiceConsumerManagement.v1beta1/Google.Apis.ServiceConsumerManagement.v1beta1.csproj index 2ef2d89de7..ec90209c08 100644 --- a/Src/Generated/Google.Apis.ServiceConsumerManagement.v1beta1/Google.Apis.ServiceConsumerManagement.v1beta1.csproj +++ b/Src/Generated/Google.Apis.ServiceConsumerManagement.v1beta1/Google.Apis.ServiceConsumerManagement.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.ServiceConsumerManagement.v1beta1 Client Library - 1.69.0.3787 + 1.70.0.3822 Google LLC Copyright 2025 Google LLC Google @@ -59,8 +59,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ServiceUsage.v1/Google.Apis.ServiceUsage.v1.cs b/Src/Generated/Google.Apis.ServiceUsage.v1/Google.Apis.ServiceUsage.v1.cs index db011508b3..56ceabb8d5 100644 --- a/Src/Generated/Google.Apis.ServiceUsage.v1/Google.Apis.ServiceUsage.v1.cs +++ b/Src/Generated/Google.Apis.ServiceUsage.v1/Google.Apis.ServiceUsage.v1.cs @@ -4275,6 +4275,15 @@ public class PhpSettings : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("common")] public virtual CommonLanguageSettings Common { get; set; } + /// + /// The package name to use in Php. Clobbers the php_namespace option set in the protobuf. This should be used + /// **only** by APIs who have already set the language_settings.php.package_name" field in gapic.yaml. API teams + /// should use the protobuf php_namespace option where possible. Example of a YAML configuration:: publishing: + /// library_settings: php_settings: library_package: Google\Cloud\PubSub\V1 + /// + [Newtonsoft.Json.JsonPropertyAttribute("libraryPackage")] + public virtual string LibraryPackage { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } diff --git a/Src/Generated/Google.Apis.ServiceUsage.v1/Google.Apis.ServiceUsage.v1.csproj b/Src/Generated/Google.Apis.ServiceUsage.v1/Google.Apis.ServiceUsage.v1.csproj index 8b8e924ce1..b9c07b9a38 100644 --- a/Src/Generated/Google.Apis.ServiceUsage.v1/Google.Apis.ServiceUsage.v1.csproj +++ b/Src/Generated/Google.Apis.ServiceUsage.v1/Google.Apis.ServiceUsage.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.ServiceUsage.v1 Client Library - 1.69.0.3787 + 1.70.0.3822 Google LLC Copyright 2025 Google LLC Google @@ -60,8 +60,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.cs b/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.cs index abbe5b3c9e..69d2f192f7 100644 --- a/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.cs +++ b/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.cs @@ -5857,6 +5857,15 @@ public class PhpSettings : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("common")] public virtual CommonLanguageSettings Common { get; set; } + /// + /// The package name to use in Php. Clobbers the php_namespace option set in the protobuf. This should be used + /// **only** by APIs who have already set the language_settings.php.package_name" field in gapic.yaml. API teams + /// should use the protobuf php_namespace option where possible. Example of a YAML configuration:: publishing: + /// library_settings: php_settings: library_package: Google\Cloud\PubSub\V1 + /// + [Newtonsoft.Json.JsonPropertyAttribute("libraryPackage")] + public virtual string LibraryPackage { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } diff --git a/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.csproj b/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.csproj index 38cbdd7108..4aa68494fd 100644 --- a/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.csproj +++ b/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.ServiceUsage.v1beta1 Client Library - 1.69.0.3787 + 1.70.0.3822 Google LLC Copyright 2025 Google LLC Google @@ -59,8 +59,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.cs b/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.cs index 49bf7fcb2f..a6196c030c 100644 --- a/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.cs +++ b/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.cs @@ -10225,12 +10225,158 @@ public class CustomPlacementConfigData /// Encryption configuration for a bucket. public class EncryptionData { + /// + /// If set, the new objects created in this bucket must comply with this enforcement config. Changing this + /// has no effect on existing objects; it applies to new objects only. If omitted, the new objects are + /// allowed to be encrypted with Customer Managed Encryption type by default. + /// + [Newtonsoft.Json.JsonPropertyAttribute("customerManagedEncryptionEnforcementConfig")] + public virtual CustomerManagedEncryptionEnforcementConfigData CustomerManagedEncryptionEnforcementConfig { get; set; } + + /// + /// If set, the new objects created in this bucket must comply with this enforcement config. Changing this + /// has no effect on existing objects; it applies to new objects only. If omitted, the new objects are + /// allowed to be encrypted with Customer Supplied Encryption type by default. + /// + [Newtonsoft.Json.JsonPropertyAttribute("customerSuppliedEncryptionEnforcementConfig")] + public virtual CustomerSuppliedEncryptionEnforcementConfigData CustomerSuppliedEncryptionEnforcementConfig { get; set; } + /// /// A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method /// is specified. /// [Newtonsoft.Json.JsonPropertyAttribute("defaultKmsKeyName")] public virtual string DefaultKmsKeyName { get; set; } + + /// + /// If set, the new objects created in this bucket must comply with this enforcement config. Changing this + /// has no effect on existing objects; it applies to new objects only. If omitted, the new objects are + /// allowed to be encrypted with Google Managed Encryption type by default. + /// + [Newtonsoft.Json.JsonPropertyAttribute("googleManagedEncryptionEnforcementConfig")] + public virtual GoogleManagedEncryptionEnforcementConfigData GoogleManagedEncryptionEnforcementConfig { get; set; } + + /// + /// If set, the new objects created in this bucket must comply with this enforcement config. Changing this + /// has no effect on existing objects; it applies to new objects only. If omitted, the new objects are + /// allowed to be encrypted with Customer Managed Encryption type by default. + /// + public class CustomerManagedEncryptionEnforcementConfigData + { + /// + /// Server-determined value that indicates the time from which configuration was enforced and effective. + /// This value is in RFC 3339 format. + /// + [Newtonsoft.Json.JsonPropertyAttribute("effectiveTime")] + public virtual string EffectiveTimeRaw { get; set; } + + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EffectiveTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseDateTimeToDateTimeOffset(EffectiveTimeRaw); + set => EffectiveTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToDateTime(value); + } + + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EffectiveTimeDateTimeOffset instead.")] + public virtual System.DateTime? EffectiveTime + { + get => Google.Apis.Util.Utilities.GetDateTimeFromString(EffectiveTimeRaw); + set => EffectiveTimeRaw = Google.Apis.Util.Utilities.GetStringFromDateTime(value); + } + + /// Restriction mode for Customer-Managed Encryption Keys. Defaults to NotRestricted. + [Newtonsoft.Json.JsonPropertyAttribute("restrictionMode")] + public virtual string RestrictionMode { get; set; } + } + + /// + /// If set, the new objects created in this bucket must comply with this enforcement config. Changing this + /// has no effect on existing objects; it applies to new objects only. If omitted, the new objects are + /// allowed to be encrypted with Customer Supplied Encryption type by default. + /// + public class CustomerSuppliedEncryptionEnforcementConfigData + { + /// + /// Server-determined value that indicates the time from which configuration was enforced and effective. + /// This value is in RFC 3339 format. + /// + [Newtonsoft.Json.JsonPropertyAttribute("effectiveTime")] + public virtual string EffectiveTimeRaw { get; set; } + + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EffectiveTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseDateTimeToDateTimeOffset(EffectiveTimeRaw); + set => EffectiveTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToDateTime(value); + } + + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EffectiveTimeDateTimeOffset instead.")] + public virtual System.DateTime? EffectiveTime + { + get => Google.Apis.Util.Utilities.GetDateTimeFromString(EffectiveTimeRaw); + set => EffectiveTimeRaw = Google.Apis.Util.Utilities.GetStringFromDateTime(value); + } + + /// + /// Restriction mode for Customer-Supplied Encryption Keys. Defaults to NotRestricted. + /// + [Newtonsoft.Json.JsonPropertyAttribute("restrictionMode")] + public virtual string RestrictionMode { get; set; } + } + + /// + /// If set, the new objects created in this bucket must comply with this enforcement config. Changing this + /// has no effect on existing objects; it applies to new objects only. If omitted, the new objects are + /// allowed to be encrypted with Google Managed Encryption type by default. + /// + public class GoogleManagedEncryptionEnforcementConfigData + { + /// + /// Server-determined value that indicates the time from which configuration was enforced and effective. + /// This value is in RFC 3339 format. + /// + [Newtonsoft.Json.JsonPropertyAttribute("effectiveTime")] + public virtual string EffectiveTimeRaw { get; set; } + + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EffectiveTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseDateTimeToDateTimeOffset(EffectiveTimeRaw); + set => EffectiveTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToDateTime(value); + } + + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EffectiveTimeDateTimeOffset instead.")] + public virtual System.DateTime? EffectiveTime + { + get => Google.Apis.Util.Utilities.GetDateTimeFromString(EffectiveTimeRaw); + set => EffectiveTimeRaw = Google.Apis.Util.Utilities.GetStringFromDateTime(value); + } + + /// Restriction mode for Google-Managed Encryption Keys. Defaults to NotRestricted. + [Newtonsoft.Json.JsonPropertyAttribute("restrictionMode")] + public virtual string RestrictionMode { get; set; } + } } /// The bucket's hierarchical namespace configuration. diff --git a/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.csproj b/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.csproj index 848ab1dd56..f94bd0532a 100644 --- a/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.csproj +++ b/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Storage.v1 Client Library - 1.70.0.3832 + 1.70.0.3851 Google LLC Copyright 2025 Google LLC Google