Error Codes
Common embed and checkout failure modes.
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Common embed and checkout failure modes.
{ "error": "Human-readable message" }
| Situation | Status |
|---|---|
| Invalid body / schema | 400 |
| Missing variant | 400 |
| Private or on-hold product | 400 |
| Unknown product / banned store | 404 |
| Rate limited | 429 |
| Situation | Status |
|---|---|
| Bad cart | 400 |
| Rate limited | 429 (15/min) |
| Situation | Status |
|---|---|
| Unknown subdomain / banned | 404 |
| Unexpected | 500 |
| Status | Meaning |
|---|---|
| 401 | Not logged in |
| 403 | Missing permission |
| 404 | Out of store scope |
const res = await fetch(url, options)
if (!res.ok) {
const body = await res.json().catch(() => ({}))
throw new Error(body.error || String(res.status))
}