Skip to main content
Variants allow you to offer different options for a product (like size, color, or tier). Variants are organized into variant categories, and each variant can have a price difference from the base product price.

Variant Categories

Variant categories group related variants together (e.g., “Size” or “Color”).

List Variant Categories

Retrieve all variant categories for a product.

Path Parameters

string
required
The unique identifier of the product

Response

boolean
Whether the request was successful
array
Array of variant category objects

Get Variant Category

Retrieve details for a specific variant category.

Path Parameters

string
required
The unique identifier of the product
string
required
The unique identifier of the variant category

Response

boolean
Whether the request was successful
object
The variant category object

Create Variant Category

Create a new variant category for a product.

Path Parameters

string
required
The unique identifier of the product

Body Parameters

string
required
The name of the variant category (e.g., “Size”, “Color”, “Edition”)

Response

boolean
Whether the request was successful
object
The created variant category object

Update Variant Category

Update an existing variant category.

Path Parameters

string
required
The unique identifier of the product
string
required
The unique identifier of the variant category

Body Parameters

string
The new name for the variant category

Response

boolean
Whether the request was successful
object
The updated variant category object

Delete Variant Category

Delete a variant category and all its variants.

Path Parameters

string
required
The unique identifier of the product
string
required
The unique identifier of the variant category

Response

boolean
Whether the request was successful

Variants

Variants represent individual options within a variant category.

List Variants

Retrieve all variants for a variant category.

Path Parameters

string
required
The unique identifier of the product
string
required
The unique identifier of the variant category

Response

boolean
Whether the request was successful
array
Array of variant objects

Get Variant

Retrieve details for a specific variant.

Path Parameters

string
required
The unique identifier of the product
string
required
The unique identifier of the variant category
string
required
The unique identifier of the variant

Response

boolean
Whether the request was successful
object
The variant object

Create Variant

Create a new variant within a variant category.

Path Parameters

string
required
The unique identifier of the product
string
required
The unique identifier of the variant category

Body Parameters

string
required
The name of the variant (e.g., “Small”, “Red”, “Digital Edition”)
string
Optional description for the variant
integer
default:"0"
Price difference from the base product price in cents. Can be negative (discount) or positive (premium).
integer
Maximum inventory available for this variant (omit for unlimited)

Response

boolean
Whether the request was successful
object
The created variant object

Update Variant

Update an existing variant.

Path Parameters

string
required
The unique identifier of the product
string
required
The unique identifier of the variant category
string
required
The unique identifier of the variant

Body Parameters

string
The new name for the variant
string
The new description for the variant
integer
New price difference in cents
integer
New maximum inventory count

Response

boolean
Whether the request was successful
object
The updated variant object

Delete Variant

Soft delete a variant (marks as deleted but preserves data).

Path Parameters

string
required
The unique identifier of the product
string
required
The unique identifier of the variant category
string
required
The unique identifier of the variant

Response

boolean
Whether the request was successful

Error Codes

Bad Request - Missing required parameters or invalid values
Unauthorized - Invalid or missing access token
Forbidden - Insufficient permissions (requires edit_products scope for create/update/delete)
Not Found - Product, variant category, or variant not found
Unprocessable Entity - Invalid variant parameters (e.g., price difference makes product price invalid)