FlashData API V2
Errors and retries
Use the HTTP status for protocol behavior, the stable code for product logic, and requestId for support and tracing.
Problem response
application/problem+json
{
"type": "https://api.flashdata.dev/problems/rate_limited",
"title": "Rate limited",
"status": 429,
"code": "rate_limited",
"requestId": "req_01J..."
}Retry decisions
400 / 422Fix request shape or field values; do not retry unchanged.
401 / 403Refresh credentials or permissions; never loop retries.
402Restore available credits before retrying a charged request.
409Read current resource state, then decide whether to retry.
429Honor Retry-After and use bounded exponential backoff.
500 / 503Retry idempotent operations with jitter and the same idempotency key.