Assign chats to teammates and auto-route widget conversations

Operators own conversations like in Intercom — manual claim, round-robin, or lightest-load auto-routing, with availability presence.

Updated June 26, 2026

Widget chats no longer just sit in a shared queue. Each conversation
can have a single assigned operator — set automatically when the AI
hands off, when a teammate replies, or manually from the inbox.

What's new

  • Assignee on every chat. Visible on every inbox row and in the
  • Inbox filters: Assigned to me / Unassigned / Everyone. Operators
  • Available / Away presence. Toggle from the inbox header. Auto-
  • Per-widget routing modes. Configure how a specific widget assigns
  • Personal "assigned to you" notification. New event in the

Three routing modes

Pick one per widget under Widgets → \[your widget\] → Routing →
Operator routing
. They only kick in when a chat needs a human (AI
handover or manual takeover) — the AI handles things normally before
that.

Manual — chats stay in the unassigned queue until someone claims
them from the inbox. Best when one person is on duty at a time, or
when you want full discretion.

Round-robin — cycles through eligible available teammates in
deterministic order, using a stored cursor so the next chat goes to
the next person. Perfect for fair distribution across a team.

Lightest load — picks the available teammate with the fewest open
chats (status: active or handed_off). Smooths things out when one
operator gets buried.

For round-robin and lightest-load, you can pin the eligible
teammates
— leave all unchecked to include everyone in the workspace,
or check specific people for a sub-team.

Manual assignment

Click the assignee chip in the conversation header to:

  • Claim this chat (one-click for "I'm taking this")
  • Pick a teammate from the dropdown — anyone in the workspace,
  • Unassign to drop it back into the queue

Assignment changes broadcast in real-time, so every open inbox tab
updates the moment someone claims or hands off.

Self-claim by replying

If you reply to an unassigned chat from the operator inbox, you
automatically become the assignee. Mirrors the Intercom convention —
whoever picks up the thread becomes the de-facto owner unless someone
reassigns.

Available / Away

The toggle in the inbox header (top-right) sets your availability.
Available means round-robin and lightest-load can route chats to
you. Away keeps you in the workspace but auto-routing skips you.

Toggle to Away when you're stepping out for lunch, in a meeting, or
just don't want to be auto-assigned. Manual assignments still work
either way — a teammate can still pick you specifically.

Notifications

The new widget.conversation_assigned event fires when you get
assigned. By default it sends:

  • A web push to your browser
  • An email with a deep link to the chat

Manage it under Settings → Notifications. The event is personal
it only goes to the assignee, not the whole workspace, so you don't
spam Slack on every assignment.

Common patterns

Solo operator — set routing to Manual, leave yourself Available.
You see every new chat in the Unassigned queue and pick what to claim.

Small team, even split — Round-robin across all eligible teammates.
Toggle yourself Away when you step out and the rotation skips you.

Tiered support — Lightest-load mode, and pin only your tier-1
operators as eligible. Tier-2/3 teammates only get chats by manual
hand-off from tier-1.