Rate Limits

Credits

Each Pro account gets 500 credits per day. Credits reset at midnight UTC.

  • Single-item endpoints (/palette/generate, /palette/:slug, /color/:hex) cost 1 credit per request.
  • List endpoints (/palettes, /colors) cost 1 credit per item returned. Requesting 20 palettes uses 20 credits.
  • The /account endpoint is free (0 credits).

Truncation

If you request more items than you have credits remaining, the API returns as many as it can and sets pagination.truncated to true:

{
  "data": [
    "... 3 items ..."
  ],
  "pagination": {
    "total": 847,
    "limit": 10,
    "offset": 0,
    "returned": 3,
    "truncated": true,
    "truncated_reason": "credit_limit"
  }
}

No error is thrown. You get the data you can afford, clearly labeled.

When you hit the limit

Requests beyond the daily limit return 429 Too Many Requests:

{
  "error": {
    "code": "rate_limit_exceeded",
    "message": "Daily credit limit reached (500). Resets at midnight UTC.",
    "status": 429
  }
}

Checking your balance

Call GET /v1/account (free, no credits charged) to see your current balance. Every response also includes meta.credits_remaining.