The Inbox: every conversation that needs a person
Handle every intoCHAT conversation that needs someone from your team in one place: statuses, snoozing, priorities, tags, assignment, bulk changes and saved views, across all your agents.
The Inbox collects every conversation that needs someone from your team, across all the agents you can open. Each one has a status, a priority, tags and a teammate it is assigned to, and you can reply to it from the same screen.
The Inbox is on every plan. Sharing saved views with the team is included from Starter.
How a conversation gets into the Inbox
A conversation enters the Inbox as Open when:
- the agent emailed it to your team with hand-off by email, once the email went out;
- the agent asked your team to join with live chat;
- spam protection paused it, so a real visitor caught by mistake isn't left waiting;
- an action marked Requires team approval waits for a decision (Team approval for actions);
- someone clicks Move to inbox in the transcript header on the agent's Conversations tab;
- its status, priority, tags or assignee are changed through the REST API.
Hand-offs from the Playground land in the Inbox too. Conversations that only the agent handled stay out of it.
Statuses
| Status | Meaning |
|---|---|
| Open | Someone from your team needs to look at it. |
| Pending | Your team is waiting for something, often the visitor. |
| Snoozed | Hidden until a time you choose. It then counts as open again. |
| Solved | Done. |
When the visitor writes again in a conversation that is Solved, Pending or Snoozed, it becomes Open. The assignee stays.
The Inbox keeps when a conversation entered it, when it was solved, and when someone from your team first replied to it after it entered (in live chat, or in a Slack or email conversation). A conversation that is solved and then opens again starts afresh: the first reply is counted again from then on.
Snooze
Click Snooze above the conversation and pick:
- 1 hour
- Tomorrow, 9:00
- Next week (Monday, 9:00)
- Custom time, with a date and time
Times are in your browser's time zone. You can snooze for up to 365 days. When the time comes, the conversation shows as Open again. A new visitor message wakes it up sooner.
The list
Click Inbox in the sidebar. The badge next to it counts open conversations assigned to you or to nobody. It refreshes every minute while the dashboard tab is visible, and right after you change something in the Inbox.
Each row shows the visitor (their verified name, or the address they gave for a hand-off), the agent, the visitor's last message, the priority as a coloured dot, tags, the assignee and the last activity. A row also says when the conversation is waiting for live chat or live now, or happens in Slack or by email.
Narrow the list with:
- Search: words in the messages, or the visitor's name or email address.
- Status: Open, Pending, Snoozed, Solved or any status.
- Assignee: anyone, assigned to me, unassigned, or a teammate.
- Priority and Tag (the tag filter appears once a conversation has a tag).
- Agent, when you can open more than one.
- Channel: the widget, Slack or email.
- Last activity: today, the last 7 days, the last 30 days or any time.
Sort by Newest activity, Oldest waiting (the longest in the Inbox first) or Priority (urgent first, and the longest waiting first within each priority). The list shows 50 conversations a page and refreshes every 15 seconds.
A team member limited to selected agents sees only those agents' conversations, in the list, the badge and everywhere else. See Team members and roles.
Work on a conversation
Click a row to open it. Above the messages:
- Status: Open, Pending or Solved, plus Snooze. On a conversation that isn't in the Inbox, Move to inbox instead.
- Priority: Low, Normal, High or Urgent. New conversations are Normal.
- Assignee: a teammate, or Unassigned.
- Tags: click Tag to add one, or the × on a tag to remove it.
Below them is the conversation, the same as in the Live chat inbox: Take over, the reply box with Draft with AI and Improve my text, and End live chat, under the same rules. On a Slack or email conversation, the reply box sends through that channel and Pause AI stops the agent there. Full transcript opens it on the agent's Conversations tab.
Having the Inbox open doesn't make your team count as online for live chat. Only the Live chat page does; see When someone counts as online.
Tags
A tag is one word of up to 32 letters, digits, dashes or underscores. Tags are saved in lowercase, spaces become dashes and other characters are left out, so "Refund request!" becomes refund-request. A conversation can have up to 10 tags.
Assign
You can assign a conversation to the account owner, or to a team member whose role can edit conversations and who has access to the conversation's agent. Viewers can't be assigned, and neither can a member limited to other agents.
The assignee gets an email, "A conversation was assigned to you", with the agent, the priority, the tags and a link that opens it in the Inbox. The email holds no visitor details. No email is sent when you assign a conversation to yourself, or when the assignee turned off Inbox assignment emails under Settings, Account, Notifications. That switch is each person's own and covers every account they work in.
Change several at once
Tick the conversations in the list, or the box at the top to select the whole page. Then:
- Assign them, or unassign them;
- set their Status, or Snooze them;
- set their Priority;
- under Tags, add a tag, or remove one.
Up to 50 conversations change at once. The result says how many changed and why any were skipped, for example when the assignee doesn't have access to one of the agents.
Saved views
Four views are built in and can't be changed: My open, Unassigned, All open and Solved. The Inbox opens on All open.
To save your own, set the filters and sort you want, click Save view and give it a name of up to 40 characters. The search text isn't saved.
- Personal views are yours alone. Anyone in the account can save them, on every plan.
- Shared views: switch on Share with the team, and everyone in the account sees the view. Sharing needs edit access to conversations, and is included from Starter. A view shared before a downgrade stays and can still be deleted.
Each person can save up to 20 views. Delete a view from the … menu next to it. Anyone who can edit conversations can delete a shared view.
Who can do what
| Owner | Admin | Editor | Viewer | |
|---|---|---|---|---|
| See the Inbox, open conversations and use the filters | Yes | Yes | Yes | Yes |
| Save personal views | Yes | Yes | Yes | Yes |
| Change status, snooze, priority, tags and assignee, one at a time or in bulk | Yes | Yes | Yes | No |
| Move to inbox | Yes | Yes | Yes | No |
| Save, share and delete shared views | Yes | Yes | Yes | No |
| Be assigned conversations | Yes | Yes | Yes | No |
Replying, taking over and ending a live chat follow the live chat rules. With custom roles, what decides is the level on Conversations & live chat: View to see the Inbox, Edit to change it.
Audit log
On Pro and up, the audit log records status changes, assignments and bulk changes under Inbox, with who made them. Changes made through the REST API show System as who made them. Priority and tag changes made one at a time aren't logged on their own.
Webhooks
Two webhook events follow the Inbox. Both are sent for changes made by your team, through the REST API, by a visitor's new message or by intoCHAT itself (a hand-off, live chat request or spam pause, routing assigning a teammate, or an inbox trigger changing the status):
| Event | Name in the dashboard | Sent when |
|---|---|---|
conversation.status_changed | Inbox status changed | A conversation becomes open, pending, snoozed or solved, including when it enters the Inbox. |
conversation.assigned | Conversation assigned | A conversation is assigned to a teammate, or unassigned. |
conversation.status_changed data:
| Field | Content |
|---|---|
conversationId | The conversation |
status | open, pending, snoozed or solved |
previousStatus | The status before, or null when it just entered the Inbox |
snoozedUntil | When a snooze ends, as an ISO 8601 time in UTC; null for the other statuses |
source | team, api, visitor (a new message reopened it) or system (a hand-off, live chat request, spam pause, action waiting for team approval, or an inbox trigger) |
changedAt | When it changed, as an ISO 8601 time in UTC |
conversation.assigned data:
| Field | Content |
|---|---|
conversationId | The conversation |
assigneeId | The teammate's user ID, or null when it was unassigned |
previousAssigneeId | The user ID before, or null |
source | team, api or system (routing assigned a teammate) |
assignedAt | When it changed, as an ISO 8601 time in UTC |
A snooze running out sends no event: the conversation simply counts as open from then on. These two events can't be listed through the REST API's events endpoint, so Zapier and Make have no triggers for them.
REST API and MCP
- Every conversation in the REST API has an
inboxobject (status, priority, tags, assignee, snooze end and times), ornullwhen it isn't in the Inbox. - List conversations takes
inbox=open,pending,snoozed,solvedoranyto list only conversations in the Inbox. PATCH /api/v1/conversations/{conversationId}changes the status (withsnoozedUntilto snooze), priority, tags and assignee. It needs theconversations:writescope. See Update a conversation.- The MCP server has a
list_inbox_conversationstool that lists an agent's open conversations, or those with another status.
Limits
- Not instant. The list refreshes every 15 seconds and an open conversation every 5 seconds.
- Automatic assignment needs routing. On Pro and up, inbox teams and routing assign conversations to a team and a teammate as they arrive. Without it, conversations arrive unassigned and someone assigns them.
- A snooze ends at the minute you chose, as soon as anyone loads the Inbox. Nothing is sent to the visitor.
- The Inbox, like the rest of the dashboard, is in English.
Next steps
- Let your team join the chat window: Live chat.
- Pass conversations on by email when nobody is online: Hand-off by email.
- Decide who can change what: Team members and roles.
- Send status changes and assignments to your own systems: Webhooks.