User guide › Apps › Omnichannel inbox
Where it lives
The inbox is the Inbox app (Omnichat). Once it's installed the sidebar gets
an Inbox entry pointing at /inbox, and — for admins — an
Inbox AI entry at /__omnichat-ai where the AI reply settings live.
If you open /inbox and see Inbox isn't installed, the app itself
isn't on your workspace yet. Install it from the Apps store, then connect at least one
messaging provider — see Integrations.
Which channels feed it
A channel only appears in the inbox if its app is installed and connected. Each of these ships a communications adapter, which is what puts its messages into the shared queue.
| Shown as | What it carries | Comes from |
|---|---|---|
| Messenger | Facebook Page direct messages. | Meta app |
| Instagram direct messages. | Meta app | |
| WhatsApp Business conversations. | WhatsApp app | |
| Linked mailbox threads, with full HTML bodies. | Email app | |
| SMS | Text messages. | SMS app |
| Website | Visitors chatting through the widget on your site. | Website Chat app |
The inbox is for direct conversations. Public comments and @-mentions on your Meta
Pages are a separate surface with its own page — Meta → Comments at
/meta-comments. If you're looking for a comment someone left on a post,
that's where it is, not in the Inbox.
Reading the conversation list
The left column is the queue. Above it is a search box (Search conversations) and five saved views:
| View | Shows |
|---|---|
| Mine | Open and pending conversations assigned to you. |
| Unassigned | Open and pending conversations nobody has taken. This is the queue to work. |
| Snoozed | Threads you've parked until a set time. |
| Resolved | Closed threads. |
| All | Everything still active, whoever it belongs to. |
The filter control (Filter by channel or account) narrows the list further: pick a single Channel — or All channels — and a single From account when you run more than one page, number or mailbox on the same channel. Your view, channel and account choices are remembered between visits.
Each row shows the contact, the last message, its channel, an Assigned to … or Unassigned chip, and — when the thread isn't simply Open — a status chip.
Taking a conversation
Assignment is how a team avoids two people answering the same customer. It lives in the right-hand panel of an open conversation, under Assignment.
- Open Unassigned Work the queue rather than the whole list.
- Click the conversation The thread loads in the middle column, the contact panel on the right.
- Press ✋ Take this The thread is now yours and moves into Mine. Where it's already assigned, the panel instead offers Release (hand it back to the queue) and Reassign….
- Or give it to a teammate Assign to someone else… opens the Assign to teammate picker. The current owner is marked current.
Replying
- Type into the composer The box at the foot of the thread — Type a message…. Enter sends.
- Attach something if you need to The attach button offers File or image (uploaded from your device), Location (share a place on the map) and Voice message (recorded in the browser — it asks for microphone permission the first time). Where a store catalog is connected you also get Product, which sends a product card.
- Reuse a canned answer Saved replies is a shared per-workspace library. Click one to drop it into the composer; Save draft stores whatever you've currently typed as a new saved reply, after prompting you to name it.
- Let AI draft it Where it's switched on, Draft with AI generates suggestions under AI drafts — pick one, edit it, send it. Tone, language and guardrails come from the admin Inbox AI settings.
Email threads get a fuller composer — a To line, a Subject field and a rich body, because an email reply isn't a chat bubble.
Replying is a separate, grantable permission — Reply to conversations on the Inbox app — so you can give someone visibility of the queue without letting them answer customers. An admin grants it under Settings → Module Access. See Permissions.
Conversation status
Status is set from the Status section of the right-hand panel. It's what the saved views filter on, so keeping it honest is what keeps the queue meaningful.
| Status | Means |
|---|---|
| Open | Live and needing attention. The default. |
| Pending | Waiting on something — the customer, a colleague, a delivery. Still counted as active. |
| Snoozed | Parked until a moment you choose. Setting it asks for that date and time (as YYYY-MM-DDTHH:mm); the panel then shows Snoozed until …. |
| Resolved | Dealt with. Drops out of the active views into Resolved. |
| Archived | Put away for good. |
Linking a conversation to a customer record
A message arrives with nothing but a phone number, an email address or a social profile. Linking ties that thread to the Lead or contact record it actually belongs to, so the history follows the customer rather than the channel.
- Open the Lead section Right-hand panel, under the assignment block.
- Press 🔗 Link to a Lead The Link to Lead picker opens with a Search by name… box.
- Pick the record and press Link → The conversation now shows the linked record with an Open record ↗ shortcut, and Unlink if you picked wrong.
Where the search turns up the same person more than once, the picker has a merge mode — Merge duplicate Leads: select the duplicates, then Keep this on the one to survive. That merges the others into it and links the conversation in one move. More on how records work: Records.
Where did this message come from?
Three places answer that, in order of speed:
- The channel chip on the conversation row and header — Messenger, Instagram, WhatsApp, Email, SMS or Website.
- The From account filter, when the same channel runs across several pages, numbers or mailboxes.
- The Details section of the right-hand panel, which spells out Contact ID, Account, Channel, Messages and Last seen. A linked thread also shows Linked via … — the source that made the connection.
Website chat: putting the widget on your site
The Website Chat app adds the chat bubble to your own website. Its conversations land in this same inbox under the Website channel, and get the same assignment, status, linking and AI drafting as every other channel.
Configure it at /webchat — "Configure the chat widget your visitors see.
Conversations land in your Inbox." You can run several widgets, one per site.
- Create a widget Press New widget, give it an Internal name (what you call it — "Main site") and a Header title (shown to visitors), then Create widget. An empty list reads No widgets yet. Fill the form and Save to create your first.
- Set its appearance Brand color and Launcher position — Bottom right or Bottom left.
- Write the messages Greeting (first message), an Away / offline message, and the Composer placeholder the visitor types over.
- Add quick replies (optional) Tappable suggestion buttons shown in the widget — a visitor taps one instead of typing.
- Turn on the pre-chat form (optional) Show a pre-chat form asks the visitor for their name and email before chatting. Submitting it finds or creates the matching contact record and links the conversation to it, so the thread arrives already attached to a person.
- Copy the one-line embed
The Install card: "Paste this one line into your website's HTML, before
</body>." One script tag, nothing to build. - Check it Live preview renders the real widget beside the settings. It only appears once the widget is saved — Save the widget to preview it live and get its embed snippet.
Allowed domains restricts which sites may embed that widget; left empty, any site can embed. If you publish the snippet on one site only, list it.
What the visitor sees: a launcher bubble in your brand color at the corner you chose. Opening it shows the header title, the greeting, any quick-reply buttons and a composer. The conversation survives a reload and a return visit, and your replies stream in live — as does a typing indicator, in both directions. On a phone the panel goes full screen.
Answering before a human picks up
Each widget has an optional Chat bot — "Auto-reply to visitors before a human picks up. Keywords match the message (or a tapped quick reply)."
- Enable the bot Then add Rules: comma-separated keywords plus the reply to send. An empty list reads No rules yet — add one to auto-answer.
- Decide when a human takes over Tick Hand off to a human after this reply on any rule that should escalate.
- Set the no-match behaviour Under When nothing matches: a fallback reply, and/or Hand off to a human when nothing matches. You can instead switch on Answer with AI, which replies grounded in the conversation and your Inbox AI settings.
It stays quiet once a human is engaged — a conversation that's assigned, or sitting at Pending, Resolved or Archived, is never auto-answered. A handoff pushes the thread to Pending and unassigned, so it surfaces in the queue for a person. With AI answering, a guardrail keyword hit or any AI failure also hands off to a human rather than guessing.
Editing widgets is a grantable capability on the Website Chat app — without it the page is read-only and says so ("You don't have permission to change widgets — ask an admin"). Deleting a widget stops its embed working; its conversations stay in the inbox.