Reference · built on requestConnectorSupport & service desks

Chatwoot

Conversations, messages, contacts, and inboxes from Chatwoot through the Application API and account webhooks.

About

Chatwoot is a support platform you can use on Chatwoot Cloud or run on your own servers. An account holds an inbox per channel, such as email, a website widget, WhatsApp, or an API inbox. Each inbox receives conversations, and each conversation holds messages and private notes, a status, an assignee, a team, labels, and custom attributes. Contacts, agents, teams, and canned responses sit at the account level.

Through Fibric, an operator reads conversations and messages as account webhooks deliver them, checks the contact and its labels, and proposes a reply, a private note, an assignment, or a status change for your approval. An approved change is applied once, never twice, and leaves a receipt: what changed, why, and how to undo it.

This is a reference listing. It documents what Fibric would read from Chatwoot and what it could propose, based on the vendor's published interfaces. Fibric builds it under a managed deployment when you request it; selecting it here installs nothing.

Inputs

  • Conversations through GET /api/v1/accounts/{account_id}/conversations, filtered by status, assignee_type, inbox_id, team_id, labels, and a search term
  • Messages on a conversation, with message_type, content_type, the private flag, sender_type, and a delivery status of sent, delivered, read, or failed
  • Contacts with email, phone_number, identifier, custom_attributes, contact_inboxes, and last_activity_at
  • Inboxes with channel_type, enable_auto_assignment, working_hours_enabled, and timezone
  • Labels, agents, teams, canned responses, and custom attributes defined on the account
  • Account webhooks for conversation_created, conversation_status_changed, conversation_updated, message_created, message_updated, contact_created, and contact_updated

Proposed actions

  • Target capability: propose a reply or a private note through POST /conversations/{conversation_id}/messages
  • Target capability: propose an assignee or a team through POST /conversations/{conversation_id}/assignments
  • Target capability: propose a status of open, resolved, pending, or snoozed through POST /conversations/{conversation_id}/toggle_status

Proposed actions are target capabilities. Every action runs propose-first and needs a validated deployment and the appropriate permissions.

What you can build

  • Triage a new conversation

    When conversation_created fires, the operator reads the first message and the contact's history and proposes labels, a team, and a priority for your approval.

    With Ticket Triage

  • Catch a reopened thread

    When a resolved conversation returns to open, the operator reads the new message and proposes an assignment to the last agent, with a private note on what changed.

    With Reopen Guard

  • Hand off from an agent bot

    When a conversation stays pending after the agent bot has answered, the operator proposes an assignment to a team and a status of open.

    With Bot Handoff

  • Watch first responses

    The operator reads open conversations that have no outgoing message and proposes an assignee before the wait grows.

    With First Response

Requirements

  • A Chatwoot account on Chatwoot Cloud or a self-hosted installation
  • An agent or administrator whose access token carries the permissions the operator needs; the API acts as that user
  • A webhook on the account subscribed to the events you need, with an HTTPS URL that receives them
  • For a self-hosted installation, network reach from Fibric to your Chatwoot host
Authentication
A user access token generated under Profile Settings, sent in the api_access_token header of Application API requests.

Limits

  • Platform APIs run only on self-hosted or managed hosting and cannot reach accounts or users created through the Chatwoot UI or other API keys
  • Self-hosted rate limiting through rack_attack defaults to 3000 requests per minute per IP; your host may set a different RACK_ATTACK_LIMIT
  • GET messages returns at most 100 messages after a given id, or 20 before it, so long threads are read in pages
  • The webhook reference documents a url, subscriptions, and an optional secret; it does not describe delivery retries

Access and pricing

Reference listing. Fibric builds the connector under a managed deployment when you request it. Your quote covers the build, capabilities, usage, and support.

Request Chatwoot ↗

Questions and answers

Which events can a Chatwoot webhook subscribe to?
The webhook reference lists conversation_created, conversation_status_changed, conversation_updated, contact_created, contact_updated, message_created, message_updated, webwidget_triggered, conversation_typing_on, and conversation_typing_off. Each webhook has a url, a name, a subscriptions array, and an optional secret for signing.
What is the difference between the Application, Client, and Platform APIs?
Application APIs work at the account level with a user access token, on Cloud and self-hosted. Client APIs build a custom messaging interface for end users with an inbox_identifier and a contact_identifier. Platform APIs manage users, roles, and accounts at the installation level and run on self-hosted or managed hosting only.
Can a message be posted as an internal note?
Yes. POST /conversations/{conversation_id}/messages accepts a private flag that marks the message as a private note. It also accepts a message_type of outgoing or incoming, a content_type such as text, cards, or form, WhatsApp template_params, and attachments as multipart form data.
Ask about Chatwoot

Ask about the capabilities and requirements in this listing.

For project-specific requirements, contact Fibric.