Tidio API
Tidio’s REST API — endpoints, authentication, rate limits, and plan requirements.
REST access to contacts, tickets, and operators — but only on Plus
Tidio offers an OpenAPI-compliant REST API for programmatic access to its platform. The API covers the core objects most teams need for integrations and data sync, but there’s an important caveat up front: full access requires the Plus plan. Plus starts at around $300/month plus usage — contact Tidio sales for custom quotes. That puts it out of reach for most small businesses.
Base endpoint and format
All API requests go to:
https://api.tidio.com/
Resources sit at the root of the base URL — /contacts, /tickets, /operators, and so on — there’s no /v1/ path segment. Versioning goes in the Accept header instead:
Accept: application/json; version=1
Responses are JSON. The API follows standard REST conventions — GET for reads, POST for creates, PATCH for updates, DELETE for removals.
What the API covers
| Resource | Endpoints | Typical use |
|---|---|---|
| Contacts | List, get, create, update, delete | Sync customer data with your CRM |
| Contact properties | List | Manage custom contact properties |
| Messages | List, send | Export chat transcripts |
| Tickets | List, get, create (as contact), update, reply, delete | Pull and manage support tickets |
| Operators, Departments | List | Monitor agent status and assignments |
| Products | Batch upsert, delete | Sync your product catalog |
| Project | Get | Reference and configuration data |
| Lyro | Data sources, tickets | Update Lyro knowledge sources |
The API is functional but not exhaustive. Flows and widget settings have no endpoints, but a separate Analytics API exposes read-only statistics (agents, Flows, Lyro, tickets). Note there’s no “Conversations” resource — chat threads are handled as Tickets. It’s designed for data access, not full platform administration.
Authentication
The API uses two credential headers on every request — a client ID and a client secret, both generated in the Tidio panel once OpenAPI is enabled. It does not use Bearer tokens.
X-Tidio-Openapi-Client-Id: ci_YOUR_CLIENT_ID
X-Tidio-Openapi-Client-Secret: cs_YOUR_CLIENT_SECRET
Keep your client secret private. If compromised, regenerate the credentials immediately from the dashboard.
Rate limiting
Tidio enforces rate limits and responds with HTTP 429 (Too Many Requests) when you exceed them, along with x-ratelimit-limit and x-ratelimit-remaining headers. Limits scale by plan — Plus is 60 requests/minute and Premium is 120/minute. If you’re running bulk operations, implement retry logic with exponential backoff.
Example request
curl -X GET "https://api.tidio.com/contacts" \
-H "Accept: application/json; version=1" \
-H "X-Tidio-Openapi-Client-Id: ci_YOUR_CLIENT_ID" \
-H "X-Tidio-Openapi-Client-Secret: cs_YOUR_CLIENT_SECRET"
Illustrative response (check the API reference for the exact shape):
{
"data": [
{
"id": "abc123",
"name": "Jane Doe",
"email": "jane@example.com",
"properties": { ... }
}
],
"meta": {
"total": 1,
"page": 1
}
}
Error handling
The API returns standard HTTP status codes:
| Code | Meaning |
|---|---|
| 200 | Success |
| 201 | Created |
| 400 | Bad request — check your parameters |
| 401 | Unauthorized — invalid or missing API key |
| 404 | Resource not found |
| 429 | Rate limited — slow down and retry |
| 500 | Server error — retry later |
Check the API reference for the exact error body format.
Plan requirements
This is the biggest barrier. Full REST API access requires the Plus plan (from ~$300/month + usage; talk to sales). The Free plan has no OpenAPI access at all, and Starter and Growth only get a Products-Recommendation slice rather than the full API.
For teams on lower plans who need integrations, the alternative is:
- Widget SDK — available on all plans, lets you control the chat widget with JavaScript
- Zapier integration — no-code automation that connects Tidio to thousands of apps without API access
- Native integrations — Tidio has built-in connections for Shopify, WordPress, HubSpot, and others
Who needs the API vs. Zapier
| Scenario | Best option |
|---|---|
| Sync contacts with a CRM | Zapier (simpler) or API (more control) |
| Export conversation history | API |
| Trigger actions in other tools | Zapier |
| Build a custom dashboard | API |
| Simple workflow automation | Zapier |
| Bulk data operations | API |
In my view, most small and mid-sized teams will get everything they need from Zapier and native integrations. The API makes sense for larger organizations with custom development resources and specific data requirements — contact Tidio sales to discuss Plus plan pricing for your team size.
Bottom line
Tidio’s REST API is well-structured and adequate for data integration use cases. The documentation is OpenAPI-compliant, responses are clean JSON, and the endpoint coverage handles the basics. The main issue is access: the Plus plan requirement means most Tidio users will never use it. If you’re on a lower plan, start with the Widget SDK and Zapier.
Based on Tidio’s API documentation and developer resources.