Skip to main content
POST
/
vendor
/
products
/
{id}
/
variants
curl -X POST 'http://localhost:9000/vendor/products/prod_01HXYZ/variants' \
  -H 'Authorization: Bearer <token>' \
  -H 'x-seller-id: <seller_id>' \
  -H 'Content-Type: application/json' \
  -d '{"title": "L", "sku": "ACME-SHIRT-L", "options": {"Size": "L"}}'
{
  "product_change": {
    "id": "prodch_01HXYZ",
    "product_id": "prod_01HXYZ",
    "status": "pending",
    "actions": [
      {
        "id": "prodchact_01HXYZ",
        "action": "VARIANT_ADD",
        "details": { "title": "L", "sku": "ACME-SHIRT-L" },
        "applied": false
      }
    ]
  }
}
Stages a VARIANT_ADD operation as a pending change request instead of creating the variant directly.
The endpoint responds with 202 Accepted and a product_change record; the variant appears on the product once the change is confirmed. The staged variant is always created with manage_inventory: false — stock is tracked on offers.

Path parameters

id
string
required
The product’s ID.

Body parameters

title
string
required
The variant’s title.
sku
string
The variant’s SKU.
ean
string
EAN barcode.
upc
string
UPC barcode.
isbn
string
ISBN code.
asin
string
Amazon ASIN.
gtin
string
GTIN code.
barcode
string
Generic barcode.
hs_code
string
Harmonized System code.
mid_code
string
Manufacturer ID code.
variant_rank
number
Sort rank of the variant.
weight
number
Weight of the variant.
length
number
Length of the variant.
height
number
Height of the variant.
width
number
Width of the variant.
origin_country
string
Country of origin.
material
string
Material of the variant.
allow_backorder
boolean
Whether backorders are allowed.
manage_inventory
boolean
Accepted in the body but forced to false when the change is staged.
thumbnail
string
Variant thumbnail URL.
metadata
object
Custom key-value pairs.
options
object
Option title to value mapping, e.g. {"Size": "L"}.

Response

product_change
object
curl -X POST 'http://localhost:9000/vendor/products/prod_01HXYZ/variants' \
  -H 'Authorization: Bearer <token>' \
  -H 'x-seller-id: <seller_id>' \
  -H 'Content-Type: application/json' \
  -d '{"title": "L", "sku": "ACME-SHIRT-L", "options": {"Size": "L"}}'
{
  "product_change": {
    "id": "prodch_01HXYZ",
    "product_id": "prod_01HXYZ",
    "status": "pending",
    "actions": [
      {
        "id": "prodchact_01HXYZ",
        "action": "VARIANT_ADD",
        "details": { "title": "L", "sku": "ACME-SHIRT-L" },
        "applied": false
      }
    ]
  }
}