Skip to main content
Every API response in Octavia AI CMS includes a standardized HTTP statusCode along with a corresponding message field. This table defines what each code means and when it’s typically returned.

Success responses

StatusDefault MessageDescription
200Request successfulThe request completed successfully and returned the expected data.
201Resource created successfullyA new resource was successfully created (e.g., an article or media asset).
204No contentThe operation was successful, but there is no content to return (e.g., after deleting a record).

Client errors

StatusDefault MessageDescription
400Bad requestThe request was invalid, missing parameters, or incorrectly formatted.
401UnauthorizedThe request did not include a valid x-api-key header.
403ForbiddenThe API key is valid, but the user or role does not have permission for this operation.
404Not foundThe requested resource does not exist or is not accessible.
405Method not allowedThe HTTP method is not supported on this endpoint.
409ConflictA conflict occurred, such as attempting to create a resource that already exists.
422Unprocessable entityValidation failed for one or more fields. The data object will contain details.
423Service inactiveThe service or workspace is disabled (e.g., expired subscription). Check the dashboard or contact support.
426Plan limit exceededThe user’s plan quota has been reached (e.g., too many items created). Upgrade or manage usage before retrying.
429Too many requestsRate limit exceeded (50 requests per second per IP). Implement retries with exponential backoff.

Server errors

StatusDefault MessageDescription
500Internal server errorA generic error occurred on the server. Try again or contact support if persistent.
502Bad gatewayAn upstream dependency failed to respond properly. Usually temporary.
503Service unavailableThe API is temporarily offline or under maintenance. Retry later.
504Gateway timeoutThe request to an upstream service took too long to complete.

Example Error Response

{
  "success": false,
  "statusCode": 423,
  "message": "Service inactive",
  "data": {
    "hint": "Your subscription has expired. Please check your dashboard or contact support."
  }
}

Notes

  • 423 Service inactive — Returned when your Octavia workspace or CMS instance is disabled due to an expired plan or manual suspension.
  • 426 Plan limit exceeded — Indicates your usage exceeded the limits of your current plan (e.g., number of articles, AI credits).