Docs

Query Language

Use structured query syntax in the Inbox search to filter conversations precisely. Enable Query Mode (the # button next to the search field) to use these filters.

Syntax

A query is a series of key:value tokens separated by spaces. Tokens can be combined with logical operators (AND, OR, NOT). Text without a colon is treated as free-text search across messages, emails, and metadata.

status:agent,escalated
-status:resolved priority:high
channel:widget,telegram tag:billing
assigned:me sort:priority
user:alice@example.com status:all

Logical Operators

OperatorSyntaxDescription
ANDspaceDefault. Multiple tokens separated by spaces — all conditions must match.
status:agent priority:high
ORcomma in valueMulti-value within a filter — any of the listed values matches.
status:agent,escalated · channel:widget,telegram
NOTminus prefixExclude matches. Prefix the key with -.
-status:resolved — all conversations except resolved.

Filter Reference

FilterValuesDescription
status:agent · active · escalated · resolved · allConversation status. Supports multi-value: status:agent,escalated. Use all to remove the status filter.
priority:low · normal · high · urgentPriority level.
channel:widget · telegram · whatsapp · slack · discord · email · zendesk · zendesk_messaging · intercom · freshdeskSource channel type. Supports multi-value: channel:widget,telegram. Filters by provider type — useful when you want all conversations from a category.
integration:integration UUIDFilter by a specific integration instance (e.g., one of two widgets connected to the same agent). Use this when channel: is too broad. Clickable from conversation card → filters by exact widget/telegram/etc. instance. Example: integration:9f3a...c2
tag:any tag nameExact tag match (uses Postgres array overlap, not text search). Combine multiple: tag:billing tag:vip.
user:ID, email, name, visitor_idFind all conversations from a specific user. Matches against user ID, visitor ID, email, name, and external ID.
assigned:me · none · emailAssignment filter. me = your conversations.none = unassigned conversations.
sort:newest · oldest · priority · createdSort results. newest / oldest by last message,priority by priority level, created by creation date.
prop.<key>:any valueCustom contact property. Keys are defined in Agent Settings → Contact Properties. Example: prop.plan:enterprise

Examples

status:agent,escalatedAgent OR escalated (multi-value OR)
-status:resolvedAll conversations except resolved (NOT)
channel:widget,telegram tag:billingWidget or Telegram conversations tagged "billing"
assigned:me priority:highYour high-priority conversations
assigned:none status:escalatedUnassigned escalated conversations
sort:priority status:agentAgent conversations sorted by priority
user:alice@example.com status:allAll conversations for a specific user (any status)
tag:billing tag:vipConversations tagged with both billing AND vip
prop.plan:enterprise -status:resolvedEnterprise customers with active conversations
-priority:low channel:widgetWidget conversations excluding low priority
In the Inbox, click the # button next to the search field to enable Query Mode. In regular mode, the search field does a plain text search across names, emails, and message content.