Create plan

Create a new pricing plan under a product.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Query Params
int32
required

The unique identifier of the site associated with your account.

Body Params
integer
required

ID of the product this plan belongs to. The product must belong to the current site.

string

Alternative to product_id. Looks up the product by its import_unique_id. If both are provided, they must reference the same product.

string
required
length ≤ 255

Plan display name visible to customers (e.g. "Monthly", "Annual Premium").

string
length ≤ 255

Internal reference name for team use. Not visible to customers.

boolean
required

If true, subscriptions automatically renew at the end of each billing period. If false, the subscription is a one-time purchase that expires after the billing period.

number
required
≥ 0

Plan price (e.g. 15.00 for $15.00). Set to 0 for a free plan. Stored internally in cents.

string
required

Three-letter ISO currency code (e.g. usd, cad). Must be a currency enabled on the account.

string
enum
required

How subscription revenue is recognized for accounting: "time" recognizes evenly over the billing period, "shipments" recognizes per shipment delivered.

Allowed:
string
enum
required

Billing cycle unit. Combined with interval_count to define the billing period (e.g. interval=month + interval_count=3 = quarterly).

Allowed:
integer
required
≥ 1

Number of intervals per billing cycle. For example, 3 with interval=month means billing every 3 months.

boolean
required

If true, the plan appears on your website and customers can subscribe directly. If false, the plan is offline-only (available via direct link or internal use).

boolean
required

If true, subscriptions on this plan can be refunded. If false, refunds are not allowed.

integer
required
≤ 730

Number of free trial days before billing starts. Set to 0 for no trial. Free trials only work on paid auto-renew plans. Maximum 730 days (2 years).

string

Plan description displayed to customers.

entitlements
array

Access permissions granted to subscribers. Used to control feature access on your site (e.g. "premium_videos", "full_archive"). See Authorization for details.

entitlements
integer
1 to 1000

Number of physical shipments delivered per billing interval. Used for print subscription fulfillment and shipment-based revenue recognition.

integer
1 to 365

Days after invoice due date before the invoice is automatically marked uncollectible and the subscription is cancelled. Overrides the account-level default. See Plans for details.

string
enum

Controls renewal behavior: "regular" (standard auto-renew), "agency" (agency-managed renewal), "digital" (digital-only renewal), "single_shipment" (expires after one shipment).

Allowed:
date

Date when the plan expires and can no longer accept new subscriptions (YYYY-MM-DD). Must be tomorrow or later. Only allowed on free plans (amount=0).

ip_addresses
array of strings

IP addresses (CIDR notation) for automatic subscription creation. Customers registering from a matching IP are auto-subscribed to this plan. See Plans for details.

ip_addresses
domains
array of strings

Email domains for automatic subscription creation. Customers registering with a matching email domain are auto-subscribed to this plan. See Plans for details.

domains
string

Description displayed to the recipient when the plan is purchased as a gift subscription. See Plans for details.

file

Plan image file upload. Use multipart/form-data content type.

string
length ≤ 100

Apple App Store product identifier for in-app purchase integration. See Plans for details.

countries
array of strings

ISO country codes to restrict plan availability. Customers will only see plans available in their country. Leave empty for worldwide availability.

countries
integer

Parent plan ID to create a group/family plan hierarchy. The referenced plan must belong to the same account. See Plans for details.

number

Original price before any discount, stored in plan metadata. Used to display strikethrough pricing to customers.

number

Discount percentage from the original price, stored in plan metadata. Used to display savings to customers.

boolean

If true, customers can subscribe to this plan via invoice (e.g. check or wire payment) instead of paying by card online.

boolean

If true, this plan is a donation. Donation plans do not grant content access to subscribers.

boolean

If true, the plan is hidden from public display but still accessible via direct link or API.

string
enum

Plan type: "regular" for standard subscriptions, "membership" for group membership plans with a seat limit.

Allowed:
integer
≥ 1

Maximum number of member seats for membership plans. Required when type=membership. Ignored for regular plans.

string
length ≤ 191

External plan ID from a previous provider, used for migration tracking. Mapped to import_unique_id internally. Must be unique per account.

boolean

If true, indicates the plan was imported from an external system rather than created natively.

integer
≥ 1

Days before subscription renewal to send an upcoming invoice email notification to the customer. Must be less than the billing interval.

Headers
string
required
Defaults to Bearer eyJ***
Responses

Language
Credentials
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json