Commerce · Commerce
Returns products, one page at a time. Works with Shopify and WooCommerce accounts.
https://api.pozy.ai/v1/commerce/productsGuides: Products and catalog, Commerce & blogs
Request
Send your API key as Authorization: Bearer pz_live_.... Read-only keys can call it. Keys with the commerce resource group disabled get 403 resource_group_disabled. Authentication
Query parameters
| Name | Type | Notes |
|---|---|---|
accountIdrequired | string | |
limit | integer | Default 201 to 100 |
cursor | string | |
status | string | |
query | string | Up to 500 characters |
collectionId | string |
Example
curl -X GET "https://api.pozy.ai/v1/commerce/products?accountId=696e0b682d0a31188e7a2ba9&limit=20" \
-H "Authorization: Bearer $POZY_API_KEY"const res = await fetch("https://api.pozy.ai/v1/commerce/products?accountId=696e0b682d0a31188e7a2ba9&limit=20", {
headers: { Authorization: `Bearer ${process.env.POZY_API_KEY}` },
});
const data = await res.json();
if (!res.ok) throw new Error(data?.error ?? `Request failed with status ${res.status}`);
console.log(data);import os
import requests
resp = requests.get(
"https://api.pozy.ai/v1/commerce/products",
headers={"Authorization": f"Bearer {os.environ['POZY_API_KEY']}"},
params={
"accountId": "696e0b682d0a31188e7a2ba9",
"limit": 20,
},
timeout=30,
)
resp.raise_for_status()
print(resp.json())Response
200 on success
productsarray of object22 child fields
idstringaccountIdstringplatformstringOne of
shopify.titlestringdescriptionHtmlstringCan be null.
handlestringCan be null.
vendorstringCan be null.
productTypestringCan be null.
tagsarray of stringstatusstringOne of
active,draft,pending_review,rejected,inactive,archived,deleted.platformStatusstringfeaturedImageobjectOne of:
Commerce Image (3 fields)
idstringCan be null.
urlstringaltTextstringCan be null.
imagesarray of object3 child fields
idstringCan be null.
urlstringaltTextstringCan be null.
optionsarray of object2 child fields
namestringvaluesarray of string
variantsarray of object9 child fields
idstringtitlestringskustringCan be null.
barcodestringCan be null.
priceobject2 child fields
amountstringrequiredcurrencystringrequired
compareAtPriceobjectOne of:
Commerce Money (2 fields)
amountstringrequiredcurrencystringrequired
inventoryQuantityintegerCan be null.
availableForSalebooleanCan be null.
optionsarray of object2 child fields
namestringvaluestring
totalInventoryintegerCan be null.
urlstringCan be null.
seoobject2 child fields
titlestringCan be null.
descriptionstringCan be null.
createdAtstring (date-time)Can be null.
updatedAtstring (date-time)Can be null.
publishedAtstring (date-time)Can be null.
platformDataobjectCan be null.
nextCursorstringCan be null.
{
"products": [
{
"id": "6bfebd43ddc270f6d2c56fc5",
"accountId": "696e0b682d0a31188e7a2ba9",
"platform": "shopify",
"title": "Launch day",
"descriptionHtml": "string",
"handle": "acme",
"vendor": "string",
"productType": "string",
"tags": [
"string"
],
"status": "active",
"platformStatus": "instagram",
"featuredImage": {
"id": "6bfebd43ddc270f6d2c56fc5",
"url": "https://pozy.ai/media/example-1.jpg",
"altText": "Hello from Pozy"
},
"images": [
{
"id": "6bfebd43ddc270f6d2c56fc5",
"url": "https://pozy.ai/media/example-1.jpg",
"altText": "Hello from Pozy"
}
],
"options": [
{
"name": "Acme",
"values": [
"string"
]
}
],
"variants": [
{
"id": "6bfebd43ddc270f6d2c56fc5",
"title": "Launch day",
"sku": "string",
"barcode": "string",
"price": {
"amount": "string",
"currency": "USD"
},
"compareAtPrice": {
"amount": "string",
"currency": "USD"
},
"inventoryQuantity": 1,
"availableForSale": true,
"options": [
{
"name": "Acme",
"value": "string"
}
]
}
],
"totalInventory": 42,
"url": "https://pozy.ai/media/example-1.jpg",
"seo": {
"title": "Launch day",
"description": "A short description"
},
"createdAt": "2026-10-02T09:00:00.000Z",
"updatedAt": "2026-10-02T09:00:00.000Z",
"publishedAt": "2026-10-02T09:00:00.000Z",
"platformData": {}
}
],
"nextCursor": "string"
}Errors
Errors use one shape: { error, type, code, param?, details? }. The ones you are most likely to see here:
| 400 | invalid_request_error | A parameter or body field is missing or invalid. param names it. |
| 401 | authentication_error | The API key is missing, revoked or expired. |
| 403 | permission_error | The key is scoped to other profiles or has this resource group disabled. |
| 429 | rate_limit_error | Too many requests this minute. Wait for Retry-After seconds. |
Every code is listed in Errors.