manage_whatsapp_chat
Change a WhatsApp chat in the team inbox without sending anything to the customer: hand it to a teammate or department, add or remove labels, resolve or reopen it, leave an internal note, or mark it read or unread. The customer sees none of it. Your team sees the change, and your account's chat webhooks are notified.
Available actions:
assign: give the chat to agentId, agentEmail or departmentId (departments need a plan that includes them). A pending chat becomes active.
unassign: take the chat off its agent and department. It goes back to pending.
add_labels / remove_labels: the labels must already exist on the number, create them first with manage_whatsapp_labels. The chat keeps any label you do not mention.
resolve: close the conversation.
reopen: back to active if someone owns the chat, pending otherwise.
add_note: private note only your team can see (2 to 6000 characters). authorId writes it as that teammate.
mark_read / mark_unread: marking a resolved chat as unread reopens it.
To write to the customer, use send_whatsapp_message instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| chat | Yes | The chat: a phone number in international format, or its WhatsApp chat ID as returned by get_whatsapp_chats | |
| note | No | Internal note text, WhatsApp formatting allowed (for add_note) | |
| action | Yes | What to change on the chat | |
| device | Yes | WhatsApp number (device) ID the chat belongs to | |
| labels | No | Label names (for add_labels and remove_labels) | |
| agentId | No | Teammate user ID to assign the chat to (for assign) | |
| authorId | No | Teammate user ID the note is written as. Defaults to the API key owner (for add_note) | |
| agentEmail | No | Teammate email to assign the chat to, instead of agentId (for assign) | |
| departmentId | No | Department ID to assign the chat to (for assign). Look it up with manage_whatsapp_departments |