Errors

One shape everywhere. The code is stable; the message is written for a person and names the problem.

json
{ "error": { "code": "invalid_request", "message": "posted_within_days must be 1-365" } }
StatusCodeWhen
400invalid_requestA filter name or value is wrong (unknown parameters are errors too)
400too_broadThe search covers too many jobs to answer; add a title, company or location
401unauthorizedMissing, mistyped or revoked key
404not_foundThe job closed, or the id is wrong
429limit_reachedToo many at once, or the daily or monthly limit; see Retry-After
5xxOur side. Retry with backoff

In MCP, the same problems come back as a tool error with the same message, so the model can fix its own arguments.