Skip to content

Errors

Every error has the shape:

{
"error": {
"type": "validation_error",
"code": "invalid_request",
"message": "due_date must be a valid ISO-8601 datetime",
"request_id": "req_6a2918cff58b0a1d387866ee",
"errors": [{ "field": "due_date", "message": "must be a valid ISO-8601 datetime" }]
}
}
  • type — a stable, broad category.
  • code — a stable, machine-readable string.
  • request_id — quote this when contacting support.
  • errors[] — per-field details for validation failures (present only when relevant).
HTTP type code Meaning
401 authentication_error unauthorized, expired Missing, invalid, revoked or expired API key.
403 permission_error insufficient_scope The key lacks the required access, or the resource is outside its scope.
404 not_found_error resource_not_found The resource does not exist or is not visible to this key.
409 conflict_error already_exists The resource already exists, or an Idempotency-Key was reused with a different request body.
422 validation_error invalid_request The request failed validation; see errors[] for the offending fields.
429 rate_limit_error too_many_requests Too many requests; retry after the delay in the Retry-After header.
500 api_error internal_error Unexpected server error; safe to retry later.

Error responses also carry a doc_url pointing back to this page.