Atualiza um plano de assinatura. Use esse método para atualizar um plano de teste de 30 dias ou uma assinatura flexível para um plano de compromisso anual com pagamentos mensais ou anuais.
A forma como um plano é atualizado varia de acordo com o plano e os produtos. Para mais informações, consulte a descrição em gerenciar assinaturas.
Solicitação HTTP
POST https://reseller.googleapis.com/apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changePlan
Pode ser o nome de domínio principal ou o identificador exclusivo do cliente. Se o nome de domínio de um cliente mudar, o nome antigo não poderá ser usado para acessar o cliente, mas o identificador exclusivo do cliente (retornado pela API) sempre poderá. Recomendamos armazenar o identificador exclusivo nos seus sistemas, quando aplicável.
subscriptionId
string
Esta é uma propriedade obrigatória. O subscriptionId é o identificador da assinatura e é exclusivo para cada cliente. Como um subscriptionId muda quando uma assinatura é atualizada, recomendamos não usar esse ID como uma chave para dados persistentes. E o subscriptionId pode ser encontrado usando o método recuperar todas as assinaturas de revendedor.
Identifica o recurso como uma solicitação de mudança de plano de assinatura. Valor: subscriptions#changePlanRequest
planName
string
A propriedade planName é obrigatória. É o nome do plano de pagamento da assinatura. Para mais informações sobre os planos de pagamento do Google, consulte Conceitos de API.
Os valores possíveis são:
ANNUAL_MONTHLY_PAY: o plano de compromisso anual com pagamentos mensais
ANNUAL_YEARLY_PAY: o plano de compromisso anual com pagamentos anuais
FLEXIBLE: o plano flexível
TRIAL: o plano de teste sem custo financeiro de 30 dias
Esta é uma propriedade obrigatória. A propriedade "assentos" é o número de licenças de assento do usuário.
purchaseOrderId
string
Essa é uma propriedade opcional. Essas informações de ordem de compra (OC) são para que os revendedores usem no rastreamento da empresa. Se um valor purchaseOrderId for fornecido, ele vai aparecer nas respostas da API e na fatura. A propriedade aceita até 80 caracteres de texto simples.
dealCode
string
Código emitido pelo Google (máximo de 100 caracteres) para preços com desconto em planos de assinatura. O código da oferta precisa ser incluído na solicitação changePlan para receber a tarifa com desconto. Esta propriedade é opcional. Se um código de oferta já tiver sido adicionado a uma assinatura, essa propriedade poderá ser deixada em branco, e a tarifa com desconto ainda será aplicada. Se não estiver em branco, informe apenas o código de oferta que já está na assinatura. Se um código de oferta nunca tiver sido adicionado a uma assinatura e essa propriedade for deixada em branco, o preço normal será aplicado.
[null,null,["Última atualização 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. |"]]