Chatwoot

Usage Instructions

Integrate with Chatwoot to list and manage conversations, send messages, manage contacts, assign agents, and apply labels. Works with self-hosted and cloud Chatwoot instances.

Actions

List Conversations from Chatwoot

List conversations from a Chatwoot account with optional status and assignee filters

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
statusstringNoFilter by status: open, resolved, pending, snoozed, all
assignee_typestringNoFilter by assignee type: me, unassigned, all, assigned
pagenumberNoPage number for pagination (starts at 1)

Output

ParameterTypeDescription
conversationsarrayArray of conversation objects
↳ idnumberConversation ID
↳ account_idnumberAccount ID
↳ inbox_idnumberInbox ID
↳ statusstringConversation status (open, resolved, pending, snoozed)
↳ agent_last_seen_atstringTimestamp when the agent last viewed
↳ contact_last_seen_atstringTimestamp when the contact last viewed
↳ created_atstringConversation creation timestamp
↳ updated_atstringConversation last updated timestamp
↳ prioritystringPriority (nil, urgent, high, medium, low)
↳ unread_countnumberNumber of unread messages
↳ labelsarrayLabels assigned to the conversation
↳ metaobjectConversation metadata (sender, assignee, team, etc.)
↳ messagesarrayRecent messages in the conversation
↳ idnumberMessage ID
↳ contentstringMessage content
↳ message_typestringMessage type (incoming, outgoing, activity)
↳ created_atnumberUnix timestamp of message creation
↳ privatebooleanWhether the message is private (internal note)
metaobjectPagination and filter metadata
successbooleanOperation success status

Get Conversation from Chatwoot

Get details of a specific conversation by ID from Chatwoot

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
conversationIdstringYesThe conversation ID to retrieve

Output

ParameterTypeDescription
conversationobjectConversation details
↳ idnumberConversation ID
↳ account_idnumberAccount ID
↳ inbox_idnumberInbox ID
↳ statusstringConversation status (open, resolved, pending, snoozed)
↳ agent_last_seen_atstringTimestamp when the agent last viewed
↳ contact_last_seen_atstringTimestamp when the contact last viewed
↳ created_atstringConversation creation timestamp
↳ updated_atstringConversation last updated timestamp
↳ prioritystringPriority (nil, urgent, high, medium, low)
↳ unread_countnumberNumber of unread messages
↳ labelsarrayLabels assigned to the conversation
↳ metaobjectConversation metadata (sender, assignee, team, etc.)
↳ messagesarrayRecent messages in the conversation
↳ idnumberMessage ID
↳ contentstringMessage content
↳ message_typestringMessage type (incoming, outgoing, activity)
↳ created_atnumberUnix timestamp of message creation
↳ privatebooleanWhether the message is private (internal note)
successbooleanOperation success status

Send Message in Chatwoot

Send a message in a Chatwoot conversation

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
conversationIdstringYesThe conversation ID to send the message to
contentstringYesThe message content to send
message_typestringNoMessage type: outgoing (default) or incoming
privatebooleanNoWhether the message is a private note (internal)

Output

ParameterTypeDescription
messageobjectThe sent message object
↳ idnumberMessage ID
↳ contentstringMessage content
↳ message_typestringMessage type: incoming (0), outgoing (1), activity (2)
↳ content_typestringContent type (text, input_select, etc.)
↳ content_attributesobjectAdditional content attributes
↳ created_atnumberUnix timestamp of message creation
↳ privatebooleanWhether the message is private (internal note)
↳ senderobjectMessage sender details
↳ idnumberSender ID
↳ namestringSender name
↳ emailstringSender email
↳ phone_numberstringSender phone number
↳ thumbnailstringSender avatar URL
↳ typestringSender type (contact)
↳ conversation_idnumberConversation this message belongs to
↳ account_idnumberAccount ID
messageIdnumberID of the sent message
successbooleanOperation success status

Send WhatsApp Template Message in Chatwoot

Send a WhatsApp template message in a Chatwoot conversation. Requires a pre-approved template name and its parameters.

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
conversationIdstringYesThe conversation ID to send the template message to
contentstringYesThe rendered message text (fallback shown if template fails)
templateNamestringYesThe WhatsApp-approved template name (e.g., "technician_visit")
templateLanguagestringYesTemplate language code (e.g., "en_US", "en", "es")
templateCategorystringNoTemplate category: UTILITY, MARKETING, or AUTHENTICATION
processedParamsstringNoJSON object with template variable substitutions. Supports body params (e.g., {"body": {"1": "John", "2": "Dubai"}}) and header media (e.g., {"body": {...}, "header": {"media_url": "https://...", "media_type": "image"}})

Output

ParameterTypeDescription
messageobjectThe sent template message object
↳ idnumberMessage ID
↳ contentstringMessage content
↳ message_typestringMessage type: incoming (0), outgoing (1), activity (2)
↳ content_typestringContent type (text, input_select, etc.)
↳ content_attributesobjectAdditional content attributes
↳ created_atnumberUnix timestamp of message creation
↳ privatebooleanWhether the message is private (internal note)
↳ senderobjectMessage sender details
↳ idnumberSender ID
↳ namestringSender name
↳ emailstringSender email
↳ phone_numberstringSender phone number
↳ thumbnailstringSender avatar URL
↳ typestringSender type (contact)
↳ conversation_idnumberConversation this message belongs to
↳ account_idnumberAccount ID
messageIdnumberID of the sent message
successbooleanOperation success status

Send Attachment in Chatwoot

Send a message with a file attachment in a Chatwoot conversation. Supports uploaded files or external URLs.

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
conversationIdstringYesThe conversation ID to send the attachment to
contentstringNoOptional text caption for the attachment
message_typestringNoMessage type: outgoing (default) or incoming
filefileNoFile to attach (from upload or another block)
attachmentUrlstringNoURL of the file to attach (alternative to file upload)
file_typestringNoType of file: image, audio, video, or file (auto-detected if omitted)

Output

ParameterTypeDescription
messageobjectThe sent message with attachment object
↳ idnumberMessage ID
↳ contentstringMessage content
↳ message_typestringMessage type: incoming (0), outgoing (1), activity (2)
↳ content_typestringContent type (text, input_select, etc.)
↳ content_attributesobjectAdditional content attributes
↳ created_atnumberUnix timestamp of message creation
↳ privatebooleanWhether the message is private (internal note)
↳ senderobjectMessage sender details
↳ idnumberSender ID
↳ namestringSender name
↳ emailstringSender email
↳ phone_numberstringSender phone number
↳ thumbnailstringSender avatar URL
↳ typestringSender type (contact)
↳ conversation_idnumberConversation this message belongs to
↳ account_idnumberAccount ID
messageIdnumberID of the sent message
successbooleanOperation success status

Toggle Conversation Status in Chatwoot

Change the status of a Chatwoot conversation (open, resolved, pending, snoozed)

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
conversationIdstringYesThe conversation ID to update
statusstringYesTarget status: open, resolved, pending, or snoozed
snoozed_untilstringNoUnix timestamp until when to snooze (required when status is snoozed)

Output

ParameterTypeDescription
current_statusstringThe new status of the conversation
conversation_idnumberConversation ID
successbooleanOperation success status

Assign Conversation in Chatwoot

Assign a Chatwoot conversation to an agent or team

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
conversationIdstringYesThe conversation ID to assign
assignee_idstringNoAgent ID to assign the conversation to
team_idstringNoTeam ID to assign the conversation to

Output

ParameterTypeDescription
assignee_idnumberAssigned agent ID
team_idnumberAssigned team ID
successbooleanOperation success status

Add Labels to Conversation in Chatwoot

Add labels to a Chatwoot conversation (replaces existing labels)

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
conversationIdstringYesThe conversation ID to add labels to
labelsjsonYesJSON array of label names to set on the conversation (e.g., ["support", "urgent"])

Output

ParameterTypeDescription
labelsarrayLabels now set on the conversation
successbooleanOperation success status

List Contacts from Chatwoot

List all contacts from a Chatwoot account with pagination support

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
pagenumberNoPage number for pagination (starts at 1)

Output

ParameterTypeDescription
contactsarrayArray of contact objects
↳ idnumberContact ID
↳ namestringContact name
↳ emailstringContact email
↳ phone_numberstringContact phone number
↳ thumbnailstringContact avatar URL
↳ identifierstringExternal identifier
↳ custom_attributesobjectCustom attributes on the contact
↳ created_atstringContact creation timestamp
↳ updated_atstringContact last updated timestamp
↳ availability_statusstringAvailability (online, offline)
↳ last_activity_atstringLast activity timestamp
metaobjectPagination metadata
successbooleanOperation success status

Get Contact from Chatwoot

Get details of a specific contact by ID from Chatwoot

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
contactIdstringYesThe contact ID to retrieve

Output

ParameterTypeDescription
contactobjectContact details
↳ idnumberContact ID
↳ namestringContact name
↳ emailstringContact email
↳ phone_numberstringContact phone number
↳ thumbnailstringContact avatar URL
↳ identifierstringExternal identifier
↳ custom_attributesobjectCustom attributes on the contact
↳ created_atstringContact creation timestamp
↳ updated_atstringContact last updated timestamp
↳ availability_statusstringAvailability (online, offline)
↳ last_activity_atstringLast activity timestamp
successbooleanOperation success status

Create Contact in Chatwoot

Create a new contact in Chatwoot

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
namestringNoContact name
emailstringNoContact email address
phone_numberstringNoContact phone number (with country code, e.g., +1234567890)
inbox_idstringNoInbox ID to associate the contact with
identifierstringNoExternal unique identifier for the contact
custom_attributesjsonNoCustom attributes as a JSON object

Output

ParameterTypeDescription
contactobjectCreated contact details
↳ idnumberContact ID
↳ namestringContact name
↳ emailstringContact email
↳ phone_numberstringContact phone number
↳ thumbnailstringContact avatar URL
↳ identifierstringExternal identifier
↳ custom_attributesobjectCustom attributes on the contact
↳ created_atstringContact creation timestamp
↳ updated_atstringContact last updated timestamp
↳ availability_statusstringAvailability (online, offline)
↳ last_activity_atstringLast activity timestamp
contactIdnumberID of the created contact
successbooleanOperation success status

Update Contact in Chatwoot

Update an existing contact in Chatwoot

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
contactIdstringYesThe contact ID to update
namestringNoUpdated contact name
emailstringNoUpdated contact email
phone_numberstringNoUpdated phone number
identifierstringNoUpdated external identifier
custom_attributesjsonNoCustom attributes to update as a JSON object

Output

ParameterTypeDescription
contactobjectUpdated contact details
↳ idnumberContact ID
↳ namestringContact name
↳ emailstringContact email
↳ phone_numberstringContact phone number
↳ thumbnailstringContact avatar URL
↳ identifierstringExternal identifier
↳ custom_attributesobjectCustom attributes on the contact
↳ created_atstringContact creation timestamp
↳ updated_atstringContact last updated timestamp
↳ availability_statusstringAvailability (online, offline)
↳ last_activity_atstringLast activity timestamp
successbooleanOperation success status

Search Contacts in Chatwoot

Search contacts in Chatwoot by name, email, phone number, or identifier

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
qstringYesSearch query (searches name, email, phone, identifier)
pagenumberNoPage number for pagination

Output

ParameterTypeDescription
contactsarrayArray of matching contact objects
↳ idnumberContact ID
↳ namestringContact name
↳ emailstringContact email
↳ phone_numberstringContact phone number
↳ thumbnailstringContact avatar URL
↳ identifierstringExternal identifier
↳ custom_attributesobjectCustom attributes on the contact
↳ created_atstringContact creation timestamp
↳ updated_atstringContact last updated timestamp
↳ availability_statusstringAvailability (online, offline)
↳ last_activity_atstringLast activity timestamp
metaobjectPagination metadata
successbooleanOperation success status

List Labels from Chatwoot

List all labels in a Chatwoot account

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID

Output

ParameterTypeDescription
labelsarrayArray of label objects
↳ idnumberLabel ID
↳ titlestringLabel title
↳ descriptionstringLabel description
↳ colorstringLabel color hex code
↳ show_on_sidebarbooleanWhether shown on sidebar
successbooleanOperation success status

List Agents from Chatwoot

List all agents in a Chatwoot account

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID

Output

ParameterTypeDescription
agentsarrayArray of agent objects
↳ idnumberAgent ID
↳ namestringAgent name
↳ emailstringAgent email
↳ rolestringAgent role (agent, administrator)
↳ availability_statusstringAvailability (online, busy, offline)
↳ thumbnailstringAgent avatar URL
successbooleanOperation success status

List Inboxes from Chatwoot

List all inboxes in a Chatwoot account

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID

Output

ParameterTypeDescription
inboxesarrayArray of inbox objects
↳ idnumberInbox ID
↳ namestringInbox name
↳ channel_typestringChannel type (e.g., web_widget, api)
↳ greeting_enabledbooleanWhether greeting is enabled
↳ greeting_messagestringGreeting message text
successbooleanOperation success status

Get WhatsApp Templates in Chatwoot

Retrieve available WhatsApp message templates from a Chatwoot inbox. Useful for listing approved templates before sending template messages.

Input

ParameterTypeRequiredDescription
baseUrlstringYesChatwoot instance URL (e.g., https://app.chatwoot.com)
apiAccessTokenstringYesChatwoot API access token
accountIdstringYesChatwoot account ID
inboxIdstringYesThe inbox ID to retrieve templates from (must be a WhatsApp inbox)

Output

ParameterTypeDescription
templatesarrayList of available WhatsApp templates
countnumberNumber of templates found
successbooleanOperation success status