Skip to Content
CompanySpec
Resources

Errors

Every error has the same JSON shape, and none of them are charged.

Errors return Content-Type: application/problem+json in the standard problem details format:

{
  "type": "https://companyspec.com/docs/errors/validation-error",
  "title": "Validation error",
  "status": 422,
  "detail": "employees[0] must be one of: 1-10, 11-50, 51-200, 201-500, 501-1K, 1K-5K, 5K-10K, over-10K.",
  "errors": [{ "field": "employees[0]", "message": "Unknown value '10-50'" }],
  "request_id": "req_01JC8X4T2M"
}
  • type: identifies the error; match on the last part (validation-error).
  • detail: a human-readable explanation.
  • errors: only on 422, one entry per invalid field.
  • available_page_types: only on page-not-available.
  • request_id: include it when you contact support.
StatustypeWhenCharged?
400bad-requestThe body isn't valid JSON, or a parameter has the wrong typeNo
401unauthorizedMissing, invalid or revoked API keyNo
402allowance-exhaustedThe allowance this request needs (named in detail) is at zeroNo
403forbiddenYour account is suspended (for example for bulk copying, see Fair use)No
404not-foundThe company or resource doesn't existNo
404page-not-availableWe don't have that page type for the companyNo
422validation-errorValid JSON, but a value isn't allowed (unknown filter value, out of range)No
429rate-limitedToo many requests. Wait for Retry-After secondsNo
500internal-errorOur fault. Retry with backoffNo

Example 402:

{
  "type": "https://companyspec.com/docs/errors/allowance-exhausted",
  "title": "Allowance exhausted",
  "status": 402,
  "detail": "You have used all 2,000 discoveries for the billing month ending 2026-12-02.",
  "request_id": "req_01JC8X4T2M"
}

Questions? Email support@companyspec.com with the request_id.