> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://staging.chrisp.chat/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# How can I create conversation threads from the chatbox?

**In certain cases, your users may need to get support on a specific subject, that has a chronological start and end. The default conversation view may make it hard to distinguish when this support request starts and ends. Threads solve this problem.**

**A thread is a flow of messages in a conversation, that relate to the same topic.** For instance, if you are an hosting provider and your customer has a temporary problem with their server, you may open a new conversation thread in Crisp to provide support on that specific problem. You'll give the thread a self-explanatory name, such as _"Customer server offline (Ticket #1929383)"_.

**When you're done providing support to your customer on that specific topic, you can simply close the thread.** Your conversation view history will show a beautiful history of when did the thread start, then messages for that thread, and then when did that thread end.

# Requirements for threads

Threads can be created from the Crisp Chatbox JavaScript SDK. You can read [How to use $crisp JavaScript SDK?](https://docs.crisp.chat/guides/chatbox-sdks/web-sdk/dollar-crisp/) for more information.

|| Threads are not opened or closed automatically. Your website code needs to implement some logic in order to collect information about the current context (eg. your user submits a form asking for assistance), and then push it to Crisp as a new thread. When your website knows the support ticket has been answered, it can end the thread.

# Threaded conversation example

**Below, we've made up an example conversation to demonstrate how threads can be useful to your own support:**

![An example thread for an hosting provider](https://storage.crisp.chat/users/helpdesk/website/-/b/7/c/f/b7cf56d64fe4100/364c0773-7360-4f83-8367-bdde09_1gvyrui.png)

# How can I start a thread from the chatbox?

**In your website's JavaScript code, run the following:**

```
$crisp.push(["do", "message:thread:start", ["Thread topic..."]])
```

|| The thread topic is required (string value).

||| The chatbox must be active in order for the thread to be started. It means, it must have been opened at least once. You can [automatically open the chatbox](/en/article/how-to-open-the-chatbox-on-click-on-a-custom-button-kocrye/) before starting the thread to ensure this.

# How can I end a thread from the chatbox?

**In your website's JavaScript code, run the following:**

```
$crisp.push(["do", "message:thread:end"])
```

**Optionally, you can provide the ended thread topic:**

```
$crisp.push(["do", "message:thread:end", ["Thread topic..."]])
```

||| The chatbox must be active in order for the thread to be ended. It means, it must have been opened at least once. You can [automatically open the chatbox](/en/article/how-to-open-the-chatbox-on-click-on-a-custom-button-kocrye/) before starting the thread to ensure this.