[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Zendesk
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Zendesk
[ Suggest Edits](/edit/zendesk)

Turn Botpress chats into Zendesk tickets, with a handy link added to the conversation notes. A Zendesk agent can communicate directly with the user on the same conversation initially handled by the bot on any channels supported by Botpress (e.g. web chat, Whatsapp, Messenger, etc.)
Getting Started
[](#getting-started)
In this guide, we will demonstrate how to set up the Zendesk integration to facilitate live interactions through the bot.
Step 1: Add Zendesk Integration
[](#step-1-add-zendesk-integration)
Firstly, locate your bot's dashboard and click on the integrations tab. Use the search bar to find and select the Zendesk Integration. Once found, install this onto your bot.
Step 2: Setting up Zendesk Integration
[](#step-2-setting-up-zendesk-integration)
Switch to the Zendesk admin center, and find the Zendesk API menu. Ensure you have both password and token access enabled.
You will then need to create a distinct API token. Copy this for later use.
Return to your bot's dashboard. Here you will need to input your organizational subdomain, your consistent Zendesk account email, and the copied API token. Ensure to save this configuration and activate the newly installed integration.
Step 3: User Info Accumulation
[](#step-3-user-info-accumulation)
The bot will need the user's name and their email. This data will be saved to user variables.
Create a 'user.name' and a 'user.email' variable on the bottom-left variables panel. Make sure to select "User" as the scope. Confirmation of the information will be done using simple capture cards.
Step 4: Enabling HITL Agent
[](#step-4-enabling-hitl-agent)
From the "Agents" menu of the bot in Botpress Studio, click on the "HITL Agent" option, and then turn on the "Enable Agent" option.
This menu will allow you to configure options such as choosing Zendesk as the desired integration. Also, you have the capability to design an 'end\_conversation' intent that permits the user to opt out of speaking to a live agent. To do so, pick a global intent from the dropdown, for instance "Cancel".
Most settings are default, you may choose to modify them to your preference.
Step 5: Activating HITL
[](#step-5-activating-hitl)
Add a new node to your bot in Botpress Studio and then insert a "Start HITL" card, which will trigger the bot into initiating a live agent.
The card will automatically summarize the conversation and provide a transcript for the live agent in the Zendesk menu.
Step 6: Test the Configuration
[](#step-6-test-the-configuration)
Now that everything has been configured accordingly, publish your bot and open the Web Chat.
> ## 📘
>
> Note
>
> This integration does not work in the emulator. Try it in other channels such as Web Chat.
Cards
[](#cards)
Get Ticket
[](#get-ticket)
Retrieves details about a specific support ticket in Zendesk.
* **Input**:
* `Ticket ID`: The ID of the ticket from the ticket URL.
(e.g., `https://companyname.zendesk.com/agent/tickets/1` for `Ticket ID` `1`).
* **Returns**: Real-time updates on the status and details of the ticket.
JavaScript
`// Return object example
{
"ticket": {
"id": 4,
"subject": "Ticket Subject",
"description": "Ticket Description",
"priority": null,
"status": "open",
"tags": [],
"requesterId": 11183521570160,
"assigneeId": 11183526440284,
"createdAt": "2023-11-08T18:27:49Z",
"updatedAt": "2023-11-10T18:03:13Z"
}
}
`
Create Ticket
[](#create-ticket)
Creates a new support ticket in Zendesk.
* **Inputs**:
* `Ticket subject`: Title of the ticket.
* `Ticket comment`: Initial message for the support agent.
* `Requester name`: Name of the user needing support.
* `Requester email`: Email of the user needing support.
* **Returns**: Confirmation of ticket creation with details.
JavaScript
`// Return object example
{
"ticket": {
"id": 4,
"subject": "Ticket Subject",
"description": "Ticket Description",
"priority": null,
"status": "open",
"tags": [],
"requesterId": 11183511570160,
"assigneeId": 11183521440284,
"createdAt": "2023-11-08T18:27:49Z",
"updatedAt": "2023-11-10T18:03:13Z"
}
}
`
Close Ticket
[](#close-ticket)
Closes the ticket of the provided Ticket ID in Zendesk.
* **Input**:
* `Ticket ID`: The ID of the ticket from the ticket URL.
(e.g., `https://companyname.zendesk.com/agent/tickets/1` for `Ticket ID` `1`).
* **Optional**: `Closing Comment` for resolution summary or thanks.
* **Returns**: Confirmation that the ticket is closed with optional comment.
JavaScript
`// Return object example
{
"ticket": {
"id": 4,
"subject": "Ticket Subject",
"description": "Ticket Description",
"priority": null,
"status": "closed",
"tags": [],
"requesterId": 11183511570160,
"assigneeId": 11183521440284,
"createdAt": "2023-11-08T18:27:49Z",
"updatedAt": "2023-11-10T18:03:13Z"
}
}
`
Get Ticket Conversation
[](#get-ticket-conversation)
Fetches the conversation ID of the provided Ticket ID in Zendesk.
* **Input**:
* `Ticket ID`: The ID of the ticket from the ticket URL.
(e.g., `https://companyname.zendesk.com/agent/tickets/1` for `Ticket ID` `1`).
* **Returns**: Latest updates or responses from support agents on the ticket.
JavaScript
`// Return object example
{
"conversationId": "5c9ea21d-3ce3-43fa-bd33-3fb7312f88b5",
"tags": {"zendesk:id": "4", "zendesk:requesterId": "11232621609372"}
}
`
Find Customer (WIP)
[](#find-customer-wip)
Finds a customer in Zendesk based on the provided search query.
* **Input**:
* `Search Query`: You can search by name, email, or phone number of the customer.
* **Returns**: A list of matching customers and their details.
JavaScript
`// Return object example
{
"customers": [
{
"id": 11183521570160,
"name": "Customer Name",
"email": "Customer Email",
"phone": "Customer Phone",
"createdAt": "2023-11-08T18:27:49Z",
"updatedAt": "2023-11-10T18:03:13Z"
}
]
}
`
List Agents (WIP)
[](#list-agents-wip)
Provides a list of available support agents in Zendesk.
* **Input**:
* `Is Online`: Select this option to filter the list of agents by online status.
* **Returns**: List of agents, optionally filtered by online status.
JavaScript
`// Return object example
{
"agents": [
{
"id": 11183521570160,
"name": "Agent Name",
"email": "Agent Email",
"phone": "Agent Phone",
"createdAt": "2023-11-08T18:27:49Z",
"updatedAt": "2023-11-10T18:03:13Z"
}
]
}
`
Set Conversation Requester (WIP)
[](#set-conversation-requester-wip)
Changes the requester of a ticket conversation in Zendesk.
* **Inputs**:
* `Conversation ID`: Get this from the `Get Ticket Conversation` card.
* `Requester ID`: Get this from the requester's profile URL in Zendesk (e.g., `https://companyname.zendesk.com/agent/users/1` for `Requester ID` `1`).
* **Returns**: None. Does not return anything.
Trigger - Assigned Ticket
[](#trigger---assigned-ticket)
This trigger is fired when a ticket is assigned to an agent. This can be used to notify the agent that they have a new ticket to work on.
Trigger - Ticket Solved
[](#trigger---ticket-solved)
This trigger is fired when a ticket is marked as solved. This can be used to notify the user that their issue has been resolved.
> ## 📘
>
> Note
>
> You can add a message after these triggers to send a notification to the agent. For example, you can use the `Send Message`card to send a message to the agent.
Updated 4 months ago
---
* [Table of Contents](#)
* * [Getting Started](#getting-started)
* [Step 1: Add Zendesk Integration](#step-1-add-zendesk-integration)
* [Step 2: Setting up Zendesk Integration](#step-2-setting-up-zendesk-integration)
* [Step 3: User Info Accumulation](#step-3-user-info-accumulation)
* [Step 4: Enabling HITL Agent](#step-4-enabling-hitl-agent)
* [Step 5: Activating HITL](#step-5-activating-hitl)
* [Step 6: Test the Configuration](#step-6-test-the-configuration)
* [Cards](#cards)
* [Get Ticket](#get-ticket)
* [Create Ticket](#create-ticket)
* [Close Ticket](#close-ticket)
* [Get Ticket Conversation](#get-ticket-conversation)
* [Find Customer (WIP)](#find-customer-wip)
* [List Agents (WIP)](#list-agents-wip)
* [Set Conversation Requester (WIP)](#set-conversation-requester-wip)
* [Trigger - Assigned Ticket](#trigger---assigned-ticket)
* [Trigger - Ticket Solved](#trigger---ticket-solved)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Zapier
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Zapier
[ Suggest Edits](/edit/zapier)
> The Botpress app for Zapier is currently in BETA. In order to use Botpress in your Zaps please [click here to obtain access](https://zapier.com/developer/public-invite/179950/2d89a44be6d7ddcae4ae23df0be19b3c/) to the private beta in Zapier.
---

Prerequisites
[](#prerequisites)
* A [Zapier](https://zapier.com/) account
* BETA access to the Botpress app in Zapier [request here](https://zapier.com/developer/public-invite/179950/2d89a44be6d7ddcae4ae23df0be19b3c/)
* A [Botpress Cloud account](https://sso.botpress.cloud) and a [Botpress Bot](../docs/create-publish-your-chatbot)
Setting up the Zapier integration in Botpress
[](#setting-up-the-zapier-integration-in-botpress)
1. Go to the [Integration Hub](https://app.botpress.cloud/hub) in Botpress Cloud (if you don't have the integration installed yet).
2. Find and open the Zapier integration then click on the "Install to Bot" button, now go back to your bot.
Setting up a Zapier workflow
[](#setting-up-a-zapier-workflow)
1. Create a new zap in your Zapier account and search for "Botpress" either in the Trigger or Action of your zap.
2. Zapier will guide you through the process of authenticating to your Botpress account, follow the steps provided there.
3. Once you have authenticated, when setting up the Trigger or Action of your zap to use Botpress you'll be asked for the "Webhook URL", which you can find in your Botpress Cloud dashboard inside the "Integrations" tab of your bot and then clicking on the Zapier integration.
Using Botpress to trigger a Zapier workflow
[](#using-botpress-to-trigger-a-zapier-workflow)
1. If you're setting up Botpress as a Trigger in Zapier there will be an option to test the trigger and see some sample data that could be received from your bot. Use this to create the rest of your Zap.
2. To make your bot send real data to Zapier, you'll find a "Send to Zapier" action card in Botpress Studio which you can use to send data from your bot to your Zap:

3. It's recommended that you send your data in JSON format so you can send multiple value at once, as Zapier will automatically parse it. For example, you could use the following expression to send a JSON object with multiple values in the "Trigger Data" field of the "Send to Zapier" action:
`{{ JSON.stringify({ myVariable1: workflow.myVariable1, myVariable2: workflow.myVariable2 }) }}
`
Using Zapier to trigger an action in your Botpress chatbot
[](#using-zapier-to-trigger-an-action-in-your-botpress-chatbot)
1. If you're setting it up as an Action in Zapier, you can send custom Event Data to your bot and an optional Correlation ID which you can use to associate individual zap runs with a particular event in your bot.
2. Zapier only allows entering a single text value for the Event Data, but you can put a Code Step from Zapier before the Botpress action in your zap in order to construct an object with multiple values and then use `JSON.stringify()` in your Code Step to convert the object to a text field that you can use in the last part of your zap as the Event Data to send to Botpress.
3. To receive data from Zapier in your bot, you can use the "Event from Zapier" trigger in the Studio:

"Event from Zapier" event in the Studio card tray
4. Then add an Execute Code card with the following code assuming you sent your data in JSON format:
JavaScript
`workflow.zapierData = JSON.parse(event.payload.body)
`
5. Now the rest of your trigger workflow can use the `{{ workflow.zapierData }}` variable to access the data you sent from Zapier.
Testing your Zapier integration
[](#testing-your-zapier-integration)
You can create an "echo" zap in Zapier to test if everything works well. For example, you can create a zap that triggers when you send a message to your bot and then sends the same message back to your bot.
Here's what a simple echo zap would look like:

Screenshot of a sample "echo" zap
The first action receives an event from the bot, and the second one sends the same event back to the bot. You can see the events you receive on the "Discover Events" button on the node containing "Events from Zapier" card.

Screenshot of what the "echo" looks like in the Studio
Updated 4 months ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Setting up the Zapier integration in Botpress](#setting-up-the-zapier-integration-in-botpress)
* [Setting up a Zapier workflow](#setting-up-a-zapier-workflow)
* [Using Botpress to trigger a Zapier workflow](#using-botpress-to-trigger-a-zapier-workflow)
* [Using Zapier to trigger an action in your Botpress chatbot](#using-zapier-to-trigger-an-action-in-your-botpress-chatbot)
* [Testing your Zapier integration](#testing-your-zapier-integration)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Wix
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Wix
Embedding the Web Chat in a Wix website
[ Suggest Edits](/edit/wix)

Prerequisites
[](#prerequisites)
1. A [**Wix**](https://www.wix.com) website with the ability to add custom scripts. This will require a paid plan. Checkout [**Wix Pricing**](https://www.wix.com/upgrade/website) for more information.
2. A [**Domain**](https://support.wix.com/en/article/connecting-a-domain-to-the-wix-name-servers) connected to your Wix website for the Custom Code to work.
3. A [**Botpress**](https://sso.botpress.cloud) account with an active bot.
Getting the Botpress Web Chat Script
[](#getting-the-botpress-web-chat-script)
1. Log in to your [**Botpress**](https://sso.botpress.cloud) account and navigate to your bot's **Integrations** tab.
2. Click on the **Webchat** Integration and copy the **Embedded** script from the **Pre-configured** tab.
Adding the Botpress Web Chat Script in Wix
[](#adding-the-botpress-web-chat-script-in-wix)

1. Log in to your [**Wix**](https://www.wix.com) dashboard and go to **Settings** from the left sidebar.
2. Scroll down to **Advanced Settings** and click on **Custom Code**.
3. Click on **\+ Add Code** in **Body - Start** and paste the **Embedded** script you copied in the previous step.
4. Ensure you apply the code to **All pages** and load the code **Once** at the **Body - end** tag and click **Apply**.
Testing the Integration
[](#testing-the-integration)
1. Publish your Wix website and navigate to your live Wix website.
2. You should see the Botpress Web Chat widget on the bottom right corner of your website.
Updated 4 months ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Getting the Botpress Web Chat Script](#getting-the-botpress-web-chat-script)
* [Adding the Botpress Web Chat Script in Wix](#adding-the-botpress-web-chat-script-in-wix)
* [Testing the Integration](#testing-the-integration)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Your integrations
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Your integrations
Lists integrations this Workspace owns.
[ Suggest Edits](/edit/your-integrations)
This tab lists integrations your Workspace has contributed to the Botpress Hub.
> ## 🖥️
>
> About the Botpress Hub
>
> The Botpress Hub is a public repository of integrations you can use to extend your Botpress bot's functionalities and options for deployment.
>
> It is open to the public, so you can make contributions to it, share integrations with colleagues or bot builders across the world, and download integrations developed by Botpress and other builders.
>
> Learn more here.
From this tab, you can keep track of all integrations your Workspace currently owns and manages. You can manage the privacy of the integration, view detailed logs and settings, and keep track of previous versions.
Updated about 1 month ago
---[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
WhatsApp
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# WhatsApp
Simply and easily connect your chatbot to WhatsApp with this integration.
[ Suggest Edits](/edit/whatsapp)
> ## ❗️
>
> Business Verification
>
> To deploy a chatbot on WhatsApp, your business must first undergo a verification process by Meta, the parent company of WhatsApp. This verification, typically conducted through the Facebook Business Manager, confirms the identity and eligibility of your business to use Meta's platforms. Checking the official Meta for Developers website or WhatsApp Business API documentation is advisable.
Setup
[](#setup)
Prerequisites
[](#prerequisites)
* A [WhatsApp Business Platform Account](https://business.whatsapp.com/products/business-platform) to be your bot's interface on WhatsApp
* A [Botpress Cloud account](https://sso.botpress.cloud) and a [Botpress Bot](https://botpress.com/docs/cloud/getting-started/create-and-publish-your-chatbot/)
Installing the integration
[](#installing-the-integration)
1. Navigate to the [Integration Hub](https://app.botpress.cloud/hub) in Botpress Cloud
2. Install the WhatsApp integration
3. Click "Enable Integration" and then "Save Configuration"
4. Click "Sign in to link your account"
5. Follow the steps of the wizard to connect your bot to WhatsApp
Content Type Mapping
[](#content-type-mapping)
From Botpress to WhatsApp
[](#from-botpress-to-whatsapp)
* Text is mapped to [Text Object](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/messages#text-object)
* Text with Markdown is mapped to [Text Object](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/messages#text-object)
* Image is mapped to [Media Image Object](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/messages#media-object)
* Audio is mapped to [Media Audio Object](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/messages#media-object)
* Video is mapped to [Media Video Object](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/messages#media-object)
* File is mapped to [Media File Object](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/messages#media-object)
* Location is mapped to [Location Object](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/messages#location-object)
Special behaviors to consider
[](#special-behaviors-to-consider)
Choices (buttons), dropdowns, cards, and carousels are all mapped to [Interactive List Objects.](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/messages#interactive-object)
This comes with a few restrictions and behaviors specific to WhatsApp:
Choices (buttons) and Dropdowns
[](#choices-buttons-and-dropdowns)
* When there are 3 or fewer choices as buttons or in a dropdown, they will be rendered as buttons.
* When there are more than 3 choices as buttons or in a dropdown, they will be rendered as a dropdown.
* If there are more than 10 choices in a dropdown, the multiple dropdown messages will be sent with up to 10 choices in each messsage.
* For example, if your bot has a dropdown with 10 choices, the user will receive two messages: the first message will have a dropdown with 10 choices, and the second messge will have a dropdown with two choices.
* Each dropdown requires a label but the Studio currently doesn’t support specifying one, so the label _“Choose…”_ is used for all dropdowns by default.
* Button labels are limited to 20 characters, and dropdown labels are limited to 24 characters.
* Labels exceeding these limits are automatically truncated. For example, the label "This button label is very long" would become "This button label i…" on a button and "This button label is ve…" on a dropdown.
Cards and Carousels
[](#cards-and-carousels)
* WhatsApp only supports one link (label and URL) on a card, so multiple links will be split into separate empty cards.
* WhatsApp imposes a limit of 3 "reply" action buttons on a card, so if a card has more than these, the buttons will be split into multiple cards.
* WhatsApp doesn't natively support carousels, so each card in a carousel will be sent individually.
Files
[](#files)
* When files are sent over Whatsapp, the Studio doesn't store the original filename (for security reasons) but only the file extension, so the file will be sent with a generic filename ("file") followed by the extension of the file. For example, if you send a PNG file, it will be sent as "file.png".
From WhatsApp to Botpress
[](#from-whatsapp-to-botpress)
Text
[](#text)
Text messages are directly mapped to Botpress text messages, and readable through `event.preview`.
Location
[](#location)
Use a “Wait for User Input” card on your bot, check that `event.type` equals `"location"`, and then read `event.payload` which will contain the following properties:
* `latitude`
* `longitude`
* `address` (not always provided)
* `title` (not always provided)
Media (images, audio, documents)
[](#media-images-audio-documents)
Use a “Wait for User Input” card on your bot, check that `event.type` equals `"image"`, `"audio"` or `"document"`, and then read `event.payload` which will have the following structure depending on the event type:
* For an image: `{"imageUrl": "https://lookaside.fbsbx.com/...."}`
* For audio: `{"audioUrl": "https://lookaside.fbsbx.com/...."}`
* For a document: `{"documentUrl": "https://lookaside.fbsbx.com/....", "filename": "the-filename.pdf"}`
Then, you can retrieve the raw file content from WhatsApp by making a `GET` HTTP request to the URL provided in the payload while passing your WhatsApp access token as a `Bearer` token in the `Authorization` HTTP header.
For example:
JavaScript
`` /* INSTRUCTIONS:
1. Create a Configuration Variable named "WHATSAPP_ACCESS_TOKEN" in the Bot Settings section of Botpress Studio.
2. Go to the "Configuration Variables" section of your bot in Botpress Cloud and set its value to your WhatsApp access token.
*/
const whatsappAccessToken = env.WHATSAPP_ACCESS_TOKEN
const res = await axios.get(event.payload.imageUrl, {
headers: {
Authorization: `Bearer ${whatsappAccessToken}`,
},
})
// This will be a JavaScript Buffer (https://nodejs.org/api/buffer.html) containing the raw binary content of the media file.
const rawFileContent = res.data
// This will indicate the file type, see:
// https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media/#supported-media-types
const mimeType = res.headers['content-type']
``
For further information, please check the [WhatsApp documentation](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media/#download-media) on downloading media files and the [Botpress documentation](../docs/configuration-variables) on using Configuration Variables.
Other message types
[](#other-message-types)
* Buttons and interactive replies from a list or button are mapped to a plain text response from the user, so you can use `event.preview` to get the value.
* Botpress does not currently support other Whatsapp message types.
Tips
[](#tips)
* To get the phone number of the user you can read the following variable:
`{{ event.tags.conversation['whatsapp:userPhone'] }}`.
This number also contains the country code and has no spaces, dashes or signs.
* To get the Whatsapp Phone Number ID of your bot that the user is interacting with _(useful when pointing multiple Phone Number IDs to the same bot)_:
`{{ event.tags.conversation['whatsapp:phoneNumberId'] }}`
Example:
[](#example)
* \[Text card\]: `Where are you? Please use Whatsapp's "Send Location" feature.`
* \[Wait for Message card\]
* \[Text card\]: `Thank you! You are located at {{event.payload.title}}, {{event.payload.address}} with longitude {{event.payload.longitude}} and latitude {{event.payload.latitude}}.`
Starting a Conversation Proactively
[](#starting-a-conversation-proactively)
As required by WhatsApp, a conversation with a user can be proactively initiated only by using [Message Templates](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines/), which need to be created in your [WhatsApp Manager](https://business.facebook.com/wa/manage/message-templates/) dashboard first and then reviewed and approved by WhatsApp in order to use them.
Once you have a message template approved by WhatsApp, it's very easy to have your bot start a conversation with a user by just using the Whatsapp "**Start Conversation**" card:

Then you just need to pass the following fields to proactively start a Whatsapp conversation with a user:
1. **User Phone**: The phone number of the user, including the country code (e.g. `+1 123 456 7890`).
2. **Template Name**: The name of your WhatsApp message template to use for the first message of the conversation. The template should be already approved by WhatsApp in order to use it.
3. **Template Language** _(optional)_: The language code of your WhatsApp message template ([see below](../docs/whatsapp#template-language) for more details).
4. **Template Variables JSON** _(optional)_: The values of the variables for your WhatsApp message template, specified as a JSON array representing the list of values ([see below](../docs/whatsapp#template-variables) for more details).
5. **Sender Phone Number ID** _(optional)_: The Whatsapp Phone Number ID you want to use as sender of the message if you have multiple phone numbers available in your Meta Developers dashboard. If you don't specify this field, the Default Phone Number ID specified in the Whatsapp configuration of your bot in your Botpress Cloud dashboard will be used by default.

Once the conversation is created, if the user replies back it will be processed by your bot as a normal incoming message, so nothing else needs to be done.
Template Language
[](#template-language)
If the language you selected for your template in the Whatsapp Manager dashboard has a country qualifier, then the value for "Template Language" needs to be specified in the `language_COUNTRY` format where `language` is the 2-letter lowercase [ISO code for the language](https://en.wikipedia.org/wiki/List%5Fof%5FISO%5F639-1%5Fcodes), and `COUNTRY` is the 2-letter uppercase [ISO code for the country](https://en.wikipedia.org/wiki/ISO%5F3166-1%5Falpha-2). On the other hand, if the language in Whatsapp Manager doesn't specify a country then you can enter just the 2-letter lowercase ISO code for the language.
For example:
* If you selected the "English (US)" option for the language of your Message Template in Whatsapp Manager, then the value you need to enter for "Template Language" in Botpress is `en_US`.
* If you selected the "English (UK)" option, then the value you need to enter is `en_GB`.
* If you selected the "French" option, which doesn't have a country qualifier, then the value you need to enter is just `fr`.
Template Variables
[](#template-variables)
Template variables need to be passed as a JSON array of string or numeric values representing the list of variable values, as Whatsapp only allows referring to them by their position in your message template (e.g. `{{1}}` for the first variable, `{{2}}` for the second variable, and so on).
For example, if your Message Template expects a first variable (_referred to as `{{1}}` in the template_) with the person's first name and then a second variable (_`{{2}}` in the template_) with an account number, then you would pass the following JSON array as the value for the "Template Variables" field:
JSON
`["John", "12345"]
`
Accessing the Botpress Conversation ID
[](#accessing-the-botpress-conversation-id)
If you need to access the ID of the conversation created in Botpress Cloud by this action, you can choose to store the output value of this action in a variable. The output value of this action will be an object with the following structure:
JavaScript
`{
conversationId: 'ffa09762-6c37-4ebd-a82f-307048929c97'
}
`
So for example, if you choose to store the output value of this action in a variable named `bpWhatsappAction`, you can use `{{ workflow.bpWhatsappAction.conversationId }}` in input fields of the Studio (where supported) to insert the conversation ID, or use `workflow.bpWhatsappAction.conversationId` to access it in code.
Creating the conversation using the Botpress Client
[](#creating-the-conversation-using-the-botpress-client)
Note: This only works for bots created from code only.
If you're building a bot as code (instead of using Botpress Studio), you can use the Botpress Client instance provided to your bot's handlers to call this action programmatically as shown in the following example:
ts
`` const result = await client.callAction({
type: 'whatsapp:startConversation',
input: {
userPhone: '+1 123 456 7890', // The full phone number of the Whatsapp user you want to initiate the conversation with.
templateName: 'test_message', // This is the name (identifier) of your WhatsApp message template.
templateLanguage: 'en_US', // Optional (defaults to `en_US`)
templateVariablesJson: JSON.stringify(['John', '12345']), // Optional (only needed if your message template uses variables)
},
})
console.log('Botpress conversation ID: ' + result.conversationId)
``
Updated about 2 months ago
---
* [Table of Contents](#)
* * [Setup](#setup)
* [Prerequisites](#prerequisites)
* [Installing the integration](#installing-the-integration)
* [Content Type Mapping](#content-type-mapping)
* [From Botpress to WhatsApp](#from-botpress-to-whatsapp)
* [Special behaviors to consider](#special-behaviors-to-consider)
* [From WhatsApp to Botpress](#from-whatsapp-to-botpress)
* [Other message types](#other-message-types)
* [Tips](#tips)
* [Example:](#example)
* [Starting a Conversation Proactively](#starting-a-conversation-proactively)
* [Template Language](#template-language)
* [Template Variables](#template-variables)
* [Creating the conversation using the Botpress Client](#creating-the-conversation-using-the-botpress-client)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Webhook
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Webhook
[ Suggest Edits](/edit/webhook)

Webhooks provide a powerful way to integrate Botpress with other services. This guide will walk you through how to set up a webhook in Botpress to allow your bot to receive external updates in real-time.
Prerequisites
[](#prerequisites)
* A [Botpress Cloud account](https://sso.botpress.cloud) and a [Botpress Bot](https://botpress.com/docs/cloud/getting-started/create-and-publish-your-chatbot/)
Setting up the Webhook integration in Botpress
[](#setting-up-the-webhook-integration-in-botpress)
1. Go to the [Integration Hub](https://app.botpress.cloud/hub) in Botpress Cloud (if you don't have the integration installed yet).
2. Find and open the Webhook integration then click on the "Install to Bot" button, now go back to your bot.
The Webhook integration will have the following settings:
* **Enabled**: Whether Botpress will communicate with the Webhook.
* **Webhook URL**: The URL that you will use to send data to your bot.
* **Secret**: A secret password that you can use to secure your webhook. It can be any string you want, but make it random and hard to guess.
That's it! Now the Webhook integration is operational and ready for use within your bot.
Sending data to your Webhook from Javascript
[](#sending-data-to-your-webhook-from-javascript)
You can make requests to your webhook from any environment that supports HTTP requests, such as a Node.js app, a React app, a Javascript script running in the browser, a Zapier zap, a curl script, etc.
This code example uses the Axios library to make a POST request to the Webhook URL, in a simulated Node.js app.
JavaScript
`` import axios from 'axios'
const webhookUrl = 'https://your-webhook.url'
const data = {
article: {
id: '123',
content: 'Hello Webhooks!',
},
category: 'Business',
}
const headers = {
'Content-Type': 'application/json',
// this is optional
// `x-bp-secret`: 'your-secret'
}
await axios.post(webhookUrl, data, header)
// You should get a 200 OK response
// Webhooks don't return any data in the response body
``
Sending data to your Webhook from a HTTP client (for testing)
[](#sending-data-to-your-webhook-from-a-http-client-for-testing)
1. Open a HTTP client like Postman or Insomnia and create a new request
2. Set the request type to `POST`
3. Set the URL to the Webhook URL you got from the integration page in the Botpress Dashboard.
4. Set the `Content-Type` header to `application/json`
5. (Optional) Set the `x-bp-secret` header to the secret token you set in the Botpress Hub
6. \[Example\] Set the body to the following JSON:
JSON
`{
"article": {
"id": "123",
"content": "Hello Webhooks!"
},
"category": "Business"
}
`
1. Send the request and you should see a `200 OK` success response.
Using the Webhook Event data in your bot
[](#using-the-webhook-event-data-in-your-bot)
1. Go to the Botpress Studio and right-click the editor to add a Trigger node, that triggers on `Webhook Event`.
* This is where the conversation will start when the webhook received data, instead of following the regular path of beginning with the `Start` node.
2. Connect the Trigger node to the rest of you conversation.
3. Click on `Discover Events` button to see the events that were received. You can choose an event and save it as an example to trigger the conversation for testing.
4. You can access the data from the request using the `event.payload` variable.
Webhook Event Payload
[](#webhook-event-payload)
Webhook requests make available four properties that you can read in your bot:
* `event.payload.body`: The body of the request - it is usually a JSON object
* `event.payload.query`: A JSON object containing the URL params of the request
* For example if you make a request to `https://your-webhook.url/?param1=hello¶m2=world` the query object will look like this: `{ param1: 'hello', param2: 'world' }`
* Then you can access the params using this notation: `event.payload.query.param1`
* `event.payload.method`: The HTTP method of the request - usually `POST`
* `event.payload.path`: The path of the request - usually `/`
Additional Information
[](#additional-information)
* You can create filters to manage when the trigger will be actually activated and also create alternative flows by using Expressions that consider the request data.
* For example, you can add a filter that checks if the request path is new-comment (`event.payload.path === '/new-comment'`), in which case the conversation will only start if the request is made to this url - `https://your-webhook.url/new-comment`
* You could also add Expression cards that transition to different nodes or workflows based on the data. For example, the `event.payload.body.category === 'Business'` condition could transition to a different flow that handles business articles.
> ## 📘
>
> Note
>
> Remember that the contents of the `event.payload` property received via Webhook will be replaced as soon as the bot or the user sends a new message. So you should save important information in workflow variables if you want to use it later in the conversation.
* You can also add `/user` or any other path to the WebhookURL to record events specific to this URL.
* You can then add a filter to the Webhook Event to only receive events from this URL.
* For example, if you want to receive only the events that have a `type` equal to `text` and a `user.id` equal to `user-id`, you can use the following filter:
* `event.payload.body.type === 'text' && event.payload.body.user.id === 'user-id'`
Updated 4 months ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Setting up the Webhook integration in Botpress](#setting-up-the-webhook-integration-in-botpress)
* [Sending data to your Webhook from Javascript](#sending-data-to-your-webhook-from-javascript)
* [Sending data to your Webhook from a HTTP client (for testing)](#sending-data-to-your-webhook-from-a-http-client-for-testing)
* [Using the Webhook Event data in your bot](#using-the-webhook-event-data-in-your-bot)
* [Webhook Event Payload](#webhook-event-payload)
* [Additional Information](#additional-information)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Webchat
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Webchat
Cards that allow you to interact with the webchat widget.
[ Suggest Edits](/edit/webchat-2)
Webchat Cards
[](#webchat-cards)
Webchat Cards are specialized Cards available in Botpress that enable you to directly control and interact with the webchat widget embedded on your website. These Cards allow you to manage the behavior of the webchat widget, handle user interactions, and customize the chat experience for your users.
Below is an overview of each category of Webchat Interaction Cards available through the card tray:
Configure Webchat
[](#configure-webchat)
The **Configure Webchat** Card allows you to adjust the settings of the webchat widget dynamically. You can change visual and functional aspects of the webchat, such as modifying the color scheme, adjusting welcome messages, or toggling features like file uploads. This Card helps personalize the user experience based on the context of the conversation or user preferences.
Send Custom Event
[](#send-custom-event)
The **Send Custom Event** Card is used to trigger custom events in the webchat widget, allowing you to send data from your bot to the webchat or perform specific actions based on user interactions. This Card is particularly useful for tracking user behavior, integrating analytics, or triggering specific workflows within the webchat.
Get User Data
[](#get-user-data)
The **Get User Data** Card allows you to retrieve information about the user interacting with the webchat widget, such as their location, browser type, or other metadata. This data can be used to tailor the conversation, provide localized responses, or make decisions based on the user’s context.
Hide Webchat
[](#hide-webchat)
The **Hide Webchat** Card enables you to programmatically hide the webchat widget from the user’s view. This can be used to control when the chat is accessible, such as hiding the widget after a session ends or when a specific condition is met.
Show Webchat
[](#show-webchat)
The **Show Webchat** Card allows you to display the webchat widget to the user, ensuring the chat is visible when you want to prompt user interaction. This is useful for engaging users at specific moments in their journey, such as after a certain time on the page or following a specific action.
Toggle Webchat
[](#toggle-webchat)
The **Toggle Webchat** Card provides the ability to switch the webchat widget between visible and hidden states. This Card is useful when you want to allow the user to control the visibility of the chat or when creating interactive flows that respond to user actions dynamically.
Updated about 1 month ago
---
* [Table of Contents](#)
* * [Webchat Cards](#webchat-cards)
* [Configure Webchat](#configure-webchat)
* [Send Custom Event](#send-custom-event)
* [Get User Data](#get-user-data)
* [Hide Webchat](#hide-webchat)
* [Show Webchat](#show-webchat)
* [Toggle Webchat](#toggle-webchat)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Webflow
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Webflow
Embedding the Web Chat in a Webflow Website
[ Suggest Edits](/edit/webflow)

Prerequisites
[](#prerequisites)
You need to have a **paid** Webflow account to embed custom code in your Webflow site (see [Webflow pricing](https://webflow.com/pricing)).
Getting the Web Chat script
[](#getting-the-web-chat-script)
* Go to [Botpress Admin Dashboard](https://app.botpress.cloud) and select your bot.
* Then, go to the **Integrations** tab and select **Web Chat**.
* Copy the pre-configured script (Embedded) or configurable script.
Embedding the Web Chat
[](#embedding-the-web-chat)
* Go to [Webflow](https://webflow.com/) and select your site.
* Click on **Site Settings** and go to the **Custom Code** tab.
* Paste the Web Chat script in the **Head Code** section.
* Click on **Save Changes** and publish your site.
Updated 4 months ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Getting the Web Chat script](#getting-the-web-chat-script)
* [Embedding the Web Chat](#embedding-the-web-chat)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Webchat Client
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Webchat Client
[ Suggest Edits](/edit/webchat-client)
The JavaScript client enables seamless interaction with the Webchat API directly from your web application. Specifically designed for browser environments, this client allows you to send and receive messages from the bot and subscribe to various events, such as incoming messages.
> ## 📘
>
> This is for advanced use cases where you want to build your own front-end or listen to particular events.
>
> We recommend most people start with the Embedded Webchat or React Components.
Quickstart
[](#quickstart)
1\. Install the package
[](#1-install-the-package)
Install the necessary package from the npm public registry.
npmpnpmyarn
`npm install @botpress/webchat
`
`pnpm add @botpress/webchat
`
`yarn add @botpress/webchat
`
2\. Obtain the Client ID
[](#2-obtain-the-client-id)
To integrate Botpress Webchat Client into your application, you need to obtain your bot's Client ID, which uniquely identifies your bot and enables communication with the Webchat service. Follow these steps to retrieve it:
1. Open your bot in the Botpress Workspace
2. Navigate to the **Webchat** tab
3. Access **Advanced Settings**
4. Copy the **Client ID**

3\. Add the code
[](#3-add-the-code)
index.js
`import { getClient } from '@botpress/webchat'
//Add your Client ID here ⬇️
const clientId = "YOUR_CLIENT_ID";
const client = getClient({ clientId })
client.on("message", (message) => {
console.log("Received message", message); // Messages from the bot
});
await client.connect(); // Initialize the client
await client.sendMessage("Hello, Botpress!"); // Send a message to the bot
`
---
API Reference
[](#api-reference)
The Webchat Client provides a set of properties and methods that allow you to manage conversations, send messages, and handle user sessions.
These are the available properties and methods:
| Name | Description |
| ------------------ | --------------------------------------------------------------------------------------------------------------------------- |
| mode | Defines the mode of the webchat client. 'messaging' for standard chat, and 'pushpin' for pinning messages or conversations. |
| clientId | A unique identifier for the client, used to associate the client with a specific bot or session. |
| apiUrl | The URL of the API that the webchat client will connect to. |
| userId | The unique identifier of the user, if available. |
| conversationId | The unique identifier of the current conversation, if available. |
| on | A method to listen for specific events emitted by the webchat client. |
| connect | Connects the client to the server with optional user credentials and data. |
| disconnect | Disconnects the client from the server. |
| getUser | Retrieves the current user's information. |
| updateUser | Updates the current user's information. |
| sendMessage | Sends a text message to the current conversation. |
| sendFile | Sends a file to the current conversation and returns its details. |
| sendEvent | Sends a custom event to the current conversation. |
| switchConversation | Switches to a different conversation by its ID. |
| conversationExists | Checks if a conversation with the specified ID exists. |
| newConversation | Starts a new conversation. |
| listMessages | Retrieves a list of messages from the current conversation. |
---
Live Demo
[](#live-demo)
[iframe](https://stackblitz.com/github/botpress/documentation-examples/tree/master/examples/webchat-client?embed=1&hideNavigation=1&view=both&file=src%2Fmain.ts "stackblitz.com")
Updated about 2 months ago
---
* [Table of Contents](#)
* * [Quickstart](#quickstart)
* [1\. Install the package](#1-install-the-package)
* [2\. Obtain the Client ID](#2-obtain-the-client-id)
* [3\. Add the code](#3-add-the-code)
* [API Reference](#api-reference)
* [Live Demo](#live-demo)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Webchat
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Webchat
Manage and configure your webchat deployment settings.
[ Suggest Edits](/edit/webchat-1)
Webchat is the native integration that allows you to deploy your bot on a website.
From this menu, you can test your webchat, make adjustments to its appearance and settings, and generate the code needed to embedded it on your website.
For a more detailed guide on using the webchat, [refer to its official documentation](/docs/webchat-v2).
Updated about 1 month ago
---
What’s Next
* [Webchat v2](/docs/webchat-v2)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Wordpress
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Wordpress
Embedding the Web Chat in a Wordpress website
[ Suggest Edits](/edit/wordpress)

Prerequisites
[](#prerequisites)
1. A [**Wordpress**](https://wordpress.com) website with a **Business Plan** upgrade for accessing [**WPCode**](https://wordpress.com/plugins/insert-headers-and-footers) plugin to add custom scripts.
2. A [**Botpress**](https://sso.botpress.cloud) account with an active bot.
Installing WPCode Plugin in Wordpress
[](#installing-wpcode-plugin-in-wordpress)

1. Log in to your [**Wordpress**](https://wordpress.com) dashboard.
2. Go to [**WPCode**](https://wordpress.com/plugins/insert-headers-and-footers) and click **Install and activate**.
3. Once activated, you'll notice a new menu item labeled **Code Snippets** on your WordPress dashboard's left-hand sidebar.
Adding the Botpress Web Chat Script
[](#adding-the-botpress-web-chat-script)

1. Log in to your [**Botpress**](https://sso.botpress.cloud) account and navigate to your bot's **Integrations** tab.
2. Click on the **Webchat** tile and copy the **Embedded** script from the **Pre-configured** tab.
3. In the WPCode dashboard, navigate to the **Code Snippets** menu item and click **Headers and Footers**.
4. Paste the **Embedded** script in the **Body** section and click **Save Changes**.
Testing the Integration
[](#testing-the-integration)

1. Navigate to your Wordpress website and refresh the page.
2. You should see the Botpress Web Chat widget on the bottom right corner of your website.
Updated 4 months ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Installing WPCode Plugin in Wordpress](#installing-wpcode-plugin-in-wordpress)
* [Adding the Botpress Web Chat Script](#adding-the-botpress-web-chat-script)
* [Testing the Integration](#testing-the-integration)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Workspace
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Workspace
Environment to manage and organize bot projects.
[ Suggest Edits](/edit/workspace)
In Botpress, a Workspace is an environment where you can organize, manage, and collaborate on multiple bot projects. It allows teams to collaborate effectively by sharing access to these resources in a defined space.
Each Workspace can contain multiple bots, so you can keep them organized by client, department, or other specific use case. Within a Workspace, you can manage permissions, track integrations, and monitor analytics.
> ## 📘
>
> Workspaces are the billing unit on Botpress
>
> Add-ons purchased by PAYG and Team plan users are distributed at the Workspace level, meaning that they only apply to the bots living in the Workspace in which those add-ons are purchased.
>
> Various Workspaces in a single account can subscribe to different plans and add-ons.
Updated about 1 month ago
---[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Utilities
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Utilities
Cards that provide utility in the Studio, and are not part of your bot's workflow.
[ Suggest Edits](/edit/utilities)
Comment
[](#comment)
The Comment card allows you to add a comment to the flow. It is useful to explain the flow to other people or to add notes to yourself.
Pick the Comment Card from the Utility Cards section in the Toolbox and drop it on the flow, or right-click the editor to see the Comment option. Click on the card to edit the content.
You can change the text size, color and style. You can add links, preformatted code and bullet point lists.
Image
[](#image)
The Image card allows you to add an image window to the flow. It prompts you to select a file from your local machine. The image can't be changed later.
Video
[](#video)
The Video card allows you to add a video window to the flow. It accepts YouTube URLs and it's useful for adding relevant content that don't fit in notes or images. The video can't be changed later.
Log
[](#log)
Logs a message to the Logs console and the Emulator for debugging purposes (similar to a console.log inside an execute code card), You can use it to print variables, messages or any other information you need to debug your flow.
Log Message
[](#log-message)
The message you want to log. You can use variables and expressions.
The log message can be a simple text or a JSON object. If you use a JSON object, it will be displayed in a more readable way.
Logging Levels
[](#logging-levels)
Debug
[](#debug)
Use this level to log detailed information about the flow execution. It's useful to debug the flow and understand how it works.
Info
[](#info)
Use this level to log general information about the flow execution. It's useful to understand the flow behavior and the data it's processing.
Warning
[](#warning)
Use this level to log warnings about the flow execution. It's useful to alert about potential issues or unexpected behavior.
Error
[](#error)
Use this level to log errors about the flow execution. It's useful to alert about critical issues that need to be fixed.
Updated about 1 month ago
---
* [Table of Contents](#)
* * [Comment](#comment)
* [Image](#image)
* [Video](#video)
* [Log](#log)
* [Log Message](#log-message)
* [Logging Levels](#logging-levels)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Webchat
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Webchat
[ Suggest Edits](/edit/webchat)

The Webchat is a widget that you can add to your website to allow your users to interact with your chatbot. It's a great way to provide support to your users and answer their questions.
Prerequisites
[](#prerequisites)
* A [Botpress Cloud account](https://sso.botpress.cloud) and a [Botpress Bot](https://botpress.com/docs/cloud/getting-started/create-and-publish-your-chatbot/)
* Make sure you've [published your Botpress bot](../docs/create-publish-your-chatbot#publishing-your-bot).
Setting up the Webchat integration in Botpress
[](#setting-up-the-webchat-integration-in-botpress)
1. Go to the [Integration Hub](https://app.botpress.cloud/hub) in Botpress Cloud (if you don't have the integration installed yet).
2. Find and open the Webchat integration then click on the "Install to Bot" button, now go back to your bot.
Setting up the Webchat
[](#setting-up-the-webchat)
Pre-configured Script
[](#pre-configured-script)
**Shareable URL**
You can share your chatbot with people that would like to quickly test your chatbot using the **Shareable Link**.
**Embedded Script**
This script will add the webchat to your website. You can copy the script and paste it in the `
` tag of your HTML page.
This is the **recommended** way of adding the webchat to your website.
Configurable Script
[](#configurable-script)
The configurable webchat code must be updated manually every time there is a change. We highly recommend using the **Pre-configured** version.
Copy the code from the **Configurable** tab and paste it in the `` tag of your HTML page.
Configurable Script Parameters
[](#configurable-script-parameters)
You can customize the webchat by changing/adding the values of the parameters in the script.
| **Parameter** | **Description** | **Default value** | **parameter type** |
| -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | ------------------ |
| stylesheet | Provide a path to a stylesheet to customize the webchat | \- | string |
| showConversationsButton | If false, will hide the conversation list pane | true | boolean |
| showTimestamp | If true, will display a timestamp under each messages | false | boolean |
| enableTranscriptDownload | Allows the user to download the conversation history | true | boolean |
| enableConversationDeletion | Allows the user to delete its conversation history | false | boolean |
| closeOnEscape | Close the webchat when pressing the Esc key | true | boolean |
| botName | Displays the bot name to the right of its avatar | \- | string |
| composerPlaceholder | Allows to set a custom composer placeholder | 'Reply to {botname}' | string |
| avatarUrl | Allow to specify a custom URL for the bot's avatar | \- | string |
| locale | Force the display language of the webchat (en, fr, ar, ru, etc..) Defaults to the user's browser language if not set Set to 'browser' to force use the browser's language | 'browser' | string |
| botConversationDescription | Small description written under the bot's name | \- | string |
| hideWidget | When true, the widget button to open the chat is hidden | false | boolean |
| disableAnimations | Disable the slide in / out animations of the webchat | false | boolean |
| useSessionStorage | Use sessionStorage instead of localStorage, which means the session expires when tab is closed | false | boolean |
| containerWidth | Sends an event to the parent container with the width provided | 360 | string OR number |
| layoutWidth | Sets the width of the webchat | 360 | string OR number |
| enablePersistHistory | When enabled, sent messages are persisted to local storage (recall previous messages) | true | boolean |
| className | CSS class to be applied to iframe | \- | string |
| disableNotificationSound | If true, chat will no longer play the notification sound for new messages. | false | boolean |
| googleMapsAPIKey | Google Maps API Key required to display the map. It will display a link to Google Maps otherwise. | \- | string |
| website | Displays the bot's website in the conversation page | \- | string |
| phoneNumber | Displays the bot's contact phone number in the conversation page | \- | string |
| termsConditions | Displays the bot's terms of service in the conversation page | \- | string |
| privacyPolicy | Displays the bot's privacy policy in the conversation page | \- | string |
| emailAddress | Displays the bot's email address in the conversation page. | \- | string |
| coverPictureUrl | Displays the bot's cover picture in the conversation page | \- | string |
| showBotInfoPage | Enables the bot's information page in the webchat | false | boolean |
| showCloseButton | Display's the webchat close button when the webchat is opened | true | boolean |
| userData | Passes the user data to the bot | \- | object |
| customUser | Passes the custom user data to the bot | \- | object |
Domain Whitelisting
[](#domain-whitelisting)
> ## 💼
>
> Team Plan
>
> This feature is only available to Team plan subscribers.
The domain whitelisting feature ensures that only approved domains can host and utilize the chatbot. This enhances security and control, ensuring that your chatbot is only available on trusted websites.
Configuring Allowed Origins
[](#configuring-allowed-origins)
1. Navigate to the Webchat integration settings on your Dashboard
2. Expand the 'Advanced Settings' menu
3. To add a domain (or an allowed origin), type the domain name in the provided field. You can provide multiple allowed origins or whitelisted domains.
Make sure to save the configuration after you've indicated which domains you want to whitelist.
Customizing/Controlling the Webchat
[](#customizingcontrolling-the-webchat)
For more information on customizing the webchat, please refer to the [Webchat developer documentation](../docs/controlling-web-chat-using-javascript).
Updated 3 months ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Setting up the Webchat integration in Botpress](#setting-up-the-webchat-integration-in-botpress)
* [Setting up the Webchat](#setting-up-the-webchat)
* [Pre-configured Script](#pre-configured-script)
* [Configurable Script](#configurable-script)
* [Configurable Script Parameters](#configurable-script-parameters)
* [Domain Whitelisting](#domain-whitelisting)
* [Customizing/Controlling the Webchat](#customizingcontrolling-the-webchat)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Usage
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Usage
See your monthly Workspace limits.
[ Suggest Edits](/edit/usage-2)
The Usage tab provides a view of the computational resources used by all of the bots in your Workspace. Having this information is useful to understand the performance of each chatbot in your Workspace and to plan for future growth. The resources are grouped by the following categories:
AI Spend
[](#ai-spend)
The AI Spend resource shows the amount that service providers charge for the consumption of tokens used to perform actions powered by AI models like generate text and retrieve answers from knowledge bases. AI Spend cost is charged at cost, meaning you pay for the exact amount of tokens used by your bot without any additional markup. You can find additional information about the token consumption of each action taken by your bot in the logs available through the emulator.
AI Spend includes a free monthly credit of 5 USD per month. You can increase this limit by following these steps:
1. Navigate to your Dashboard
2. Navigate to the Usage tab
3. Click on 'Manage spending limit'
4. Change the amount of your 'AI Spend Limit'. You will be prompted to input a credit card.
AI Spend is capped at 100 USD per month. If you plan to exceed 100 USD of AI Spend in a given calendar month, please [contact us](https://botpress.com/contact-us) to increase this limit. You can estimate your AI Spend using our [AI Spend Calculator](https://botpress.com/ai-spend-calculator).
File Storage
[](#file-storage)
The File Storage section shows the amount of storage in Megabytes (MB) used across your Workspace, as well as the maximum storage limit. Files included in this storage include photos, videos, and audio files that you've uploaded to be sent by your chatbot.
Table Rows
[](#table-rows)
The Table Row section shows the number of rows in the bot's tables and the limit. It accounts for total the number of rows in all of your [chatbot Tables](https://botpress.com/docs/cloud/studio/tables).
Vector DB Storage
[](#vector-db-storage)
The Vector Database Storage section shows the maximum storage available for Knowledge Base documents. It accounts for the total number of vectors (condensed pieces of your content) in all of your [Knowledgebase](https://botpress.com/docs/cloud/studio/knowledge-base) documents as well as searchable columns in your tables.
This value is expressed in MB for convenience, but the actual billing unit is a measure of vectorized storage, used for performing RAG (Retrieval Augmented Generation) functions on your Knowledge Base(s).
Incoming Messages & Events
[](#incoming-messages--events)
The Incoming Messages & Events section shows the number of times the chatbot has been invoked in any channel and the maximum amount of times it can be invoked before it will stop responding. It counts new conversations, conversations resumed after a [Timeout](https://botpress.com/docs/cloud/studio/chatbot-settings/#inactivity-timeout-minutes), and conversations started by [Triggers](https://botpress.com/docs/cloud/toolbox/events-triggers).
Collaborators
[](#collaborators)
Collaborators indicates the maximum amount of users that can collaborate in this Workspace. Adding or removing collaborators will increase or decrease this number in real time.
Bot Count
[](#bot-count)
Bot Count indicates the maximum number of bots this Workspace can hold. Once you reach the maximum number of bots, you can purchase additional slots, or delete any unused bots to make room for new ones.
Always Alive
[](#always-alive)
The Always Alive usage limit indicates how many remaining bots you can allocate the Always Alive status to.
What is Always Alive?
[](#what-is-always-alive)
Botpress bots are powered by remote, virtual compute instances. Every time your bot begins a conversation, for example when a Trigger is activated or a new user sends a message, Botpress spins up a new instance for that bot. This is known as a 'cold start', which refers to the initial startup process when a virtual machine (VM) or a serverless function is launched for the first time, or after it has been idle and terminated. During a cold start, the system must allocate resources, initialize the environment, load necessary code, and perform any required configuration before the instance is ready to handle requests or tasks.
Always Alive reserves an instance for your bot so that it can bypass this cold start and maintains a ready-to-use instance. The end result is that the first message sent and received from your bot are processed much faster.
Always Alive can be purchased and allocated on a per-bot basis.
Updated about 1 month ago
---
* [Table of Contents](#)
* * [AI Spend](#ai-spend)
* [File Storage](#file-storage)
* [Table Rows](#table-rows)
* [Vector DB Storage](#vector-db-storage)
* [Incoming Messages & Events](#incoming-messages--events)
* [Collaborators](#collaborators)
* [Bot Count](#bot-count)
* [Always Alive](#always-alive)
* [What is Always Alive?](#what-is-always-alive)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Webchat v1 (deprecated)
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Webchat v1 (deprecated)
[ Suggest Edits](/edit/web-chat-v1old)
Webchat v1 is still available for use on your bots but will not be receiving updates as we transition to webchat v2 for all bots.
Updated about 1 month ago
---[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Profile Setting
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Profile Setting
[ Suggest Edits](/edit/user-profile)
Update Profile
[](#update-profile)
1. Click on the profile icon in the top right corner of your botpress dashboard and click on the `Update Profile` button.
2. To change the profile image, click on the `Upload Image` button and select the image you want to upload.
3. To change the profile name, enter the new name in the `Full Name` field.
4. Click on the `Confirm` button to save the changes.
Link/Unlink Social Accounts
[](#linkunlink-social-accounts)
1. Click on the profile icon in the top right corner of your botpress dashboard and click on the `Link Social Accounts` button.
2. Click on the social media platform you want to link/unlink. (Github, Google, Microsoft, LinkedIn)
3. Enter the credentials for the social media platform.
Change Profile Password
[](#change-profile-password)
1. Click on the profile icon in the top right corner of your botpress dashboard and click on the `Change Password` button.
2. Enter the new password in the `Password` field.
3. Re-enter the new password in the `Confirm Password` field.
4. Click on the `Confirm` button.
Personal Access Tokens
[](#personal-access-tokens)
1. Click on the profile icon in the top right corner of your botpress dashboard and click on the `Personal Access Tokens` button.
2. Click on the `Generate New Token` button.
3. Enter the note for the token (Optional) and click on the `Generate Token` button.
4. Copy the token and store it in a safe place.
Updated about 1 month ago
---
* [Table of Contents](#)
* * [Update Profile](#update-profile)
* [Link/Unlink Social Accounts](#linkunlink-social-accounts)
* [Change Profile Password](#change-profile-password)
* [Personal Access Tokens](#personal-access-tokens)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Versions
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Versions
View, compare, and revert to previous versions of your bot.
[ Suggest Edits](/edit/versions-1)
Versions in Botpress help you track, manage, and control changes made to your bots.
They provide a detailed log of updates, allowing you to view past versions, compare changes, and revert to previous states if necessary. This feature is essential for collaborative bot development, ensuring transparency, accountability, and easy recovery from unintended changes.
Accessing Versions
[](#accessing-versions)
The Versions menu can be found on the left-hand menu by clicking on the icon that looks like a clock.
Creating a new Version
[](#creating-a-new-version)
Versions are created in two ways:
1. By clicking on the '+' in the Versions menu and manually creating a new Version
2. Automatically, every time you publish your bot
It's a good idea to annotate every saved Version you have and indicate any of the major changes or updates made.
Reverting to a previous Version
[](#reverting-to-a-previous-version)
From the Versions menu, you can revert to a previous version by clicking into it and restoring to a previous Version. Note that reverting to a previous version will completely overwrite your current bot, including any unsaved changes you may have made.
Botpress cannot restore lost or overwritten bot Versions.
> ## 📘
>
> Note
>
> Pay-as-you-go users have access to 3 saved Versions.
>
> Team Plan subscribers have access to 15 saved Versions.
Updated about 1 month ago
---
* [Table of Contents](#)
* * [Accessing Versions](#accessing-versions)
* [Creating a new Version](#creating-a-new-version)
* [Reverting to a previous Version](#reverting-to-a-previous-version)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Variables
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Variables
[ Suggest Edits](/edit/variables)
Botpress uses variables to store information from one place and use it in other parts of a flow. Variables help make conversations more personalized and help track information about users. They can also help connect with third-party APIs and data sources.
Variable Scopes
[](#variable-scopes)
Botpress also includes different types of variables. These Variable types differ in scope or where they can be accessed in your bot's flows.
Creating Variables in Botpress
[](#creating-variables-in-botpress)
1. Open up the Variables tab from the sidebar and click the **+** icon in the Variables section.
2. A new window will appear, allowing you to formulate a new Variable.
3. Assign a suitable scope (Workflow, Bot or User) to your Variable, select the Data Type (see below table), give it a name, and click **Add** to create the Variable.
4. (Optional) From the Additional Settings, you can also initialize your Variable with a default value.
Using Variables in Botpress
[](#using-variables-in-botpress)
Once the Variable is established, employ `{{workflow.variablename}}` or `@workflow.variablename` to render it in a send message card.
Data Types for Variables
[](#data-types-for-variables)
Botpress variables are typed, meaning they are limited in what data they can hold. Not only are these data types important to ensure the code behind Botpress runs smoothly, but these types also help AI tasks generate better results. Here are the different data types available for Botpress variables:
| Type | Description |
| ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| String | Values that are treated as text. Strings can contain any amount of letters, numbers, or special characters. Example uses: Storing a user's name, storing an AI task's generated message. |
| Boolean | Variables can be true or false, with a lowercase 't' or 'f'. Example uses: Storing if a user is a returning customer, storing whether the bot has greeted the user or not |
| Number | Variables that are numeric, either with or without decimal places. Example uses: Storing a user's phone number, storing an address's area code |
| Date | Variables that are a single date or date and time. Botpress uses ISO 8601 date/time format, such as 20220921T10:34:14 for 21 September 2023 at 10:34 AM (with 14 seconds). Example uses: Storing when the user starts a chat, storing a user's appointment date |
| Object | Variable that is a collection of key-value pairs. Useful when dealing with code and written like {key: value}. Example uses: Storing a user's profile, storing the results of an API call |
| Array | Variable that is a collection of other, similar variables. Arrays can contain strings, like \[“a”, “b”, “c”\], or Objects like \[{key:value},{key:value}\]. Example uses: Storing a user's past messages, storing options for the user to choose from |
| Enum | Variable that can be one of a set number of choices. Example uses: Storing days of the week, storing items available from a food menu |
| Pattern | Variable that uses Regular Expressions/Regex to store a special pattern. This pattern can match certain words or numbers. Example uses: Storing account numbers, storing flight numbers |
Workflow Variables
[](#workflow-variables)
Workflow Variables are created and used only within a single workflow. These variables are great for single-use or in standalone flows, such as:
1. Storing an AI Task's output
2. Saving the user's answer to a question
3. Organizing data returned from an API call
4. Saving flags or tags that track the conversation
> ## 📘
>
> Info
>
> Workflow variables are not accessible in any workflow other than the one they were created in. For example, a workflow Variable created in a separate workflow will not be accessible in **Main**.
Creating a Workflow Variable
[](#creating-a-workflow-variable)
To create a Variable in your bot's workflow, you can follow these steps:
1. Select the appropriate workflow from the Flows section in the Side Panel.
2. Click on the **+** icon in the Variables section, at the bottom of the Side Panel.
3. Give your Variable a name, pick a type and click **Add** to create the Variable. (Default scope is Workflow)
4. Once the Variable is created, you can use `{{workflow.variablename}}` or `@workflow.variablename` to display it in a send message card.
Input and Output Workflow Variables
[](#input-and-output-workflow-variables)
Workflows can have inputs and outputs to help pass information throughout the bot. This can be useful if your workflow returns information like a verified phone number, or requires information like a user id.
To mark an Input Variable
[](#to-mark-an-input-variable)
1. Go into your new workflow(not Main) and create a Variable and Click it's **Entry** node.
2. In the inspector panel, click on the Variable you want to make an input. It should get a blue border and appear in the **Entry** node.
3. When you call this workflow from another flow, there should be an input box for that Variable in the workflow's card. This will let you pass information or another Variable into that workflow.
To mark an Output Variable
[](#to-mark-an-output-variable)
1. Go into your new workflow(not Main) and create a Variable and click on the **Exit** node.
2. In the inspector panel, click on the Variable you want to make an output. It should get a blue border and appear in the **Exit** node.
3. When you call this workflow from another flow, the output Variable will be accessible by typing `{{workflow..}}`, replacing `` and `` with the name of the card that represents your workflow and Variable respectively.
User Variables
[](#user-variables)
User Variables are variables that follow a user between conversations. For example, if a user speaks with your bot on Monday and Wednesday, any user variables set on Monday will still be accessible on Wednesday. User variables are great for storing data that doesn't change very often, such as:
Storing users' personal details or id numbers
1. Collecting tags or notes from past conversations
2. Storing extra flags like **VIP customer**
3. Saving language preferences
Creating a User Variable
[](#creating-a-user-variable)
1. Open up the Variables tab and navigate to the **+** icon in the Variables section.
2. Change the scope to **User**, select the Data Type, give it a name, and click **Add** to create the Variable.
Using User Variables
[](#using-user-variables)
Once the User Variable is established, employ `{{user.variablename}}` or `@user.variablename` to render it in a send message card.
Bot Variables
[](#bot-variables)
Bot Variables can be accessed by all users of the chatbot across all conversations. They are typically used for configuration and developer information, such as:
1. Storing the endpoint for the bot's API calls
2. Saving bot's version number
3. Storing the bot's name
4. Metadata about the bot/services
Bot variables are not encrypted or stored securely. Do not save secrets like API keys or passwords in bot variables - use **configuration variables** instead!
Creating a Bot Variable
[](#creating-a-bot-variable)
1. Open up the Variables tab and navigate to the **+** icon in the Variables section.
2. Change the scope to **Bot**, select the Data Type, give it a name, and click **Add** to create the Variable.
Using Bot Variables
[](#using-bot-variables)
Bot variables can be used in text and other cards just like user variables - with either `@bot.variablename` or `{{bot.variablename}}`.
Session Variables
[](#session-variables)
Session variables are available in all flows, but only for one conversation. These variables are great for data used throughout a conversation, such as:
1. Collecting items in a virtual shopping cart for the user to order
2. Saving raw data from an API call for further processing
3. Storing chat history for that conversation
4. Saving an order number or policy number
Creating a Session Variable
[](#creating-a-session-variable)
Session variables can only be created inside of an **Execute Code** card.
To create one, simply write: `event.state.session.variablename = "Hello World"` or for short `session.variablename = "Hello World"`
To use a Session Variable in a text or other card, enclose it in double curly brackets like `{{event.state.session.variablename}}` or for short `{{session.variablename}}`
Configuration Variables
[](#configuration-variables)
Configuration variables are a special kind of secure bot Variable. They can also be managed from the Cloud Dashboard without opening the bot. Configuration variables can store secrets like:
* API Tokens
* Private IP Addresses
* Database usernames and passwords
Creating a Configuration Variable (or Environment Variable)
[](#creating-a-configuration-variable-or-environment-variable)
1. Click the Botpress icon in the upper-left corner and select **Chatbot Settings**
2. Scroll down and click on the button to add a Configuration Variable. Fill in the Variable's name and value and click **Done**.
You can use **env.key** in your code to get the value of the Configuration Variable. To use it in an Execute Code Card, you can write env.key to access its value.
Once a configuration Variable is created, you can access and manage it from the cloud admin dashboard. Just select your bot and then click on the tab for **Configuration Variables.**
Passing Variables between Flows
[](#passing-variables-between-flows)
1. In your target workflow, define an input Variable from the workflow properties window.
2. Toggle it `ON` on the `Entry node` of the target workflow.
3. Now, on the `exit` node of the parent workflow, the one that brings the user to the target workflow, match the parent workflow Variable with the target workflow input Variable.
4. Now, when you call the target workflow from the parent workflow, you will see the input Variable in the card. You can pass a value or a Variable to it.
Using Variables in Code Card
[](#using-variables-in-code-card)
Variables in code follow the pattern `variabletype.variablename`. Here's a breakdown and examples of how to use these:
1\. Assigning a Value to a Variable
[](#1-assigning-a-value-to-a-variable)
This is typically how you'd initialize a variable or change its value.
JavaScript
`workflow.orderNumber = 12345
session.cartTotal = 59.99
user.lastName = 'Smith'
bot.version = '1.2.3'
env.databaseURL = 'https://example.com/db'
`
2\. Using Variables in Conditional Statements
[](#2-using-variables-in-conditional-statements)
This checks the value of a variable and executes code accordingly.
JavaScript
`if (user.firstName === 'John') {
console.log('Hello John!')
} else {
console.log('Welcome, user!')
}
`
3\. Using Variables in Functions
[](#3-using-variables-in-functions)
Here, you might pass a variable as a function argument or use it inside a function.
JavaScript
`function greetUser(firstName) {
console.log('Hello, ' + firstName + '!')
}
greetUser(user.firstName)
`
4\. Combining Variables
[](#4-combining-variables)
You might want to combine or concatenate variables.
JavaScript
`var fullName = user.firstName + ' ' + user.lastName
//or
var welcomeMessage = 'Hello, ' + user.firstName + ' ' + user.lastName + '!'
`
5\. Checking Variable Type
[](#5-checking-variable-type)
Botpress might throw an error if types don't match, you can use type checking before assigning values.
JavaScript
`if (typeof workflow.userAcctId === 'number') {
workflow.userAcctId = 67890 // This is okay.
} else {
console.error('Invalid type for userAcctId!')
}
`
6\. Using Variables with External APIs
[](#6-using-variables-with-external-apis)
If your bot interacts with external services, you might use an environment variable like env.apiKey.
JavaScript
`` const apiKey = env.API_KEY
const apiUrl = env.API_URL
const config = {
headers: {
Authorization: `Bearer ${apiKey}`,
},
}
const response = await axios.get(apiUrl, config)
const data = response.data
// Process the data as needed
// ...
// Example: Log the response data
console.log(data)
``
Special Variables
[](#special-variables)
Botpress makes available several different variables that can be used in your bot's code. These variables are useful for debugging and for accessing information about the user and conversation.
| Path | Type | Description |
| -------------------------------------------------------------------------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| event.preview | Event | The last message sent by the user. It will be replaced every time there is a new message. |
| conversation.SummaryAgent.summary | Agent | Summary of the conversation created by the [Summary Agent](../docs/agents#summary-agent). It's an explanation of what happened. |
| conversation.SummaryAgent.transcript | Agent | Transcript of the conversation going back a certain amount of turns. |
| turn.KnowledgeAgent.answer | Agent | The answer provided by the [Knowledge Agent](../docs/agents#knowledge-agent) |
| turn.KnowledgeAgent.responded | Agent | Wether the Knowledge Agent has responded automatically to a user question. Its value will be true or false |
| turn.KnowledgeAgent?.answer?.length | Agent | The amount of characters in the Knowledge answer. Use this in an [Expression](../docs/transition#expression) to check if there is an answer in the KB. Optionally add ! to start of the code in order to check if there was NOT an answer. |
| turn.KnowledgeAgent.citations | Agent | A list of citations for the Knowledge answer. |
| user.TranslatorAgent.language | Agent | The current user language code in ISO 639-1 format. [More about the Translator Agent](../docs/agents#translator-agen) |
| user.TranslatorAgent.language = 'en' | Agent | This code snippet set's the user language to English. Replace with any language code in the ISO 639-1 format |
| event.kb.results.map((a) => a.dsFriendlyName + '\\n' + a.content).join('\\n\\n') | Event | This code snippet returns the raw content that generated the final Knowledge answer. |
| event.tags.conversation\['whatsapp:userPhone'\] | Integration | The user's phone number on WhatsApp. Includes the international code. |
| event.tags.conversation\['whatsapp:phoneNumberId'\] | Integration | The phone number Id of the bot on WhatsApp. |
Updated 4 months ago
---
* [Table of Contents](#)
* * [Variable Scopes](#variable-scopes)
* [Creating Variables in Botpress](#creating-variables-in-botpress)
* [Using Variables in Botpress](#using-variables-in-botpress)
* [Data Types for Variables](#data-types-for-variables)
* [Workflow Variables](#workflow-variables)
* [Creating a Workflow Variable](#creating-a-workflow-variable)
* [Input and Output Workflow Variables](#input-and-output-workflow-variables)
* [User Variables](#user-variables)
* [Creating a User Variable](#creating-a-user-variable)
* [Using User Variables](#using-user-variables)
* [Bot Variables](#bot-variables)
* [Creating a Bot Variable](#creating-a-bot-variable)
* [Using Bot Variables](#using-bot-variables)
* [Session Variables](#session-variables)
* [Creating a Session Variable](#creating-a-session-variable)
* [Configuration Variables](#configuration-variables)
* [Creating a Configuration Variable (or Environment Variable)](#creating-a-configuration-variable-or-environment-variable)
* [Passing Variables between Flows](#passing-variables-between-flows)
* [Using Variables in Code Card](#using-variables-in-code-card)
* [1\. Assigning a Value to a Variable](#1-assigning-a-value-to-a-variable)
* [2\. Using Variables in Conditional Statements](#2-using-variables-in-conditional-statements)
* [3\. Using Varia
Conditional Statements](#2-using-variables-in-conditional-statements)
* [3\. Using Variables in Functions](#3-using-variables-in-functions)
* [4\. Combining Variables](#4-combining-variables)
* [5\. Checking Variable Type](#5-checking-variable-type)
* [6\. Using Variables with External APIs](#6-using-variables-with-external-apis)
* [Special Variables](#special-variables)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Vonage
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Vonage
[ Suggest Edits](/edit/vonage)

Prerequisites
[](#prerequisites)
* A [Vonage Account](https://dashboard.nexmo.com/sign-up)
* A [Vonage Application](https://dashboard.nexmo.com/applications/new)
* A [Botpress Cloud account](https://sso.botpress.cloud) and a [Botpress Bot](https://botpress.com/docs/cloud/getting-started/create-and-publish-your-chatbot/)
Setting up the Vonage integration in Botpress
[](#setting-up-the-vonage-integration-in-botpress)
1. Go to the [Integration Hub](https://app.botpress.cloud/hub) in Botpress Cloud (if you don't have the integration installed yet).
2. Find and open the Vonage integration then click on the "Install to Bot" button, now go back to your bot.
Setting up Vonage
[](#setting-up-vonage)
API credentials
[](#api-credentials)
1. Go to your [API Settings](https://dashboard.nexmo.com/settings).
2. Copy paste the API key to the **API Key** channel configuration
3. Copy paste the API secret from the **Account credentials** section to the **API Secret** channel configuration
4. Copy paste the signature secret from the **Signed webhooks** section to the **Signature Secret** channel configuration
Save Configuration
[](#save-configuration)
Channel configuration is complete, you can now click **Save**
Webhook Configuration
[](#webhook-configuration)
Sandbox
[](#sandbox)
You can use the Vonage sandbox to test you channel with WhatsApp
1. Check the **Use Testing API** box in your channel configuration
2. Go to your [Sandbox Settings](https://dashboard.nexmo.com/messages/sandbox)
3. Copy paste the webhook url provided in the channel configuration UI to the **Inbound** and **Status** fields in the **Webhooks** section
That's it, you may now start chatting with your bot on Vonage!
Updated 4 months ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Setting up the Vonage integration in Botpress](#setting-up-the-vonage-integration-in-botpress)
* [Setting up Vonage](#setting-up-vonage)
* [API credentials](#api-credentials)
* [Save Configuration](#save-configuration)
* [Webhook Configuration](#webhook-configuration)
* [Sandbox](#sandbox)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Usage
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Usage
Documentation and resources for available integrations.
[ Suggest Edits](/edit/using-integrations)
This section lists resources and documentation for the available integrations in the Botpress Studio.
Navigate to the integration you'd like to learn more about using the navigation in the sidebar.
Updated about 1 month ago
---[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Viber
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Viber
[ Suggest Edits](/edit/viber)

Prerequisites
[](#prerequisites)
* A [Viber account](https://www.viber.com/)
* A [Botpress Cloud account](https://sso.botpress.cloud) and a [Botpress Bot](https://botpress.com/docs/cloud/getting-started/create-and-publish-your-chatbot/)
Setting up the Viber integration in Botpress
[](#setting-up-the-viber-integration-in-botpress)
1. Go to the [Integration Hub](https://app.botpress.cloud/hub) in Botpress Cloud (if you don't have the integration installed yet).
2. Find and open the Viber integration then click on the "Install to Bot" button, now go back to your bot.
The Viber integration has the following settings:
* **Enabled**: Whether Botpress will communicate with Viber.
* **Webhook URL**: The URL for receiving data in Botpress. (You shall not be using it)
* **Auth Token**: The authentication token of your Viber bot.
* **Bot Name**: The name of your Viber bot.
* **Bot Avatar URL**: The URL of the avatar of your Viber bot.
Setting up Viber
[](#setting-up-viber)
1. Visit the [Viber Admin panel](https://partners.viber.com/login/) and click on **Create a Bot Account**.
2. Fill in the required details. Bot Avatar, Account Name, URI, Category, Subcategory, Language, Account Description, Email Address and Location.
3. Copy the Authentication Token and paste it in the integration settings page in Botpress.
4. Add a Bot Name (required) and a Bot Avatar URL (optional).
5. Click **Save**.
That's it, you may now start chatting with your bot on Viber!
Updated 4 months ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Setting up the Viber integration in Botpress](#setting-up-the-viber-integration-in-botpress)
* [Setting up Viber](#setting-up-viber)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Tables
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Tables
[ Suggest Edits](/edit/tables)
Tables are an essential feature in the explorer, functioning as a local database within your chatbot's environment. They provide structured storage for various types of data that can be accessed and manipulated as required within your workflows.
They are particularly useful for storing information that needs to be persisted across multiple sessions, such as user profiles, transaction histories, and other types of data that need to be retrieved and updated over time.
> ## 📘
>
> Note
>
> You can create up to **10 tables** with **20 columns** and **10,000 rows** in the **Free Plan**. [Get in touch](https://botpress.com/contact-us) if you want to increase the limits. However, the 20 columns per table is a hard limit that can't be increased.
Creating a Table
[](#creating-a-table)
To add a new table, go to the explorer menu and select `Add Table`. You can then give your table a name and add fields to it. Each field has a name and a type. The type determines the kind of data that can be stored in the field. For example, a field with the type `String` can store any text value, while a field with the type `Number` can only store numeric values.
Making Fields Searchable
[](#making-fields-searchable)
You can make a field searchable by checking the `Searchable` checkbox. This will allow you to search for records based on the values in the field. For example, if you have a field called `Name` and you make it searchable, you can search for records based on the name of the person. This is only available for fields with the type `String`.
Types of Fields (Columns)
[](#types-of-fields-columns)
There are several types of fields you can add to a table. Each field type has a specific purpose and can only store certain types of data. These are the field types you can choose from: `String`, `Number`, `Boolean`, `Date`, and `Object`.
> ## 🚧
>
> Warning
>
> The number of columns has a hard limit of **20 columns** per table.
Filtering Records
[](#filtering-records)
Table filters are a powerful feature that allows you to refine and display only the records that meet certain criteria. Filters can be based on specific conditions, such as date ranges, text matches, and numerical comparisons.
Logical Operators
[](#logical-operators)
* **AND**: Use the AND operator when you want all conditions to be true for a record to be displayed. For example, filtering by `createdAt` AND `status` will only show records that match both conditions.
* **OR**: Use the OR operator to display records that match any one of multiple conditions. For example, filtering by `createdAt` OR `updatedAt` will show records that match either one of the conditions.
Types of Rules
[](#types-of-rules)
Rules define the individual conditions applied to each column of data.
* `is equal to`: Shows records where the field is equal to the specified value.
* `is not equal to`: Shows records where the field is not equal to the specified value.
* `less than`: Shows records where the field is less than the specified value.
* `less than or equal to`: Shows records where the field is less than or equal to the specified value.
* `greater than`: Shows records where the field is greater than the specified value.
* `greater than or equal to`: Shows records where the field is greater than or equal to the specified value.
* `in`: Shows records where the field matches any of the specified values.
* `not in`: Shows records where the field does not match any of the specified values.
* `is null`: Shows records where the field is empty.
* `is not null`: Shows records where the field is not empty.
Rule Groups
[](#rule-groups)
* **Group**: A group is a collection of rules combined by a logical operator (AND/OR). You can nest groups to create complex filters.
Creating a Filter
[](#creating-a-filter)
1. Click on the `Filter` button to expand the filter menu.
2. Select a logical operator (AND/OR) from the dropdown.
3. Choose a field to filter by (e.g., `createdAt`).
4. Select a rule (e.g., `is equal to`).
5. Enter the required value or select from a calendar if it's a date field.
6. To add another rule within the same logical condition, click the `+ Rule` button.
7. To create a nested group of conditions, click the `+ Group` button.
8. Apply the filter by clicking the `Apply filter` button.
Manually Editing Filters
[](#manually-editing-filters)
Click on **Edit Manually** to view and edit the filter in JSON format. You can then copy this JSON filter and use it in your table operations via code.
Operations on Tables - via the Interface
[](#operations-on-tables---via-the-interface)
Add records to a table
[](#add-records-to-a-table)
Once you've created a table, you can add records to it. To do this, click on the table in the explorer menu. You'll then see a list of all the records in the table. Click on the `Add Record` button to add a new record. You can then enter the values for each field in the record.
Update records in a table
[](#update-records-in-a-table)
Double click on a a table cell or press click it and press `Enter` to see an input that allows you to change the cell value. Once you are done, press `Enter` again or click away to save the new value.
Delete records from a table
[](#delete-records-from-a-table)
`Right Click` on the Record and select `Delete Record` to delete a record from a table.
Operations on Tables - via Cards
[](#operations-on-tables---via-cards)
Check out the [Table Cards documentation](../docs/table-cards) to learn more about operations with cards.
Operations on Tables - via Botpress Client
[](#operations-on-tables---via-botpress-client)
You can also interact with tables using the Botpress Client. Here are some of the functions you can use to interact with tables:
listTables
[](#listtables)
To list all the tables in the bot, use the `listTables` function. This function will return an array of all the tables in the bot.
JavaScript
`try {
const tables = await client.listTables({})
console.log('Tables:', tables)
} catch (err) {
console.error('Error fetching tables', err)
}
`
Create Table Rows
[](#create-table-rows)
Execute the following query to create one or multiple rows. The response will include the inserted rows, along with any encountered errors or warnings during the operation (e.g., unrecognized fields)
JavaScript
`const { rows, errors, warnings } = await client.createTableRows({
table: 'Data1Table',
rows: [
{
name: 'test'
}
]
})
`
Find & Filter Table Rows
[](#find--filter-table-rows)
To find and filter rows in a table, use the `findTableRows` function. You can specify the limit (number of records to return) and the offset (number of rows to start from).
JavaScript
`const { rows, limit, offset, count } = await client.findTableRows({
table: 'Data1Table',
limit: 50,
offset: 0,
filter: {},
orderBy: 'row_id',
orderDirection: 'asc'
})
`
Utilize filters to conduct more refined queries for specific rows, employing a MongoDB-like syntax. The query builder aids in understanding available operations and constructing the filter.
JavaScript
`const { rows, limit, offset, count } = await client.findTableRows({
table: 'Data1Table',
filter: {
// Retrieve rows where date is greater than a specific date
updatedAt: { gte: '2024-01-01' },
// Or more complex conditions, such as name starting with 'a' or 'b', or 'isActive' being true
$or: [{ name: { $regex: '^a' } }, { name: { $regex: '^b' } }, { isActive: true }]
}
})
`
The "search" property allows for a partial text search across the table. The query returns multiple results, each accompanied by a similarity score to indicate relevance.
JavaScript
`const { rows, limit, offset, count } = await client.findTableRows({
table: 'Data1Table',
search: 'John Doe'
})
`
Projection & Aggregation
[](#projection--aggregation)
Employ the group property for projections and aggregations. The following example demonstrates returning a single row with requested data.
JavaScript
`const { rows } = await client.findTableRows({
table: 'Data1Table',
group: {
id: 'count',
name: ['unique', 'count'], // will return a list of unique values & the total count
updatedAt: ['min', 'max'] // Retrieves the earliest and latest date
}
})
// Output variables are named after the field, suffixed with the operation
const oldestChange = rows[0].updatedAtMin
const mostRecentChange = rows[0].updatedAtMax
const count = rows[0]['nameCount']
const uniqueValues = rows[0]['nameUnique']
`
| Column | Type | Key | Count | Sum | Avg | Max | Min | Unique |
| --------- | ------ | --- | ----- | --- | --- | --- | --- | ------ |
| id | number | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| createdAt | date | ✔️ | ✔️ | ✔️ | ✔️ | | | |
| updatedAt | date | ✔️ | ✔️ | ✔️ | ✔️ | | | |
| name | string | ✔️ | ✔️ | ✔️ | ✔️ | | | |
**Key**: Projections are grouped by keys (ex: date)
**Count**: Returns the total number of non-null values
**sum**: Returns the sum of all values
**Avg**: Returns the average of all values
**Max**: Returns the maximum value
**Min**: Returns the minimum value
**Unique**: Returns a list of unique values
Providing one or multiple keys yields more specific results.
JavaScript
`const { rows } = await client.findTableRows({
table: 'Data1Table',
group: {
someField: 'key', // Either provide a single operation
someNumber: ['avg', 'sum'] // Or multiple operations
}
})
// Returns multiple rows for each unique combination of keys
const result = rows.map((row) => {
const { someFieldKey, someNumberAvg, someNumberSum } = row
})
`
Update Table Rows
[](#update-table-rows)
This operation updates rows based solely on their numeric IDs.
JavaScript
`const { rows, errors, warnings } = await client.updateTableRows({
table: 'Data1Table',
rows: [
{
id: 1,
name: 'test'
}
]
})
`
Delete Table Rows
[](#delete-table-rows)
Rows can be deleted from a table in three distinct manners, each mutually exclusive.
By specifying row IDs
By applying a filter
By removing all rows
JavaScript
`const { deletedRows } = await client.deleteTableRows({
table: 'Data1Table',
// Specify a list of IDs
ids: [1, 2, 3],
// Or use a filter (caution: all rows matching the filter will be deleted. It's advisable to first test with the findTableRows query)
filter: { name: 'John Doe' },
// Deletes every row within this table, irreversible action
deleteAllRows: true
})
`
Upsert Table Rows
[](#upsert-table-rows)
The upsert operation is a combination of insert and update, allowing you to insert new rows or update existing ones. The operation is based on the row's ID.
**keyColumn**: The column used to identify the row. This column must be unique. Failure occurs if more than one row is found for the same key.
JavaScript
`const { rows, inserted, updated, errors, warnings } = await client.upsertTableRows({
table: 'Data1Table',
keyColumn: 'id',
rows: [
{
name: 'test'
}
]
})
`
Create Table
[](#create-table)
To create a table, simply provide a name and a schema. The naming convention follows the same rules as those applied within the studio. Initially, the schema can be empty and populated or modified later. The schema accepts either an example object, from which it will infer the structure, or a directly provided JSON schema.
JavaScript
`const { table } = await client.createTable({
name: 'Data1Table',
schema: {
name: 'test'
}
})
`
Example using a JSON schema. A field marked as 'searchable' will be indexed, enhancing its availability for search queries. Note, 'index' is a system-managed, read-only attribute.
JavaScript
`const { table } = await client.createTable({
name: 'Data1Table',
schema: {
type: 'object',
'x-zui': {},
properties: {
name: {
type: 'string',
'x-zui': {
index: 0,
searchable: true
},
nullable: true
}
},
additionalProperties: true
}
})
`
Update Table
[](#update-table)
You can update a table's name, schema, or both. Providing only one of these attributes is also permissible. Should you alter the type of an existing column, be advised that all its entries will default to NULL.
Adding a new field
[](#adding-a-new-field)
JavaScript
`const { table } = await client.updateTable({
table: 'Data1Table',
schema: {
myNewField: 'abc', // Direct value assignment
// Or specify with a JSON schema
myNewField: { type: 'string' }
}
})
`
Removing an existing field:
[](#removing-an-existing-field)
JavaScript
`const { table } = await client.updateTable({
table: 'Data1Table',
schema: {
myOldField: null // Field removal
}
})
`
Renaming the table:
[](#renaming-the-table)
JavaScript
`await client.updateTable({ table: 'Data1Table', name: 'myNewTable' })
`
Rename Table Column:
[](#rename-table-column)
To rename a table column, specify both the current and new names. The column's data type and attributes will remain unchanged.
JavaScript
`const { table } = await client.renameTableColumn({
table: 'Data1Table',
name: 'My Old Column Name',
newName: 'New Column Name'
})
`
Get Table
[](#get-table)
To retrieve a table's schema, use the `getTable` function. This will return the table's name and schema.
JavaScript
`const { table } = await client.getTable({ table: 'Data1Table' })
`
Delete Table
[](#delete-table)
To delete a table, use the `deleteTable` function. This will permanently remove the table and all its records.
JavaScript
`const { table } = await client.deleteTable({ table: 'Data1Table' })
`
Operations on Tables - via Code
[](#operations-on-tables---via-code)

createRecord
[](#createrecord)
To create a new record in a table, use the `createRecord` function. You can specify the values for each field in the record. This function can be particularly useful when you need to store new information, such as a new user's details or a newly completed transaction.
JavaScript
`// Create a record in the table
await Data1Table.createRecord({ Age: 25, Name: 'Tom', Occupation: 'Student' })
`
createRecords
[](#createrecords)
To create multiple records in a table, use the `createRecords` function. You can specify the values for each field in the record. Useful for creating multiple records at once.
Javascript
`// Creating two records in the table
await Data1Table.createRecords([
{ Name: 'Tom', Age: 25, Occupation: 'Student', 'Is Friendly': true },
{ Name: 'Didier', Age: 54, Occupation: 'Pilot', 'Is Friendly': true },
])
`
deleteRecord
[](#deleterecord)
To delete a record in a table, use the `deleteRecord` function. You need to specify the record ID of the record you want to delete.
JavaScript
`// Delete a record in the table at record ID 7
await Data1Table.deleteRecord(7)
`
deleteRecords
[](#deleterecords)
To delete multiple records in a table, use the `deleteRecords` function. You need to specify the record IDs of the records you want to delete in an array.
Javascript
` // Delete records in the table at record IDs 7, 8, 9
await Data1Table.deleteRecords([7, 8, 9])
`
findRecords
[](#findrecords)
To find records in a table, use the `findRecords` function. You can add filters, just query everything or search using semantic search (like a Google Search!).
Basic usage and pagination
[](#basic-usage-and-pagination)
To retrieve data from a table in Botpress, you can use the `findRecords` function. This function allows you to specify the limit (number of records to return) and the offset (number of rows to start from).
For instance, if you want the first 10 records, you can set the limit to 10 and the offset to 0\. To fetch the next 10 records, you can set the limit to 10 and the offset to 10.
To determine if there are more records available, you can check the length of the array returned. If the length is greater than 0, it indicates the presence of additional records.
Here's an example:
JavaScript
`` const limit = 10
const startRow = 0
workflow.records = await DataTable1.findRecords({
limit,
offset: startRow,
})
// Checking the second page
const secondPage = await Data1Table.findRecords({
limit,
filter: AI`everything`,
offset: startRow + limit,
})
workflow.hasNextPage = secondPage.length > 0 // This flag can be consumed in your bot flow to handle pagination
``
You can apply a similar approach to determine if there are previous pages as well.
Searching fields with natural language
[](#searching-fields-with-natural-language)
To perform a traditional search, use the search parameter when calling the DataTable1.findRecords() function in Botpress. Here is an example:
JavaScript
`workflow.records = await DataTable1.findRecords({ search: 'red velvet chairs' })
`
You can pass variables like event.preview to the search parameter to search for user input or any other variable. This allows you to preprocess the user's input before performing the search.
Filtering results
[](#filtering-results)
You can filter results using filters. Similar to MongoDB, this code provides methods to filter results. The filtering mechanism can be divided into two main categories: Primitive and Logical.
Don't want to deal with code? Skip to the [next section](#using-ai-to-generate-filters) for AI generated filters.
**Primitive Filter**
[](#primitive-filter)
Primitive filters are easy and simple to use, allowing you to match the exact values you are looking for. Here are some of the primitives you can use:
* `$eq`: Matches values that are equal to a specified value.
`{ "name": { "$eq": "John" } }
`
* `$gt`: Matches values that are greater than a specified value.
`{ "age": { "$gt": 20 } }
`
* `$gte`: Matches values that are greater than or equal to a specified value.
`{ "age": { "$gte": 20 } }
`
* `$lt`: Matches values that are less than a specified value.
`{ "age": { "$lt": 20 } }
`
* `$lte`: Matches values that are less than or equal to a specified value.
`{ "age": { "$lte": 20 } }
`
* `$ne`: Matches all values that are not equal to a specified value.
`{ "name": { "$ne": "John" } }
`
* `$in`: Matches any of the values specified in an array.
`{ "name": { "$in": ["Alice", "Bob", "John"] } }
`
* `$nin`: Matches none of the values specified in an array.
`{ "name": { "$nin": ["Alice", "Bob", "John"] } }
`
* `$exists`: Matches documents that have the specified field.
`{ "name": { "$exists": true } }
`
* `$mod`: Performs modulo operation on the value of field and matches documents where field % divisor equals the specified remainder.
`{ "qty": { "$mod": [4, 0] } }
`
* `$size`: Matches any document where an array field contains a specified number of elements.
`{ "tags": { "$size": 3 } }
`
* `$regex`: Provides regular expression capabilities for pattern matching strings in queries. It uses a placeholder to prevent SQL injections.
`{ "name": { "$regex": "[a-z]" } }
`
* `$options`: Modifies the `$regex` operator to enable options. Currently, there are two options, 'i' for case insensitive and 'c' for case sensitive.
`{ "name": { "$regex": "[a-z]", "$options": 'i' } } // case insensitive
{ "name": { "$regex": "[a-z]", "$options": 'c' } } // case sensitive
`
**Logical Filter**
[](#logical-filter)
Logical operators allow you to connect more filtering clauses.
* `$and`: Joins query clauses with a logical AND. Returns all documents that match the conditions of both clauses.
`{ "$and": [{ "price": { "$ne": 1.99 } }, { "price": { "$exists": true } }] }
`
* `$or`: Joins query clauses with a logical OR. Returns all documents that match the conditions of either clause.
`{ "$or": [{ "price": { "$eq": 1.99 } }, { "price": { "$exists": false } }] }
`
* `$not`: Inverts the effect of a query expression and returns documents that do not match the query expression.
`{ "$not": { "price": { "$eq": 1.99 } } }
`
Please note that these filters and operators can be used together to create complex queries to exactly fit your needs. You can also nest filters like so :
JavaScript
`{
"$and": [
{ "price": { "$lte": 19.99 }},
{ "$or": [
{"category": { "$eq": "Shoes" }},
{"category": { "$eq": "Hats"}}
]
}
]
}
`
Using AI to generate filters
[](#using-ai-to-generate-filters)
Thankfully, Botpress comes with artificial intelligence (AI) capabilities when it comes to filtering records. This means you can provide a human-like query, and the AI will intelligently decipher it and create the right filters for your query.
This can significantly simplify the construction of complex queries and reduce the likelihood of human errors in the process.
JavaScript
`` const leads = await LeadsTable.findRecords({
filter: AI`works either at ${workflow.company} OR is not in IT`,
limit: 10,
offset: 0,
})
``
The query is written inside the backticks (\`) that come after \`filter: AI\`. The AI expects a query string, and that's why backticks are used.
Re-using filters (selectors)
[](#re-using-filters-selectors)
Selectors are filters that you can re-use. They don't have to be written again and again.
For example, you might use the query selector "People with age greater than 18" to find all users who are above 18.
1. Create a query selector in the table and give it a name. (e.g. adults)
2. Add query as `People with age greater than 18`
3. use below code to find records and save it in a variable called `adults`
JavaScript
`// Find records in the table
const data = await Data1Table.findRecords({ selectorName: 'adults' })
workflow.adults = data
`
Difference between search and AI filters
[](#difference-between-search-and-ai-filters)
A standard `Search` in Botpress is employed to identify specific strings like a user's name. It gives precision-based results by matching specific sets of characters.
On the other hand, an `AI Filter` broadens the scope and is used primarily for filtering results rather than explicitly searching them. It helps you track down users based on certain criteria, such as age above 25.
Although the AI Filter is not primarily designed for exact string hunting, it's flexible enough to allow it. For instance, you could use it to filter results for `Canada` as a country.
getRecord
[](#getrecord)
You can use the `getRecord` function to retrieve a specific record from a table based on a unique identifier. For example, you might use the `getRecord` function to retrieve a user's profile information based on their unique user ID.
Javascript
`// 1 is the record ID and User is the variable name
workflow.User = data
`
updateRecord
[](#updaterecord)
You can use the `updateRecord` function to modify a specific record in a table. This will be useful when you need to update a specific field in the record. For example, you might use this function to update a user's profile information or to update the status of a transaction.
JavaScript
`// Update at record ID 8's Age to 45
await Data1Table.updateRecord(8, { Age: 45 })
`
upsertRecords
[](#upsertrecords)
The `upsertRecords` function allows you to update or create records in a table in a single operation. It is useful for any situation where you need to update or insert data into a table without having to worry about whether the rows already exist.
**Example:**
JavaScript
`// Update the name and address of the records with IDs 1 and 2.
await CustomersTable.upsertRecords('id', [
{ id: 1, name: 'John Doe', address: '123 Main Street' },
{ id: 2, name: 'Jane Doe', address: '456 Elm Street' },
])
`
This code will upsert the records into the CustomersTable. If the records with IDs 1 and 2 already exist in the table, the function will update the existing rows with the new name and address values. If the records with IDs 1 and 2 don't already exist in the table, the function will insert new rows into the table with the new name and address values.
Computed Columns
[](#computed-columns)
Columns can be marked as "Computed" which allows the bot builder to observe changes in tables and generate computed values. This includes leveraging AI, as well as running code. This can be useful for a wide variety of use cases such as CRM enrichment, sentiment analysis, classification.
To use computed columns, simply create a column and toggle the **Computed** field as shown below.

Selecting the basis of computation
[](#selecting-the-basis-of-computation)
To compute columns, you must select what information you will base your computed columns on. To do so, click the **Dependencies** field and select all column names that you will use.

In the above example, we selected a column called **number**.
AI-based computed columns
[](#ai-based-computed-columns)
You can perform AI text generation tasks by filling the prompt and including rows like this {{propertyName}}.
`Come up with the title for a story like the three little pigs for the number {{number}}
`
In the above example, for the number 3, you might get "The Three Clever Squirrels" as a value in the cell.
Code-based computed columns
[](#code-based-computed-columns)
To run arbitrary code, select the **Execute code** tab. Then, click **Edit Code**.

You will see a window with a code editor.

Simply add your code above. The proper syntax for accessing columns you've identified as dependencies is row\[propertyName\], and what is displayed as the cell value is what is returned by this function. You can call asynchronous functions within the function, and have the **axios** library available to perform HTTP requests.
For instance, the following code will return the fibonacci number of the row value for the column **number**.
js
`function fibonacci(n) {
if (n <= 1) {
return n
}
return fibonacci(n - 1) + fibonacci(n - 2)
}
if (!row.number) {
return 0;
}
return fibonacci(row.number)
`
There is currently an execution timeout of 2 minutes these.
Updating computed values
[](#updating-computed-values)
To ensure computed values are always kept up to date, we recommend **Auto-compute** be toggled on.

If you do not have **Auto-compute** enabled, a grey icon will appear next to stale table cells.

To update the stale data, simply re-activate **Auto-compute**.
Importing and Exporting
[](#importing-and-exporting)
Import a Table
[](#import-a-table)
You can import a table from a CSV file. Click on the `Import Table` button above the table and select the CSV file you want to import. Botpress will automatically detect the column names and types from the CSV file and create the table structure for you.
Export a Table
[](#export-a-table)
Click on the `Export Table` button to export the table. This will download the table as a CSV file to your computer.
> ## 🚧
>
> Reminder
>
> Don't edit the CSV file directly to avoid data loss and import errors. Instead, make the changes in Botpress Studio and then export the updated table again.
> ## 📘
>
> Note
>
> When you export a bot the tables are exported as well so there is no need to export them separately unless you want to use them in another bot.
Updated 26 days ago
---
* [Table of Contents](#)
* * [Creating a Table](#creating-a-table)
* [Making Fields Searchable](#making-fields-searchable)
* [Types of Fields (Columns)](#types-of-fields-columns)
* [Filtering Records](#filtering-records)
* [Logical Operators](#logical-operators)
* [Types of Rules](#types-of-rules)
* [Rule Groups](#rule-groups)
* [Creating a Filter](#creating-a-filter)
* [Manually Editing Filters](#manually-editing-filters)
* [Operations on Tables - via the Interface](#operations-on-tables---via-the-interface)
* [Add records to a table](#add-records-to-a-table)
* [Update records in a table](#update-records-in-a-table)
* [Delete records from a table](#delete-records-from-a-table)
* [Operations on Tables - via Cards](#operations-on-tables---via-cards)
* [Operations on Tables - via Botpress Client](#operations-on-tables---via-botpress-client)
* [listTables](#listtables)
* [Create Table Rows](#create-table-rows)
* [Find & Filter Table Rows](#find--filter-table-rows)
* [Projection & Aggregation](#projection--aggregation)
* [Update Table Rows](#update-table-rows)
* [Delete Table Rows](#delete-table-rows)
* [Upsert Table Rows](#upsert-table-rows)
* [Create Table](#create-table)
* [Update Table](#update-table)
* [Get Table](#get-table)
* [Delet
* [Update Table](#update-table)
* [Get Table](#get-table)
* [Delete Table](#delete-table)
* [Operations on Tables - via Code](#operations-on-tables---via-code)
* [createRecord](#createrecord)
* [createRecords](#createrecords)
* [deleteRecord](#deleterecord)
* [deleteRecords](#deleterecords)
* [findRecords](#findrecords)
* [getRecord](#getrecord)
* [updateRecord](#updaterecord)
* [upsertRecords](#upsertrecords)
* [Computed Columns](#computed-columns)
* [Selecting the basis of computation](#selecting-the-basis-of-computation)
* [AI-based computed columns](#ai-based-computed-columns)
* [Code-based computed columns](#code-based-computed-columns)
* [Updating computed values](#updating-computed-values)
* [Importing and Exporting](#importing-and-exporting)
* [Import a Table](#import-a-table)
* [Export a Table](#export-a-table)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Studio Preferences
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Studio Preferences
[ Suggest Edits](/edit/studio-preferences)

Workflow - Snap to Grid
[](#workflow---snap-to-grid)
The Snap to Grid feature in Botpress allows you to align nodes and connectors on the grid(flow-editor/canvas), making it easier to organize and visualize the flow of your chatbot.
Enabled
[](#enabled)
To enable Snap to Grid, follow these steps:
1. Open the Botpress Studio and navigate to the Botpress Icon (top-left)
2. Go to **Studio Preferences** \-> Check the box -> **Workflow - Snap to Grid**.
Once Snap to Grid is enabled, the nodes and connectors will automatically align to the nearest grid lines when they are moved.
Note that the Snap to Grid feature is optional and can be disabled at any time by unchecking the **Snap to Grid** box in the settings menu.
Disabled
[](#disabled)
When the **Snap to Grid** feature is turned off, the workflow editor allows for more free-form movement of nodes and connections. Nodes and connections can be dragged and placed anywhere on the canvas, without being automatically aligned to the grid.
This can be useful for creating more complex and visually dynamic workflows that don't conform to a strict grid layout.
However, it can also make it more difficult to align nodes and connections precisely, which may be necessary for ensuring the logical flow of the conversation.
Studio Theme
[](#studio-theme)
The Studio Theme feature allows you to change the color scheme of the Botpress Studio interface. This can be useful for customizing the look and feel of your chatbot, or for making it easier to distinguish between different bots in your workspace.
Available themes include:
1. System (default)
2. Light
3. Dark
Updated 4 months ago
---
* [Table of Contents](#)
* * [Workflow - Snap to Grid](#workflow---snap-to-grid)
* [Enabled](#enabled)
* [Disabled](#disabled)
* [Studio Theme](#studio-theme)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Streaming Analytics
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Streaming Analytics
[ Suggest Edits](/edit/streaming-analytics-from-within-your-bot-with-hooks)
The Botpress Cloud dashboard provides you with an Analytics page with counters for the total number of users, new users, returning users, sessions and messages. It also shows a chart with the data and allows you to filter by date range.
While this interface is great for understanding reach and engagement in a glance, you may need more in-depth data about user behavior and the paths they take when interacting with the bot, and you may need to have this data streamed to a third-party service like Hotjar, Segment or Amplitude. Luckily, you can use the Hooks feature to do just that!.
In this tutorial we are going to use Mixpanel as an example, but you can use any service that has a REST API and an endpoint to receive events.
Setting up Mixpanel
[](#setting-up-mixpanel)
1. Create an account and a project in [Mixpanel](https://mixpanel.com/).
2. Go to your project settings and copy the Project Token.
Setting up the Hooks
[](#setting-up-the-hooks)
1. Open Botpress Studio, go to the Hooks tab and click on the `+` button next to **Before Incoming Message** to create a new hook.
2. Name it `send-user-analytics` for example
3. Add the following Javascript code:
JavaScript
`` const userAnalyticsData = {
time: event.createdOn.getTime(), // Mixpanel event datetime
$insert_id: event.id, // Mixpanel unique event
distinct_id: event.userId, // Mixpanel preventing duplicates
bot_id: event.botId,
conversation_id: event.conversationId,
payload: event.payload,
text: event.preview,
current_flow: event.state.context.currentFlow,
current_node: event.state.context.currentNode,
current_card: event.state.context.currentCard,
}
const projectToken = ''
await axios.post(
'https://api.mixpanel.com/import',
[
{
event: 'Inbound Message',
properties: userAnalyticsData,
},
],
{
headers: {
Authorization: `Basic ${btoa(projectToken + ':')}`,
},
}
)
``
1. Click on the `+` button next to **Before Outgoing Message** to create a new hook.
2. Name it `send-bot-analytics` for example
3. Add the following Javascript code:
JavaScript
`` const botAnalyticsData = {
time: outgoingEvent.createdOn.getTime(), // Mixpanel event datetime
$insert_id: outgoingEvent.id, // Mixpanel unique event
distinct_id: outgoingEvent.userId, // Mixpanel preventing duplicates
bot_id: outgoingEvent.botId,
conversation_id: outgoingEvent.conversationId,
payload: outgoingEvent.payload,
text: outgoingEvent.preview,
current_flow: outgoingEvent.state.context.currentFlow,
current_node: outgoingEvent.state.context.currentNode,
current_card: outgoingEvent.state.context.currentCard,
}
const projectToken = ''
await axios.post(
'https://api.mixpanel.com/import',
[
{
event: 'Outbound Message',
properties: botAnalyticsData,
},
],
{
headers: {
Authorization: `Basic ${btoa(projectToken + ':')}`,
},
}
)
``
> ## 📘
>
> Note
>
> Now every time a user or the bot sends a message, Mixpanel will be notified with the event data. You can use this data to create funnels, analyze user behavior and understand the paths they take when interacting with the bot.
Updated 24 days ago
---
* [Table of Contents](#)
* * [Setting up Mixpanel](#setting-up-mixpanel)
* [Setting up the Hooks](#setting-up-the-hooks)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Trello
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Trello
Trello Integration
[ Suggest Edits](/edit/trello)

This integration allows you to connect your Botpress chatbot with Trello, a leading project management platform. With this integration, you can easily manage your boards, lists and cards directly from your chatbot.
Prerequisites
[](#prerequisites)
* A [Trello account](https://trello.com/)
* A board in Trello, with at least one list
* The ID of the list where cards will be created. Refer to [this article](https://community.atlassian.com/t5/Trello-questions/How-do-I-find-the-LIST-ID/qaq-p/2272862) to locate it.
* A [Botpress Cloud account](https://sso.botpress.cloud) and a [Botpress Bot](https://botpress.com/docs/cloud/getting-started/create-and-publish-your-chatbot/)
Setting up the Trello integration in Botpress
[](#setting-up-the-trello-integration-in-botpress)
1. Go to the [Integration Hub](https://app.botpress.cloud/hub) in Botpress Cloud (if you don't have the integration installed yet).
2. Find and open the Trello integration then click on the "Install to Bot" button, now go back to your bot settings.
The Trello integration has the following settings:
* **Enabled**: Whether Botpress will communicate with Trello
* **Webhook URL**: The URL for receiving data in Botpress
* **API Key**: The API key for the Trello Power-Up
* **Token**: The token for the Trello Power-Up
Setting up Trello
[](#setting-up-trello)
1. Visit the [Power-Ups Admin Page](https://trello.com/power-ups/admin) and click the **New** button to obtain the API key. Name the Power-Up as "Botpress Connector", fill in the email and author fields, then click **Create**.
2. Once the Power-Up is created, you will be redirected to API Key settings page, displayed below. Generate a new API key, then copy and paste this key into the **API Key** field in Botpress.

3. Click on the "Token" link (marked in the image below) and authorize the Power-Up access to your Trello account by selecting **Allow**.

4. After authorization, copy the displayed token and paste it into the **Token** field in Botpress.
5. Make sure the integration is enabled then press the button "Save configuration".
That's it! Now the Trello integration is operational and ready for use within your bot.
Functionality
[](#functionality)
Cards
[](#cards)
Create Card
[](#create-card)
This operation allows you to create cards programmatically in Trello. For example, this can be useful to register user feedback, add support tickets or create tasks.
* **Card Name**: The title of the card (e.g., "My Test Card").
* **List ID**: The ID of the list to which the card will be added.
* **Description** (Optional): Details or description of the card.
* **Due Date** (Optional): The due date of the card in ISO format.
* **Member IDs** (Optional): The IDs of the members, represented as strings separated by commas.
* **Label IDs** (Optional): The IDs of the labels, represented as strings separated by commas.
You can save the new card information by selecting a variable to store the output in. The output will be an object with the following keys: `id` and `url`.
Update Card
[](#update-card)
This operation allows you to update cards programmatically in Trello. For example, this can be useful to update the status of a support ticket or a task.
* **Card ID**: The ID of the card to be updated.
* **Card Name** (Optional): The updated name of the card.
* **List ID** (Optional): The ID of the list to which the card is added.
* **Closed** (Optional): Specify "true" to close the card and "false" to keep it open.
* **Due Complete** (Optional): Specify "true" if the card is due complete and "false" if not.
Get Member
[](#get-member)
* **Username or ID**: The Trello username or Trello ID to retrieve member data
You can save the member information by selecting a variable to store the output in. The output will be an object with several keys like: `avatarUrl`, `bioData`, `fullName`, `email` and more. Check out this [documentation page](https://developer.atlassian.com/cloud/trello/rest/api-group-members/) to learn more about the Member object.
Get Board Members
[](#get-board-members)
This operation allows you to get all the members of a board. For example, this can be useful to get the list of members of a project.
* **Board ID**: The ID of the board to retrieve all its members.
You can save the members information by selecting a variable to store the output in. The output will be an object with the key: `members`. The members property is an array of objects with the keys: `id`, `fullName`, and `username`.
Add Comment
[](#add-comment)
This operation allows you to add a comment to an existing card. For example, this can be useful to add a comment to a support ticket or a task.
* **Card ID**: The ID of the card to which the comment will be added.
* **Comment**: The content of the comment to be added.
You can save the new comment information by selecting a variable to store the output in. The output will be an object with the key: `text`.
> ## 📘
>
> Note
>
> This Trello Integration aims to extend the capabilities of your Botpress chatbot by aligning it with Trello's functionalities, providing a harmonized and interactive user experience. Explore, interact, and get creative with how you utilize this amalgamation to optimize task and project management.
Updated 4 months ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Setting up the Trello integration in Botpress](#setting-up-the-trello-integration-in-botpress)
* [Setting up Trello](#setting-up-trello)
* [Functionality](#functionality)
* [Cards](#cards)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Slack
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Slack
[ Suggest Edits](/edit/slack)

Prerequisites
[](#prerequisites)
* A [Slack App](https://api.slack.com/apps) to connect your bot to Slack.
* A [Botpress Cloud account](https://sso.botpress.cloud) and a [Botpress Bot](https://botpress.com/docs/cloud/getting-started/create-and-publish-your-chatbot/)
Create a Slack App
[](#create-a-slack-app)
If you don't have a Slack app already, follow the steps below to create one:
1. Go to [this link](https://api.slack.com/apps?new%5Fapp=1).
2. Select **from scratch**.
3. Enter a name for your app.
4. Select the workspace you want to connect your bot to.
5. Click **Create App**.
Et voilà! You have created a Slack app.
Setting up the Slack integration in Botpress
[](#setting-up-the-slack-integration-in-botpress)
1. Go to the [Integration Hub](https://app.botpress.cloud/hub) in Botpress Cloud (if you don't have the integration installed yet).
2. Find and open the Slack integration then click on the "Install to Bot" button, now go back to your bot.
The Slack integration has the following settings:
* **Enabled**: Whether Botpress will communicate with Slack
* **Webhook URL**: The URL for receiving data in Botpress
* **Bot Token**: The token used to authenticate requests made to Slack
* **Signing Secret**: The secret used to verify the requests
* **Bot Name**: The name of the bot that will be displayed in Slack
* **Bot Avatar URL**: The URL to the bot's avatar that will be displayed in Slack
Setting up Slack
[](#setting-up-slack)
Bot Token
[](#bot-token)
1. In the left sidebar, click on **Features** \> **OAuth & Permissions**
2. Scroll down to the **Scope** \> **Bot Token Scopes** section, click **Add an OAuth Scope**. Select both `chat:write` and `chat:write.customize` options from the list.
3. Scroll up and click the **Install to Workspace** button in the **OAuth Tokens for Your Workspace** section
4. In the next screen, your app will request access to your Slack workspace. Click **Allow**.
5. In the **OAuth & Permissions > OAuth Tokens for Your Workspace** section, copy the **Bot User OAuth Token**.
6. Copy the token and paste it in the **Bot Token** input in Botpress.
Signing Secret
[](#signing-secret)
The signing secret is used to verify webhook requests
1. In the left sidebar of the app details page, click on **Settings** \> **Basic Information**
2. Scroll down to **App Credentials** section. Next to **Signing Secret**, click **Show** to reveal the secret.
3. Copy the secret to the **Signing Secret** input in Botpress.
Save Configuration
[](#save-configuration)
Channel configuration is complete, you can now click **Save**. It is important you save your configuration before configuring the webhooks, otherwise Slack will be unable to validate the webhook url
Important: Do not activate the toggle or authorize Slack before saving. After saving, the toggle can be activated, but do not synchronize yet.
Webhook Configuration
[](#webhook-configuration)
Events Webhook
[](#events-webhook)
Slack sends regular events such as messages to the event webhook
1. In the left sidebar, click on **Features** \> **Event Subscriptions**
2. Turn on events by click the On/Off button
3. Copy paste the webhook url provided in the channel configuration UI to the **Request URL** field
4. Under **Subscribe to bot event**, add `message.im` and `message.channels`
5. Click the **Save Changes** button. Make sure your Slack channel configuration is saved before doing this step, otherwise webhook validation will fail
6. A yellow banner will be displayed at the top of the screen. Click the **reinstall your app** link
7. In the next screen, your app will request access to your Slack workspace. Click **Allow**.
Interactivity Webhook
[](#interactivity-webhook)
Slack sends "interactive" events such as reactions to message to the interactivity webhook
1. In the left sidebar, click on **Features** \> **Interactivity & Shortcuts**
2. Turn on interactivity by click the On/Off button
3. Copy paste the webhook url provided in the channel configuration UI to the **Request URL** field
4. Click the **Save Changes** button
Install App
[](#install-app)
Add App to Workspace
[](#add-app-to-workspace)
Your Slack app needs to be added to your workspace to allow Slack users to communicate with it:
1. In the left sidebar, click on **Features** \> **App Home**
2. Scroll down and in the **Show Tabs > Messages Tab** section, tick **Allow users to send Slash commands and messages from the messages tab**
3. In Slack, under the **Apps** section of the sidebar, click the **\+ Add apps** button. In the search bar, type the name of your Slack app. Click on your Slack app in the search results.
That's it, you may now start chatting with your bot on Slack!
Tips
[](#tips)
* To get the Slack conversation ID, you can read the following variable:
`{{ event.tags.conversation["slack:id"] }}`.
* To get the Slack conversation thread ID (if it is a thread), you can read the following variable:
`{{ event.tags.conversation["slack:thread"] }}`.
* To get the Slack user ID, you can read the following variable:
`{{ event.tags.user["slack:id"] }}`.
* To get the Slack message ID, you can read the following variable:
`{{ event.tags.message["slack:id"] }}`.
Slack actions in Botpress Studio
[](#slack-actions-in-botpress-studio)
Starting a Conversation Proactively
[](#starting-a-conversation-proactively)
To start a conversation with a user proactively, you need to know the user's Slack ID.
1. In Studio, add the **Start DM Conversation** card to your flow.
2. Pass the user's Slack ID in the `Slack User Id` input.
3. You can store the result of the action in a variable.
Retrieve a Message
[](#retrieve-a-message)
To retrieve a message from Slack, you need to know the `timestamp` and the `channel` of the message.
1. In Studio, add the **Retrieve Message** card to your flow.
2. Pass the timestamp of the message in the `Timestamp` input.
3. Pass the channel of the message in the `Channel` input.
4. You can store the result of the action in a variable.
Add Reaction to message
[](#add-reaction-to-message)
To add a reaction on a Slack message, you need to know the `message Id` and the `reaction name`.
1. In Studio, add the **Add Reaction** card to your flow.
2. Pass the message Id in the `Message Id` input.
3. Pass the reaction name in the `Reaction Name` input. (see [Slack documentation](https://slack.com/help/articles/202931348-Use-emoji-and-reactions) for more informations on emojis/reactions)
Synchronize Members
[](#synchronize-members)
This action will synchronize the members of a Slack workspace with Botpress users.
In Studio, add the **Sync Members** card to your flow.
Reaction Added trigger
[](#reaction-added-trigger)
You can use the **Reaction Added** trigger to make actions when a reaction is added to a Slack message.
Get Slack Profile
[](#get-slack-profile)
You can add the below code in an Execute Code card to allow the bot to retrieve the sender's Display Name or E-mail. You can add other properties as per your needs, all you need is to pass your bot's token in the first line. This can add more personalization and customization to your bot.
JavaScript
`` const botToken = ''
const userInfoUrl = 'https://slack.com/api/users.profile.get?user=' + event.tags.user['slack:id']
// Query Slack API
await axios({ method: 'get', url: userInfoUrl, headers: { Authorization: 'Bearer ' + botToken } })
.then((response) => {
console.log(response.data)
user.userFullName = response.data.profile.display_name
user.email = response.data.profile.email
})
.catch(function (error) {
if (error.response) {
// The request was made and the server responded with a status code
// that falls out of the range of 2xx
console.log(error.response.data)
console.log(error.response.status)
console.log(error.response.headers)
} else if (error.request) {
// The request was made but no response was received
// `error.request` is an instance of XMLHttpRequest in the browser and an instance of
// http.ClientRequest in node.js
console.log(error.request)
} else {
// Something happened in setting up the request that triggered an Error
console.log('Error', error.message)
}
console.log(error.config)
})
``
Updated about 1 month ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Create a Slack App](#create-a-slack-app)
* [Setting up the Slack integration in Botpress](#setting-up-the-slack-integration-in-botpress)
* [Setting up Slack](#setting-up-slack)
* [Bot Token](#bot-token)
* [Signing Secret](#signing-secret)
* [Save Configuration](#save-configuration)
* [Webhook Configuration](#webhook-configuration)
* [Events Webhook](#events-webhook)
* [Interactivity Webhook](#interactivity-webhook)
* [Install App](#install-app)
* [Add App to Workspace](#add-app-to-workspace)
* [Tips](#tips)
* [Slack actions in Botpress Studio](#slack-actions-in-botpress-studio)
* [Starting a Conversation Proactively](#starting-a-conversation-proactively)
* [Retrieve a Message](#retrieve-a-message)
* [Add Reaction to message](#add-reaction-to-message)
* [Synchronize Members](#synchronize-members)
* [Reaction Added trigger](#reaction-added-trigger)
* [Get Slack Profile](#get-slack-profile)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Flows
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Flows
Menu to manage different conversational flows that dictate how your bot interacts with users.
[ Suggest Edits](/edit/studio-interface-flows)
In the Flows panel, each flow represents a specific part of the conversation logic or interaction path the bot will follow when handling a conversation or performing a task. Each flow represents a unique interaction pathway, determining how the bot responds to specific user inputs and scenarios. By configuring these flows, you can control the bot's behaviour, ensuring it provides a consistent and user-friendly experience across various situations.
Flows in the menu
[](#flows-in-the-menu)
Main
[](#main)
The "Main" flow is the primary conversation flow that your bot follows during standard interactions. It is the default pathway that guides the user through the core functionalities of the bot. This flow should be configured to handle general queries, initial greetings, intent recognition, and primary navigation through the bot's features. Set up the main flow to start when the bot is initiated and guide the user through typical use cases or services provided by the bot.
Error
[](#error)
The "Error" flow is triggered when the bot encounters a problem, such as an unrecognized command, invalid input, or a processing failure. Configure this flow to manage unexpected situations gracefully. The bot should inform the user of the error and offer options for recovery, such as retrying the action or redirecting to the main flow. Include helpful error messages and potential solutions to guide the user back to a valid conversation path.
Timeout
[](#timeout)
The "Timeout" flow is activated when there is a prolonged period of inactivity from the user. This flow handles idle sessions by either prompting the user or ending the conversation. Use this flow to re-engage the user after a period of silence or to gracefully conclude the conversation if the user is unresponsive. Set a timeout duration and specify actions such as sending a reminder message, asking if the user needs more help, or automatically closing the session.
Conversation End
[](#conversation-end)
The "Conversation End" flow manages how the bot concludes interactions. This includes wrapping up the conversation, providing summaries, or offering follow-up actions. Configure this flow to ensure the conversation ends positively. The bot might thank the user, provide a summary of the conversation, or suggest next steps. Include a polite closing message, potential follow-up options like a survey or re-engagement link, and any necessary final actions.
---
Managing flows
[](#managing-flows)
You can manage your bot's flows from this menu. Here's a breakdown of the configuration and management options available to you.
Add Workflow
[](#add-workflow)
This adds a new workflow to your bot.
Add Folder
[](#add-folder)
This creates a new folder in this menu. You can store flows, tables, and knowledge bases in a folder.
Add Knowledge Base
[](#add-knowledge-base)
This creates a new Knowledge Base.
Add Table
[](#add-table)
This creates a new Table.
Updated about 1 month ago
---
* [Table of Contents](#)
* * [Flows in the menu](#flows-in-the-menu)
* [Main](#main)
* [Error](#error)
* [Timeout](#timeout)
* [Conversation End](#conversation-end)
* [Managing flows](#managing-flows)
* [Add Workflow](#add-workflow)
* [Add Folder](#add-folder)
* [Add Knowledge Base](#add-knowledge-base)
* [Add Table](#add-table)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Telegram
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Telegram
[ Suggest Edits](/edit/telegram)

Prerequisites
[](#prerequisites)
* A Telegram account and a Telegram bot
* A [Botpress Cloud account](https://sso.botpress.cloud) and a [Botpress Bot](https://botpress.com/docs/cloud/getting-started/create-and-publish-your-chatbot/)
Create a Bot
[](#create-a-bot)
To create a bot on Telegram, use Telegram's BotFather. The BotFather will ask you for a name and username, then generate an authorization token for your new bot
The name of your bot is displayed in contact details and elsewhere
The Username is a short name to be used in mentions and t.me links. Usernames are 5-32 characters long and are case insensitive but may only include Latin characters, numbers, and underscores. Your bot's username must end in `bot`, such as `tetris_bot` or `TetrisBot`
Setting up the Telegram integration in Botpress
[](#setting-up-the-telegram-integration-in-botpress)
1. Go to the [Integration Hub](https://app.botpress.cloud/hub) in Botpress Cloud (if you don't have the integration installed yet).
2. Find and open the Telegram integration then click on the "Install to Bot" button, now go back to your bot settings.
The Telegram integration has the following settings:
* **Enabled**: Whether Botpress will communicate with Telegram
* **Webhook URL**: The URL for receiving data in Botpress
* **Bot Token**: The token of your Telegram bot
Setting up Telegram
[](#setting-up-telegram)
Generate an Authorization Token
[](#generate-an-authorization-token)
When you create a Telegram bot, BotFather will automatically generate a token. The token is a string that is required to authorize the bot and send requests to the Bot API. Keep your token secure and store it safely; anyone can use it to control your bot
If your existing token is compromised or you lost it for some reason, use the `/token` command to generate a new one
Bot Token
[](#bot-token)
Copy your Telegram bot token and paste it into the **Bot Token** channel configuration and click **Save**.
That's it, you may now start chatting with your bot on Telegram!
Tips
[](#tips)
* To get the Telegram conversation ID, you can read the following variable:
`{{ event.tags.conversation["telegram:id"] }}`.
* To get the Telegram user ID, you can read the following variable:
`{{ event.tags.user["telegram:id"] }}`.
* To get the Telegram message ID, you can read the following variable:
`{{ event.tags.message["telegram:id"] }}`.
Updated 4 months ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Create a Bot](#create-a-bot)
* [Setting up the Telegram integration in Botpress](#setting-up-the-telegram-integration-in-botpress)
* [Setting up Telegram](#setting-up-telegram)
* [Generate an Authorization Token](#generate-an-authorization-token)
* [Bot Token](#bot-token)
* [Tips](#tips)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Twilio
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Twilio
[ Suggest Edits](/edit/twilio)

Prerequisites
[](#prerequisites)
* A [Twilio](https://www.twilio.com/) account
* A Twilio phone number. Check out [this article](https://support.twilio.com/hc/en-us/articles/223135247-How-to-Search-for-and-Buy-a-Twilio-Phone-Number-from-Console) to learn how to get one.
* A [Botpress Cloud account](https://sso.botpress.cloud) and a [Botpress Bot](https://botpress.com/docs/cloud/getting-started/create-and-publish-your-chatbot/)
Setting up the Twilio integration in Botpress
[](#setting-up-the-twilio-integration-in-botpress)
1. Go to the [Integration Hub](https://app.botpress.cloud/hub) in Botpress Cloud (if you don't have the integration installed yet).
2. Find and open the Twilio integration then click on the "Install to Bot" button, now go back to your bot.
The Twilio integration has the following settings:
* **Enabled**: Whether Botpress will communicate with Twilio
* **Webhook URL**: The URL for receiving data in Botpress
* **Account SID**: Your Twilio Account SID
* **Auth Token**: Your Twilio Auth Token
Setting up Twilio
[](#setting-up-twilio)
Account SID and Auth Token
[](#account-sid-and-auth-token)
1. Go to you Twilio [console dashboard](https://console.twilio.com/?frameUrl=/console)
2. Scroll down and copy your Account SID and Auth Token from the **Project Info** section and paste them in the **Account SID** and **Auth Token** channel configurations
Save Configuration
[](#save-configuration)
Channel configuration is complete, you can now click **Save**
Webhook Configuration
[](#webhook-configuration)
To receive messages from Twilio, you will need to setup a webhook
1. Click on **Explore Products** in the left pannel
2. Click on **Messaging**
3. Click on **Services** in the left pannel
4. Click on your service (if you haven't already created your service, create a messaging service and add your phone as a sender)
5. Click on **Sender Pool** in the left pannel
6. Click on your phone number
7. Scroll down the phone number settings page
8. Copy paste the webhook url provided in the channel configuration UI to the **A Message Comes In** field
That's it! Now the Twilio integration is operational and ready for use within your bot.
Updated 3 months ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Setting up the Twilio integration in Botpress](#setting-up-the-twilio-integration-in-botpress)
* [Setting up Twilio](#setting-up-twilio)
* [Account SID and Auth Token](#account-sid-and-auth-token)
* [Save Configuration](#save-configuration)
* [Webhook Configuration](#webhook-configuration)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Sunshine Conversations
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Sunshine Conversations
Sunco
[ Suggest Edits](/edit/sunshine-conversations)

Prerequisites
[](#prerequisites)
* A [Smooch app](https://app.smooch.io) with a channel configured
* A [Botpress Cloud account](https://sso.botpress.cloud) and a [Botpress Bot](https://botpress.com/docs/cloud/getting-started/create-and-publish-your-chatbot/)
Setting up the Sunshine Conversations integration in Botpress
[](#setting-up-the-sunshine-conversations-integration-in-botpress)
1. Go to the [Integration Hub](https://app.botpress.cloud/hub) in Botpress Cloud (if you don't have the integration installed yet).
2. Find and open the Sunshine Conversations integration then click on the "Install to Bot" button, now go back to your bot settings.
The Sunshine Conversations integration has the following settings:
* **Enabled**: Whether Botpress will communicate with this channel
* **Webhook URL**: The URL for receiving data in Botpress
* **App Id**: The App Id of your bot in Azure
* **Key Id**: The Key Id of your bot in Azure
* **Key Secret**: The Key Secret of your bot in Azure
* **Webhook Secret**: The Webhook Secret of your bot in Azure
Setting up Sunshine Conversations
[](#setting-up-sunshine-conversations)
Smooch App
[](#smooch-app)
1. On the Smooch [home page](https://app.smooch.io/), click on **Create new app.**
2. Enter a name for your app and click **Create App**
3. Connect a channel to your app (Telegram, WhatsApp, or any other listed channel)
4. You should see a channel in the **Overview** section of your app
Configuration
[](#configuration)
App Id
[](#app-id)
The smooch channel needs the app id to identify the smooch app when making API calls
1. Go to the **Settings** section of your app
2. You should see an **App Id** section if you scroll down. Copy paste this value to the **App Id** channel configuration
Key Id and Key Secret
[](#key-id-and-key-secret)
The key id and secret are needed to authenticate API calls to Smooch
1. At the bottom of to the **Settings** section of your app, click **Generate API key**
2. Copy paste the id (the one that starts with `app_`) in the **Key Id** channel configuration
3. Copy paste the secret in the **Key Secret** configuration
Webhook Secret
[](#webhook-secret)
The webhook secret is needed to validate webhooks requests. You get a webhook secret for each webhook integration you create
1. Go to the **Integration** section of your app
2. In the **API & Webhooks** section, click on **Webhooks**
3. Click **Connect**, then **Create a webhook**
4. Paste the Webhook URL provided in Botpress
5. Select `v2` as your webhook version
6. Select **Conversation message** and **Postbacks** in the basic triggers
7. Click **Create Webhook**. You will see the webhook you created in the table, and the secret in the last column
8. Copy paste the webhook secret in the **Webhook Secret** channel configuration
Save Configuration
[](#save-configuration)
Channel configuration is complete, you can now click **Save**
That's it, you may now start chatting with your bot on Sunshine Conversations!
Updated 4 months ago
---
* [Table of Contents](#)
* * [Prerequisites](#prerequisites)
* [Setting up the Sunshine Conversations integration in Botpress](#setting-up-the-sunshine-conversations-integration-in-botpress)
* [Setting up Sunshine Conversations](#setting-up-sunshine-conversations)
* [Smooch App](#smooch-app)
* [Configuration](#configuration)
* [App Id](#app-id)
* [Key Id and Key Secret](#key-id-and-key-secret)
* [Webhook Secret](#webhook-secret)
* [Save Configuration](#save-configuration)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Commands
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Commands
[ Suggest Edits](/edit/studio-commands)
Botpress makes available some commands that you can use throughout your development process. These work in production as well, to troubleshoot issues and restart conversations.
| Command | Where to Input | When to use |
| ------------- | --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| //state/reset | In the [Emulator](../docs/emulator) or in a Channel integration | You should run this command where there's a problem with the state of your bot which could be caused by deleting nodes, workflows or variables and other situations |
Updated about 1 month ago
---[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Send Messages
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Send Messages
Send a message or piece of rich content to your user.
[ Suggest Edits](/edit/send-messages)
Botpress lets you send multiple types of messages to your users.
The various chat clients support rich message types, and content types like text, images, and audio may look different depending on which channel you're using.
Your bot's messages can be as straightforward or as complex as you want. For instance, a content type could be simple piece text or an image or carousel.
Sending Messages
[](#sending-messages)
To instruct your bot to send a message, drag a message type from the Card Tray into a Node.
Message Types
[](#message-types)
Text
[](#text)
This sends a piece of text to your user. This field supports standard markdown and variable expression.
Image
[](#image)
This sends an uploaded image to your user. The title field is mandatory in this card.
Audio
[](#audio)
This sends an uploaded audio file to your user. The title field is mandatory in this card.
Video
[](#video)
This sends an uploaded video file to your user. The title field is mandatory in this card.
File
[](#file)
This sends a file to your user. The title field is mandatory in this card.
Card
[](#card)
The 'Card' message type pairs an uploaded image with a title, subtitle, and action button, like a link to your website. The title and subtitle are both mandatory.
Carousel
[](#carousel)
The 'Carousel' message type groups together multiple cards in a scrollable carousel.
Location
[](#location)
This card sends an address to your user based on a specified latitude and longitude.
Updated about 1 month ago
---
* [Table of Contents](#)
* * [Sending Messages](#sending-messages)
* [Message Types](#message-types)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
Preventing Abuse
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# Preventing Abuse
[ Suggest Edits](/edit/preventing-abuse)
At Botpress, we prioritize the security and integrity of your chatbots by implementing a range of robust measures to counteract fraud and malicious usage. Our strategy includes:
Rate Limits
[](#rate-limits)
Rate limits serve as a fundamental safeguard for your bot's resources. Each bot is assigned a maximum rate of messages it can process per second. For users on the "Team" plan, a higher rate limit is applied. Enterprise customers can further customize these limits to align with their specific requirements.
Rate limiting prevents the excessive influx of messages, ensuring that your bot operates efficiently and consistently. This is an essential component of our abuse prevention strategy.
Web Application Firewall (WAF)
[](#web-application-firewall-waf)
Our Web Application Firewall, often referred to as WAF, is a powerful layer of defense against various cyber threats. WAF can protect your bot from Distributed Denial of Service (DDoS) attacks, SQL injection, cross-site scripting, and many other malicious activities.
By using WAF, Botpress takes advantage of AWS's robust security mechanisms, which are detailed in [AWS WAF Documentation](https://docs.aws.amazon.com/waf/latest/developerguide/ddos-responding.html). This means that your bot is shielded from a wide range of web-based threats, allowing it to perform at its best without disruption.
Billing Limits
[](#billing-limits)
To provide an additional layer of protection, you have the ability to set monthly spending limits. This feature ensures that even if an abuse attempt were to circumvent the rate limits and WAF, your financial exposure remains under control. By defining a spending limit, you can prevent unexpectedly high bills resulting from excessive bot usage.
In summary, our abuse prevention strategy combines rate limits, WAF protection, and billing limits to keep your chatbots safe and efficient. This multi-faceted approach is designed to mitigate potential abuse scenarios and maintain the integrity of your bot's operation.
> ## 📘
>
> Info
>
> You can watch the [Usage tab](https://botpress.com/docs/cloud/admin-dashboard/usage/) in the Admin Dashboard to continuously verify the usage of Botpress computational resources by your bot, ensuring that it is operating within the expected limits.
Updated 4 months ago
---
* [Table of Contents](#)
* * [Rate Limits](#rate-limits)
* [Web Application Firewall (WAF)](#web-application-firewall-waf)
* [Billing Limits](#billing-limits)[Jump to Content](#content)
[](https://botpress.com)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
---
[](https://botpress.com)
Guides
Moon (Dark Mode)Sun (Light Mode)
[Guides](/docs)[API Reference](/reference)[Changelog](/changelog)
React Components
Search
## Home
* [Botpress Documentation](/docs/home)
## Getting Started
* [Build](/docs/build)
* [Deploy](/docs/deploy)
* [Monitor](/docs/monitor)
## DASHBOARD
* [Workspace](/docs/workspace)
* [Home](/docs/home-1)
* [Members](/docs/members)
* [Audits](/docs/audits)
* [Your integrations](/docs/your-integrations)
* [Usage](/docs/usage-2)
* [Settings](/docs/settings)
* [Profile Setting](/docs/user-profile)
* [Bot](/docs/bot)
* [Overview](/docs/overview-1)
* [Integrations](/docs/integrations-1)
* [Webchat](/docs/webchat-1)
* [Logs](/docs/logs)
* [Conversations](/docs/conversations)
* [Analytics](/docs/analytics-1)
* [Events](/docs/events-2)
* [Issues](/docs/issues)
* [Configuration variables](/docs/configuration-variables-1)
## STUDIO
* [Interface](/docs/interface)
* [Nodes](/docs/nodes)
* [Home](/docs/home-2)
* [Flows](/docs/studio-interface-flows)
* [Knowledge Base](/docs/knowledge-base)
* [Tables](/docs/tables)
* [Agents](/docs/agents)
* [Summary Agent](/docs/summary-agent)
* [Personality Agent](/docs/personality-agent)
* [Policy Agent](/docs/policy-agent)
* [Translator Agent](/docs/translator-agent)
* [Knowledge Agent](/docs/knowledge-agent)
* [HITL Agent](/docs/hitl-agent)
* [Vision Agent](/docs/vision-agent)
* [Analytics Agent](/docs/analytics-agent)
* [Library](/docs/library)
* [Hooks](/docs/hooks)
* [Integrations](/docs/integrations-3)
* [Schemas](/docs/schemas)
* [Card Hub](/docs/card-hub)
* [Versions](/docs/versions-1)
* [Chatbot Settings](/docs/chatbot-settings-1)
* [Find](/docs/find)
* [Variables](/docs/variables)
* [Card Tray](/docs/card-tray)
* [Debugger, Logs & JSON](/docs/debugger-logs-json)
* [Emulator](/docs/emulator)
* [Keyboard Shortcuts](/docs/keyboard-shortcuts)
* [Commands](/docs/studio-commands)
* [Studio Preferences](/docs/studio-preferences)
* [Import & Export](/docs/import-export-bots)
* [Cards](/docs/cards)
* [Send Messages](/docs/send-messages)
* [Execute](/docs/execute)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [Webchat](/docs/webchat-2)
* [Flow Logic](/docs/flow-logic)
* [AI](/docs/ai)
* [AI Task](/docs/ai-task-1)
* [AI Transition](/docs/ai-transition)
* [AI Generate Text](/docs/ai-generate-text)
* [Capture Information](/docs/capture-information)
* [Events](/docs/events-3)
* [Agents](/docs/agents-2)
* [Utilities](/docs/utilities)
## integrations
* [Usage](/docs/using-integrations)
* [Asana](/docs/asana-integration)
* [HITL](/docs/hitl-1)
* [Instagram](/docs/instagram)
* [Intercom](/docs/intercom)
* [Line](/docs/line)
* [Messenger](/docs/messenger)
* [Microsoft Teams](/docs/microsoft-teams)
* [Notion](/docs/notion)
* [Slack](/docs/slack)
* [Sunshine Conversations](/docs/sunshine-conversations)
* [Telegram](/docs/telegram)
* [Trello](/docs/trello)
* [Twilio](/docs/twilio)
* [Viber](/docs/viber)
* [Vonage](/docs/vonage)
* [Webhook](/docs/webhook)
* [WhatsApp](/docs/whatsapp)
* [Manual Configuration](/docs/manual-configuration)
* [Zapier](/docs/zapier)
* [Zendesk](/docs/zendesk)
* [Building](/docs/building-integrations)
* [Getting Started](/docs/getting-started-1)
* [Getting Started](/docs/getting-started-1)
* [Adding Messaging Channel Capabilities](/docs/adding-messaging-channel-capabilities)
* [Adding Actions & Triggers to Botpress Studio](/docs/adding-actions-triggers-to-botpress-studio)
* [Publish your integration on Botpress Hub](/docs/publish-your-integration-on-botpress-hub)
* [Use Your Own LLM](/docs/llm-interfaces)
* [Connect a live agent platform with Botpress](/docs/hitl)
* [Moving Parts](/docs/moving-parts)
* [CLI](/docs/cli)
* [SDK](/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
/docs/sdk)
* [Key Concepts](/docs/key-concepts)
* [Architecture](/docs/architecture)
* [Tags](/docs/tags)
* [Channels](/docs/channels)
* [Configuration](/docs/configuration)
* [User](/docs/user)
* [Conversations](/docs/conversations-1)
* [Messages](/docs/messages)
* [Event](/docs/event)
* [States](/docs/states-1)
* [Actions](/docs/actions)
* [Definitions](/docs/definitions)
* [Secrets](/docs/secrets)
* [ZUI - Zod schema UI components in Botpress \[BETA\]](/docs/zui-zod-schema-ui-components-in-botpress)
* [How to](/docs/states)
* [States](/docs/states)
* [Register & Unregister](/docs/register-unregister)
* [Integrations Actions](/docs/integrations)
* [Integration Events](/docs/integration-events)
* [Handler](/docs/handler)
* [Logging](/docs/logging)
* [Building a Custom Integration](/docs/building-a-custom-integration)
## Webchat
* [Webchat](/docs/webchat)
* [Webflow](/docs/webflow)
* [Wix](/docs/wix)
* [Wordpress](/docs/wordpress)
* [Webchat v1 (deprecated)](/docs/web-chat-v1old)
* [Controlling Web Chat using JavaScript](/docs/controlling-web-chat-using-javascript)
* [Styling your webchat](/docs/chatbot-button)
* [Chatbot Button](/docs/chatbot-button)
* [Chat Header](/docs/chat-header)
* [User Input Area](/docs/user-input-area)
* [Show Bot Info](/docs/show-bot-info)
* [Embedding Webchat](/docs/react-app)
* [React App](/docs/react-app)
* [React Native App](/docs/react-native-app)
* [Web Chat Iframe](/docs/web-chat-iframe)
* [Full Screen Chatbot](/docs/full-screen-chatbot)
* [Webchat v2](/docs/embedded-webchat)
* [Embedded Webchat](/docs/embedded-webchat)
* [Custom CSS Reference](/docs/custom-css-reference)
* [React Components](/docs/react-js)
* [Webchat Client](/docs/webchat-client)
## Botpress APIs
* [Files API](/docs/files-api)
* [Chat API](/docs/chat-api)
## Appendix
* [Safety](/docs/safety)
* [Preventing Abuse](/docs/preventing-abuse)
* [Brand Safety Framework](/docs/brand-safety-framework)
* [Exporting Data](/docs/exporting-data)
* [Raw Conversations](/docs/exporting-raw-conversations-with-the-botpress-api)
* [Conversation History](/docs/getting-the-conversation-history-from-within-your-bot)
* [Streaming Analytics](/docs/streaming-analytics-from-within-your-bot-with-hooks)
* [Compiled Bot Analytics](/docs/exporting-compiled-bot-analytics-with-the-botpress-api)
Powered by
# React Components
[ Suggest Edits](/edit/react-js)
Botpress React components provide a flexible way to build and customize chatbot interfaces in React applications. They enable conversation management, user input handling, and event subscriptions for a seamless chat experience.
Quickstart
[](#quickstart)
Install the packages
[](#install-the-packages)
Install the necessary packages from the npm public registry.
npmpnpmyarn
`npm install @botpress/webchat @botpress/webchat-generator
`
`pnpm add @botpress/webchat @botpress/webchat-generator
`
`yarn add @botpress/webchat @botpress/webchat-generator
`
Obtain the Client ID
[](#obtain-the-client-id)
To integrate Botpress Webchat into your application, you need to obtain your bot's Client ID, which uniquely identifies your bot and enables communication with the Webchat service. Follow these steps to retrieve it:
1. Open Your Bot in Botpress Workspace
2. Navigate to the Webchat tab
3. Access Advanced Settings
4. Copy the Client ID

Add the code
[](#add-the-code)
Here’s a basic implementation example to get you started:
App.tsx
`import { Webchat, WebchatProvider, Fab, getClient } from "@botpress/webchat";
import { buildTheme } from "@botpress/webchat-generator";
import { useState } from "react";
const { theme, style } = buildTheme({
themeName: "prism",
themeColor: "#634433",
});
//Add your Client ID here ⬇️
const clientId = "YOUR_CLIENT_ID";
export default function App() {
const client = getClient({ clientId });
const [isWebchatOpen, setIsWebchatOpen] = useState(false);
const toggleWebchat = () => {
setIsWebchatOpen((prevState) => !prevState);
};
return (
);
}
`
Optional: Configuration
[](#optional-configuration)
You can enhance your Webchat experience by incorporating additional configuration options. Here's an example:
App.tsx
`// ...
const config = {
composerPlaceholder: "What would you like to know?",
botName: "Customer service",
botAvatar: "https://picsum.photos/200/300",
botDescription:
"Hi! 👋 Welcome to webchat this is some description talking about what it is. This might be a bit longer when expanded.",
email: {
title: "[[email protected]](/cdn-cgi/l/email-protection)",
link: "mailto:[[email protected]](/cdn-cgi/l/email-protection)",
},
phone: {
title: "555-555-5555",
link: "tel:555-555-5555",
},
website: {
title: "https://botpress.com",
link: "https://botpress.com",
},
termsOfService: {
title: "Terms of service",
link: "https://botpress.com/terms",
},
privacyPolicy: {
title: "Privacy policy",
link: "https://botpress.com/privacy",
},
};
export default function App() {
// ...
return (