Error Codes
The ReviewData Lite API uses standardized error codes to communicate the status of your requests and tasks.
Task Status Codes
Code | Meaning | Description |
---|---|---|
200 | OK | Task completed successfully |
400 | Bad Request | No business page found. Possible incorrect profile_key supplied |
401 | Unauthorized | Authentication error - invalid API key |
404 | Not Found | Could not find Business |
422 | Unprocessable Entity | Invalid Payload |
429 | Too Many Requests | Too many requests ban from publisher due to automatic retries |
450 | Format Change | Change detected in page format |
451 | Encryption Error | Publisher reverse engineered encrypt/decrypt failure |
452 | Geoservice Error | Geoservice failure for city and state |
460 | No Reviews | Business has no reviews |
461 | No New Reviews | Business has no new reviews |
472 | Google Special Case | Special case failure for Google |
500 | Internal Server Error | An unknown error has occurred |
503 | Service Unavailable | Service temporarily unavailable |
504 | Gateway Timeout | Process timed out |
505 | Fatal Error | Fatal unrecoverable error. Automatic ticket created |
530 | Partial Success | Some reviews present, but encountered an error |
532 | Partial Success | Some reviews present, but hit maximum attempts to get all reviews |
HTTP Status Codes
2xx Success
- 200 OK: Request processed successfully
- 201 Created: Resource created successfully
4xx Client Errors
- 400 Bad Request: Invalid request format or missing required fields
- 401 Unauthorized: Invalid or missing API key
- 404 Not Found: Resource not found
- 422 Unprocessable Entity: Request validation failed
- 429 Too Many Requests: Rate limit exceeded
5xx Server Errors
- 500 Internal Server Error: Unexpected server error
- 503 Service Unavailable: Service temporarily unavailable
- 504 Gateway Timeout: Request timeout
Error Response Format
When an error occurs, the API returns a standardized error response:
{
"error": "Error message description",
"details": {
"field_name": ["Specific validation error"],
"api_key": ["The provided API key is invalid"]
}
}
Common Error Scenarios
Authentication Errors (401)
{
"error": "Invalid API key",
"details": {
"api_key": ["The provided API key is invalid or expired"]
}
}
Solution: Verify your API key is correct and active.
Validation Errors (422)
{
"error": "Invalid payload",
"details": {
"data": {
"business": {
"address": {
"street": ["This field is required."]
}
}
}
}
}
Solution: Check that all required fields are provided and properly formatted.
Rate Limiting (429)
{
"error": "Too many requests",
"details": {
"retry_after": 60
}
}
Solution: Wait for the specified retry period before making new requests.
Handling Errors
Best Practices
- Always Check Status Codes: Verify both HTTP status codes and task status codes
- Implement Retry Logic: For transient errors (5xx), implement exponential backoff
- Log Error Details: Store error responses for debugging and monitoring
- Handle Partial Success: Some tasks may complete partially (codes 530, 532)
Retry Strategy
// Example retry logic for transient errors
const retryableErrors = [500, 503, 504];
const maxRetries = 3;
if (retryableErrors.includes(response.status)) {
// Implement exponential backoff retry logic
await delay(Math.pow(2, attempt) * 1000);
// Retry request
}
Monitoring
Monitor these error patterns:
- High rate of 401 errors (authentication issues)
- Frequent 429 errors (rate limiting)
- 500+ errors (server issues)
- Publisher-specific errors (450, 451, 472)
Support
If you encounter persistent errors:
- Check this documentation for error code meanings
- Verify your request payload format
- Contact support at techsupport@shoutaboutus.com with:
- Error code and message
- Request payload (with API key redacted)
- Task ID if available
- Timestamp of the error
Next Steps
Now that you understand error handling, explore the API endpoints to learn how to make requests.