Skip to main content
Error bodies are not uniform, so branch on the HTTP status code, not on a body field. The two surfaces behave differently:
  • REST ingest and network-check gateways return an object like { "error": "description of the problem" } for 429 and 503.
  • Server API returns an empty body for 401 and 402, and a bare JSON string (for example "request_id is not supported") for 400 and 404.

HTTP status codes

429 and 503 come from the REST ingest and network-check gateways, not the Server API. 429 is an infrastructure rate limit, not a Risk Score. It protects the gateway and never feeds the score. The Risk Score is always 0 to 100. The same rate-limits page documents the 512KB request body-size limit, and explains why a 999 in your logs is a ban marker rather than a customer score.

Troubleshooting

Symptom-to-fix for snippet, webhook, signature, and scoring issues.

FAQ

Short answers on keys, requests, identifiers, and a score of 0.

Rate limits

The infra limits behind 429 and 503, and why they never affect the score.

Webhooks

Register, receive, and verify webhooks, with the no-retry delivery model.