API Reference
Error Handling
All API errors follow a consistent format with clear error codes, messages, and request IDs for debugging.
Error Response Format
{
"success": false,
"error": "Human-readable error message",
"code": "ERROR_CODE",
"requestId": "req_abc123def456"
}Validation Errors
Validation errors include detailed field-level information:
{
"success": false,
"error": "Unknown query type: summry. Did you mean 'summary'?",
"code": "VALIDATION_ERROR",
"requestId": "req_abc123def456",
"details": [
{
"field": "parameters[0]",
"message": "Unknown query type: summry",
"suggestion": "Did you mean 'summary'?"
}
]
}The details array contains all validation issues found, with suggestions when available.
Error Codes
Authentication Errors (4xx)
Request Errors (4xx)
Resource Errors (4xx)
Server Errors (5xx)
Error Examples
Missing Authentication
{
"success": false,
"error": "Authentication required",
"code": "AUTH_REQUIRED"
}Missing Resource Identifier
{
"success": false,
"error": "Missing resource identifier (website_id, schedule_id, link_id, or organization_id)",
"code": "MISSING_PROJECT_ID"
}Invalid Query Type
{
"success": false,
"error": "Unknown query type: summry",
"code": "INVALID_QUERY_TYPE"
}Rate Limit Exceeded
{
"success": false,
"error": "Rate limit exceeded. Please try again later.",
"code": "RATE_LIMIT_EXCEEDED",
"limit": 200,
"remaining": 0,
"reset": "2024-01-01T12:00:10.000Z",
"retryAfter": 8
}Partial Success
When querying multiple parameters, individual queries can fail while others succeed:
{
"success": true,
"data": [
{
"parameter": "summary",
"success": true,
"data": [...]
},
{
"parameter": "invalid_type",
"success": false,
"error": "Unknown query type: invalid_type",
"data": []
}
]
}The top-level success: true indicates the request was processed. Check each parameter's success field for individual results.
Troubleshooting
"Authentication required"
"Access denied"
"Rate limit exceeded"
"Unknown query type"
"Hourly granularity only supports up to 30 days"
Best Practices
How is this guide?