Skip to main content

Error Codes

All API errors follow a consistent format.

Error Response Format

{
"error": "error_code",
"message": "Human readable message",
"details": []
}

HTTP Status Codes

CodeStatusDescription
200OKRequest successful
201CreatedResource created
400Bad RequestInvalid parameters
401UnauthorizedInvalid or missing authentication
403ForbiddenInsufficient permissions
404Not FoundResource doesn't exist
429Too Many RequestsRate limit exceeded
500Internal Server ErrorServer error

Error Examples

400 Bad Request

{
"error": "invalid_parameters",
"message": "Invalid query parameters",
"details": [
{
"code": "invalid_type",
"expected": "number",
"received": "string",
"path": ["limit"],
"message": "Expected number, received string"
}
]
}

401 Unauthorized

{
"error": "unauthorized",
"message": "Invalid or missing authentication token"
}

Solutions:

  • Check that you're including the authentication header
  • Verify your API key or access token is correct
  • Ensure your credentials haven't expired

403 Forbidden

{
"error": "forbidden",
"message": "Insufficient scopes. Required scopes not met"
}

Solutions:

  • Check your API key's permissions
  • Request additional OAuth scopes
  • Create a new API key with appropriate permissions

429 Too Many Requests

{
"error": "rate_limit_exceeded",
"message": "Too many requests"
}

Solutions:

  • Implement exponential backoff
  • Reduce request frequency
  • Contact support for rate limit increase