IsraelGPT API Docs Get an API key
The public API is offline until accounts come back. Existing API keys no longer work. The web chat at israelgpt.site works as usual. These docs describe the API as it was.

Rate Limits

Limits are per API key, enforced on every request, and reported back to you on every response - success or not.

Free tier

WindowLimit
Per minute10 requests
Per day200 requests

Both apply simultaneously — whichever you hit first is the one that blocks the request. Limits are sliding windows, not fixed resets at midnight: making 10 requests at 9:00:00 and then waiting means you can make more starting around 9:01:00, not at the top of the next clock minute.

Response headers

Every response that got past authentication (even a 429) includes:

HeaderMeaning
X-RateLimit-LimitPer-minute request limit
X-RateLimit-RemainingRequests left in the current minute window
X-RateLimit-ResetUnix timestamp (seconds) the minute window resets
X-RateLimit-Limit-DayPer-day request limit
X-RateLimit-Remaining-DayRequests left today

Not included on a 401 from an unrecognized key — revealing bucket state to a caller who hasn't proven they hold a valid key would help an attacker probe key guesses more efficiently.

Handling 429s

Exceeding either limit returns 429 with both a standard Retry-After header and a retry_after_seconds field in the JSON body — use either, they carry the same value:

{
  "error": {
    "code": "rate_limited",
    "message": "Rate limit exceeded.",
    "retry_after_seconds": 12
  }
}

The reference Discord bot handles this by catching the 429 and telling the user how long to wait instead of erroring — see RateLimited in Discord Bot for the pattern, and Examples for a standalone retry snippet.

Beyond your own limit

Separately from per-key limits, the API applies a temporary, account-wide capacity safeguard during periods of unusually high overall demand across every key combined — this protects the service's shared infrastructure, which the main chat app also depends on. It surfaces as 503 capacity_exceeded (see Errors) and, unlike a 429, isn't about anything you personally did — just retry after a short backoff.

Need more?

The free tier is intentionally modest. If you need higher limits for a legitimate production use case, reach out via the contact address in the Terms of Service — there's no self-serve paid tier yet.