v49

latestOpenAPI 3.1.0raw.githubusercontent.com2026-07-081445491.8 MB
Plan

Update plan by external ID

This endpoint can be used to update the external_plan_id, description, and metadata of an existing plan.

Other fields on a plan are currently immutable.

put/plans/external_plan_id/{external_plan_id}

Path parameters

external_plan_idstring required

Request body

metadataobject nullable

User-specified key/value pairs for the resource. Individual keys can be removed by setting the value to null, and the entire metadata mapping can be cleared by setting metadata to null.

external_plan_idstring nullable

An optional user-defined ID for this plan resource, used throughout the system as an alias for this Plan. Use this field to identify a plan by an existing identifier in your system.

descriptionstring nullable

An optional user-defined description of the plan.

Response

OK

metadataobject required

User specified key-value pairs for the resource. If not present, this defaults to an empty dictionary. Individual keys can be removed by setting the value to null, and the entire metadata mapping can be cleared by setting metadata to null.

idstring required
namestring required
descriptionstring required
maximum_amountstring nullable required
minimum_amountstring nullable required
created_atstring date-time required
status'active' | 'archived' | 'draft' required
versioninteger required
base_plan_idstring nullable required

Legacy field representing the parent plan ID if the current plan is a 'child plan', overriding prices from the parent.

external_plan_idstring nullable required

An optional user-defined ID for this plan resource, used throughout the system as an alias for this Plan. Use this field to identify a plan by an existing identifier in your system.

currencystring required

An ISO 4217 currency string or custom pricing unit (credits) for this plan's prices.

invoicing_currencystring required

An ISO 4217 currency string for which this plan is billed in. Matches currency unless currency is a custom pricing unit.

net_termsinteger nullable required

Determines the difference between the invoice issue date and the due date. A value of "0" here signifies that invoices are due on issue, whereas a value of "30" means that the customer has a month to pay the invoice before its overdue. Note that individual subscriptions or invoices may set a different net terms configuration.

default_invoice_memostring nullable required

The default memo text on the invoices corresponding to subscriptions on this plan. Note that each subscription may configure its own memo.