Method: monetization.subscriptions.basePlans.offers.batchUpdate
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يتيح هذا الخيار تعديل مجموعة من عروض الاشتراك.
يمكنك ضبط حقل TimeTolerance في الطلبات المتداخلة على 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
مطلوب. الخطة الأساسية (رقم التعريف) التي يجب تعديل العروض الترويجية لها يمكن تحديدها على أنّها "-" لتعديل العروض من خطط أساسية متعدّدة
|
نص الطلب
يحتوي نص الطلب على بيانات بالبنية التالية:
الحقول |
requests[] |
object (UpdateSubscriptionOfferRequest )
مطلوب. قائمة بطلبات التعديل لما يصل إلى 100 عنصر. يجب تعديل عروض الاشتراك المختلفة في جميع الطلبات.
|
نص الاستجابة
رسالة ردّ لـ Offer.batchUpdate.
إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:
الحقول |
subscriptionOffers[] |
object (SubscriptionOffer )
القائمة المعدَّلة لعروض الاشتراك
|
نطاقات الأذونات
يجب توفير نطاق OAuth التالي:
https://www.googleapis.com/auth/androidpublisher
UpdateSubscriptionOfferRequest
يمكنك طلب تلقّي رسالة بشأن Offer.patch.
الحقول |
subscriptionOffer |
object (SubscriptionOffer )
مطلوب. عرض الاشتراك الذي سيتم تعديله
|
updateMask |
string (FieldMask format)
مطلوب. قائمة الحقول التي سيتم تعديلها هذه قائمة مفصولة بفواصل تضم أسماء الحقول المؤهلة بالكامل. مثال: "user.displayName,photo"
|
regionsVersion |
object (RegionsVersion )
مطلوب. تشير هذه السمة إلى إصدار المناطق المتوفّرة التي يتم استخدامها في SubscriptionOffer.
|
allowMissing |
boolean
اختياريّ. إذا تم ضبط هذه السياسة على "صحيح"، ولم يتم العثور على عرض الاشتراك الذي يتضمّن packageName وproductId وbasePlanId وOfferId، سيتم إنشاء عرض. في حال إنشاء عرض جديد، يتم تجاهل updateMask.
|
latencyTolerance |
enum (ProductUpdateLatencyTolerance )
اختياريّ. مقدار التفاوت في وقت الاستجابة لنشر تحديث المنتج هذا يتم ضبط الإعدادات التلقائية على الحساسية لوقت الاستجابة.
|
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-07-26 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-26 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\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. |"]]