Method: monetization.subscriptions.basePlans.offers.batchUpdate
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Cập nhật hàng loạt ưu đãi thuê bao.
Đặt trường latencyTolerance trên các yêu cầu lồng nhau thành PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT để đạt được thông lượng cập nhật tối đa.
Yêu cầu HTTP
POST https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans/{basePlanId}/offers:batchUpdate
URL sử dụng cú pháp Chuyển mã gRPC.
Tham số đường dẫn
Tham số |
packageName |
string
Bắt buộc. Ứng dụng mẹ (tên gói) của ưu đãi thuê bao được cập nhật. Phải bằng trường packageName trên tất cả tài nguyên SubscriptionOffer.
|
productId |
string
Bắt buộc. Mã sản phẩm của gói thuê bao chính nếu tất cả các ưu đãi được cập nhật đều thuộc về cùng một gói thuê bao. Nếu yêu cầu này áp dụng cho nhiều gói thuê bao, hãy đặt trường này thành "-". Phải đặt.
|
basePlanId |
string
Bắt buộc. Gói cơ bản (ID) gốc cần được cập nhật ưu đãi. Có thể được chỉ định là '-' để cập nhật ưu đãi trong nhiều gói cơ bản.
|
Nội dung yêu cầu
Nội dung yêu cầu chứa dữ liệu có cấu trúc sau:
Trường |
requests[] |
object (UpdateSubscriptionOfferRequest )
Bắt buộc. Danh sách các yêu cầu cập nhật gồm tối đa 100 phần tử. Tất cả yêu cầu phải cập nhật các ưu đãi thuê bao khác nhau.
|
Nội dung phản hồi
Thông báo phản hồi cho offer.batchUpdate.
Nếu thành công, phần nội dung phản hồi sẽ chứa dữ liệu có cấu trúc sau:
Biểu diễn dưới dạng JSON |
{
"subscriptionOffers": [
{
object (SubscriptionOffer )
}
]
} |
Trường |
subscriptionOffers[] |
object (SubscriptionOffer )
Danh sách ưu đãi thuê bao mới cập nhật.
|
Phạm vi uỷ quyền
Yêu cầu phạm vi OAuth sau:
https://www.googleapis.com/auth/androidpublisher
UpdateSubscriptionOfferRequest
Yêu cầu tin nhắn đối với offer.patch.
Trường |
subscriptionOffer |
object (SubscriptionOffer )
Bắt buộc. Gói thuê bao cần cập nhật.
|
updateMask |
string (FieldMask format)
Bắt buộc. Danh sách các trường cần cập nhật. Đây là danh sách các tên trường đủ điều kiện được phân tách bằng dấu phẩy. Ví dụ: "user.displayName,photo"
|
regionsVersion |
object (RegionsVersion )
Bắt buộc. Phiên bản của các khu vực hiện có đang dùng cho ưu đãi subscriptionOffer.
|
allowMissing |
boolean
Không bắt buộc. Nếu bạn đặt chính sách này thành true và ưu đãi thuê bao có packageName, productId, basePlanId và offerId đã cho không tồn tại, thì một ưu đãi sẽ được tạo. Nếu một ưu đãi mới được tạo, thì updateMask sẽ bị bỏ qua.
|
latencyTolerance |
enum (ProductUpdateLatencyTolerance )
Không bắt buộc. Dung sai độ trễ cho việc truyền tải bản cập nhật sản phẩm này. Giá trị mặc định là nhạy cảm với độ trễ.
|
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-07-26 UTC.
[null,null,["Cập nhật lần gần đây nhất: 2025-07-26 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. |"]]