> ## Documentation Index
> Fetch the complete documentation index at: https://hellotars.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Work the inbox

> Find the conversations that need you with views, tabs, filters, and search, then pick them up and act on them one at a time or in bulk.

export const Browser = ({url, children}) => <div className="tars-browser">
    <div className="tars-browser-bar">
      <span className="tars-browser-dots">
        <i />
        <i />
        <i />
      </span>
      {url ? <span className="tars-browser-url">{url}</span> : null}
    </div>
    <div className="tars-browser-view">{children}</div>
  </div>;

export const img = {
  activity: {
    activityTimeline: "/docs/guides/activity/images/activity-timeline.png",
    capturedVariablesPanel: "/docs/guides/activity/images/captured-variables-panel.png",
    dataViewCards: "/docs/guides/activity/images/data-view-cards.png",
    exportDataDialog: "/docs/guides/activity/images/export-data-dialog.png",
    tasksPanelExportReady: "/docs/guides/activity/images/tasks-panel-export-ready.png"
  },
  analytics: {
    analyticsOverview: "/docs/guides/analytics/images/analytics-overview.png",
    exploreGallery: "/docs/guides/analytics/images/explore-gallery.png",
    exploreTab: "/docs/guides/analytics/images/explore-tab.png",
    goalForm: "/docs/guides/analytics/images/goal-form.png",
    goalsTab: "/docs/guides/analytics/images/goals-tab.png",
    improveDiagnostics: "/docs/guides/analytics/images/improve-diagnostics.png",
    improveTab: "/docs/guides/analytics/images/improve-tab.png",
    teamTab: "/docs/guides/analytics/images/team-tab.png"
  },
  billing: {
    billingOverview: "/docs/guides/billing/images/billing-overview.png",
    buyConversationsDialog: "/docs/guides/billing/images/buy-conversations-dialog.png",
    buySeatsDialog: "/docs/guides/billing/images/buy-seats-dialog.png",
    livechatSeatsTab: "/docs/guides/billing/images/livechat-seats-tab.png",
    organizationDeletionLifecycle: "/docs/guides/billing/images/organization-deletion-lifecycle.svg",
    organizationSwitcher: "/docs/guides/billing/images/organization-switcher.png",
    rolesAndAccessMatrix: "/docs/guides/billing/images/roles-and-access-matrix.png"
  },
  building: {
    agentBehaviorGuardrails: "/docs/guides/building/images/agent-behavior-guardrails.png",
    agentCardMenu: "/docs/guides/building/images/agent-card-menu.png",
    agentConfigure: "/docs/guides/building/images/agent-configure.png",
    agentExitRoutesDialog: "/docs/guides/building/images/agent-exit-routes-dialog.png",
    agentLibrary: "/docs/guides/building/images/agent-library.png",
    agentModelParameters: "/docs/guides/building/images/agent-model-parameters.png",
    aiAgentGambitLoop: "/docs/guides/building/images/ai-agent-gambit-loop.svg",
    builderBasics: "/docs/guides/building/images/builder-basics.png",
    builderConnectHandlePanel: "/docs/guides/building/images/builder-connect-handle-panel.png",
    builtInToolsDialog: "/docs/guides/building/images/built-in-tools-dialog.png",
    configureDebugTab: "/docs/guides/building/images/configure-debug-tab.png",
    configureLanguage: "/docs/guides/building/images/configure-language.png",
    configureNotifications: "/docs/guides/building/images/configure-notifications.png",
    createAgentDialog: "/docs/guides/building/images/create-agent-dialog.png",
    draftPublishRollbackPinning: "/docs/guides/building/images/draft-publish-rollback-pinning.svg",
    draftSwitcherChip: "/docs/guides/building/images/draft-switcher-chip.png",
    duplicateAgentDialog: "/docs/guides/building/images/duplicate-agent-dialog.png",
    flowConditions: "/docs/guides/building/images/flow-conditions.png",
    gambitPalette: "/docs/guides/building/images/gambit-palette.png",
    gambits: {
      gambitAiAgent: "/docs/guides/building/gambits/images/gambit-ai-agent.png",
      gambitApiCall: "/docs/guides/building/gambits/images/gambit-api-call.png",
      gambitAutoSuggestion: "/docs/guides/building/gambits/images/gambit-auto-suggestion.png",
      gambitButton: "/docs/guides/building/gambits/images/gambit-button.png",
      gambitCard: "/docs/guides/building/gambits/images/gambit-card.png",
      gambitChannel: "/docs/guides/building/gambits/images/gambit-channel.png",
      gambitCustomCode: "/docs/guides/building/gambits/images/gambit-custom-code.png",
      gambitDateTime: "/docs/guides/building/gambits/images/gambit-date-time.png",
      gambitGeoLocation: "/docs/guides/building/gambits/images/gambit-geo-location.png",
      gambitLanguage: "/docs/guides/building/gambits/images/gambit-language.png",
      gambitLiveChat: "/docs/guides/building/gambits/images/gambit-live-chat.png",
      gambitMediaUpload: "/docs/guides/building/gambits/images/gambit-media-upload.png",
      gambitNoInput: "/docs/guides/building/gambits/images/gambit-no-input.png",
      gambitRedirect: "/docs/guides/building/gambits/images/gambit-redirect.png",
      gambitStarRating: "/docs/guides/building/gambits/images/gambit-star-rating.png",
      gambitStartAndEnd: "/docs/guides/building/gambits/images/gambit-start-and-end.png",
      gambitText: "/docs/guides/building/gambits/images/gambit-text.png",
      gambitTrigger: "/docs/guides/building/gambits/images/gambit-trigger.png"
    },
    languagesTranslateGambit: "/docs/guides/building/images/languages-translate-gambit.png",
    languageSystemMessages: "/docs/guides/building/images/language-system-messages.png",
    newDraftDialog: "/docs/guides/building/images/new-draft-dialog.png",
    outputComponentsGrid: "/docs/guides/building/images/output-components-grid.png",
    publishDialog: "/docs/guides/building/images/publish-dialog.png",
    systemPromptDialog: "/docs/guides/building/images/system-prompt-dialog.png",
    testModeEventLog: "/docs/guides/building/images/test-mode-event-log.png",
    testModePanel: "/docs/guides/building/images/test-mode-panel.png",
    validationProblemsPanel: "/docs/guides/building/images/validation-problems-panel.png",
    variablePickerPanel: "/docs/guides/building/images/variable-picker-panel.png",
    variablePillInserted: "/docs/guides/building/images/variable-pill-inserted.png",
    versionsDraftsPanel: "/docs/guides/building/images/versions-drafts-panel.png"
  },
  campaigns: {
    campaignFlavorsTriggers: "/docs/guides/campaigns/images/campaign-flavors-triggers.svg",
    campaignReplyRouting: "/docs/guides/campaigns/images/campaign-reply-routing.svg",
    campaignSendAnatomy: "/docs/guides/campaigns/images/campaign-send-anatomy.svg",
    createACampaign: "/docs/guides/campaigns/images/create-a-campaign.png",
    walletReserveSettleRefund: "/docs/guides/campaigns/images/wallet-reserve-settle-refund.svg",
    webhookCampaignContractLocking: "/docs/guides/campaigns/images/webhook-campaign-contract-locking.svg",
    webhookCampaignLifecycleStates: "/docs/guides/campaigns/images/webhook-campaign-lifecycle-states.svg",
    webhookCampaignOneCallOneDelivery: "/docs/guides/campaigns/images/webhook-campaign-one-call-one-delivery.svg"
  },
  channels: {
    distributeWhatsappConnect: "/docs/guides/channels/images/distribute-whatsapp-connect.png",
    whatsappConnectDialogWaiting: "/docs/guides/channels/images/whatsapp-connect-dialog-waiting.png",
    whatsappEmptyState: "/docs/guides/channels/images/whatsapp-empty-state.png"
  },
  deploy: {
    bridgeEventGambitSection: "/docs/guides/deploy/images/bridge-event-gambit-section.png",
    deploymentSurfacesAndChannels: "/docs/guides/deploy/images/deployment-surfaces-and-channels.svg",
    designAgentTab: "/docs/guides/deploy/images/design-agent-tab.png",
    designLauncherTab: "/docs/guides/deploy/images/design-launcher-tab.png",
    embedIframeTab: "/docs/guides/deploy/images/embed-iframe-tab.png",
    embedTheWidget: "/docs/guides/deploy/images/embed-the-widget.png",
    mobileAppIntegration: "/docs/guides/deploy/images/mobile-app-integration.png",
    onYourDomain: "/docs/guides/deploy/images/on-your-domain.png",
    shareYourAgentLink: "/docs/guides/deploy/images/share-your-agent-link.png"
  },
  developer: {
    api: {
      channelSendTemplateVsMessage: "/docs/developer/api/images/channel-send-template-vs-message.svg",
      endUsers: {
        endUsersListCursorPagination: "/docs/developer/api/end-users/images/end-users-list-cursor-pagination.svg"
      },
      triggerCallConversationLifecycle: "/docs/developer/api/images/trigger-call-conversation-lifecycle.svg"
    },
    developerSurfacesMap: "/docs/developer/images/developer-surfaces-map.svg",
    embed: {
      embedConfigToWidgetContext: "/docs/developer/embed/images/embed-config-to-widget-context.svg",
      hostPageBridgeFlow: "/docs/developer/embed/images/host-page-bridge-flow.svg",
      identitySigningFlow: "/docs/developer/embed/images/identity-signing-flow.svg",
      scriptVsIframeEmbed: "/docs/developer/embed/images/script-vs-iframe-embed.svg"
    },
    mobile: {
      bridgeMessageProtocol: "/docs/developer/mobile/images/bridge-message-protocol.svg",
      webviewBridgeArchitecture: "/docs/developer/mobile/images/webview-bridge-architecture.svg"
    }
  },
  endUsers: {
    anonymousToIdentifiedProfile: "/docs/guides/end-users/images/anonymous-to-identified-profile.svg",
    bulkActionBar: "/docs/guides/end-users/images/bulk-action-bar.png",
    campaignConsentGate: "/docs/guides/end-users/images/campaign-consent-gate.svg",
    consentPerChannelStates: "/docs/guides/end-users/images/consent-per-channel-states.svg",
    dynamicVsStaticSegments: "/docs/guides/end-users/images/dynamic-vs-static-segments.svg",
    endUserDirectory: "/docs/guides/end-users/images/end-user-directory.png",
    endUserProfileAcrossChannels: "/docs/guides/end-users/images/end-user-profile-across-channels.svg",
    endUserProfilePanes: "/docs/guides/end-users/images/end-user-profile-panes.png",
    profileMergeAndTakeoverProtection: "/docs/guides/end-users/images/profile-merge-and-takeover-protection.svg",
    segmentBuilder: "/docs/guides/end-users/images/segment-builder.png",
    segmentsPage: "/docs/guides/end-users/images/segments-page.png"
  },
  getStarted: {
    agentStates: "/docs/get-started/images/agent-states.svg",
    buildToLivePath: "/docs/get-started/images/build-to-live-path.svg",
    dashboardSidebarMap: "/docs/get-started/images/dashboard-sidebar-map.png",
    organizationOwnershipAndRoles: "/docs/get-started/images/organization-ownership-and-roles.svg",
    quickstart: {
      step1CreateYourAccount: "/docs/get-started/images/quickstart/step-1-create-your-account.png",
      step3ConnectTheAiAgent: "/docs/get-started/images/quickstart/step-3-connect-the-ai-agent.png",
      step4TestMode: "/docs/get-started/images/quickstart/step-4-test-mode.png"
    },
    quickstartCanvas: "/docs/get-started/images/quickstart-canvas.png"
  },
  knowledge: {
    addASource: "/docs/guides/knowledge/images/add-a-source.png",
    addRetrieverPicker: "/docs/guides/knowledge/images/add-retriever-picker.png",
    attachKnowledgeGambit: "/docs/guides/knowledge/images/attach-knowledge-gambit.png",
    configureARetriever: "/docs/guides/knowledge/images/configure-a-retriever.png",
    createKnowledgeBaseDialog: "/docs/guides/knowledge/images/create-knowledge-base-dialog.png",
    customRetrieverDialog: "/docs/guides/knowledge/images/custom-retriever-dialog.png",
    datasetTab: "/docs/guides/knowledge/images/dataset-tab.png",
    documentChangeReindexLifecycle: "/docs/guides/knowledge/images/document-change-reindex-lifecycle.svg",
    documentsTabPreview: "/docs/guides/knowledge/images/documents-tab-preview.png",
    importAWebsite: "/docs/guides/knowledge/images/import-a-website.png",
    kbList: "/docs/guides/knowledge/images/kb-list.png",
    retrieverIndexStates: "/docs/guides/knowledge/images/retriever-index-states.svg",
    retrieverQueryPipeline: "/docs/guides/knowledge/images/retriever-query-pipeline.svg",
    standardVsParentChildChunking: "/docs/guides/knowledge/images/standard-vs-parent-child-chunking.svg",
    syncManagement: "/docs/guides/knowledge/images/sync-management.png",
    testRetriever: "/docs/guides/knowledge/images/test-retriever.png"
  },
  liveChat: {
    agentWorkspace: "/docs/guides/live-chat/images/agent-workspace.png",
    assignedAgentPicker: "/docs/guides/live-chat/images/assigned-agent-picker.png",
    automaticAssignmentRouting: "/docs/guides/live-chat/images/automatic-assignment-routing.svg",
    availabilityDropdown: "/docs/guides/live-chat/images/availability-dropdown.png",
    cannedResponses: "/docs/guides/live-chat/images/canned-responses.png",
    composerPreferences: "/docs/guides/live-chat/images/composer-preferences.png",
    copilotPanel: "/docs/guides/live-chat/images/copilot-panel.png",
    filterConversationsDialog: "/docs/guides/live-chat/images/filter-conversations-dialog.png",
    inboxAnalyticsTab: "/docs/guides/live-chat/images/inbox-analytics-tab.png",
    inboxAvailabilityTab: "/docs/guides/live-chat/images/inbox-availability-tab.png",
    inboxesSettings: "/docs/guides/live-chat/images/inboxes-settings.png",
    inboxRoutingTab: "/docs/guides/live-chat/images/inbox-routing-tab.png",
    labelsSettings: "/docs/guides/live-chat/images/labels-settings.png",
    newAttributeDialog: "/docs/guides/live-chat/images/new-attribute-dialog.png",
    newCannedResponseDialog: "/docs/guides/live-chat/images/new-canned-response-dialog.png",
    notificationPreferences: "/docs/guides/live-chat/images/notification-preferences.png",
    notificationsPage: "/docs/guides/live-chat/images/notifications-page.png",
    pickupTargetCard: "/docs/guides/live-chat/images/pickup-target-card.png",
    resolveMenu: "/docs/guides/live-chat/images/resolve-menu.png",
    searchDialog: "/docs/guides/live-chat/images/search-dialog.png",
    seatGateConversation: "/docs/guides/live-chat/images/seat-gate-conversation.png",
    seatsSettings: "/docs/guides/live-chat/images/seats-settings.png",
    workTheInbox: "/docs/guides/live-chat/images/work-the-inbox.png"
  },
  security: {
    addOpenRouterKeyDialog: "/docs/guides/security/images/add-open-router-key-dialog.png",
    auditChainVerified: "/docs/guides/security/images/audit-chain-verified.png",
    auditEventDrawer: "/docs/guides/security/images/audit-event-drawer.png",
    auditExportDialog: "/docs/guides/security/images/audit-export-dialog.png",
    auditLogViewer: "/docs/guides/security/images/audit-log-viewer.png",
    auditRecordLifecycle: "/docs/guides/security/images/audit-record-lifecycle.svg",
    logPrivacyRedactionEnabled: "/docs/guides/security/images/log-privacy-redaction-enabled.png",
    modelProviderEmptyState: "/docs/guides/security/images/model-provider-empty-state.png",
    privacySettings: "/docs/guides/security/images/privacy-settings.png",
    siemConnectWizard: "/docs/guides/security/images/siem-connect-wizard.png",
    supportActorMasking: "/docs/guides/security/images/support-actor-masking.svg"
  },
  tools: {
    addToolModal: "/docs/guides/tools/images/add-tool-modal.png",
    addToolsPanel: "/docs/guides/tools/images/add-tools-panel.png",
    codekitActionEditor: "/docs/guides/tools/images/codekit-action-editor.png",
    codekitConnectToolkitsDialog: "/docs/guides/tools/images/codekit-connect-toolkits-dialog.png",
    codekitSchemaDialog: "/docs/guides/tools/images/codekit-schema-dialog.png",
    codekitToolkit: "/docs/guides/tools/images/codekit-toolkit.png",
    codekitToolkitAnatomy: "/docs/guides/tools/images/codekit-toolkit-anatomy.svg",
    createActionDialog: "/docs/guides/tools/images/create-action-dialog.png",
    createCodekitDialog: "/docs/guides/tools/images/create-codekit-dialog.png",
    responseFilteringDialog: "/docs/guides/tools/images/response-filtering-dialog.png",
    toolGambitEditorAgentMode: "/docs/guides/tools/images/tool-gambit-editor-agent-mode.png",
    toolGambitEditorWorkflowMode: "/docs/guides/tools/images/tool-gambit-editor-workflow-mode.png",
    toolkitDetail: "/docs/guides/tools/images/toolkit-detail.png",
    toolsConnected: "/docs/guides/tools/images/tools-connected.png",
    toolsDirectory: "/docs/guides/tools/images/tools-directory.png",
    viewActionsModal: "/docs/guides/tools/images/view-actions-modal.png",
    workflowModeResponse: "/docs/guides/tools/images/workflow-mode-response.png"
  }
};

export const urls = {
  app: "https://dashboard.hellotars.com",
  site: "https://hellotars.com",
  support: "mailto:support@hellotars.com",
  status: "https://status.hellotars.com"
};

At the end of this page, your queue is sorted your way, your go-to filter is saved, and you can take over from the agent.

<Browser url={urls.app}>
  <img src={img.liveChat.workTheInbox} alt="Live chat inbox with the views rail on the left, the conversation list with the Mine, Unassigned, and All tabs, an open thread, and the details rail on the right" />
</Browser>

## Before you start

Before you start, sign in to <a href={urls.app}>the dashboard</a> and select the organization you want to work in.

* You need a live-chat seat. See [Live-chat overview and seats](/docs/guides/live-chat/overview-and-seats).
* An Admin must add you to at least one inbox. See [Set up inboxes](/docs/guides/live-chat/set-up-inboxes).
* Replying, private notes, and the **Resolve conversation** dialog are covered in [Use the Agent Workspace](/docs/guides/live-chat/agent-workspace).

## The inbox layout

Open **Conversations** from the sidebar. The screen has four columns, left to right:

| Column            | What it holds                                                                                                            |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------ |
| Views rail        | The **Live** and **Test** toggle, the views, **Inboxes**, **Labels**, and **Saved Filters**.                             |
| Conversation list | The **Search conversations...** field, the **Mine**, **Unassigned**, and **All** tabs, sort, filter, and bulk selection. |
| Conversation pane | The open thread and the composer.                                                                                        |
| Details rail      | The end user profile and the conversation details.                                                                       |

Conversations update in real time, so new messages appear without a refresh. You can drag the right edge of the conversation list and of the details rail to resize them.

If you hold a seat but see **No inbox assigned yet**, ask your Admin to add you to an inbox. The empty state reads **Ask your admin to assign you to an inbox so you can start handling conversations.**

## Pick a view

The views rail narrows what the conversation list shows:

| Rail item             | What it shows                                                                                    |
| --------------------- | ------------------------------------------------------------------------------------------------ |
| **All Conversations** | Every conversation in the inboxes you belong to.                                                 |
| **Mentions**          | Conversations where another human agent mentioned you with `@`.                                  |
| **Participating**     | Conversations you follow.                                                                        |
| **Unattended**        | Conversations waiting for a human, plus conversations a human agent joined but never replied to. |
| **Inboxes**           | One row per inbox. Empty state: **No inboxes yet**.                                              |
| **Labels**            | Labels marked to show on the rail. Empty state: **No labels yet**.                               |
| **Saved Filters**     | Your saved filters. The section appears once you save at least one.                              |

The **Live** and **Test** toggle at the top of the rail switches between real conversations and test conversations from the agent test panel. In **Test** mode the list header and the search dialog show an amber **Test mode** badge.

The rail footer holds your availability status, an Admin-only **Analytics** row that opens the inbox analytics view, **Notifications** with an unread badge, and **Settings**. See [Assignment and availability](/docs/guides/live-chat/assignment-and-availability) for the availability dropdown.

## Work the queue tabs

The conversation list has three tabs, each with a live count:

| Tab            | What it queues                                                                         | Empty state                          |
| -------------- | -------------------------------------------------------------------------------------- | ------------------------------------ |
| **Mine**       | Conversations assigned to you.                                                         | **No conversations assigned to you** |
| **Unassigned** | New conversations waiting for triage.                                                  | **No unassigned conversations**      |
| **All**        | Every conversation in the current view. Cards on this tab also show the assignee name. | **No conversations yet**             |

Each card shows the inbox name, a priority pill, a status pill, the end user name, the last message, and label chips. A bold name and a dot beside the time mark an unread conversation. Hold the pointer over a **Resolved** pill to see who resolved the conversation and when.

When new conversations arrive above your scroll position, a banner reads **3 new conversations · click to scroll up**. Select it to jump to the top.

### Sort the list

<Steps>
  <Step title="Select the sort button above the list">
    The tooltip reads **Sort conversations**. A dot on the button means a non-default sort is active.
  </Step>

  <Step title="Pick a Status">
    Options are **Open**, **Pending**, **Snoozed**, **Resolved**, **Abandoned**, and **All**. **Open** is the default.
  </Step>

  <Step title="Pick an Order by option">
    For example **Last activity: Newest first**, **Priority: Highest first**, or **Pending Response: Longest first**.
  </Step>
</Steps>

The **Order by** list covers last activity, created time, priority, and pending response time in both directions. The last option, **Priority + Created: Oldest first**, puts the oldest urgent conversation at the top. A **Reset** button appears when you change either control. The sort popover is hidden while a filter is active, because the filter owns the list.

## Filter the list

<Steps>
  <Step title="Select the filter button above the list">
    The tooltip reads **Filter conversations**. The **Filter conversations** dialog opens.
  </Step>

  <Step title="Build a condition row">
    Each row combines an attribute, a comparison, and a value. For example **Priority**, **Equal to**, **Urgent**.
  </Step>

  <Step title="Add more rows with Add filter">
    Join rows with the **AND** or **OR** pill between them. Select a pill to switch it.
  </Step>

  <Step title="Select Apply filters">
    The list now shows only matching conversations. **Clear filters** removes every condition.
  </Step>
</Steps>

<Frame>
  <img src={img.liveChat.filterConversationsDialog} alt="Filter conversations dialog with two condition rows, Priority equal to Urgent and Labels equal to billing, joined by an AND pill, with Add filter, Clear filters, and Apply filters buttons" />
</Frame>

Built-in attributes cover **Status**, **Assignee**, **Priority**, **Inbox**, **Labels**, **Channel**, and the dates **Created at**, **Last activity at**, and **Waiting since**. The attributes **First referrer**, **Last referrer**, **Browser language**, **Country**, and **City** target the end user session. Your custom attributes appear below with a **custom** tag.

The comparison options depend on the attribute. They include **Equal to**, **Not equal to**, **Is present**, **Contains**, **Is greater than**, and **Days before**.

While a filter is active, the filter button shows a dot and a red **Clear filters** X appears beside it.

## Save a filter

<Steps>
  <Step title="Apply the filter combination you want to keep">
    A bookmark button with the tooltip **Save filter** appears beside the filter button.
  </Step>

  <Step title="Select Save filter and name it">
    The popover asks **Do you want to save this filter?**. Enter a name such as `Urgent billing`, then select **Save**.
  </Step>
</Steps>

A toast confirms **Saved "Urgent billing"**, and the filter appears under **Saved Filters** in the views rail. While it is selected, pencil and trash buttons replace the filter button.

### The Edit saved filter dialog

The pencil button opens the **Edit saved filter** dialog. It is the filter dialog with a **Name** field at the top and a **Save changes** button. **Save changes** stays disabled while the name is empty. A toast confirms **Filter updated**.

### The Delete saved filter dialog

<Warning>
  Deleting a saved filter is permanent. Conversations are not affected, only the filter itself.
</Warning>

The trash button opens the **Delete saved filter** dialog. Confirm with **Delete**. A toast confirms **Filter deleted**. You can also right-click a saved filter in the views rail to delete it.

## Search conversations

<Steps>
  <Step title="Press / or select Search conversations... above the list">
    The search dialog opens with the placeholder **Search conversations, messages, users...**.
  </Step>

  <Step title="Type a keyword, an end user name, or message text">
    Results group under **Users**, **Conversations**, and **Messages**, each with a count.
  </Step>

  <Step title="Narrow the results with the chips">
    **Sender** picks a human agent or an end user. **Inbox** picks one inbox. **Date range** picks a period.
  </Step>

  <Step title="Open a result">
    Move with the Up and Down arrow keys and press Enter, or select the result.
  </Step>
</Steps>

<Frame>
  <img src={img.liveChat.searchDialog} alt="Search dialog with the search field, Sender, Inbox, and Date range chips, and the message Start typing to search. Recent searches will appear here." />
</Frame>

Before you type, the dialog reads **Start typing to search. Recent searches will appear here.** Once results load, tabs for **All**, **Conversations**, **Users**, and **Messages** switch the scope. On the **All** tab each group shows a few hits, and a view more link opens the full group.

The **Date range** chip offers **Last 7 days**, **Last 30 days**, **Last 60 days**, **Last 90 days**, **Today**, **Yesterday**, and a custom range. **Clear filters** removes every chip. When nothing matches, the dialog reads **No results found** and suggests a different keyword, end user name, or message text.

## Pick up a conversation

New conversations arrive on the **Unassigned** tab. Automatic assignment moves them to a human agent's **Mine** tab when an inbox routes that way. See [Assignment and availability](/docs/guides/live-chat/assignment-and-availability).

To pick one up yourself, open it. What you see above the composer depends on who controls it:

| Situation                    | What you see                                                | What to do                                                                                 |
| ---------------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| The agent is replying        | **You're observing this conversation. Take over to reply.** | Select **Take over conversation**. The list switches to **Mine** and the composer unlocks. |
| Another human agent holds it | **This conversation is assigned to Jordan Lee.**            | Select **Reassign to me** and confirm **Reassign**. Jordan is unassigned.                  |
| It is assigned to you        | The composer                                                | Reply. See [Use the Agent Workspace](/docs/guides/live-chat/agent-workspace).                   |

Admins can also assign any conversation to any human agent from the card menu or from the **Assigned Agent** section of the details rail.

## Return a conversation to the agent

The dashboard has no control that hands a conversation back to the agent. See [What happens after the handoff](/docs/guides/live-chat/overview-and-seats#what-happens-after-the-handoff).

## Act on one conversation

Hold the pointer over a card and select the kebab button, or right-click the card. The **Conversation actions** menu opens. Items depend on your role and the conversation status:

<Frame>
  <img src={img.liveChat.resolveMenu} alt="The Resolve button in the conversation header with its dropdown open, showing Mark pending and Snooze" />
</Frame>

| Action                          | What it does                                                                                                                                                                                                                   |
| ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Assign label**                | Applies or removes a label. Applied labels show a check mark.                                                                                                                                                                  |
| **Assign agent**                | Admin only. Picks a human agent, or **Unassigned** to release the conversation.                                                                                                                                                |
| **Resolve**                     | Opens the **Resolve conversation** dialog. Available while a human agent controls the conversation.                                                                                                                            |
| **Reopen**                      | Reopens a resolved, abandoned, or pending conversation and moves it to **Mine**. A conversation that a campaign reply replaced cannot be reopened while the new conversation is still open. Open the new conversation instead. |
| **Mark pending**                | Parks an active conversation as pending.                                                                                                                                                                                       |
| **Snooze**                      | Hides it for **1 hour**, **4 hours**, **Tomorrow morning**, or **Next week**.                                                                                                                                                  |
| **Priority**                    | Sets **Urgent**, **High**, **Medium**, **Low**, or **None**.                                                                                                                                                                   |
| **Mark read** / **Mark unread** | Toggles the unread state.                                                                                                                                                                                                      |
| **Mute** / **Unmute**           | Silences the in-tab sound alert for this conversation. Email and push preferences are unchanged. See [Notifications](/docs/guides/live-chat/notifications).                                                                         |
| **Copy link**                   | Copies a direct link. A toast confirms **Link copied**.                                                                                                                                                                        |
| **Open in new tab**             | Opens the conversation in a new browser tab.                                                                                                                                                                                   |

Priority also shows as a pill on the card and works as a filter and sort signal. Members without a seat see only **Copy link** and **Open in new tab**, plus **Assign agent** for Admins.

## Apply labels

Labels are created by an Admin. See [Set up labels](/docs/guides/live-chat/set-up-inboxes#set-up-labels). Admins can also select the plus button beside **Labels** in the views rail to open the **Create label** dialog.

You can apply an existing label in four places:

| Place           | How                                                                                              |
| --------------- | ------------------------------------------------------------------------------------------------ |
| Card menu       | **Assign label**, then pick the label. Pick it again to remove it.                               |
| Details rail    | Expand **Labels**. Tick a label under **Assign labels**, or select the X on a chip to remove it. |
| Bulk action bar | **Label**, then pick one label for the whole selection.                                          |
| Resolve dialog  | **Add labels (optional)** while resolving.                                                       |

Applied labels show as chips on the card and in the details rail. Selecting a label in the views rail lists every conversation that carries it.

## Run bulk actions

<Steps>
  <Step title="Select conversations in the list">
    Hold the pointer over a card avatar and tick the checkbox that replaces it.
  </Step>

  <Step title="Use the action bar at the bottom">
    A pill appears with the count, for example **4 selected**, and the action buttons.
  </Step>

  <Step title="Pick an action">
    **Resolve** asks **Resolve 4 conversations?** first. **Assign**, **Label**, and **Priority** open a picker.
  </Step>
</Steps>

| Bulk action  | What it does                                                                                                                                      |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Resolve**  | Resolves the selection after you select **Confirm**. Conversations the agent still controls are skipped, and the toast reports the skipped count. |
| **Assign**   | Admin only. Assigns the selection to one human agent.                                                                                             |
| **Label**    | Applies one label to the selection.                                                                                                               |
| **Priority** | Sets **Urgent**, **High**, **Medium**, or **Low** on the selection.                                                                               |

Large selections continue in the background. The toast then reads, for example, **Resolving 40 conversations in the background**. The X on the left of the bar clears the selection.

## Read the details rail

The details toggle in the conversation header shows or hides the rail. The header shows the end user profile with email and phone, or **Not available** when missing. Below it, accordion sections summarize the conversation:

| Section                     | What it holds                                                                                                      |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| **Assigned Agent**          | Admins pick a human agent from a searchable picker. Others see the name or **Unassigned**.                         |
| **Priority**                | A priority picker, collapsed by default.                                                                           |
| **Labels**                  | Applied label chips with a remove X, plus the **Assign labels** list.                                              |
| **Conversation info**       | Landing page, referrer, UTM values, device, browser, and country. Appears only when data exists.                   |
| Participants                | Human agents following the conversation, with a **Follow conversation** link and a **Manage participants** button. |
| **Conversation attributes** | Structured key-value data on this conversation. Empty state: **No attributes set.**                                |
| **User attributes**         | Structured key-value data on the end user.                                                                         |
| **Previous Conversations**  | Earlier conversations from the same end user. Selecting one switches the pane to it.                               |

## Keyboard shortcuts

| Keys                                  | Where                         | What happens                                                           |
| ------------------------------------- | ----------------------------- | ---------------------------------------------------------------------- |
| `/`                                   | Anywhere outside a text field | Opens the search dialog.                                               |
| Up and Down arrows                    | Search dialog                 | Move between results.                                                  |
| Enter                                 | Search dialog                 | Opens the highlighted result.                                          |
| Esc                                   | Search dialog                 | Closes the dialog.                                                     |
| Enter or Space                        | A focused card                | Opens the conversation.                                                |
| Enter, or the modifier key plus Enter | Composer                      | Sends the reply, depending on the **Hotkey to send messages** setting. |

The send key is set under **Settings**, then **Preferences**, in the **Hotkey to send messages** card. See [Use the Agent Workspace](/docs/guides/live-chat/agent-workspace).

## Verify

Open **Saved Filters** in the views rail and select your saved filter. The list shows only the conversations that match, and the sort popover stays hidden while the filter owns the list. Press `/`, type an end user name, and open the result with Enter.

## Related pages

* [Live-chat overview and seats](/docs/guides/live-chat/overview-and-seats)
* [Use the Agent Workspace](/docs/guides/live-chat/agent-workspace)
* [Assignment and availability](/docs/guides/live-chat/assignment-and-availability)
* [Set up inboxes](/docs/guides/live-chat/set-up-inboxes)
* [Notifications](/docs/guides/live-chat/notifications)
