Error Codes
Complete list of CueAPI error codes with descriptions and fixes.
Error code reference
| Code | HTTP | Description | Fix |
|---|---|---|---|
invalid_api_key | 401 | API key is missing, malformed, or revoked | Check your API key, regenerate if needed |
cue_not_found | 404 | Cue ID doesn't exist or belongs to another user | Verify the cue ID with cueapi list |
cue_limit_exceeded | 403 | Active cue count exceeds plan limit | Delete unused cues or upgrade your plan |
invalid_schedule | 400 | Cron expression is invalid or at timestamp is in the past | Check cron syntax, use a future timestamp |
invalid_callback_url | 400 | URL fails SSRF validation (blocked IP, no HTTPS, etc.) | Use a public HTTPS URL |
invalid_payload_size | 400 | Payload exceeds maximum size | Reduce payload size (max 1 MB) |
invalid_plan | 400 | Plan name is not pro or scale | Use pro or scale |
invalid_interval | 400 | Billing interval is not monthly or annual | Use monthly or annual |
no_stripe_customer | 400 | No Stripe customer record (never upgraded) | Upgrade first via checkout |
invalid_device_code | 400 | Device code is too short or malformed | Use 8+ alphanumeric characters |
device_code_expired | 400 | Device code has expired (10 min lifetime) | Create a new device code |
device_code_exists | 409 | Device code already registered | Use a different code |
device_code_not_found | 404 | Device code doesn't exist | Check the code for typos |
invalid_status | 400 | Status value is not active or paused | Use active or paused |
validation_error | 400 | General input validation failure | Check the error message for details |
rate_limit_exceeded | 429 | Too many requests in the current window | Wait for Retry-After seconds |
stripe_error | 502 | Stripe API error during checkout or portal | Try again; contact support if persistent |
outcome_already_reported | 409 | Outcome already recorded for this execution | Outcomes are write-once |
execution_not_found | 404 | Execution ID doesn't exist or wrong user | Verify the execution ID |
already_claimed | 409 | Execution already claimed by another worker | Execution was claimed; skip it |
internal_error | 500 | Unexpected server error | Contact support |
Example error responses
401 — Invalid API key
json
{
"error": {
"code": "invalid_api_key",
"message": "Invalid or missing API key",
"status": 401
}
}403 — Cue limit exceeded
json
{
"error": {
"code": "cue_limit_exceeded",
"message": "You have reached your plan's cue limit (10)",
"status": 403
}
}429 — Rate limited
json
{
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded. Retry after 12 seconds.",
"status": 429
}
}Headers include:
Retry-After: 12
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 0