Aktualisiert einen Abotarif. Mit dieser Methode kannst du einen Tarif für eine 30-tägige Testphase oder einen flexiblen Tarif in einen Jahrestarif mit monatlichen oder jährlichen Zahlungen umwandeln.
Wie ein Plan aktualisiert wird, hängt vom Plan und den Produkten ab. Weitere Informationen finden Sie in der Beschreibung unter Abos verwalten.
HTTP-Anfrage
POST https://reseller.googleapis.com/apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changePlan
Dies kann entweder der primäre Domainname des Kunden oder seine eindeutige Kennung sein. Wenn sich der Domainname eines Kunden ändert, kann der alte Domainname nicht mehr zum Zugriff auf den Kunden verwendet werden. Die eindeutige Kennung des Kunden (wie von der API zurückgegeben) kann jedoch immer verwendet werden. Wir empfehlen, die eindeutige Kennung gegebenenfalls in Ihren Systemen zu speichern.
subscriptionId
string
Dieses Attribut ist erforderlich. Die subscriptionId ist die Abo-ID und ist für jeden Kunden eindeutig. Da sich eine subscriptionId ändert, wenn ein Abo aktualisiert wird, empfehlen wir, diese ID nicht als Schlüssel für persistente Daten zu verwenden. Die subscriptionId kannst du mit der Methode Alle Reseller-Abos abrufen ermitteln.
Gibt an, dass die Ressource eine Anfrage zur Tarifänderung ist. Wert: subscriptions#changePlanRequest
planName
string
Das Attribut planName ist erforderlich. Das ist der Name des Preismodells des Abos. Weitere Informationen zu den Google-Zahlungsplänen finden Sie unter API-Konzepte.
Mögliche Werte:
ANNUAL_MONTHLY_PAY – Jahrestarif mit monatlicher Zahlung
ANNUAL_YEARLY_PAY – Jahrestarif mit jährlichen Zahlungen
Dieses Attribut ist erforderlich. Die Property „seats“ ist die Anzahl der Nutzerlizenzen.
purchaseOrderId
string
Dieses Attribut ist optional. Diese Informationen zur Bestellung sind für Reseller zur Verwendung für das Tracking ihres Unternehmens bestimmt. Wenn ein purchaseOrderId-Wert angegeben ist, wird er in den API-Antworten und auf der Rechnung angezeigt. Das Attribut kann bis zu 80 Klartextzeichen enthalten.
dealCode
string
Von Google ausgestellter Code (maximal 100 Zeichen) für ermäßigte Preise für Abos. Der Angebotscode muss in der changePlan-Anfrage enthalten sein, damit der ermäßigte Preis gewährt werden kann. Dieses Attribut ist optional. Wenn einem Abo bereits ein Angebotscode hinzugefügt wurde, kann dieses Attribut leer bleiben. Der bestehende Rabattpreis wird dann weiterhin angewendet. Wenn das Attribut nicht leer ist, geben Sie nur den Angebotscode an, der bereits für das Abo vorhanden ist. Wenn einem Abo noch nie ein Angebotscode hinzugefügt wurde und dieses Attribut leer bleibt, gelten die regulären Preise.
[null,null,["Zuletzt aktualisiert: 2025-07-25 (UTC)."],[],[],null,["# Method: subscriptions.changePlan\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Path parameters](#body.PATH_PARAMETERS)\n- [Request body](#body.request_body)\n- [Response body](#body.response_body)\n- [Authorization scopes](#body.aspect)\n- [ChangePlanRequest](#ChangePlanRequest)\n - [JSON representation](#ChangePlanRequest.SCHEMA_REPRESENTATION)\n- [Try it!](#try-it)\n\nUpdates a subscription plan. Use this method to update a plan for a 30-day trial or a flexible plan subscription to an annual commitment plan with monthly or yearly payments.\n\nHow a plan is updated differs depending on the plan and the products. For more information, see the description in [manage subscriptions](https://developers.google.com/workspace/admin/reseller/v1/how-tos/manage_subscriptions#update_subscription_plan).\n\n### HTTP request\n\n`POST https://reseller.googleapis.com/apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changePlan`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Path parameters\n\n| Parameters ||\n|------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `customerId` | `string` This can be either the customer's primary domain name or the customer's unique identifier. If the domain name for a customer changes, the old domain name cannot be used to access the customer, but the customer's unique identifier (as returned by the API) can always be used. We recommend storing the unique identifier in your systems where applicable. |\n| `subscriptionId` | `string` This is a required property. The `subscriptionId` is the subscription identifier and is unique for each customer. Since a `subscriptionId` changes when a subscription is updated, we recommend to not use this ID as a key for persistent data. And the `subscriptionId` can be found using the [retrieve all reseller subscriptions](https://developers.google.com/workspace/admin/reseller/v1/how-tos/manage_subscriptions#get_all_subscriptions) method. |\n\n### Request body\n\nThe request body contains an instance of [ChangePlanRequest](/workspace/admin/reseller/reference/rest/v1/subscriptions/changePlan#ChangePlanRequest).\n\n### Response body\n\nIf successful, the response body contains an instance of [Subscription](/workspace/admin/reseller/reference/rest/v1/subscriptions#Subscription).\n\n### Authorization scopes\n\nRequires the following OAuth scope:\n\n- `https://www.googleapis.com/auth/apps.order`\n\nFor more information, see the [Authorization guide](/workspace/guides/configure-oauth-consent).\n\nChangePlanRequest\n-----------------\n\nJSON template for the subscriptions.changePlan rpc request.\n\n| JSON representation |\n|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"kind\": string, \"planName\": string, \"seats\": { object (/workspace/admin/reseller/reference/rest/v1/subscriptions#Seats) }, \"purchaseOrderId\": string, \"dealCode\": string } ``` |\n\n| Fields ||\n|-------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `kind` | `string` Identifies the resource as a subscription change plan request. Value: `subscriptions#changePlanRequest` |\n| `planName` | `string` The `planName` property is required. This is the name of the subscription's payment plan. For more information about the Google payment plans, see [API concepts](https://developers.google.com/workspace/admin/reseller/v1/how-tos/concepts.html). Possible values are: - `ANNUAL_MONTHLY_PAY` - The annual commitment plan with monthly payments **Caution:** `ANNUAL_MONTHLY_PAY` is returned as `ANNUAL` in all API responses. - `ANNUAL_YEARLY_PAY` - The annual commitment plan with yearly payments - `FLEXIBLE` - The flexible plan - `TRIAL` - The 30-day free trial plan \u003cbr /\u003e |\n| `seats` | `object (`[Seats](/workspace/admin/reseller/reference/rest/v1/subscriptions#Seats)`)` This is a required property. The seats property is the number of user seat licenses. |\n| `purchaseOrderId` | `string` This is an optional property. This purchase order (PO) information is for resellers to use for their company tracking usage. If a `purchaseOrderId` value is given it appears in the API responses and shows up in the invoice. The property accepts up to 80 plain text characters. |\n| `dealCode` | `string` Google-issued code (100 char max) for discounted pricing on subscription plans. Deal code must be included in `changePlan` request in order to receive discounted rate. This property is optional. If a deal code has already been added to a subscription, this property may be left empty and the existing discounted rate will still apply (if not empty, only provide the deal code that is already present on the subscription). If a deal code has never been added to a subscription and this property is left blank, regular pricing will apply. |"]]