Skip to Content
GuidesErrors & limits

Errors & rate limits

Jetwild uses conventional HTTP status codes and returns a structured error body on every failure.

Status codes

200 · 201
success
The request succeeded.
400
bad_request
Malformed request — check the error body.
401
unauthorized
Missing or invalid API key.
402
payment_required
Out of credits or scans. Top up to continue.
403
forbidden
The key lacks the scope for this call.
429
rate_limited
Too many requests — back off and retry after Retry-After.
5xx
server_error
Something broke on our end. Safe to retry idempotent calls.

Error shape

{
"error": {
"type": "payment_required",
"code": "no_scans_remaining",
"message": "Add Shield scans to continue.",
"doc": "https://jetwild.dev/guides/errors"
}
}

Rate limits

Limits scale with plan. When you hit one you get a 429 with a Retry-After header (seconds). The SDKs retry these automatically with backoff.

Idempotency

Send an Idempotency-Key header on writes. Retried requests with the same key return the original result instead of duplicating work.

Last updated on