Error Codes
Common error codes returned by the FeatureOS API and how to resolve them.
Introduction
This page outlines the common error codes that may be encountered when using the FeatureOS API.
HTTP Status Codes
| Status Code | Meaning | Description |
|---|---|---|
| 200 | Success | Request served successfully. |
| 201 | Created | Resource created successfully. |
| 400 | Bad Request | The request body or parameters are invalid. |
| 401 | Unauthorized | The API key or JWT token is missing or invalid. |
| 403 | Forbidden | Your account lacks the required permissions. |
| 404 | Not Found | The requested resource does not exist. |
| 422 | Unprocessable Entity | The request was well-formed but contains semantic errors. |
| 429 | Too Many Requests | Rate limit exceeded. You are allowed 100 requests per minute per API key. |
| 500 | Internal Server Error | Something went wrong on our end. We are on it. |
| 503 | Service Unavailable | The API is temporarily down for maintenance. |
Application Error Codes
These error codes are returned in the response body alongside the HTTP status code.
Seat Limits
| Error Code | Solution |
|---|---|
| ERROR_CODE_ADMIN_LIMIT_REACHED | Maximum admin seats have been reached. Purchase additional seats or upgrade your plan. |
| ERROR_CODE_CSM_LIMIT_REACHED | Maximum CSM seats have been reached. Purchase additional seats or upgrade your plan. |
| ERROR_CODE_MANAGER_LIMIT_REACHED | Maximum manager seats have been reached. Purchase additional seats or upgrade your plan. |
User & Team Errors
| Error Code | Solution |
|---|---|
| ERROR_CODE_USER_ALREADY_PRESENT | The user you are attempting to add is already a member of this team. |
| ERROR_CODE_INVITE_ALREADY_SENT | An invitation has already been sent to this email address. |
Validation Errors
| Error Code | Solution |
|---|---|
| ERROR_CODE_INVALID_PARAM | A parameter value is invalid. Check the parameter name appended to the error code for details. |
| ERROR_CODE_MISSING_PARAM | A required parameter is missing from your request. |
| ERROR_CODE_INVALID_FORMAT | The provided data is in an unsupported format. |
Resource Errors
| Error Code | Solution |
|---|---|
| ERROR_CODE_NOT_FOUND | The requested resource could not be found. Verify the ID or slug. |
| ERROR_CODE_ALREADY_EXISTS | A resource with the same identifier already exists. |
| ERROR_CODE_CANNOT_DELETE | The resource cannot be deleted because it has dependent records. |
Rate Limiting
| Error Code | Solution |
|---|---|
| ERROR_CODE_RATE_LIMITED | You have exceeded the rate limit. Wait and retry after a brief pause. The API allows 100 requests per minute per API key. |
Error Response Format
All error responses follow this structure:
For validation errors with multiple fields: