Retrieve a product and its variants with pagination support.
GET /api/v1/products/{productId}
Headers:
Authorization: Bearer <api-key>
Content-Type: application/json| Parameter | Type | Description |
|---|---|---|
productId | string | Required - The Shopify product REST ID |
| Parameter | Type | Description |
|---|---|---|
limit | integer | Optional - Number of variants per page. Must be between 1 and 100. Default: 50 |
cursor | string | Optional - Pagination cursor from a previous response to fetch the next or previous page |
{
"success": true,
"data": {
"product": {
"id": "123",
"measurementType": "weight",
"variants": [
{
"id": "456",
"unitMeasurement": {
"unit": "kg",
"value": 1
},
"settings": {
"onlineStore": {
"displayStyle": "number",
"rules": {
"min": 0.5,
"increment": 0.5,
"defaultValue": 1,
"max": null
}
}
}
}
]
}
},
"meta": {
"nextCursor": "eyJ...",
"prevCursor": null,
"hasMore": true
}
}| Field | Type | Description |
|---|---|---|
success | boolean | Indicates whether the request was successful |
data | object | Response data object |
data.product | Product | The product object with nested variants |
meta | PaginationMeta | Pagination metadata for cursor-based navigation |
| Status code | Description |
|---|---|
| 400 | Bad Request - Invalid product ID or invalid limit parameter |
| 401 | Unauthorized - Missing or invalid API key |
| 404 | Not Found - Product not found |
| 500 | Internal Server Error - Server error while processing the request |
Note
meta.nextCursor to fetch the next page, or meta.prevCursor for the previous pagelimit parameter controls how many variants are returned per page (1-100)Related: