Skip to main content

List Variations

Retrieve all product variations for a store product, along with the variation options they are built from.

Endpointโ€‹

GET /v1/store-products/{id}/variations

Authenticationโ€‹

Requires an API key with the store:read scope.

Parametersโ€‹

ParameterTypeLocationDescription
idintegerpathThe store product ID

Responseโ€‹

Success (200 OK)โ€‹

{
"data": {
"product_id": 1,
"has_variations": true,
"variation_options": [
{
"id": 1,
"name": "Size",
"values": ["Small", "Medium", "Large"]
},
{
"id": 2,
"name": "Color",
"values": ["Red", "Blue", "Green"]
}
],
"variations": [
{
"id": 1,
"name": "Small / Red",
"sku": "WIDGET-SM-R",
"price_override": 15.99,
"stock_quantity": 25,
"option_values": [
{
"option_id": 1,
"option_name": "Size",
"value": "Small"
},
{
"option_id": 2,
"option_name": "Color",
"value": "Red"
}
],
"created_at": "2026-02-15T12:00:00+00:00",
"updated_at": "2026-02-15T12:00:00+00:00"
},
{
"id": 2,
"name": "Medium / Blue",
"sku": "WIDGET-MD-B",
"price_override": null,
"stock_quantity": 10,
"option_values": [
{
"option_id": 1,
"option_name": "Size",
"value": "Medium"
},
{
"option_id": 2,
"option_name": "Color",
"value": "Blue"
}
],
"created_at": "2026-02-15T12:00:00+00:00",
"updated_at": "2026-02-15T12:00:00+00:00"
}
]
},
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-02-15T12:00:00+00:00"
}
}
note

If the product does not have variations enabled, has_variations will be false and both variation_options and variations will be empty arrays.

Response Fieldsโ€‹

Variation Objectโ€‹

FieldTypeDescription
idintegerUnique variation identifier
namestringAuto-generated name from option values (e.g., "Small / Red")
skustring|nullOptional SKU for this variation
price_overridefloat|nullPrice override (null means use the base product price)
stock_quantityintegerStock quantity for this variation
option_valuesarrayThe option values that make up this variation
option_values[].option_idintegerThe variation option ID
option_values[].option_namestringThe variation option name
option_values[].valuestringThe selected value for this option
created_atstringISO 8601 datetime
updated_atstringISO 8601 datetime
tip

When price_override is null, the variation uses the base product price. Set a price_override to charge a different amount for a specific variation.

Errorsโ€‹

StatusCodeDescription
401authentication_requiredNo API key provided
401invalid_api_keyInvalid API key
403insufficient_scopeAPI key lacks store:read scope
404resource_not_foundStore product does not exist

Example Requestโ€‹

curl -X GET "https://app.equipdash.com/api/v1/store-products/1/variations" \
-H "Authorization: Bearer eqd_live_abc123xyz789..."