Returns the purchaseOptions Resource.
batchDelete(packageName, body=None, x__xgafv=None)
Deletes one or more one-time products.
batchGet(packageName, productIds=None, x__xgafv=None)
Reads one or more one-time products.
batchUpdate(packageName, body=None, x__xgafv=None)
Creates or updates one or more one-time products.
Close httplib2 connections.
delete(packageName, productId, latencyTolerance=None, x__xgafv=None)
Deletes a one-time product.
get(packageName, productId, x__xgafv=None)
Reads a single one-time product.
list(packageName, pageSize=None, pageToken=None, x__xgafv=None)
Lists all one-time products under a given app.
Retrieves the next page of results.
Creates or updates a one-time product.
batchDelete(packageName, body=None, x__xgafv=None)
Deletes one or more one-time products. Args: packageName: string, 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. (required) body: object, The request body. The object takes the form of: { # Request message for BatchDeleteOneTimeProduct. "requests": [ # Required. A list of delete requests of up to 100 elements. All requests must delete different one-time products. { # Request message for deleting a one-time product. "latencyTolerance": "A String", # Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. "packageName": "A String", # Required. The parent app (package name) of the one-time product to delete. "productId": "A String", # Required. The one-time product ID of the one-time product to delete. }, ], } x__xgafv: string, V1 error format. Allowed values 1 - v1 error format 2 - v2 error format
batchGet(packageName, productIds=None, x__xgafv=None)
Reads one or more one-time products. Args: packageName: string, Required. The parent app (package name) for which the products should be retrieved. Must be equal to the package_name field on all requests. (required) productIds: string, Required. A list of up to 100 product IDs to retrieve. All IDs must be different. (repeated) x__xgafv: string, V1 error format. Allowed values 1 - v1 error format 2 - v2 error format Returns: An object of the form: { # Response message for the BatchGetOneTimeProducts endpoint. "oneTimeProducts": [ # The list of requested one-time products, in the same order as the request. { # A single one-time product for an app. "listings": [ # Required. Set of localized title and description data. Must not have duplicate entries with the same language_code. { # Regional store listing for a one-time product. "description": "A String", # Required. The description of this product in the language of this listing. The maximum length is 200 characters. "languageCode": "A String", # Required. The language of this listing, as defined by BCP-47, e.g., "en-US". "title": "A String", # Required. The title of this product in the language of this listing. The maximum length is 55 characters. }, ], "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "packageName": "A String", # Required. Immutable. Package name of the parent app. "productId": "A String", # 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 (.). "purchaseOptions": [ # Required. The set of purchase options for this one-time product. { # A single purchase option for a one-time product. "buyOption": { # A purchase option that can be bought. # A purchase option that can be bought. "legacyCompatible": True or False, # 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. "multiQuantityEnabled": True or False, # Optional. Whether this purchase option allows multi-quantity. Multi-quantity allows buyer to purchase more than one item in a single checkout. }, "newRegionsConfig": { # Pricing information for any new regions Play may launch in the future. # 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. "availability": "A String", # 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. "eurPrice": { # Represents an amount of money with its currency type. # Required. Price in EUR to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "usdPrice": { # Represents an amount of money with its currency type. # Required. Price in USD to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, }, "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "purchaseOptionId": "A String", # 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. "regionalPricingAndAvailabilityConfigs": [ # Regional pricing and availability information for this purchase option. { # Regional pricing and availability configuration for a purchase option. "availability": "A String", # The availability of the purchase option. "price": { # Represents an amount of money with its currency type. # The price of the purchase option in the specified region. Must be set in the currency that is linked to the specified region. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g., "US". }, ], "rentOption": { # A purchase option that can be rented. # A purchase option that can be rented. "expirationPeriod": "A String", # Optional. The amount of time the user has after starting consuming the entitlement before it is revoked. Specified in ISO 8601 format. "rentalPeriod": "A String", # Required. The amount of time a user has the entitlement for. Starts at purchase flow completion. Specified in ISO 8601 format. }, "state": "A String", # 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. "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time product purchase options. # Optional. Details about taxes and legal compliance. "withdrawalRightType": "A String", # 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. }, }, ], "regionsVersion": { # The version of the available regions being used for the specified resource. # Output only. The version of the regions configuration that was used to generate the one-time product. "version": "A String", # 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. }, "restrictedPaymentCountries": { # Countries where the purchase of this product is restricted to payment methods registered in the same country. If empty, no payment location restrictions are imposed. # 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. "regionCodes": [ # Required. Region codes to impose payment restrictions on, as defined by ISO 3166-2, e.g. "US". "A String", ], }, "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time products. # Details about taxes and legal compliance. "isTokenizedDigitalAsset": True or False, # Whether this one-time product is declared as a product representing a tokenized digital asset. "regionalTaxConfigs": [ # Regional tax configuration. { # Details about taxation in a given geographical region. "eligibleForStreamingServiceTaxRate": True or False, # 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. "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g. "US". "streamingTaxType": "A String", # 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). "taxTier": "A String", # 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). }, ], }, }, ], }
batchUpdate(packageName, body=None, x__xgafv=None)
Creates or updates one or more one-time products. Args: packageName: string, 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. (required) body: object, The request body. The object takes the form of: { # Request message for BatchUpdateOneTimeProduct. "requests": [ # Required. A list of update requests of up to 100 elements. All requests must update different one-time products. { # Request message for UpdateOneTimeProduct. "allowMissing": True or False, # 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. "latencyTolerance": "A String", # Optional. The latency tolerance for the propagation of this product upsert. Defaults to latency-sensitive. "oneTimeProduct": { # A single one-time product for an app. # Required. The one-time product to upsert. "listings": [ # Required. Set of localized title and description data. Must not have duplicate entries with the same language_code. { # Regional store listing for a one-time product. "description": "A String", # Required. The description of this product in the language of this listing. The maximum length is 200 characters. "languageCode": "A String", # Required. The language of this listing, as defined by BCP-47, e.g., "en-US". "title": "A String", # Required. The title of this product in the language of this listing. The maximum length is 55 characters. }, ], "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "packageName": "A String", # Required. Immutable. Package name of the parent app. "productId": "A String", # 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 (.). "purchaseOptions": [ # Required. The set of purchase options for this one-time product. { # A single purchase option for a one-time product. "buyOption": { # A purchase option that can be bought. # A purchase option that can be bought. "legacyCompatible": True or False, # 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. "multiQuantityEnabled": True or False, # Optional. Whether this purchase option allows multi-quantity. Multi-quantity allows buyer to purchase more than one item in a single checkout. }, "newRegionsConfig": { # Pricing information for any new regions Play may launch in the future. # 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. "availability": "A String", # 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. "eurPrice": { # Represents an amount of money with its currency type. # Required. Price in EUR to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "usdPrice": { # Represents an amount of money with its currency type. # Required. Price in USD to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, }, "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "purchaseOptionId": "A String", # 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. "regionalPricingAndAvailabilityConfigs": [ # Regional pricing and availability information for this purchase option. { # Regional pricing and availability configuration for a purchase option. "availability": "A String", # The availability of the purchase option. "price": { # Represents an amount of money with its currency type. # The price of the purchase option in the specified region. Must be set in the currency that is linked to the specified region. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g., "US". }, ], "rentOption": { # A purchase option that can be rented. # A purchase option that can be rented. "expirationPeriod": "A String", # Optional. The amount of time the user has after starting consuming the entitlement before it is revoked. Specified in ISO 8601 format. "rentalPeriod": "A String", # Required. The amount of time a user has the entitlement for. Starts at purchase flow completion. Specified in ISO 8601 format. }, "state": "A String", # 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. "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time product purchase options. # Optional. Details about taxes and legal compliance. "withdrawalRightType": "A String", # 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. }, }, ], "regionsVersion": { # The version of the available regions being used for the specified resource. # Output only. The version of the regions configuration that was used to generate the one-time product. "version": "A String", # 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. }, "restrictedPaymentCountries": { # Countries where the purchase of this product is restricted to payment methods registered in the same country. If empty, no payment location restrictions are imposed. # 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. "regionCodes": [ # Required. Region codes to impose payment restrictions on, as defined by ISO 3166-2, e.g. "US". "A String", ], }, "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time products. # Details about taxes and legal compliance. "isTokenizedDigitalAsset": True or False, # Whether this one-time product is declared as a product representing a tokenized digital asset. "regionalTaxConfigs": [ # Regional tax configuration. { # Details about taxation in a given geographical region. "eligibleForStreamingServiceTaxRate": True or False, # 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. "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g. "US". "streamingTaxType": "A String", # 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). "taxTier": "A String", # 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). }, ], }, }, "regionsVersion": { # The version of the available regions being used for the specified resource. # Required. The version of the available regions being used for the one-time product. "version": "A String", # 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. }, "updateMask": "A String", # Required. The list of fields to be updated. }, ], } x__xgafv: string, V1 error format. Allowed values 1 - v1 error format 2 - v2 error format Returns: An object of the form: { # Response message for BatchUpdateOneTimeProduct. "oneTimeProducts": [ # The list of updated one-time products list, in the same order as the request. { # A single one-time product for an app. "listings": [ # Required. Set of localized title and description data. Must not have duplicate entries with the same language_code. { # Regional store listing for a one-time product. "description": "A String", # Required. The description of this product in the language of this listing. The maximum length is 200 characters. "languageCode": "A String", # Required. The language of this listing, as defined by BCP-47, e.g., "en-US". "title": "A String", # Required. The title of this product in the language of this listing. The maximum length is 55 characters. }, ], "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "packageName": "A String", # Required. Immutable. Package name of the parent app. "productId": "A String", # 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 (.). "purchaseOptions": [ # Required. The set of purchase options for this one-time product. { # A single purchase option for a one-time product. "buyOption": { # A purchase option that can be bought. # A purchase option that can be bought. "legacyCompatible": True or False, # 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. "multiQuantityEnabled": True or False, # Optional. Whether this purchase option allows multi-quantity. Multi-quantity allows buyer to purchase more than one item in a single checkout. }, "newRegionsConfig": { # Pricing information for any new regions Play may launch in the future. # 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. "availability": "A String", # 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. "eurPrice": { # Represents an amount of money with its currency type. # Required. Price in EUR to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "usdPrice": { # Represents an amount of money with its currency type. # Required. Price in USD to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, }, "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "purchaseOptionId": "A String", # 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. "regionalPricingAndAvailabilityConfigs": [ # Regional pricing and availability information for this purchase option. { # Regional pricing and availability configuration for a purchase option. "availability": "A String", # The availability of the purchase option. "price": { # Represents an amount of money with its currency type. # The price of the purchase option in the specified region. Must be set in the currency that is linked to the specified region. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g., "US". }, ], "rentOption": { # A purchase option that can be rented. # A purchase option that can be rented. "expirationPeriod": "A String", # Optional. The amount of time the user has after starting consuming the entitlement before it is revoked. Specified in ISO 8601 format. "rentalPeriod": "A String", # Required. The amount of time a user has the entitlement for. Starts at purchase flow completion. Specified in ISO 8601 format. }, "state": "A String", # 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. "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time product purchase options. # Optional. Details about taxes and legal compliance. "withdrawalRightType": "A String", # 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. }, }, ], "regionsVersion": { # The version of the available regions being used for the specified resource. # Output only. The version of the regions configuration that was used to generate the one-time product. "version": "A String", # 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. }, "restrictedPaymentCountries": { # Countries where the purchase of this product is restricted to payment methods registered in the same country. If empty, no payment location restrictions are imposed. # 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. "regionCodes": [ # Required. Region codes to impose payment restrictions on, as defined by ISO 3166-2, e.g. "US". "A String", ], }, "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time products. # Details about taxes and legal compliance. "isTokenizedDigitalAsset": True or False, # Whether this one-time product is declared as a product representing a tokenized digital asset. "regionalTaxConfigs": [ # Regional tax configuration. { # Details about taxation in a given geographical region. "eligibleForStreamingServiceTaxRate": True or False, # 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. "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g. "US". "streamingTaxType": "A String", # 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). "taxTier": "A String", # 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). }, ], }, }, ], }
close()
Close httplib2 connections.
delete(packageName, productId, latencyTolerance=None, x__xgafv=None)
Deletes a one-time product. Args: packageName: string, Required. The parent app (package name) of the one-time product to delete. (required) productId: string, Required. The one-time product ID of the one-time product to delete. (required) latencyTolerance: string, Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. Allowed values PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED - Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE. 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. PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT - 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. x__xgafv: string, V1 error format. Allowed values 1 - v1 error format 2 - v2 error format
get(packageName, productId, x__xgafv=None)
Reads a single one-time product. Args: packageName: string, Required. The parent app (package name) of the product to retrieve. (required) productId: string, Required. The product ID of the product to retrieve. (required) x__xgafv: string, V1 error format. Allowed values 1 - v1 error format 2 - v2 error format Returns: An object of the form: { # A single one-time product for an app. "listings": [ # Required. Set of localized title and description data. Must not have duplicate entries with the same language_code. { # Regional store listing for a one-time product. "description": "A String", # Required. The description of this product in the language of this listing. The maximum length is 200 characters. "languageCode": "A String", # Required. The language of this listing, as defined by BCP-47, e.g., "en-US". "title": "A String", # Required. The title of this product in the language of this listing. The maximum length is 55 characters. }, ], "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "packageName": "A String", # Required. Immutable. Package name of the parent app. "productId": "A String", # 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 (.). "purchaseOptions": [ # Required. The set of purchase options for this one-time product. { # A single purchase option for a one-time product. "buyOption": { # A purchase option that can be bought. # A purchase option that can be bought. "legacyCompatible": True or False, # 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. "multiQuantityEnabled": True or False, # Optional. Whether this purchase option allows multi-quantity. Multi-quantity allows buyer to purchase more than one item in a single checkout. }, "newRegionsConfig": { # Pricing information for any new regions Play may launch in the future. # 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. "availability": "A String", # 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. "eurPrice": { # Represents an amount of money with its currency type. # Required. Price in EUR to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "usdPrice": { # Represents an amount of money with its currency type. # Required. Price in USD to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, }, "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "purchaseOptionId": "A String", # 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. "regionalPricingAndAvailabilityConfigs": [ # Regional pricing and availability information for this purchase option. { # Regional pricing and availability configuration for a purchase option. "availability": "A String", # The availability of the purchase option. "price": { # Represents an amount of money with its currency type. # The price of the purchase option in the specified region. Must be set in the currency that is linked to the specified region. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g., "US". }, ], "rentOption": { # A purchase option that can be rented. # A purchase option that can be rented. "expirationPeriod": "A String", # Optional. The amount of time the user has after starting consuming the entitlement before it is revoked. Specified in ISO 8601 format. "rentalPeriod": "A String", # Required. The amount of time a user has the entitlement for. Starts at purchase flow completion. Specified in ISO 8601 format. }, "state": "A String", # 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. "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time product purchase options. # Optional. Details about taxes and legal compliance. "withdrawalRightType": "A String", # 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. }, }, ], "regionsVersion": { # The version of the available regions being used for the specified resource. # Output only. The version of the regions configuration that was used to generate the one-time product. "version": "A String", # 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. }, "restrictedPaymentCountries": { # Countries where the purchase of this product is restricted to payment methods registered in the same country. If empty, no payment location restrictions are imposed. # 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. "regionCodes": [ # Required. Region codes to impose payment restrictions on, as defined by ISO 3166-2, e.g. "US". "A String", ], }, "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time products. # Details about taxes and legal compliance. "isTokenizedDigitalAsset": True or False, # Whether this one-time product is declared as a product representing a tokenized digital asset. "regionalTaxConfigs": [ # Regional tax configuration. { # Details about taxation in a given geographical region. "eligibleForStreamingServiceTaxRate": True or False, # 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. "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g. "US". "streamingTaxType": "A String", # 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). "taxTier": "A String", # 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). }, ], }, }
list(packageName, pageSize=None, pageToken=None, x__xgafv=None)
Lists all one-time products under a given app. Args: packageName: string, Required. The parent app (package name) for which the one-time product should be read. (required) pageSize: integer, 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. pageToken: string, 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. x__xgafv: string, V1 error format. Allowed values 1 - v1 error format 2 - v2 error format Returns: An object of the form: { # Response message for ListOneTimeProducts. "nextPageToken": "A String", # A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. "oneTimeProducts": [ # The one-time products from the specified app. { # A single one-time product for an app. "listings": [ # Required. Set of localized title and description data. Must not have duplicate entries with the same language_code. { # Regional store listing for a one-time product. "description": "A String", # Required. The description of this product in the language of this listing. The maximum length is 200 characters. "languageCode": "A String", # Required. The language of this listing, as defined by BCP-47, e.g., "en-US". "title": "A String", # Required. The title of this product in the language of this listing. The maximum length is 55 characters. }, ], "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "packageName": "A String", # Required. Immutable. Package name of the parent app. "productId": "A String", # 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 (.). "purchaseOptions": [ # Required. The set of purchase options for this one-time product. { # A single purchase option for a one-time product. "buyOption": { # A purchase option that can be bought. # A purchase option that can be bought. "legacyCompatible": True or False, # 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. "multiQuantityEnabled": True or False, # Optional. Whether this purchase option allows multi-quantity. Multi-quantity allows buyer to purchase more than one item in a single checkout. }, "newRegionsConfig": { # Pricing information for any new regions Play may launch in the future. # 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. "availability": "A String", # 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. "eurPrice": { # Represents an amount of money with its currency type. # Required. Price in EUR to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "usdPrice": { # Represents an amount of money with its currency type. # Required. Price in USD to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, }, "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "purchaseOptionId": "A String", # 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. "regionalPricingAndAvailabilityConfigs": [ # Regional pricing and availability information for this purchase option. { # Regional pricing and availability configuration for a purchase option. "availability": "A String", # The availability of the purchase option. "price": { # Represents an amount of money with its currency type. # The price of the purchase option in the specified region. Must be set in the currency that is linked to the specified region. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g., "US". }, ], "rentOption": { # A purchase option that can be rented. # A purchase option that can be rented. "expirationPeriod": "A String", # Optional. The amount of time the user has after starting consuming the entitlement before it is revoked. Specified in ISO 8601 format. "rentalPeriod": "A String", # Required. The amount of time a user has the entitlement for. Starts at purchase flow completion. Specified in ISO 8601 format. }, "state": "A String", # 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. "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time product purchase options. # Optional. Details about taxes and legal compliance. "withdrawalRightType": "A String", # 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. }, }, ], "regionsVersion": { # The version of the available regions being used for the specified resource. # Output only. The version of the regions configuration that was used to generate the one-time product. "version": "A String", # 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. }, "restrictedPaymentCountries": { # Countries where the purchase of this product is restricted to payment methods registered in the same country. If empty, no payment location restrictions are imposed. # 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. "regionCodes": [ # Required. Region codes to impose payment restrictions on, as defined by ISO 3166-2, e.g. "US". "A String", ], }, "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time products. # Details about taxes and legal compliance. "isTokenizedDigitalAsset": True or False, # Whether this one-time product is declared as a product representing a tokenized digital asset. "regionalTaxConfigs": [ # Regional tax configuration. { # Details about taxation in a given geographical region. "eligibleForStreamingServiceTaxRate": True or False, # 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. "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g. "US". "streamingTaxType": "A String", # 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). "taxTier": "A String", # 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). }, ], }, }, ], }
list_next()
Retrieves the next page of results. Args: previous_request: The request for the previous page. (required) previous_response: The response from the request for the previous page. (required) Returns: A request object that you can call 'execute()' on to request the next page. Returns None if there are no more items in the collection.
patch(packageName, productId, allowMissing=None, body=None, latencyTolerance=None, regionsVersion_version=None, updateMask=None, x__xgafv=None)
Creates or updates a one-time product. Args: packageName: string, Required. Immutable. Package name of the parent app. (required) productId: string, 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 (.). (required) body: object, The request body. The object takes the form of: { # A single one-time product for an app. "listings": [ # Required. Set of localized title and description data. Must not have duplicate entries with the same language_code. { # Regional store listing for a one-time product. "description": "A String", # Required. The description of this product in the language of this listing. The maximum length is 200 characters. "languageCode": "A String", # Required. The language of this listing, as defined by BCP-47, e.g., "en-US". "title": "A String", # Required. The title of this product in the language of this listing. The maximum length is 55 characters. }, ], "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "packageName": "A String", # Required. Immutable. Package name of the parent app. "productId": "A String", # 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 (.). "purchaseOptions": [ # Required. The set of purchase options for this one-time product. { # A single purchase option for a one-time product. "buyOption": { # A purchase option that can be bought. # A purchase option that can be bought. "legacyCompatible": True or False, # 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. "multiQuantityEnabled": True or False, # Optional. Whether this purchase option allows multi-quantity. Multi-quantity allows buyer to purchase more than one item in a single checkout. }, "newRegionsConfig": { # Pricing information for any new regions Play may launch in the future. # 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. "availability": "A String", # 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. "eurPrice": { # Represents an amount of money with its currency type. # Required. Price in EUR to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "usdPrice": { # Represents an amount of money with its currency type. # Required. Price in USD to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, }, "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "purchaseOptionId": "A String", # 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. "regionalPricingAndAvailabilityConfigs": [ # Regional pricing and availability information for this purchase option. { # Regional pricing and availability configuration for a purchase option. "availability": "A String", # The availability of the purchase option. "price": { # Represents an amount of money with its currency type. # The price of the purchase option in the specified region. Must be set in the currency that is linked to the specified region. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g., "US". }, ], "rentOption": { # A purchase option that can be rented. # A purchase option that can be rented. "expirationPeriod": "A String", # Optional. The amount of time the user has after starting consuming the entitlement before it is revoked. Specified in ISO 8601 format. "rentalPeriod": "A String", # Required. The amount of time a user has the entitlement for. Starts at purchase flow completion. Specified in ISO 8601 format. }, "state": "A String", # 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. "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time product purchase options. # Optional. Details about taxes and legal compliance. "withdrawalRightType": "A String", # 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. }, }, ], "regionsVersion": { # The version of the available regions being used for the specified resource. # Output only. The version of the regions configuration that was used to generate the one-time product. "version": "A String", # 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. }, "restrictedPaymentCountries": { # Countries where the purchase of this product is restricted to payment methods registered in the same country. If empty, no payment location restrictions are imposed. # 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. "regionCodes": [ # Required. Region codes to impose payment restrictions on, as defined by ISO 3166-2, e.g. "US". "A String", ], }, "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time products. # Details about taxes and legal compliance. "isTokenizedDigitalAsset": True or False, # Whether this one-time product is declared as a product representing a tokenized digital asset. "regionalTaxConfigs": [ # Regional tax configuration. { # Details about taxation in a given geographical region. "eligibleForStreamingServiceTaxRate": True or False, # 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. "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g. "US". "streamingTaxType": "A String", # 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). "taxTier": "A String", # 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). }, ], }, } allowMissing: boolean, 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. latencyTolerance: string, Optional. The latency tolerance for the propagation of this product upsert. Defaults to latency-sensitive. Allowed values PRODUCT_UPDATE_LATENCY_TOLERANCE_UNSPECIFIED - Defaults to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_SENSITIVE. 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. PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT - 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. regionsVersion_version: string, 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. updateMask: string, Required. The list of fields to be updated. x__xgafv: string, V1 error format. Allowed values 1 - v1 error format 2 - v2 error format Returns: An object of the form: { # A single one-time product for an app. "listings": [ # Required. Set of localized title and description data. Must not have duplicate entries with the same language_code. { # Regional store listing for a one-time product. "description": "A String", # Required. The description of this product in the language of this listing. The maximum length is 200 characters. "languageCode": "A String", # Required. The language of this listing, as defined by BCP-47, e.g., "en-US". "title": "A String", # Required. The title of this product in the language of this listing. The maximum length is 55 characters. }, ], "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "packageName": "A String", # Required. Immutable. Package name of the parent app. "productId": "A String", # 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 (.). "purchaseOptions": [ # Required. The set of purchase options for this one-time product. { # A single purchase option for a one-time product. "buyOption": { # A purchase option that can be bought. # A purchase option that can be bought. "legacyCompatible": True or False, # 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. "multiQuantityEnabled": True or False, # Optional. Whether this purchase option allows multi-quantity. Multi-quantity allows buyer to purchase more than one item in a single checkout. }, "newRegionsConfig": { # Pricing information for any new regions Play may launch in the future. # 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. "availability": "A String", # 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. "eurPrice": { # Represents an amount of money with its currency type. # Required. Price in EUR to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "usdPrice": { # Represents an amount of money with its currency type. # Required. Price in USD to use for any new regions Play may launch in. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, }, "offerTags": [ # 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. { # Represents a custom tag specified for a product offer. "tag": "A String", # 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. }, ], "purchaseOptionId": "A String", # 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. "regionalPricingAndAvailabilityConfigs": [ # Regional pricing and availability information for this purchase option. { # Regional pricing and availability configuration for a purchase option. "availability": "A String", # The availability of the purchase option. "price": { # Represents an amount of money with its currency type. # The price of the purchase option in the specified region. Must be set in the currency that is linked to the specified region. "currencyCode": "A String", # The three-letter currency code defined in ISO 4217. "nanos": 42, # 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. "units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. }, "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g., "US". }, ], "rentOption": { # A purchase option that can be rented. # A purchase option that can be rented. "expirationPeriod": "A String", # Optional. The amount of time the user has after starting consuming the entitlement before it is revoked. Specified in ISO 8601 format. "rentalPeriod": "A String", # Required. The amount of time a user has the entitlement for. Starts at purchase flow completion. Specified in ISO 8601 format. }, "state": "A String", # 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. "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time product purchase options. # Optional. Details about taxes and legal compliance. "withdrawalRightType": "A String", # 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. }, }, ], "regionsVersion": { # The version of the available regions being used for the specified resource. # Output only. The version of the regions configuration that was used to generate the one-time product. "version": "A String", # 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. }, "restrictedPaymentCountries": { # Countries where the purchase of this product is restricted to payment methods registered in the same country. If empty, no payment location restrictions are imposed. # 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. "regionCodes": [ # Required. Region codes to impose payment restrictions on, as defined by ISO 3166-2, e.g. "US". "A String", ], }, "taxAndComplianceSettings": { # Details about taxation, Google Play policy and legal compliance for one-time products. # Details about taxes and legal compliance. "isTokenizedDigitalAsset": True or False, # Whether this one-time product is declared as a product representing a tokenized digital asset. "regionalTaxConfigs": [ # Regional tax configuration. { # Details about taxation in a given geographical region. "eligibleForStreamingServiceTaxRate": True or False, # 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. "regionCode": "A String", # Required. Region code this configuration applies to, as defined by ISO 3166-2, e.g. "US". "streamingTaxType": "A String", # 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). "taxTier": "A String", # 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). }, ], }, }