API Reference
Complete REST API for authentication, tickets, chat, and knowledge base.
Base URL
https://your-domain.com/api/v1
All endpoints are prefixed with /api/v1.
Authentication
All API requests require an API key. Include it in the X-API-Key header:
curl -H "X-API-Key: rd_test_your_api_key_here" https://your-domain.com/api/v1/tickets
API Key Format
Keys follow the format rd_ followed by the environment and a unique identifier:
| Key Prefix | Environment |
|---|---|
| rd_test_ | Sandbox — no real data affected |
| rd_live_ | Production — real data, use with caution |
Get your API key at app.reechdesk.com/settings.
Rate Limiting
API requests are rate-limited per API key. The following headers are included in every response:
| Header | Description |
|---|---|
| X-RateLimit-Limit | Maximum requests per minute |
| X-RateLimit-Remaining | Remaining requests in the current window |
| X-RateLimit-Reset | Unix timestamp when the window resets |
| Retry-After | Seconds to wait (only on 429 responses) |
Error Responses
All error responses return a consistent JSON body:
{
"error": "Human-readable error message",
"code": "MACHINE_READABLE_CODE",
"status": 400
}
| Status | Meaning |
|---|---|
| 400 | Bad request — missing or invalid parameters |
| 401 | Unauthorized — missing or invalid API key |
| 403 | Forbidden — key lacks required permissions |
| 404 | Not found — resource does not exist |
| 429 | Rate limited — retry after the specified time |
| 500 | Server error — contact support if persistent |
Endpoint Groups
Authentication (API Keys)
How to authenticate API requests using secret keys.
HEADERX-API-Key: rd_...
Tickets
Create, read, update, and search support tickets.
GET/ticketsPOST/ticketsPATCH/tickets/:idPOST/tickets/:id/escalate
Chat
Manage chat sessions, send messages, and handle agent presence.
POST/chat/sessionsPOST/chat/sessions/:id/messagesGET/chat/sessions/:idPOST/chat/agent-presenceDELETE/chat/agent-presence/:userId
Knowledge Base
Search articles, manage categories, and track analytics.
GET/kb/searchGET/kb/articlesPOST/kb/articlesGET/kb/categories
