Skip to main content
Print

All endpoints require shop Bearer.

Products

Typical create/update payloads match the admin product form (title, handle, description HTML, options/variants, prices in integer cents, status, SEO fields, etc.).

Variable products: each variant’s options array length must match the product’s option count.

a) List

curl -sS "$API_BASE/v1/account/api/products" \

  -H "Authorization: Bearer $SHOP_TOKEN"

b) Create

curl -sS -X POST "$API_BASE/v1/account/api/products" \

  -H "Authorization: Bearer $SHOP_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"title":"Sample product","status":"active"}'

c) Update

curl -sS -X PUT "$API_BASE/v1/account/api/products/1001" \

  -H "Authorization: Bearer $SHOP_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"title":"Updated title"}'

d) Bulk import:

POST /products/bulk-import starts an async job; poll GET /products/bulk-import/jobs/{jobId} for progress / error file URL.

Inventory

– GET /inventory/levels/{lid} — levels for a location / inventory item id (same semantics as admin)

– PUT /inventory/levels/{id} — update quantities

– GET /inventory/stats — dashboard stats

Collections

CRUD plus assign products:

curl -sS -X POST "$API_BASE/v1/account/api/collections/10/products" \

  -H "Authorization: Bearer $SHOP_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"product_ids":[1001,1002]}'
Scroll to Top