Developer docs
API reference
Everything the dashboard does, from your own code. Send your key as a Bearer token from your server.
Groups
Send Authorization: Bearer hsk_live_… with a key you created under Developers, API keys. Everything is scoped to the key's store and to the key's scopes. Responses are never cached (cache-control: no-store). Writes go through the same rules as the dashboard: plan limits, delivery checks, payment locks and the audit log all apply. Orders are created by buyers at checkout; the API manages them afterwards.
Every call is live. To look around safely, make a temporary read-only key in Try it; it expires in 60 minutes.
- Public APIProducts, categories, reviews and recent sales of one store.5 endpoints · no key
- Webhook eventsA signed POST to your server for every event you subscribe to.29 events
- ProductsYour catalogue as the seller sees it: hidden products included, every variation with its deliverables, key pools and order counts.14 endpoints
GET 5 · POST 4 · PATCH 2 · DELETE 3
- CategoriesUp to 100 categories per store.6 endpoints
GET 2 · POST 2 · PATCH 1 · DELETE 1
- CouponsDiscount codes.5 endpoints
GET 2 · POST 1 · PATCH 1 · DELETE 1
- OrdersOrders are created by buyers at checkout.10 endpoints
GET 2 · POST 6 · PUT 1 · DELETE 1
- SubscriptionsBuyers of a variation billed per period (weekly to yearly).4 endpoints
GET 2 · POST 2
- CustomersEveryone who checked out or signed in on your storefront, with lifetime aggregates.5 endpoints
GET 2 · POST 2 · DELETE 1
- ReviewsBuyer reviews with unmasked emails.5 endpoints
GET 2 · PUT 1 · PATCH 1 · DELETE 1
- TicketsSupport threads buyers open from their order or account.5 endpoints
GET 2 · POST 2 · PATCH 1
- StoreYour store as its seller sees it, and the basic settings.2 endpoints
GET 1 · PATCH 1
- WebhooksManage the endpoints that receive signed events (the same ones as Developers, Webhooks).8 endpoints
GET 3 · POST 3 · PATCH 1 · DELETE 1
- AnalyticsRevenue and order statistics.1 endpoints
GET 1
- Your key1 endpoints
GET 1
GET reads · POST and PUT create · PATCH changes · DELETE removes
25 reads · 24 creates · 8 changes · 9 removes · 22 writes accept Idempotency-Key
Every endpoint
All 71 endpoints on one list, public ones first. Filter by path, name or scope; every row links to its reference.
71 of 71 endpoints
No endpoint matches.
Public API5 endpoints
| GET | /public/products/{storeSlug} | Products of a store | No key |
| GET | /public/products/{storeSlug}/{slug} | One product | No key |
| GET | /public/categories/{storeSlug} | Categories of a store | No key |
| GET | /public/reviews/{storeSlug} | Visible reviews | No key |
| GET | /public/recent-sales/{storeSlug} | Recent sales | No key |
Products14 endpoints
| GET | /products | List products | products:read |
| POST | /products | Create a product | products:write |
| GET | /products/{id} | Get a product | products:read |
| PATCH | /products/{id} | Update a product | products:write |
| DELETE | /products/{id} | Delete a product | products:write |
| GET | /products/{id}/variations | List variations | products:read |
| POST | /products/{id}/variations | Add a variation | products:write |
| GET | /products/{id}/variations/{variationId} | Get a variation | products:read |
| PATCH | /products/{id}/variations/{variationId} | Update a variation | products:write |
| DELETE | /products/{id}/variations/{variationId} | Remove a variation | products:write |
| GET | /products/{id}/keys | Pool counts and unused keys | products:read |
| POST | /products/{id}/keys | Add keys in bulk | products:write |
| DELETE | /products/{id}/keys | Remove unused keys | products:write |
| POST | /products/{id}/stock | Set or adjust stock | products:write |
Categories6 endpoints
| GET | /categories | List categories | categories:read |
| POST | /categories | Create a category | categories:write |
| GET | /categories/{id} | Get a category | categories:read |
| PATCH | /categories/{id} | Update a category | categories:write |
| DELETE | /categories/{id} | Delete a category | categories:write |
| POST | /categories/reorder | Reorder categories | categories:write |
Coupons5 endpoints
| GET | /coupons | List coupons | coupons:read |
| POST | /coupons | Create a coupon | coupons:write |
| GET | /coupons/{id} | Get a coupon | coupons:read |
| PATCH | /coupons/{id} | Update a coupon | coupons:write |
| DELETE | /coupons/{id} | Delete a coupon | coupons:write |
Orders10 endpoints
| GET | /orders | List orders | orders:read |
| GET | /orders/{id} | Get an order | orders:read |
| POST | /orders/{id}/approve | Approve a manual payment | orders:write |
| POST | /orders/{id}/reject | Reject a manual payment | orders:write |
| POST | /orders/{id}/cancel | Cancel an order | orders:write |
| POST | /orders/{id}/redeliver | Run delivery again | orders:write |
| POST | /orders/{id}/resend-receipt | Resend the receipt | orders:write |
| POST | /orders/{id}/refund | Refund to store balance | orders:write |
| PUT | /orders/{id}/note | Write the private note | orders:write |
| DELETE | /orders/{id}/note | Remove the private note | orders:write |
Subscriptions4 endpoints
| GET | /subscriptions | List subscriptions | subscriptions:read |
| GET | /subscriptions/{id} | Get a subscription | subscriptions:read |
| POST | /subscriptions/{id}/cancel | Cancel a subscription | subscriptions:write |
| POST | /subscriptions/{id}/extend | Extend by one period | subscriptions:write |
Customers5 endpoints
| GET | /customers | List customers | customers:read |
| GET | /customers/{id} | Get a customer | customers:read |
| POST | /customers/{id}/balance | Adjust store balance | customers:write |
| POST | /customers/{id}/ban | Ban a customer | customers:write |
| DELETE | /customers/{id}/ban | Lift a ban | customers:write |
Reviews5 endpoints
| GET | /reviews | List reviews | reviews:read |
| GET | /reviews/{id} | Get a review | reviews:read |
| PATCH | /reviews/{id} | Hide or show a review | reviews:write |
| PUT | /reviews/{id}/reply | Reply in public | reviews:write |
| DELETE | /reviews/{id}/reply | Remove the reply | reviews:write |
Tickets5 endpoints
| GET | /tickets | List tickets | tickets:read |
| GET | /tickets/{id} | Get a ticket | tickets:read |
| POST | /tickets/{id}/messages | Reply to a ticket | tickets:write |
| PATCH | /tickets/{id} | Change the status | tickets:write |
| POST | /tickets/{id}/close | Close a ticket | tickets:write |
Store2 endpoints
Webhooks8 endpoints
| GET | /webhooks | List endpoints | webhooks:read |
| POST | /webhooks | Create an endpoint | webhooks:write |
| GET | /webhooks/{id} | Get an endpoint | webhooks:read |
| PATCH | /webhooks/{id} | Update an endpoint | webhooks:write |
| DELETE | /webhooks/{id} | Delete an endpoint | webhooks:write |
| POST | /webhooks/{id}/rotate-secret | Rotate the secret | webhooks:write |
| POST | /webhooks/{id}/test | Send a test event | webhooks:write |
| GET | /webhooks/{id}/deliveries | Delivery log | webhooks:read |
Analytics1 endpoint
| GET | /analytics | Revenue and orders | analytics:read |
Your key1 endpoint
| GET | /me | Inspect the key you are using | No key |
Try it
Send a request from this page. Signed in? Press Use a temporary test key and we make one for the store you pick: read-only unless you allow writes, gone after 60 minutes, and listed under your API keys so you can revoke it early. Or paste a key of your own. Either way the key stays in this tab and goes to the API only. Writes are real changes to your store.
/public/products/{storeSlug}No keyGet help
Send us the endpoint, the request or delivery id and the response you got. Security findings go through responsible disclosure. Live platform status is on the support page.
See also