Skip to main content
Use this page when you need to answer questions like: “Will visitors see old chats?”, “What happens after handoff?”, or “Why does history behave differently for anonymous and signed-in users?”
If you have not decided how the widget should identify visitors yet, read Authentication first.

How A Conversation Flows

Whether the AI keeps the conversation, resolves it, or hands it to a person depends on your support setup and escalation rules. For the policy side, see Human Handoff.

What Counts As A Session

A session is one conversation thread inside the widget. Visitors can have open and resolved sessions, and the widget can show a list of earlier conversations when that fits your setup.
A new session starts when the visitor opens a new thread and sends a message.
Returning visitors can reopen existing threads instead of starting from scratch, as long as the widget can still identify them.
Resolved sessions remain part of the visitor’s history, but they are no longer active chat threads.

How Returning History Works

History access depends on how you identify the visitor:
Best for low-friction support. History stays tied to the same browser session.
Good for personalization, but not strong identity across devices.
Best when signed-in customers should keep conversation history across devices.
Verified and non-verified conversation histories are treated differently. If a user sometimes loads the widget with a verified identity and sometimes without one, the history experience will not be the same across those cases.

Session Rules That Affect The Visitor Experience

These configuration choices change what visitors can do:
Default: Visitors can have multiple open conversations.What changes: hides the new-conversation option while an open thread already exists.Choose this when: You want visitors to stay focused on one active issue at a time.
Default: The widget can show a sessions list before entering chat.What changes: removes the sessions browser and lands the visitor directly in the chat experience.Choose this when: You want the widget to feel like a single-thread support chat instead of a small inbox.
Default: First-time visitors may pass through the sessions logic before entering chat.What changes: takes first-time visitors directly into the chat flow when there is nothing to resume.Choose this when: You want less friction for brand-new visitors.
Default: Visitors continue using the conversation until your flow or team closes it.What changes: Adding the header button gives the visitor a direct way to close the conversation from the widget itself.Choose this when: You want visitors to explicitly mark an issue as done.

What Handoff Looks Like In The Widget

When the AI , the conversation stays in the same thread. Your visitor does not need to start over somewhere else.
1

The AI stops owning the conversation

The thread stays open, but the AI is no longer the active responder for that issue.
2

A human agent continues in the same thread

Your visitor keeps talking in the same conversation instead of being pushed into a separate support flow.
3

Your team keeps the conversation context

The full conversation remains available to your team so the visitor does not have to repeat everything.
4

You can react to the handoff event

Use to trigger your own banner, form, or next-step UI when handoff happens.
const options = {
  token: '<WIDGET_TOKEN>',
  onHandoff: (payload) => {
    console.log('Conversation handed off:', payload.summary);
  },
};
Need the decision rules behind handoff? See Human Handoff for when the AI escalates, what triggers a human takeover, and how that policy works across channels.

Feedback And Resolution

Two common post-conversation patterns are available:
controls the built-in prompt that asks whether the latest AI answer solved the issue. Use it when you want a lightweight “resolved vs still need help” check before the conversation moves on.
Use thisWasHelpfulOrNot when you want the widget to ask whether the latest AI answer solved the issue.
The widget can show when your workflow requests it, and headless builds can control the experience with the CSAT hooks.

Authentication

Choose the identity model that controls history access.

Configuration

Session rules, routing, prompts, and resolution controls.

Handoff Settings

Configure when the AI should escalate to a person.

Troubleshooting

Missing history, repeated prompts, and handoff confusion.