errorCode. Machine-readablemessage. Human-readable explanation
Status codes
The two 402s
A 402 is always “stop”, but which ceiling stopped you decides what to do next:
See Rate Limits & Credit Limits for the monthly ceiling and the headers it reports on.
Retry rules
- Retry only:
429and5xx - Do not retry:
400,401,403,404,422 - Stop on:
402(either ceiling reached)
Backoff strategy
- On
429→ wait forX-RateLimit-Reset - On
5xx→ retry with exponential backoff (start ~1s, max 3–5 attempts)
Request IDs
Every response — success or error — carries anX-Request-ID header uniquely
identifying that request:
message alone doesn’t explain it, include
this ID in your report to api-support@tryspecter.com.
It lets us trace the exact request through our logs and diagnose the issue on our
side.
Notes
404= resource doesn’t exist- Empty results (
200+[]) = valid, but no data 400and5xxare not charged- Per-result endpoints only charge for data returned