AI-generated Key Takeaways
- 
          The batchMigratePricesendpoint is a batch variant of thebasePlans.migratePricesendpoint for updating subscription base plan prices.
- 
          To maximize update throughput, set the latencyTolerancefield on nested requests toPRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT.
- 
          The HTTP request uses a POST method to the specified URL with package and product IDs as path parameters. 
- 
          The request body contains an array of up to 100 MigrateBasePlanPricesRequestobjects, each updating a different base plan.
- 
          The response body contains an array of MigrateBasePlanPricesResponseobjects, one for each requested price migration.
- HTTP request
- Path parameters
- Request body
- Response body
- Authorization scopes
- MigrateBasePlanPricesRequest
- Try it!
Batch variant of the basePlans.migratePrices endpoint.
Set the latencyTolerance field on nested requests to PRODUCT_UPDATE_LATENCY_TOLERANCE_LATENCY_TOLERANT to achieve maximum update throughput.
HTTP request
POST https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/subscriptions/{productId}/basePlans:batchMigratePrices
The URL uses gRPC Transcoding syntax.
Path parameters
| Parameters | |
|---|---|
| packageName | 
 Required. The parent app (package name) for which the subscriptions should be created or updated. Must be equal to the packageName field on all the Subscription resources. | 
| productId | 
 Required. The product ID of the parent subscription, if all updated offers belong to the same subscription. If this batch update spans multiple subscriptions, set this field to "-". Must be set. | 
Request body
The request body contains data with the following structure:
| JSON representation | 
|---|
| {
  "requests": [
    {
      object ( | 
| Fields | |
|---|---|
| requests[] | 
 Required. Up to 100 price migration requests. All requests must update different base plans. | 
Response body
Response message for basePlans.batchMigratePrices.
If successful, the response body contains data with the following structure:
| JSON representation | 
|---|
| {
  "responses": [
    {
      object ( | 
| Fields | |
|---|---|
| responses[] | 
 Contains one response per requested price migration, in the same order as the request. | 
Authorization scopes
Requires the following OAuth scope:
- https://www.googleapis.com/auth/androidpublisher
MigrateBasePlanPricesRequest
Request message for basePlans.migratePrices.
| JSON representation | 
|---|
| { "packageName": string, "productId": string, "basePlanId": string, "regionalPriceMigrations": [ { object ( | 
| Fields | |
|---|---|
| packageName | 
 Required. Package name of the parent app. Must be equal to the packageName field on the Subscription resource. | 
| productId | 
 Required. The ID of the subscription to update. Must be equal to the productId field on the Subscription resource. | 
| basePlanId | 
 Required. The unique base plan ID of the base plan to update prices on. | 
| regionalPriceMigrations[] | 
 Required. The regional prices to update. | 
| regionsVersion | 
 Required. The version of the available regions being used for the regionalPriceMigrations. | 
| latencyTolerance | 
 Optional. The latency tolerance for the propagation of this product update. Defaults to latency-sensitive. |