Skip to main content

💬 Conversations

Assign conversations to a user or a team of your account, and add internal notes to them, the same way your team does from the live chat. Anything you change through the API shows up there right away: the assigned user or team sees the conversation in their inbox, and the users you mention in a note get notified.

A conversation can have a user, a team, or both at the same time: assigning a user keeps the team that was already there, so the rest of the team keeps access to it.

These endpoints work the same for WhatsApp Web numbers and WhatsApp Business API (WABA) numbers.

Conversations are identified by their session_key​

The API identifies each conversation by its session_key (e.g. WA-WAN8fd3442f-e111-4fed-9323-1824fd7546c9-14085550176). You can get it from:

Getting user and team UUIDs​

Permissions​

Requests run as the user who owns the API key. Admins can change the assignment of any conversation of the account. Any other user can only change conversations they can open in the live chat: those of a number shared with them, or those already assigned to them or to one of their teams.

Who can be assigned also follows the live chat:

  • Admins can assign a conversation to any active user of the account.
  • Any other user can only assign it to users who have access to the conversation's number.

Assigning a conversation to a user gives them access to that conversation, even if they can't see the rest of the conversations of its number.

The assignment object​

The assignment endpoints return the conversation's assignment after the change:

{
"assigned_user": {
"uuid": "USR4f1c8a73-2e91-4d6b-9c44-1a72bfe0d521",
"first_name": "Ada",
"last_name": "Lovelace",
"email": "ada@example.com"
},
"assigned_team": {
"uuid": "VUGa71c3e09-8b52-4f0d-9d1e-5c6b2f8e4a10",
"name": "Sales"
}
}
FieldDescription
assigned_userThe user the conversation is assigned to, or null
assigned_user.uuidThe user's UUID
assigned_user.first_nameThe user's first name
assigned_user.last_nameThe user's last name
assigned_user.emailThe user's email address
assigned_teamThe team the conversation is assigned to, or null
assigned_team.uuidThe team's UUID
assigned_team.nameThe team's name