Method: monetization.subscriptions.basePlans.offers.batchUpdate
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Обновляет пакет предложений подписки.
Установите для поля latencyTolerance во вложенных запросах значение PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT, чтобы добиться максимальной пропускной способности обновления.
HTTP-запрос
POST https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers:batchUpdate
URL-адрес использует синтаксис транскодирования gRPC .
Параметры пути
Параметры |
---|
packageName | string Необходимый. Родительское приложение (имя пакета) обновленных предложений подписки. Должно быть равно полю packageName во всех обновленных ресурсах SubscriptionOffer. |
productId | string Необходимый. Идентификатор продукта родительской подписки, если все обновленные предложения принадлежат одной подписке. Если этот запрос охватывает несколько подписок, установите для этого поля значение «-». Должно быть установлено. |
basePlanId | string Необходимый. Родительский базовый план (ID), для которого следует обновить предложения. Может быть указано как «-» для обновления предложений из нескольких базовых планов. |
Тело запроса
Тело запроса содержит данные следующей структуры:
Поля |
---|
requests[] | object ( UpdateSubscriptionOfferRequest ) Необходимый. Список запросов на обновление до 100 элементов. Все запросы должны обновлять различные предложения подписки. |
Тело ответа
Ответное сообщение для Offer.batchUpdate.
В случае успеха тело ответа содержит данные следующей структуры:
Поля |
---|
subscriptionOffers[] | object ( SubscriptionOffer ) Обновленный список предложений подписки. |
Области авторизации
Требуется следующая область действия OAuth:
-
https://www.googleapis.com/auth/androidpublisher
ОбновлениеПодпискаПредложениеЗапрос
Сообщение с запросом на Offer.patch.
Поля |
---|
subscriptionOffer | object ( SubscriptionOffer ) Необходимый. Подписку предлагают обновить. |
updateMask | string ( FieldMask format) Необходимый. Список полей, которые необходимо обновить. Это разделенный запятыми список полных имен полей. Пример: "user.displayName,photo" . |
regionsVersion | object ( RegionsVersion ) Необходимый. Версия доступных регионов, используемых для подписки. |
allowMissing | boolean Необязательный. Если установлено значение true и предложение подписки с указанными packageName, ProductId, basePlanId и OfferId не существует, предложение будет создано. Если создается новое предложение, updateMask игнорируется. |
latencyTolerance | enum ( ProductUpdateLatencyTolerance ) Необязательный. Допуск на задержку распространения этого обновления продукта. По умолчанию чувствителен к задержке. |
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-25 UTC.
[null,null,["Последнее обновление: 2025-07-25 UTC."],[[["\u003cp\u003eUpdates a batch of subscription offers, allowing for up to 100 update requests in a single call.\u003c/p\u003e\n"],["\u003cp\u003eRequires providing the package name, product ID, and base plan ID for the offers being updated.\u003c/p\u003e\n"],["\u003cp\u003eAllows specifying latency tolerance to optimize update throughput using the \u003ccode\u003elatencyTolerance\u003c/code\u003e field.\u003c/p\u003e\n"],["\u003cp\u003eUtilizes the \u003ccode\u003eUpdateSubscriptionOfferRequest\u003c/code\u003e to define the changes for each subscription offer within the batch.\u003c/p\u003e\n"],["\u003cp\u003eRequires authorization with the \u003ccode\u003ehttps://www.googleapis.com/auth/androidpublisher\u003c/code\u003e scope.\u003c/p\u003e\n"]]],["This document details the process of batch updating subscription offers via a `POST` request to a specified URL. Key actions involve providing `packageName`, `productId`, and `basePlanId` as path parameters. The request body must include an array of `UpdateSubscriptionOfferRequest` objects, each specifying the offer to update, fields to modify, regions version and a latency tolerance. The response body will then return the list of updated `SubscriptionOffer` objects. Authorization requires the `androidpublisher` OAuth scope.\n"],null,["# Method: monetization.subscriptions.basePlans.offers.batchUpdate\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Path parameters](#body.PATH_PARAMETERS)\n- [Request body](#body.request_body)\n - [JSON representation](#body.request_body.SCHEMA_REPRESENTATION)\n- [Response body](#body.response_body)\n - [JSON representation](#body.BatchUpdateSubscriptionOffersResponse.SCHEMA_REPRESENTATION)\n- [Authorization scopes](#body.aspect)\n- [UpdateSubscriptionOfferRequest](#UpdateSubscriptionOfferRequest)\n - [JSON representation](#UpdateSubscriptionOfferRequest.SCHEMA_REPRESENTATION)\n- [Try it!](#try-it)\n\nUpdates a batch of subscription offers.\n\nSet the latencyTolerance field on nested requests to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput.\n\n### HTTP request\n\n`POST https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers:batchUpdate`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Path parameters\n\n| Parameters ||\n|---------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `packageName` | `string` Required. The parent app (package name) of the updated subscription offers. Must be equal to the packageName field on all the updated SubscriptionOffer resources. |\n| `productId` | `string` 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. |\n| `basePlanId` | `string` Required. The parent base plan (ID) for which the offers should be updated. May be specified as '-' to update offers from multiple base plans. |\n\n### Request body\n\nThe request body contains data with the following structure:\n\n| JSON representation |\n|--------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"requests\": [ { object (/android-publisher/api-ref/rest/v3/monetization.subscriptions.basePlans.offers/batchUpdate#UpdateSubscriptionOfferRequest) } ] } ``` |\n\n| Fields ||\n|--------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `requests[]` | `object (`[UpdateSubscriptionOfferRequest](/android-publisher/api-ref/rest/v3/monetization.subscriptions.basePlans.offers/batchUpdate#UpdateSubscriptionOfferRequest)`)` Required. A list of update requests of up to 100 elements. All requests must update different subscription offers. |\n\n### Response body\n\nResponse message for offers.batchUpdate.\n\nIf successful, the response body contains data with the following structure:\n\n| JSON representation |\n|-----------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"subscriptionOffers\": [ { object (/android-publisher/api-ref/rest/v3/monetization.subscriptions.basePlans.offers#SubscriptionOffer) } ] } ``` |\n\n| Fields ||\n|------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `subscriptionOffers[]` | `object (`[SubscriptionOffer](/android-publisher/api-ref/rest/v3/monetization.subscriptions.basePlans.offers#SubscriptionOffer)`)` The updated subscription offers list. |\n\n### Authorization scopes\n\nRequires the following OAuth scope:\n\n- `https://www.googleapis.com/auth/androidpublisher`\n\nUpdateSubscriptionOfferRequest\n------------------------------\n\nRequest message for offers.patch.\n\n| JSON representation |\n|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"subscriptionOffer\": { object (/android-publisher/api-ref/rest/v3/monetization.subscriptions.basePlans.offers#SubscriptionOffer) }, \"updateMask\": string, \"regionsVersion\": { object (/android-publisher/api-ref/rest/v3/RegionsVersion) }, \"allowMissing\": boolean, \"latencyTolerance\": enum (/android-publisher/api-ref/rest/v3/ProductUpdateLatencyTolerance) } ``` |\n\n| Fields ||\n|---------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `subscriptionOffer` | `object (`[SubscriptionOffer](/android-publisher/api-ref/rest/v3/monetization.subscriptions.basePlans.offers#SubscriptionOffer)`)` Required. The subscription offer to update. |\n| `updateMask` | `string (`[FieldMask](https://protobuf.dev/reference/protobuf/google.protobuf/#field-mask)` format)` Required. The list of fields to be updated. This is a comma-separated list of fully qualified names of fields. Example: `\"user.displayName,photo\"`. |\n| `regionsVersion` | `object (`[RegionsVersion](/android-publisher/api-ref/rest/v3/RegionsVersion)`)` Required. The version of the available regions being used for the subscriptionOffer. |\n| `allowMissing` | `boolean` Optional. If set to true, and the subscription offer with the given packageName, productId, basePlanId and offerId doesn't exist, an offer will be created. If a new offer is created, updateMask is ignored. |\n| `latencyTolerance` | `enum (`[ProductUpdateLatencyTolerance](/android-publisher/api-ref/rest/v3/ProductUpdateLatencyTolerance)`)` Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. |"]]