All channels

Customer support API for custom integrations and channels

The Deskwoot customer support API covers conversations, contacts, messages, agents, labels and custom attributes. Build custom channels, chat inside your app or alert routing on top of the shared inbox.


Overview

Many helpdesks treat the API as an afterthought and leave out the endpoints you actually need. Deskwoot's customer support API comes with the Enterprise plan and covers conversations, messages, contacts, inboxes, labels, teams, webhooks and more, documented in an OpenAPI spec.

REST and webhooks: conversations, contacts, messages, labels, teams, custom attributes and more are available over REST. Webhooks send events such as conversation created, assigned or resolved, new messages, contact changes and CSAT ratings to your URL, signed with your secret, so your code reacts to events instead of polling.

Authentication: API tokens with scopes. Give each integration only what it needs, for example read access, or the dedicated scope that may post customer messages into an API inbox.

Custom channels: create a REST API inbox, post your customers' messages to it with your own ID per message, and set a callback URL. A retried request never creates a duplicate, and agent and Fynn replies are posted to your callback URL, so chat inside your app or any channel that is not built in works like the others.

Common patterns we see: 1) chat inside a mobile app, where your backend posts messages to an API inbox, 2) a contact form on your site that opens a conversation through the API, 3) device or system alerts that land in the inbox as conversations, 4) syncing contacts and conversation data with your own systems.

What you get with API support

  • REST and webhooks

    Read and write conversations, contacts and messages, and get webhooks for events.

  • Safe retries

    Each inbound message carries your own ID, so a retried request never creates a duplicate.

  • Scoped API tokens

    Every token gets only the scopes an integration needs.

  • OpenAPI spec

    The full reference lives at /docs/api, with an OpenAPI file for Postman, Insomnia or your own client generator.

  • Callbacks for replies

    Set a callback URL on the API inbox and agent and Fynn replies are posted to your system.

Getting started

Connect API in 3 steps.

  1. On the Enterprise plan, create an API token in Settings → API Tokens.
  2. Create a REST API inbox and post customer messages to its inbound endpoint.
  3. Set a callback URL to receive the replies.

Frequently asked questions

The short answers are here. For anything else, ask Fynn below.

What is the best customer support API for custom integrations?

For custom channels the customer support API needs: endpoints for conversations and contacts, webhooks for events, scoped tokens, safe retries and good docs. Deskwoot has all of these on the Enterprise plan, with an OpenAPI spec. Zendesk and Intercom also have strong APIs.

How do I build a custom channel with the API?

Create a REST API inbox in Settings → Inboxes with a callback URL. Post customer messages to /api/v1/accounts/{accountId}/inbound with a token that has the inbound:ingest scope, and agent and Fynn replies are sent to your callback URL. Deskwoot handles the inbox, AI, SLAs and reporting.

Are there rate limits on the customer support API?

Yes. Requests are rate limited per token, for example 120 inbound messages per minute, and a request over the limit gets a 429 response.

Which events do the webhooks send?

Webhooks cover the main events: conversation created, updated, assigned and resolved, message created, contact created and updated, and CSAT submitted. Each delivery is signed with your webhook secret and retried once if your endpoint fails.

Can I use the API to migrate from another helpdesk?

For most moves you do not need the API: Settings → Import brings over contacts and conversations from Chatwoot, Zendesk, Freshdesk, Intercom and Crisp, and a CSV import covers contacts from anywhere else. The API helps with data from other systems.

Try it free for 7 days

Deskwoot interactive demo