CertifiedData.io
Errors

Agent error taxonomy

Every CertifiedData agent endpoint returns structured errors. Use error_code for branching, retry_after_seconds for backoff, and request_id for support correlation.

Response shape

Error envelope
{
  "ok": false,
  "error_code": "rate_limit_exceeded",
  "error": "Anonymous sandbox limit: 10 runs / 24h per IP.",
  "retry_after_seconds": 3600,
  "documentation_url": "https://certifieddata.io/agents/errors#rate_limit_exceeded",
  "request_id": "req_01HXYZ..."
}

Error codes

error_codeHTTPRetryable
authentication_required401no
invalid_api_key401no
forbidden_ownership403no
plan_required402no
rate_limit_exceeded429yes
quota_exceeded402maybe
invalid_input400no
prompt_injection_detected400no
engine_not_available400no
cert_level_not_available400no
policy_evaluation_failed422no
insufficient_funds402no
rail_unavailable503yes
signature_invalid400no
challenge_expired410no
challenge_already_used409no
key_revoked410no
artifact_not_found404no
sandbox_expired410no
internal_error500yes
dependency_unavailable503yes

Retry strategy

  • retryable=yes: exponential backoff, base 2s, max 30s, cap 6 attempts.
  • retryable=maybe: inspect context (quota vs. transient) before retrying.
  • retryable=no: do not retry — fix input, auth, or plan.
  • Honor Retry-After and retry_after_seconds when present.
Agent Error Taxonomy — Structured Error Codes | CertifiedData