# Creating my first Bot

## **Do you know how to create a bot?**

To make it easier, we can separate the creation of the Bot into 3 parts, namely:

1. Set a Bot Requirement&#x20;
2. Create a Flowchart
3. Insert the Bot on the Plataform

{% hint style="info" %}
Tip #1: Understanding what the bot's purpose is (Define a bot usage) and how to activate it (Create a flowchart) is essential before you really get down to business! (Insert the bot into the platform)
{% endhint %}

### 1. Define a Bot need

Register users on the platform.

{% hint style="info" %}
Tip #2: The bot must have a main need! Be informative, transactional, collect data between other... You can delete by expanding your bot's functionality or create another one that meets or needs, this way you ensure that the bot's scope is smaller and easier to maintain !
{% endhint %}

### 2. Create a Flowchart

This will be the scope of our bot:

{% hint style="info" %}
Tip #3: There are many tools to create streams quickly, including:\
[Driagram.io](http://diagram.io/)  ,  [Whimscal](https://whimsical.com/) .
{% endhint %}

Let's work on it now!

Follow this step-by-step:

1. After accessing the platform, click on the new bot button. (as the image below)
2. Name your bot, for example: Enroll Bot.

![](/files/-Mg6M13JC7Zg9V83IYWm)

{% hint style="info" %}
Tip #5: You can also define your bot, add an image to identify it, and you can also clone another bot you've already made!
{% endhint %}

**Flows:**

After following step 2, the bot will open a screen that displays the Flows it has. By default, a tool will always come with 3 flows already created, namely:

&#x20;\- Welcome

&#x20;\- Exception

&#x20;\- Delete

\*From here our Bot will be separated by streams.

Flow: Welcome

* Change the Welcome Flow main message to "Welcome to our platform":

![](/files/-Mg6P-sA14HrfOyCH81l)

{% hint style="info" %}
Tip #6: Within the Message you can also create option buttons for the user, choose between saving or not the obtained response, among other options.
{% endhint %}

Flow : Filter

1. Create another Stream named Filter;
2. Insert a filter with a function to identify if the user is registered or not in the tool

![](/files/-Mg6lc_TeE6vp-RcQ6h7)

{% hint style="info" %}
Tip # 7 : Filters provide an option to enter conditions that allow you to make routings, if you prefer, it is also possible to create Filters with Complex Functions.
{% endhint %}

Flow: Registered User

1. Create a new Stream with the registered user name;
2. Create a message and inform the user that he or she is already registered:

![](/files/-Mg7-qOdmv0uOLntnkWZ)

{% hint style="info" %}
Tip #8: When you need to save the response only for the duration of a bot interaction or use the user response in some other step, for example in a filter, you can save it as context.
{% endhint %}


---

# Agent Instructions: 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://help-en.cosmobots.io/bot-builder/create-bot/creating-my-first-bot.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.
