Error Response Format
All each::labs APIs return errors in a clean, consistent JSON format:HTTP Status Codes
| Status | Meaning | Description |
|---|---|---|
400 | Bad Request | Invalid request parameters or body |
401 | Unauthorized | Missing or invalid API key |
403 | Forbidden | Operation not allowed (e.g., locked resource) |
404 | Not Found | Resource does not exist |
429 | Too Many Requests | Rate limit exceeded |
500 | Internal Server Error | Unexpected server error |
Common Errors
400: Bad Request
- Missing required parameters
- Invalid parameter types or values
- Malformed JSON body
- Input validation failure
401: Unauthorized
X-API-Keyheader not included- API key is invalid or expired
403: Forbidden
- Attempting to modify a locked workflow or version
- Insufficient permissions for the requested operation
404: Not Found
- Invalid model slug
- Non-existent prediction ID, workflow ID, or execution ID
- Resource was deleted
429: Rate Limited
- Implement exponential backoff
- Check the
Retry-Afterheader when available - Consider reducing request frequency
500: Internal Server Error
- Retry with exponential backoff
- If persistent, contact support
Product-Specific Errors
each::api: Prediction Errors
| Error | Description |
|---|---|
"Prediction not found" | Invalid prediction ID |
"Model not found" | Invalid model slug |
"Invalid input" | Input doesn’t match model’s request schema |
each::workflows: Execution Errors
| Error | Description |
|---|---|
"Workflow not found" | Invalid workflow ID or slug |
"Version not found" | Invalid version ID |
"Workflow is locked" | Attempting to modify a locked workflow |
"ExecutionFailed" | A workflow step failed during execution |
"invalid input: missing required field" | Trigger input doesn’t match workflow input schema |
each::sense: Agent Errors
| Error | Description |
|---|---|
"Session not found" | Invalid session ID |
"Model execution failed" | Underlying model execution error |
"Workflow execution timeout" | Execution exceeded 15-minute limit |