Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.heffl.com/llms.txt

Use this file to discover all available pages before exploring further.

Errors

API v2 returns structured error objects inside an error key.

Error shape

{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Some fields are invalid. Please check and try again.",
    "details": {
      "issues": [
        { "field": "email", "message": "Please enter a valid email address." }
      ]
    }
  }
}
FieldDescription
codeMachine-readable error code
messageHuman-readable summary
detailsOptional extra context (validation issues, retry hints)

Error codes

CodeHTTP StatusDescription
UNAUTHORIZED401Missing or invalid API key
FORBIDDEN403Valid key but insufficient permission
NOT_FOUND404Resource does not exist
VALIDATION_ERROR400Invalid request body or parameters
BAD_REQUEST400General bad request
CONFLICT409Operation conflicts with existing data
TOO_MANY_REQUESTS429Rate limit exceeded
INTERNAL_SERVER_ERROR500Unexpected server error

Validation errors

When request validation fails, details.issues lists each problem:
{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Some fields are invalid. Please check and try again.",
    "details": {
      "issues": [
        { "field": "firstName", "message": "Required" },
        { "message": "Unknown field: foo. Only documented fields and cf_* keys are allowed." }
      ]
    }
  }
}

Retry guidance

  • 429 — Back off and retry after the window in RateLimit-Reset
  • 500 — Retry with exponential backoff
  • 400 / 409 — Fix the request; retrying without changes will fail