# Building Bots

### 1. Plan Your Bot

Symphony Messaging Bots can leverage the Symphony Messaging REST API to create innovative workflows and timesaving automations. Depending on your desired workflow, there are many different development avenues available for you and your development team. Understanding these different development options and different APIs available is key to creating a successful bot and positive user experience. Learn more about the different types of Symphony Messaging Bots and APIs here:

{% content-ref url="/pages/-MB57dwKMReDc0Z0eYEc" %}
[Planning Your Bot](/bots/planning-your-bot.md)
{% endcontent-ref %}

### 2. Leverage our Tools

Symphony has built numerous tools in order to streamline Symphony Messaging Bot Development. Our rich suite of developer tools offers centralized configuration and authentication protocols, provides out of the box API bindings, convenient error handling, datafeed management, and ensures that your Bot is built using Symphony's best practices.&#x20;

Using an ultra simplified configuration and authentication set up, an intuitive message and room control mechanism, new APIs for message templating and workflow activities, developing bots has never been easier.

Learn more about how you can get started with our developer tools here:

{% content-ref url="/pages/-MQOogfbyioTouQ3cjN4" %}
[Getting Started with BDK](/bots/getting-started/bdk.md)
{% endcontent-ref %}

{% content-ref url="/pages/FGDZh7zIQvgLtB0HEfTU" %}
[Broken mention](broken://pages/FGDZh7zIQvgLtB0HEfTU)
{% endcontent-ref %}

### 3.  Authentication

At Symphony, security is always first. In order to leverage Symphony Messaging's robust set of open APIs, your Bot must first authenticate itself. You can learn more about how to authenticate and the different types of authentication here:

{% content-ref url="/pages/-MB57YgIwHTbc0P1jRVR" %}
[Authentication](/bots/authentication.md)
{% endcontent-ref %}

### 4.  Add Custom Business Logic

The last step is to add custom business logic to your Bot. Begin learning about the capabilities of Symphony Messaging REST APIs and bring your workflows and automations to life:

{% content-ref url="/pages/-MB56jIyq1Tyj5rjrc8D" %}
[Overview of REST API](/bots/overview-of-rest-api.md)
{% endcontent-ref %}

### 5.  Become a Certified Developer

Want to take your Bot building to the next level? Symphony offers a free course and certification program for Developers wishing to improve their Symphony Messaging skills, technical knowledge, and expertise. Learn more about how you can become a Certified Developer today!

{% content-ref url="/pages/-MB573wFlSNrHwbKAfpo" %}
[Developer Certification](/developer-certification/developer-certification.md)
{% endcontent-ref %}


---

# 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://docs.developers.symphony.com/bots/building-bots.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.
