Skip to main content
A product represents an item or service you offer — for example, “Pro Plan” or “Storage Add-on”. Products are linked to one or more prices, which define the amount, currency, and billing interval. Use POST /v1/products to create a product, then attach prices before using it in a subscription or payment.
Deactivating a product by setting active: false does not cancel existing subscriptions that use it. Active subscriptions continue until they are explicitly canceled.

Create a product

POST /v1/products Creates a new product object.

Request parameters

string
required
Display name for the product. Shown in the dashboard and on invoices.
string
An optional description of the product. Useful for internal reference.
object
Set of key-value pairs you can attach to the product. Values must be strings.

Response fields

string
required
Unique identifier for the product (e.g. prod_xxx).
string
required
Display name of the product.
string
Product description.
boolean
required
Whether the product is currently available. Defaults to true.
object
Key-value pairs attached to the product.
string
required
ISO 8601 timestamp of when the product was created.

List products

GET /v1/products Returns a paginated list of products, ordered by creation date descending.

Query parameters

string
Cursor for pagination. Pass the id of the last product from the previous page to retrieve the next page.
number
Maximum number of products to return per page.

Response fields

object[]
required
Array of product objects.
boolean
required
Whether more products exist beyond this page.

Retrieve a product

GET /v1/products/{id} Retrieves the details of an existing product.

Path parameters

string
required
The ID of the product to retrieve.

Response fields

string
required
Unique product identifier.
string
required
Display name of the product.
string
Product description.
boolean
required
Whether the product is currently active.
object
Key-value pairs attached to the product.
string
required
ISO 8601 timestamp of when the product was created.

Update a product

PATCH /v1/products/{id} Updates an existing product. Only the fields you provide are changed.

Path parameters

string
required
The ID of the product to update.

Request parameters

string
Updated display name.
string
Updated description.
boolean
Set to false to deactivate the product. Deactivating does not affect existing subscriptions.
object
Updated metadata. Replaces the existing metadata object entirely.

Response fields

Returns the updated product object. See retrieve a product for the full field reference.