Skip to main content

Errors

Every error returns JSON with success: false and a readable message. A 422 also lists each invalid field.
Agents & LLMs: a Markdown version of this page is available by appending .md to the URL, and the full documentation index is at llms.txt.

Status codes

Only 429, 500, and 503 are worth retrying as-is. A 400 or 422 fails the same way until you change the request.

Validation errors (422)

The API checks the request body before it runs the request, so a 422 never uses records. A body is rejected when it contains:
  • A field the endpoint does not define, at any depth. A misspelled filter such as company.industry.includes returns a 422 instead of being ignored.
  • A value outside an accepted list, such as an industry, job level, or employee range. These values are case-sensitive: copy them from Field Normalization.
  • A wrong type or an out-of-range value, such as a string for max_results or more than 50 items in a filter list.
Invalid value
For an unknown field, field is the object that contains it (body for a top-level field) and message names the rejected field:
Unknown field
Read errors[].field to find what to fix, and treat message as text for humans: its wording can change.
Free-text filters such as name, keywords, job_title, city, and country_code are not checked against a list. A typo in one of them is not an error: the search runs and returns 0 results. See Troubleshooting.