Skip to content

REST API reference for the Quickchat AI platform — authentication, base URL, rate limits, pagination, and error handling.

Quickchat AI provides a REST API for programmatic access to your AI Agent’s configuration, Knowledge Base, Conversations, AI Actions, and more.

All API endpoints use Bearer token authentication. Include your API token in the Authorization header of every request:

Authorization: Bearer <API_TOKEN>

Tokens are created in the Quickchat Dashboard under External Apps > API. Each token is a JWT that contains your scenario_id, so no additional identifier header is needed.

  • Token validity: 52 weeks from creation
  • Tokens can be revoked at any time from the Dashboard
  • Each token is scoped to a single AI Agent (scenario)

API tokens are created with one of two scopes:

ScopeAccess LevelDescription
read_allRead-onlyCan read all resources but cannot create, update, or delete
write_allRead + WriteFull access to all endpoints, including write operations
  • Tokens are assigned a scope when created in the Dashboard under External Apps > API
  • write_all scope includes all read_all permissions automatically
  • Using a read_all token on a write endpoint returns 403 with "Insufficient token scope. Required: write_all"

Scope requirements by endpoint group:

Endpoint GroupRead OperationsWrite Operations
Chatbot Settingsread_allwrite_all
Knowledge Base Settingsread_allwrite_all
Articlesread_allwrite_all
Article Language URLsread_allwrite_all
Tagsread_all
File Uploadwrite_all
Import External Contentwrite_all
Intercom Knowledge Baseread_allwrite_all
Widget Configurationread_allwrite_all
Conversationsread_all
Conversation Metadataread_allwrite_all
Handoff Configurationread_allwrite_all
Conversation Ratingread_allwrite_all
AI Actionsread_allwrite_all
Endpoint GroupBase URL
Knowledge Base, AI Actions, File Upload, Import, Chatbot Settings, Widget, Handoff, Conversation Ratinghttps://app.quickchat.ai/v1/api/
Conversationshttps://app.quickchat.ai/v1/api_core/
Realtime Chathttps://app.quickchat.ai/chat

Rate limits are applied per token, per endpoint.

TierLimitApplies To
READ120 requests/minGET and list operations
WRITE60 requests/minPOST, PATCH, PUT, DELETE
HEAVY20 requests/minFile uploads, imports, scraping

When a rate limit is exceeded, the API returns HTTP 429 Too Many Requests.

List endpoints support pagination via query parameters:

ParameterDescription
limit
integer
Number of items per page
offset
integer
Number of items to skip

Paginated responses follow this structure:

{
"items": [],
"offset": 0,
"limit": 10,
"count": 100
}

All errors are returned as JSON in the following format:

{
"errors": {
"root": [
{
"message": "Description of the error",
"code": "ERROR_CODE"
}
]
}
}
StatusCodeDescription
400BAD_REQUESTInvalid input or missing required fields
401PERMISSION_DENIEDInvalid, expired, or revoked token
402PAYMENT_REQUIREDActive subscription required
403PERMISSION_DENIEDToken lacks the required scope for this operation
404NOT_FOUNDResource not found
409CONFLICTConflicting operation (e.g., concurrent modification)
422VALIDATION_ERRORRequest body failed schema validation
429TOO_MANY_REQUESTSRate limit exceeded
500UNKNOWNInternal server error
503SERVICE_UNAVAILABLETemporary unavailability