HTTP Error Codes
Complete reference for every HTTP status code the Guardrail API returns, with causes and resolution steps.
Evaluated. Read status and risk_score from the body. The X-LLMFence-Source header names which stage produced the verdict.
The request body could not be parsed as JSON.
The API key is missing, malformed or revoked. A key that never existed and one that was revoked return the same response, deliberately — the difference is not something we disclose.
A limit you control, not a problem with the key. Either the included calls are exhausted on a plan that stops rather than charging, or the monthly spend cap has been reached.
The account is suspended.
proposed_text is longer than your plan's maximum request size.
proposed_text is missing or empty, or agent_id is not 1-128 characters of [A-Za-z0-9_.-]. The message never echoes the value received.
The per-minute ceiling for your plan. The request is not counted toward your included calls and is not charged.
Authorisation could not be completed. The API fails closed rather than serving a request it could not authenticate, so this is never a silently-approved call.
Handling errors in production
For non-critical AI outputs, we recommend a fail-open strategy: if Guardrail returns a 5xx error, pass the content through rather than breaking your user experience. For high-stakes scenarios (medical, legal, financial), implement fail-closed and serve a safe fallback message.