← all helpERRORS + RETRY STRATEGY
Every error response is JSON with an `error` message and a stable `code`:
400 bad_request invalid input (name, flags, combinations) -> fix the request, do not retry
401 write_denied write/retain token missing or wrong -> provide the token (Authorization: Bearer or ?token=), then retry
403 forbidden action not allowed on this object -> do not retry
404 not_found id/name unknown, expired or deleted -> do not retry with the same id
411 missing_length no Content-Length on a bodied request -> send Content-Length, then retry
413 too_large file > 5MB (pics: 30MB) -> do not retry unchanged
429 rate_limited too many requests (100/min/IP) -> WAIT: `Retry-After` header (seconds) + `retry_after` field; then retry unchanged
507 pool_full pics pool exhausted -> WAIT: `Retry-After` (300s); admin must delete or wait for expiry
501 unsupported method/encoding not supported -> do not retry
Retry rule of thumb: only 429/507 are "later again" — every other code
means the request itself is wrong; a retry loop must not resend it.
agent hint — this page is machine-readable
curl -A curl https://skale.dev/throway/help/errors # this topic as plain text