> ## 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.

# Assignment and availability

> Set your availability, understand how conversations reach human agents, handle the unassigned queue, and reassign work when needed.

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"
};

Automatic assignment runs when a flow hands a conversation to live chat. Your availability decides whether it can reach you, and any seat holder can take an unassigned conversation by hand.

## 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).
* Assignment strategy, timing, and working hours are Admin settings on each inbox. See [Set up inboxes](/docs/guides/live-chat/set-up-inboxes).
* Manual assignment of other human agents is Admin-only. Every seat holder can take over an unassigned conversation or reassign one to themselves.

## Set your availability

Your availability control sits at the bottom of the views rail in **Conversations**, above **Notifications** and **Settings**. It shows a colored dot and your current status label.

<Frame>
  <img src={img.liveChat.availabilityDropdown} alt="The availability dropdown at the bottom of the Conversations views rail, showing Online, Busy with its timer options, Offline, and the Set auto offline switch" />
</Frame>

<Steps>
  <Step title="Select your status label at the bottom of the views rail">
    A menu opens with **Online**, **Busy**, and **Offline**.
  </Step>

  <Step title="Choose Online or Offline">
    The change applies immediately and the menu closes.
  </Step>

  <Step title="For Busy, pick a duration">
    Selecting **Busy** expands four options: **Indefinitely**, **For 15 minutes**, **For 30 minutes**, or **For 1 hour**.
  </Step>
</Steps>

| Status      | What it means for assignment                                                 |
| ----------- | ---------------------------------------------------------------------------- |
| **Online**  | Automatic assignment can send new conversations to you.                      |
| **Busy**    | Automatic assignment skips you. You keep the conversations you already hold. |
| **Offline** | Automatic assignment skips you.                                              |

While a **Busy** timer runs, the label shows the time left, for example **Busy · 12m left**. When the timer ends, your status returns to **Online** on its own.

### Set auto offline

The menu ends with a **Set auto offline** switch. Its tooltip reads "Let the system automatically mark you offline when you aren't using the dashboard." The switch is on by default.

With the switch on, closing the dashboard marks you offline, and opening it again restores your chosen status. With the switch off, your status stays exactly as you set it, even when the dashboard is closed. Turn it off only if you want to stay assignable while you work in another tool.

## How automatic assignment picks a human agent

Automatic assignment runs when an agent hands a conversation to live chat, for example through a **Live Chat** gambit or an AI Agent handoff. It only considers human agents who pass every one of these checks:

<Frame>
  <img src={img.liveChat.inboxRoutingTab} alt="The Routing tab of an inbox with the Assignment strategy dropdown set to Round robin and the Timing card with Agent response timeout, Inactivity timeout, and Reopen window" />
</Frame>

* They hold a live-chat seat.
* They are a member of the inbox that owns the conversation.
* Their status is **Online**.
* They are below their conversation capacity. The cap is 30 open conversations per human agent. It is fixed, and no dashboard setting changes it.

<Frame>
  <img src={img.liveChat.automaticAssignmentRouting} alt="Automatic assignment narrowing from inbox members to those online and under their workload limit, then a round robin or least busy strategy, with the Unattended view holding what nobody picks up" />
</Frame>

Among the eligible human agents, the inbox's **Strategy** decides who gets the conversation:

| Strategy        | How it distributes work                                                               |
| --------------- | ------------------------------------------------------------------------------------- |
| **Round robin** | Rotates to the human agent who was assigned least recently, for equal load over time. |
| **Least busy**  | Picks the human agent with the fewest open conversations.                             |

An Admin sets the default **Strategy** on the inbox's **Routing** tab. A **Live Chat** gambit can override it in the builder. Its **Assignment** section has its own **Assignment Strategy** select and an **Allowed Agents** picker that restricts assignment to specific human agents. The **Priority** select there stamps the conversation without changing who gets it.

The end user sees an **Assigned to Alex Morgan** system chip in the thread when assignment succeeds. The assigned human agent gets an **Assignment** notification. See [Live chat notifications](/docs/guides/live-chat/notifications).

## When nobody is available

If no human agent passes the checks, the conversation is parked as unassigned and waits for a human. The end user sees a notice in the thread. Tars picks the first of these that exists:

1. The inbox's **Out-of-hours message**, only when the handoff happens outside the inbox's working hours.
2. The **Live Chat** gambit's **No Agents Available** message.
3. A default notice that says no agents are available right now and the team will get back shortly.

If the **Live Chat** gambit's **No Agents** exit is connected to another gambit, the flow continues there instead of parking the conversation. See [Flow control and branching](/docs/guides/building/flow-control-and-branching).

### Find parked conversations

Parked conversations appear in two places in **Conversations**:

| Place               | What it lists                                                                                    |
| ------------------- | ------------------------------------------------------------------------------------------------ |
| **Unassigned** tab  | Every conversation in the current view with no assignee. The tab shows a live count.             |
| **Unattended** view | Conversations waiting for a human, plus conversations a human agent joined but never replied to. |

To take one, open it and select **Take over conversation** under the thread. The conversation moves to your **Mine** tab and the composer unlocks. See [Work the inbox](/docs/guides/live-chat/work-the-inbox) for the queue tabs and views.

## Outside working hours

Working hours are set per inbox on the **Availability** tab, in your organization's timezone. When **Enable working hours** is off, the inbox counts as open around the clock.

When a **Live Chat** gambit hands off outside working hours, Tars does not look for a human agent at all. The end user sees the **Out-of-hours message**, and the conversation is parked as unassigned. It stays in the **Unattended** view and the **Unassigned** tab until a human agent takes it over, or until the inactivity timeout marks it abandoned. If the gambit's **No Agents** exit is connected, the flow continues there instead of parking the conversation.

Human agents who are **Online** outside working hours can still take over parked conversations manually.

## When an assigned human agent goes quiet

Two safeguards keep an end user from waiting on a human agent who stepped away.

### The gambit's Wait for agent window

A **Live Chat** gambit has a **Wait for agent** select with **1 minute**, **3 minutes**, and **5 minutes**. If the assigned human agent sends no reply inside that window, the gambit's **No Agents** exit fires. The conversation returns to the agent, and the end user sees the **No Agents Available** message if one is set.

### The inbox's Agent response timeout

Each inbox has an **Agent response timeout** in the **Timing** card of the **Routing** tab. When an assigned human agent has been away from the dashboard for longer than that window, Tars reassigns the conversation. Another eligible human agent is picked with the inbox strategy, and only a human agent with the dashboard open counts as eligible here. A system chip in the thread records that the previous human agent disconnected and whether someone else picked the conversation up.

If nobody else is eligible, the conversation returns to the agent flow or waits unassigned. It is never handed back to a human agent who has no dashboard open. For the timeout ranges and the inactivity and reopen windows, see [The Routing tab](/docs/guides/live-chat/set-up-inboxes#the-routing-tab).

## Assign or reassign manually

You can move a conversation between human agents at any time.

### From the details rail

<Steps>
  <Step title="Open the conversation and expand Assigned Agent in the details rail">
    Admins see a combobox with the placeholder **Unassigned**. Other members see only the assignee name.
  </Step>

  <Step title="Pick a human agent from the list">
    Type in **Search agents...** to filter. Each row shows the status dot for **Online**, **Busy**, or **Offline**.
  </Step>

  <Step title="Or select Unassigned to release the conversation">
    The conversation returns to the **Unassigned** tab, and any seat holder can take it over.
  </Step>
</Steps>

<Frame>
  <img src={img.liveChat.assignedAgentPicker} alt="The Assigned Agent combobox open in the details rail, listing human agents with their status dots and an Unassigned option" />
</Frame>

Assigning a conversation the agent still controls takes it over on that human agent's behalf. If you assign it to yourself, the list switches to your **Mine** tab. The **Assign agent** item in a card's kebab menu does the same thing for Admins.

### Reassign to yourself

When a conversation is assigned to another human agent, the composer is replaced by a banner that reads **This conversation is assigned to Sam Lee**. Select **Reassign to me**, then confirm with **Reassign** in the dialog that asks whether to reassign the conversation to yourself. The dialog warns that the current assignee will be unassigned.

### Reassign many at once

Admins can tick several conversations in the list and select **Assign** in the bulk action bar. Pick one human agent from the menu, and the toast **Assigned** confirms it. Larger selections continue in the background with a toast that reads, for example, **Assigning 40 conversations in the background**. See [Run bulk actions](/docs/guides/live-chat/work-the-inbox#run-bulk-actions).

<Warning>
  Reassigning to a specific human agent fails when that human agent is at capacity. Pick someone else, or ask that human agent to resolve open conversations first.
</Warning>

## Set the pickup target

The pickup target tells analytics how quickly your team should accept a handoff. It does not change assignment. Admins set it in **Conversations**, then **Settings**, then **Preferences**, in the **Workspace** section under the **Livechat pickup target** card.

<Frame>
  <img src={img.liveChat.pickupTargetCard} alt="The Livechat pickup target card on the Preferences page, with a number field, a seconds or minutes unit select, and Save and Clear buttons" />
</Frame>

Enter a whole number, pick **seconds** or **minutes**, and select **Save**. The toast **Pickup target saved** confirms it. Before you set one, the card reads **Not set**, and **Clear** removes a saved target again.

The **Team** tab in Analytics then labels your pickup latency **within target** or **over target**. See [Team performance](/docs/guides/analytics/team-performance).

## Verify

Set yourself to **Busy** with **For 15 minutes**. The label at the bottom of the views rail shows the time left. Ask a member to start a test conversation that escalates to live chat. It goes to another **Online** human agent, or lands in the **Unassigned** tab when nobody else is eligible.

Set yourself back to **Online**, open the conversation, and select **Take over conversation**.

## Related pages

* [Work the inbox](/docs/guides/live-chat/work-the-inbox)
* [Set up inboxes](/docs/guides/live-chat/set-up-inboxes)
* [Live chat notifications](/docs/guides/live-chat/notifications)
* [Live-chat overview and seats](/docs/guides/live-chat/overview-and-seats)
