ChirpieDocs

Error Codes

Reference for all Chirpie API error codes and how to handle them.

Error Response Format

All errors follow this format:

{
  "error": {
    "code": "error_code",
    "message": "Human-readable description of what went wrong"
  }
}

Error Codes

HTTP StatusCodeDescriptionWhat to Do
400bad_requestInvalid request body, missing fields, or validation errorCheck the message for specifics. Fix the request and retry.
401unauthorizedMissing, invalid, expired, or revoked API keyCheck your Authorization header format: Bearer chirpie_sk_...
403forbiddenValid key but insufficient permissionsCheck your plan limits or account status.
404not_foundResource doesn't exist or belongs to another userVerify the ID. Posts/accounts are scoped to your user.
429rate_limitedMonthly quota or burst rate limit exceededWait and retry, or upgrade your plan.
500internal_errorUnexpected server errorRetry after a moment. If persistent, contact support.
502upstream_errorX/Twitter API returned an errorOften temporary. Scheduled posts auto-retry. For immediate posts, retry after a delay.

Common Scenarios

"Invalid API key"

{ "error": { "code": "unauthorized", "message": "Invalid API key" } }

The key doesn't match any active key in our database. It may have been revoked or mistyped.

"API key has been revoked"

{ "error": { "code": "unauthorized", "message": "API key has been revoked" } }

This key was explicitly revoked. Create a new key from the dashboard or API.

"Monthly post limit reached"

{ "error": { "code": "rate_limited", "message": "Monthly post limit reached (50/50 used)..." } }

You've hit your plan's monthly post quota. Upgrade your plan or wait for the next month.

"Account not found or not active"

{ "error": { "code": "not_found", "message": "Account not found or not active" } }

The account_id doesn't exist, belongs to another user, or the X OAuth tokens have expired. Check the accounts list and re-authorize if needed.

X API Errors

{ "error": { "code": "upstream_error", "message": "Failed to post: X API error - Rate limit exceeded" } }

X/Twitter rejected the request. Common causes: rate limits, suspended account, or content policy violation.

On this page