---
title: "Change plan"
method: PUT
path: "/{companyDomain}/subscriptions/{subscriptionUniqueId}/plan"
---

# Change plan

`PUT /{companyDomain}/subscriptions/{subscriptionUniqueId}/plan`

Change the plan that a subscription sits on

## Path parameters

- `companyDomain` string, required
- `subscriptionUniqueId` string, required

## Request body

- object
  - `planId` integer, required — The unique identifier of the plan that you want to change the subscription to in the Billsby platform
  - `cycleId` integer, required — The unique identifier of the cycle that you want to change the subscription to in the Billsby platform
  - `customerUniqueId` string, required — The unique identifier of the subscription in the Billsby platform
  - `planChangeType` integer — Immediate = 1 OnRenewal = 2
  - `units` integer — The number of units required (for cycles with mulitple units allowed)
  - `addOns` object[]
    - `addOnId` integer, required — The unique identifier of the add-ons in the Billsby platform
    - `quantity` integer — The quantity of the add-on if unit based
  - `allowances` integer[]
  - `issueRefund` boolean — In case of immediate change, this will apply a refund into the first invoice of the new plan based on the prorated amount of the current plan

## Response `200`

200

---

[API](https://skmtc.net/billsby/apis/billsby-api.md) · [All operations](https://skmtc.net/billsby/apis/billsby-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/billsby/billsby-api/versions/adcb2fd4c52f/schema)
