The InsiteChat API uses Bearer token authentication. Every request must include a valid API key in theDocumentation Index
Fetch the complete documentation index at: https://docs.insitechat.ai/llms.txt
Use this file to discover all available pages before exploring further.
Authorization header. Keys are tied to your InsiteChat user account and grant access to all chatbots you own.
Creating an API Key
Create a key
Click Create API Key, give it a descriptive name (e.g. Production Server, Staging, Zapier Integration), and click Generate.
Key Format
API keys are URL-safe random tokens prefixed withic_:
prefix, which always starts with ic_) are shown in the dashboard so you can identify which key is which. The full key is never stored on InsiteChat servers — only its SHA-256 hash — which is why we can’t show it back to you after creation.
Using Your API Key
Include the API key in theAuthorization header of every request:
Listing Your Keys
Dashboard → Developer → API Keys shows every key on your account with:
- Name — the label you gave the key at creation
- Prefix — the first 8 characters (e.g.
ic_aBcDeF) so you can spot which key is which - Last used — the timestamp of the most recent successful API call (or Never if unused)
- Created — when the key was generated
- Active / Revoked — current state
Revoking a Key
- Find the key on the API Keys page.
- Click Revoke and confirm.
401 Unauthorized (the same response as a malformed or unknown key — there is no separate error code distinguishing the two).
Use separate keys for each environment (production, staging, dev) and each integration (Zapier, your CRM sync, internal scripts). That way revoking a leaked key only impacts one consumer.
Rate Limiting
Each API key is rate-limited to 60 requests per minute on a rolling 60-second window. When you exceed the limit, the API returns:Retry-After header — back off on a fixed schedule (e.g. wait 60 seconds before retrying).
Error Responses
The API returns standard HTTP status codes. Error bodies follow the Django Ninja default shape — a singledetail field describing what went wrong:
| Status | Typical detail | Cause |
|---|---|---|
401 | (Ninja default Unauthorized) | Missing, malformed, or revoked API key |
400 | Maximum 5 active API keys allowed. | Hit the per-account key cap when calling the create-key endpoint |
404 | API key not found. | Tried to revoke a key that doesn’t exist or isn’t yours |
429 | API rate limit exceeded. Max 60 requests per minute. | Per-key rate limit |
429 | Monthly message limit reached. (or similar quota text) | Plan message quota exhausted (only on the chat endpoint) |
code field today — branch on the HTTP status (and on the detail text if you need to distinguish rate-limit 429s from quota 429s).