> For the complete documentation index, see [llms.txt](https://docs-convai.wavy.global/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs-convai.wavy.global/tutorials/tutorial-getting-started.md).

# Getting started

In this tutorial, we will introduce you to the steps needed to create a chatbot from scratch and setting up a new project.

If you are working on an existing project, you don't need to set up a new project so feel free to skip ahead to the next tutorial.

## Create a new bot

We will create a conversational interface called Choo-choo, a digital assistant for booking train tickets.To get started, make sure you have valid credentials for using Chatlayer.ai.

{% hint style="info" %}
If you don't have credentials yet you can contact us [here](https://www.chatlayer.ai/contact).
{% endhint %}

* Log in using your credentials on <https://cms-staging.chatlayer.ai>
* To start, click the `+ Add bot` button to create a new bot

![](/files/-MFgE59wjgbDKotc4OFN)

* Enter `Choo Choo (your first name)` as the name of the bot
* Choose `English` as the primary language. This is the language you will develop the bot in.
* (Optional) Add other languages if you want a multi-lingual bot.
* Click `Create` to create your new bot.

![](/files/-MFgE5A-rJ3W7kIY0Zry)

{% hint style="warning" %}
Be aware that you can't add additional languages once the bot is created. Contact our support team [here](https://chatlayer.zendesk.com/hc/en-us) to if you need to add a language on an existing bot.
{% endhint %}

Once you have created the bot, click on the pencil icon to start creating your bot.

![](/files/-MFgE5A2tBDPH8OppXOQ)

In the menu on the left, click on `Bot dialogs`. Enter the `General` flow by clicking the flow icon

{% hint style="info" %}
Flows are a way to group your bot dialogs. You will learn more about this in a later tutorial.
{% endhint %}

![](/files/-MFgE5A5s2pZ32twuW9V)

After entering the flow, you will see an empty chatbot flow containing only the standard predefined dialog states. Your screen should look like this:

![](/files/-MFgE5A67oGBVlaqk2wx)

### Add a greeting

The first thing we need to do is create a greeting. Greetings will help your users figure out what the bot can do, get to know its personality and introduce itself. Greetings are an important way to set the proper expectations of a bot.

Our Choo Choo bot will start each conversation. You can configure this greeting in the `introduction` bot dialog.

{% hint style="info" %}
**What is a bot dialog?** A bot dialog is a something that the bot will do or say when triggered by a user. This can be anything from a message to a user, to making a connection to an external system, to jumping to another part of the conversation.
{% endhint %}

* Zoom in or out by use the scrolling wheel. Click and drag to move through the dialogue tree.
* Click on the edit icon of the`introduction` bot dialog

![](/files/-MFgE5A7jsQg6Mb1Qs22)

Chatlayer.ai supports multiple content types. Depending on the channel (Facebook, Slack, Skype, Google Home, ...) these will be rendered slightly differently. Since this is our first bot and our first message, let's start with a simple text message:

* Delete the predefined greeting message by clicking the Trash icon.

> Hello. Please configure the introduction dialog state with a meaningful message.

* Replace it with the following text

> Hello there! My name is Choo Choo, a digital assistant that will keep you on track.

* Click on `Text`  in section 'Add bot message' to add a second message and enter the following text

> How can I help you today?

The result will be:

![](/files/-MFgE5A8hmBWE5iLSbdK)

Users typically don't like it when a bot always replies with the exact same message. That's why Chatlayer.ai supports random messages. In a Text Message block, you can add multiple alternatives to a message. Chatlayer.ai will randomly select one of the messages in a block to display, making your dialogue feel more natural.

* Just below 'How can I help you today?', click on  `Add random message` and enter the following text

> What can I do for you?

You can add as much random messages as you want.

![](/files/-MFgE5A9NdRVSxDwid4u)

Click on `Save` to save all the changes you made in the `introduction` bot dialog.

### Test the introduction in the emulator

Let's have a look to see if we configured everything correctly. To do so, we don't have to publish the bot to a production channel like Facebook Messenger or Slack. We can just test how the bot replies by using the built-in emulator.

* Click on the Emulator icon in the lower right corner.

![](/files/-MFgE5AAOG0KeZlF1Xbx)

If you have configured everything correctly, Choo Choo will now reply with the right content. You can ignore the debug button for now. This will be very useful later when we want to debug more complicated flows.

![](/files/-MFgE5ABsPbNCNpUbVxM)

{% hint style="info" %}
In the [next tutorial](/tutorials/tutorial-adding-content.md), you will learn how to configure some questions the user can ask the bot.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs-convai.wavy.global/tutorials/tutorial-getting-started.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
