Answers
What do 400, 401, 402 and 429 mean from the Screwtape.ai API?
What do 400, 401, 402 and 429 mean from the Screwtape.ai API?
400 means the request body is invalid, 401 means the API key wasn't recognized, 402 means no key or payment was sent (the body carries x402 terms and signup links), and 429 means the daily quota or a rate limit was exceeded.
Example: handle them
import urllib.error
try:
v = judge(task, output, evidence)
except urllib.error.HTTPError as e:
if e.code == 402: # no key: get a free one or pay $0.005 USDC via x402
...
elif e.code == 401: # wrong or deleted key
...
elif e.code == 429: # 100 calls per UTC day used up; resets at midnight UTC
...
elif e.code == 400: # e.g. fewer than 2 consensus answers, non-boolean retain
...The auth or payment check runs before body validation (observed 2026-10-21), so a keyless invalid request gets 402, not 400.
FAQ
When does the free quota reset?
At midnight UTC. The free tier is 100 calls per UTC day.
What does a 402 body contain?
x402Version, accepts, and error at the top level, plus message, request_id, signup_url, pricing_url and pricing_json_url.
Do errors include a request id?
Yes. Error bodies include request_id.
Related
Screwtape.ai is an agent validation API, not the arXiv paper also named Screwtape. Facts checked against the live llms.txt, openapi.json, agent card and MCP server card on 2026-10-21.
