Skip to main content

Status code summary

Success responses

200 OK

Standard success response for read operations. The response body contains the requested data.

202 Accepted

Returned for write operations (POST, PUT, PATCH). The request has been accepted for asynchronous processing, with background tasks handling media uploads, validation, and webhook notifications.

204 No Content

Returned for successful DELETE operations. No response body is included.

Error responses

All error responses follow a consistent format:

400 Bad Request

Indicates invalid request parameters or validation errors. Field-Specific Validation Errors:
General Error Message:
Common 400 Error Causes: Example Errors:

401 Unauthorized

Authentication credentials are missing or invalid. Missing token:
Invalid token:
Inactive or expired token:
Common Causes:
The API token you use for reading will not allow write operations. Contact support@buttercms.com to request a Write API token.

403 Forbidden

The authentication is valid, but the request is not permitted. This includes permission errors and invalid query parameters when filtering or ordering collections.
Invalid filter key (collections):
Common Causes:
  • Using an invalid field name to filter or order collection results
  • Attempting to access content from a different organization
  • Feature not enabled for your account

404 Not Found

The requested resource doesn’t exist.
Common Causes: Pagination Error:

405 Method Not Allowed

The HTTP method is not supported for the endpoint.
Solution: Check the REST Endpoints reference for supported methods.

429 Too Many Requests

Your account has been temporarily blocked after exceeding its monthly API call limit (Free/Trial accounts).
See Rate Limits & Throttling for details on limits and how to recover.

500 Internal Server Error

An error occurred on ButterCMS servers.
If you receive this error:
  1. Wait a moment and retry the request
  2. Check ButterCMS Status for any incidents
  3. Contact support@buttercms.com if the issue persists

Error handling best practices

JavaScript / Node.js

Python

Exponential backoff pattern

For transient errors (5xx), implement exponential backoff:

Webhook error responses

When your webhook endpoint receives notifications from ButterCMS:
Webhook endpoints must respond within 5 seconds. Requests that exceed this timeout will be treated as failures.

Next steps

Rate Limits

Learn about API rate limits

Authentication

Fix authentication issues

Request Format

Review request requirements