Error Handling

Error codes and troubleshooting guide.

Error Response Format

All API errors return a consistent JSON format:

{
  "error": "Human-readable error message",
  "code": "ERROR_CODE",
  "details": {
    // Additional context (optional)
  }
}

HTTP Status Codes

StatusDescription
200Success
400Bad Request - Invalid parameters or missing required fields
401Unauthorized - Missing or invalid authentication
403Forbidden - Insufficient permissions or scope
404Not Found - Resource does not exist
429Too Many Requests - Rate limit exceeded
500Internal Server Error - Something went wrong on our end

Common Error Codes

CodeDescriptionResolution
INVALID_API_KEYAPI key is invalid or expiredCheck key in Settings > API Keys
INSUFFICIENT_SCOPEAPI key lacks required scopeCreate new key with needed scopes
NO_ACTIVE_ORGANIZATIONNo organization selectedSelect an organization in dashboard
INSUFFICIENT_CREDITSNot enough credits for operationPurchase more credits
RATE_LIMIT_EXCEEDEDToo many requestsWait and retry with backoff
INVALID_CSV_FORMATCSV file has invalid columnsCheck required columns for workflow
RESOURCE_NOT_FOUNDRequested item doesn't existVerify ID is correct

Verification Error Codes

CodeDescriptionResolution
JOB_NOT_FOUNDVerification job doesn't existCheck the job ID is correct
INVALID_JOB_STAGEJob is not in the expected stageWait for job to reach awaiting_decision stage
NO_EMAILS_TO_VERIFYList has no leads with email addressesEnrich leads with emails first

Rate Limiting

API requests are rate limited to ensure fair usage. Rate limit information is included in response headers:

X-RateLimit-Limit: 100
X-RateLimit-Remaining: 95
X-RateLimit-Reset: 1706054400

When you exceed the rate limit, you'll receive a 429 response. Implement exponential backoff in your client to handle this gracefully.

Troubleshooting

Getting 401 Unauthorized?

  • For session auth: Ensure credentials: 'include' is set
  • For API key: Verify the key is active and not expired
  • Check that the X-API-Key header is correctly formatted

CSV upload failing?

  • Ensure file is valid CSV format (UTF-8 encoded)
  • Check required columns for your workflow type
  • File size must be under 10MB

Low match rates on scraping?

  • Use accurate company names (official names work better)
  • Specific job titles yield higher precision
  • Names with unique spelling have higher match rates