# Create conversation Source: https://docs.quick.bot/api/chat/conversations POST /v1/conversations Initiates a new conversation with a bot. Returns session information needed for subsequent interactions. # Generate upload URL Source: https://docs.quick.bot/api/chat/generate-upload-url POST /v1/generate-upload-url Used to upload anything from the client to S3 bucket The `presignedUrl` and `formData` fields can be then used to upload the file to the S3 bucket, directly from the browser if necessary. Here is an example: ```js theme={null} // data contains the presignedUrl and formData fields from the response const formData = new FormData() Object.entries(data.formData).forEach(([key, value]) => { formData.append(key, value) }) formData.append('file', file) const upload = await fetch(data.presignedUrl, { method: 'POST', body: formData, }) ``` # API Source: https://docs.quick.bot/api/general Some API endpoints are protected, and therefore require that you authenticate using an API token. ## Use your token You can authenticate by adding an `Authorization` header to all your HTTP calls. The Authorization header is formatted as such: `Authorization: Bearer ` (replace `` with your token previously generated). Example: ```sh theme={null} curl -L -X GET 'https://app.quick.bot/api/v1/analytics/:botId/answers' \ -H 'Accept: application/json' \ -H 'Authorization: Bearer your_api_token_here' ``` ### How to find my `botId` If you'd like to execute the bot in preview mode, you will need to provide the ID of the building bot available in the editor URL: Get bot ID ### How to find my `publicId` For published bot execution, you need to provide the public bot ID available here: Get botpublic ID ### How to find my `workspaceId` In your workspace dashboard, head over to `Workspace > Settings` and copy the workspace ID. # API Tokens Source: https://docs.quick.bot/app/account/api-tokens Create and manage API tokens to authenticate requests to the QuickBot API. API tokens provide secure access to your account data and bot management functions. ## What are API Tokens? API tokens are secure authentication keys that allow external applications and scripts to interact with your QuickBot account programmatically. They provide: * **Secure Access**: Authentication without exposing your password * **Granular Control**: Each token can be managed independently * **Easy Revocation**: Tokens can be deleted instantly if compromised * **Activity Tracking**: Monitor when and how your tokens are used ## Creating API Tokens 1. Click the **Create** button 2. Enter a descriptive name for your token 3. Click **Create Token** 4. Copy the generated token value and store it securely. **Important**: The token value will only be displayed once immediately after creation. Copy and save it securely - you won't be able to view it again. ## Viewing Active Tokens The API Tokens page shows all your active tokens with: * **Token Name**: The descriptive name you assigned * **Created Date**: When the token was generated * **Last Used**: When the token was last used (if available) ### Revoking Tokens To delete an API token: 1. Find the token in your API Tokens list 2. Click the **Delete** button next to the token 3. Confirm the deletion Once a token is deleted, all applications using that token will immediately lose access. Make sure to update your applications with new tokens before deleting old ones. ### API Documentation For complete API documentation including all available endpoints and parameters, visit the [API Reference](/api/general) section. Create tokens with specific, descriptive names and delete them as soon as they're no longer needed. This minimizes security risks and keeps your token list clean and manageable. # Notifications Source: https://docs.quick.bot/app/account/notifications Configure when and how you receive email notifications from QuickBot to stay informed about important account activities and bot performance. All notifications are sent to your registered account email address. You can individually control each type of notification based on your preferences. ## Limits Stay informed about your account's chat usage to avoid service interruptions. * **Almost Reached Conversations Limit**: receive a notification when you're approaching your monthly chat limit (Sent when you reach 80% of your plan's chat allowance). * **Reached Conversations Limit**: receive a notification when you've hit your monthly chat limit (Sent immediately when your chat limit is exceeded). Chat limits are based on your subscription plan. Consider upgrading to a higher tier if you frequently receive limit notifications. ## Onboarding * **Onboarding tips**: receive notifications with helpful tips and guidance to get started with QuickBot (Sent during the first week after account creation). ## Billing * **Payment confirmations**: receive notifications confirming successful payments for your subscription (Sent immediately after payment processing). * **Plan upgrade/downgrade notifications**: receive notifications when your subscription plan changes (Sent immediately after plan change). ## Collaboration * **When someone accepts your invitation**: receive notifications when a team member accepts your invitation to collaborate on QuickBot (Sent immediately after acceptance). * **When you are removed from a workspace**: receive notifications when you are removed from a workspace (Sent immediately after removal). * **When your workspace role changes**: receive notifications when your role in a workspace is updated (Sent immediately after role change). ## Bots * **When you publish a bot for the first time**: receive notifications when you publish a new bot (Sent immediately after publication). * **When a bot reaches conversation milestones**: receive notifications when your bot reaches specific conversation milestones. * **Periodic workspace analytics digest**: receive a summary of your workspace's bot performance and analytics (Sent weekly). * **When a bot has recurring errors**: receive notifications when a bot encounters recurring errors. ## Notification history View your notification history in a table format, including the date, type and workspace of each notification. For high-traffic bots, rely on the dashboard analytics rather than email notifications to avoid inbox overload while still monitoring performance effectively. # Preferences Source: https://docs.quick.bot/app/account/preferences Configure your QuickBot account preferences to customize your experience across the platform. ## Appearance Control how the QuickBot interface looks: * **Light**: Bright interface with light backgrounds (default) * **Dark**: Dark interface that's easier on the eyes in low-light conditions * **System**: Automatically matches your operating system's theme preference The theme setting applies to all QuickBot interfaces including the bot builder, dashboard, and settings pages. Your theme preference is saved to your account and will be applied across all devices where you're logged in. ## Language QuickBot supports multiple languages for the user interface: * **English** (en) * **Français** (fr) * **Deutsch** (de) * **Português** (pt) * **Português (BR)** (pt-BR) * **Română** (ro) * **Español** (es) * **Italiano** (it) Changing your language preference will: * Update all menu items, buttons, and interface text * Change the language for system notifications * Apply to new bot templates and examples Language changes only affect the QuickBot interface. Your bot content and conversations will remain in the languages you've created them in. # Profile Source: https://docs.quick.bot/app/account/profile Manage your personal account information and preferences. Your account profile contains your basic information that's displayed across the QuickBot platform. Account profile ### Your Name You can update your display name at any time. This name will be shown in: * Workspace member lists. * Account notifications. ### Email Address Your email address is used for: * Account authentication. * Important notifications. * Password reset requests. * Workspace invitations. If you update your email, make sure it's an active address you can access, since all account-related emails will be sent there. ### Profile Picture Upload a custom profile picture to personalize your account: **Supported formats:** PNG, JPG, JPEG, GIF ### Phone Number Add a phone number for account recovery and two-factor authentication (2FA). # Security Source: https://docs.quick.bot/app/account/security Manage your account security settings and preferences. ## Authentication * **Password**: Change your account password. Use a strong, unique password that combines letters, numbers, and special characters. * **Email Address**: Update your registered email address for account notifications and recovery. ## Security Notifications * **Email Notifications**: Enable or disable email notifications for security-related events, such as login attempts, password changes, and suspicious activity. * **Login Alerts**: Receive alerts for new logins from unrecognized devices or locations. # Analytics Source: https://docs.quick.bot/app/bots/analytics In the **Analytics** section, you can view and analyze the performance of your bots. Is the part of the product that tells you **how people are using your chatbots**, how many saw them, how many actually talked to them, how many finished, where they gave up and what answers they gave along the way. Analytics is available on paid plans. On the free and personal plans the section appears locked, with an option to upgrade. ## Key metrics Everything in Analytics is built on three simple counts, measured over the period you choose: * **Views**: how many times the chatbot was seen (loaded on a page). * **Started**: how many people actually began a conversation. * **Completed**: how many people reached the end of the conversation. From those, the system calculates the rates that tell the real story: * **Started Rate**: of everyone who saw the bot, what % started chatting. * **Completion Rate**: of everyone who started, what % finished. * **Drop-off Rate**: of everyone who started, what % quit before finishing. ## Filters At the top of the page you have two filters that control everything below them: * **Time filter**: choose the period you're looking at (e.g. today, last 30 days, year-to-date). Use it to compare periods and spot trends. * **Variable filter**: narrow the analytics down to a single piece of information your bot collects (a "variable", such as budget, city, or plan). Selecting a variable here is what reveals the **Collection metrics** section further down the page. If your bot doesn't collect any variables, this filter won't appear. ## Summary cards Shows **Total Views**, **Total Started**, and **Total Completed** for the period you picked, each with its percentage underneath. Summary Cards ## Performance chart A bar-and-line chart showing how those numbers move **day by day**. The bars show a raw count (e.g. views per day) and the line shows a rate (e.g. completion rate %). You can switch which metric each shows using the two dropdowns. This is where you spot trends — a good day, a bad week, the effect of a marketing campaign. Performance Chart Here you can see the total number of views, started sessions and sessions completed. ## Conversion funnel A funnel-shaped picture that stacks **Views → Started → Completed** on top of each other so you can see how many people fall away at each step. A funnel that narrows sharply tells you exactly where you're bleeding potential customers. Analytics Conversion Funnel ## Collection metrics When you select a variable in the **Variable filter** at the top of the page, a **Collection metrics** section appears below the conversion funnel. Analytics Collection Metrics: Variable Variable analytics lets you: * See the **collection rate**: of the people who started, how many actually gave you that piece of info? * Break results down **by answer**: e.g. for the question "What's your budget?", see how many chose "low / medium / high" and — crucially — the completion rate *for each group*. Maybe "high budget" people finish 90% of the time and "low budget" people quit early. That's a real business insight. * For numeric answers, see the **average value** (e.g. average budget entered). The section includes a table with one row per answer, and these columns: | Column | What it means | | - | - | | **\[Variable]** | Each different answer people gave (e.g. "Low", "Medium", "High"). | | **Started** | How many people started the bot and ended up with this answer. | | **Completed** | How many of those people finished the whole conversation. | | **Completion Rate** | Of the people who gave this answer, what % finished the bot. | | **Drop-off Rate** | Of the people who gave this answer, what % started but quit before the end. | The **Completion Rate** is color-coded so you can scan it at a glance: * 🟢 **Green**: 75% or higher (this group finishes well). * 🟠 **Orange**: 50 to 74% (mediocre). * 🔴 **Red**: below 50% (this group is dropping off). Analytics can also show **combined numbers across all of your bots at once**, not just one bot at a time. Use it for a workspace-wide pulse-check, then drill into an individual bot for detail. ## Examples ### 1. Business type (button choice) Suppose your bot asks visitors what kind of business they run and offers **three options as buttons** — for example *Retail*, *Services*, and *Manufacturing* — saved into a variable such as `businessType`. Select that variable in the **Variable filter**, and the **Collection metrics** section shows you: * The **collection rate**: of everyone who started, what % actually picked a business type. If this is low, the question may be appearing too late or feel intrusive. * The **percentages table**, one row per option, so you can compare how each segment behaves: | businessType | Started | Completed | Completion Rate | Drop-off Rate | | - | - | - | - | - | | Retail | 420 | 357 | 🟢 85.0% | 15.0% | | Services | 310 | 186 | 🟠 60.0% | 40.0% | | Manufacturing | 130 | 52 | 🔴 40.0% | 60.0% | At a glance you can see that *Retail* visitors finish well, while *Manufacturing* visitors are dropping off — a signal that the flow after that choice needs work for that segment. ### 2. Rating at the end of the conversation (1 to 5) Now suppose the **last step** of your bot asks people to rate their experience from **1 to 5**, saved into a variable such as `rating`. Because this is the final question, its **collection rate closely mirrors your completion rate** — only people who reach the end can leave a rating, so "how many gave a rating" and "how many finished the conversation" are almost the same number. It's a useful sanity check that the two line up. Since the answers are numeric, the Collection metrics also show the **average value** — your average rating across all sessions (e.g. `4.3`). Watch this number over time: if it drops after you change the flow, your latest version is landing worse with users. # Bots Source: https://docs.quick.bot/app/bots/bots In the **Bots** section, you can create, view, and manage all the bots in your workspace. bots page You will see all your workspace bots with the following columns: * **Avatar**: The bot image your customers see in the chat — the same one you set in the bot **Theme**, under **Bubbles**. Click it to change it right from this list; the new avatar reaches your customers immediately, on live bots too. * **Name**: The bot name. * **Views**: Number of times the bot was viewed. * **Starts**: Number of times the bot was started. * **Completed**: Number of completed conversations. * **Status**: Current state (Live or Draft). * **Publish**: Toggle to enable or disable the bot. * **Actions**: Menu with all available bot operations. You can filter by **Status** or search by name using the search bar. ## Build my first bot To start building your first bot you can click on **Build my first bot**. It will open a modal design to create your first bot step by step. Build your first bot **Step 1: Start** * In this step you can choose to start from scratch with an empty conversation flow (this is for advanced users), Learn the basic with a guided example bot (this is the recommended option for new users), or start from a template (this is for users that want to use a pre-built bot and customize it, the fatest option). **Step 2: Customize** * In this step you will learn how you can customize your bot, from drag and drop blocks, collect data and integrate with external services, to customize the bot's theme and appearance. To learn more about blocks and how to use them, start with the [Flow documentation](/builder/editor/flow). **Step 3: Deploy** * In this step you will learn the different ways you can deploy your bot, from embedding it in your website, or integrating it with WhatsApp usign the Meta Cloud API or via QR code. To learn more about deploying your bot in WhatsApp, see the [WhatsApp deployment documentation](/builder/deploy/whatsapp). **Step 4: Explore** * In this step you will learn about new and advanced features after you have deployed your bot, like analytics (track sessions, completions, and user interactions), use inbox to read every message sent to your bot and human handoff to let your team take over the conversation when needed. To learn more about human handoff, see the [Human Handoff documentation](/human-handoff/general). ## Bot Actions bot actions Cliking the **Actions** menu (three dots) will show the following options: * **Editor**: Open the flow editor to design the conversation. * **Viewer**: Open the live version of your bot. If the bot hasn't been published yet, a 404 Not Found page will be displayed. * **Export bot**: Export the bot as a JSON file. * **Duplicate**: Create an exact copy of the bot to modify without affecting the original. * **Delete**: Permanently remove the bot. Deleting a bot immediately stops it from functioning if it is live, and cannot be undone. ## Bot Status Management Bots can have different states: **Draft** * Not yet published. * Only visible to workspace members. * Can be tested in preview mode. * Freely editable without affecting any live bot. **Live** * Published and available to end users. * Deployed through your selected channels. * Collecting analytics and conversation data. * Updates require republishing to take effect. ## Importing a bot When importing a bot from a `.json` file, QuickBot recreates the entire bot flow, theme, and configuration. To learn more about the bot structure in the json file, see the [Export documentation](/builder/editor/export). # Inbox Source: https://docs.quick.bot/app/bots/inbox In the **Inbox** section, you can view and manage all the messages sent to your bots. This is where you can read user messages, respond to them, and manage conversations. The inbox handle human handoff, allowing your team to take over conversations when needed. This is especially useful for complex queries that require human intervention. This is a paid feature available in the Pro plan and above. inbox page In the main table, you will an history of all messages sent to your bots with the following columns: * **Bot**: the bot name. * **Avatar**: The customer's avatar. * **Conversation**: the conversation ID. * **Last message**: The content of the last message in the conversation. * **Time**: The timestamp of the last message. * **Channel**: The channel through which the message was received (web or whatsapp). * **Status**: The status of the conversation (customer response, open, closed). You can search (name, email, phone), sort by newest/oldest (last activity or created) and filter by time. ## Channels The inbox currently supports two channels: web and WhatsApp. You can filter the conversations by channel using the filter options. ## Viewing a conversation Clicking on the row of a conversation will open the conversation view, where you can see the full history of messages. inbox conversation page In the left panel you can see the list of conversations for quick access. In the right panel you can see the conversation details: * **Platform**: the platform through which the message was received (web or whatsapp). * **Contact Phone**: the phone number of the customer if it's provided (auto-filled on whatsapp conversations). * **Device type**: the type of device used by the customer (only for web conversations). * **Contact Name**: the name of the customer if it's provided (auto-filled on whatsapp conversations). * **Contact Email**: the email address of the customer if the flow asked for it. * **Click-to-WhatsApp Click ID**: the click ID of the customer if it's provided (only for whatsapp conversations). * **User IP**: the IP address of the customer if it's provided (only for web conversations). Elevate your customer support with human handoff. Learn what this poweful feature offers and how to use it in your bots. # Welcome to QuickBot Source: https://docs.quick.bot/app/getting-started/welcome ## Introduction QuickBot is a powerful platform for **building**, **deploying**, and **managing** chatbots across multiple channels. It helps businesses automate customer support, generate leads, and create engaging conversational experiences. More than just a chatbot builder, QuickBot includes **human handoff** allowing conversations to be seamlessly transferred from a chatbot to a real agent whenever personal assistance is needed. The platform also includes **chatbot building tools**, **analytics**, conversation management, and integrations with channels such as **WhatsApp**. ## Next Steps We invite you to check out our quick guides. Learn how QuickBot works and how to use it to build your first chatbot Explore the different ways you can deploy your bot. Learn how to transfer conversations from a chatbot to a real agent. Learn how to analyze conversation data and improve your chatbot's performance. # Billing Source: https://docs.quick.bot/app/workspace/billing Manage your workspace subscription, monitor usage, and handle billing information. Track your current plan limits, view invoices, and upgrade or modify your subscription as your needs grow. Workspace billing and usage ## Billing Overview The billing header displays key information about your current subscription: * **Plan**: Your current plan (Free, Starter, Grow, Scale). * **Method**: Payment method (Currently Stripe for all transactions). * **Status**: Subscription status (Active, Canceled, Past Due). * **Seats**: Current members vs. plan limit (e.g., "3 / 10"). * **Conversations**: Monthly chat consumption vs. limit. * **Renewal/Cancellation**: Next payment or cancellation date. * **Next Payment**: Cost for the upcoming billing cycle. ## Information * **Company Name**: add your company name for billing purposes. * **Billing email**: add a billing email to receive invoices and payment notifications. * **Tax ID**: add your tax ID for tax purposes (if applicable). * **ID Type**: select the type of tax ID depending on your location. Monitor your usage regularly and upgrade proactively to avoid service interruptions. The Grow plan offers the best balance of features and value for most growing teams. # Credentials Source: https://docs.quick.bot/app/workspace/credentials Manage integration credentials for your workspace. Credentials allow your bots to connect securely with external services and platforms. ## What are Workspace Credentials? Workspace credentials are secure authentication keys and tokens that enable your bots to integrate with external services. Unlike API tokens which authenticate API requests, credentials store third-party service authentication data. ### Supported Integration Types QuickBot supports credentials for various integration types: * **Google Sheets**: OAuth tokens for accessing Google Sheets * **SMTP**: Email server credentials for sending emails * **Stripe**: Payment processing credentials * **WhatsApp**: Meta Business API credentials * **OpenAI**: API keys for AI integrations * **Other integrations**: Various service-specific credentials ## Add New Credentials To create new integration credentials: 1. Navigate to **Workspace** > **Credentials** 2. Click the **Create new** dropdown button 3. Select the integration type you want to configure 4. Fill in the required authentication information 5. Assign a descriptive name to identify the credentials 6. Save the credentials Each integration type has different required fields. For example, SMTP requires server host, port, username, and password, while OAuth services like Google Sheets require authorization through their respective platforms. ## Managing Existing Credentials The credentials page displays all configured credentials with: * **Type**: The integration service (shown with service icon) * **Name**: Your custom name for the credentials * **Actions**: Edit and delete options ## Edit and Delete Credentials **To modify existing credentials:** 1. Find the credentials in your list 2. Click the **Edit** button (pencil icon) 3. Update the necessary fields 4. Save your changes Some credential types like WhatsApp and Google Sheets cannot be edited after creation due to OAuth token restrictions. You'll need to delete and recreate these credentials if changes are needed. **To remove credentials:** 1. Click the **Delete** button (trash icon) next to the credentials 2. Confirm the deletion in the popup dialog **Important**: Before deleting credentials, ensure they are not being used by any published bots. Deleting credentials will break integrations in live bots that depend on them. ## Using Credentials in Bots Once credentials are created, they become available for use in integration blocks: 1. Add an integration block to your bot flow 2. In the block settings, select the appropriate credentials from the dropdown 3. The block will use those credentials to authenticate with the service ## Credential Scope * **Workspace Level**: All credentials belong to a specific workspace * **Bot Access**: Any bot within the workspace can use the credentials * **Member Access**: Workspace members with appropriate permissions can manage credentials Test your credentials immediately after creation by using them in a simple bot integration to ensure they work correctly before implementing complex workflows. # Members Source: https://docs.quick.bot/app/workspace/members Manage workspace membership, roles, and permissions. Control who has access to your workspace and what they can do within it. Members can collaborate on bots, access analytics, and contribute to your workspace based on their assigned role. ## User Roles and Permissions There are two types of users in a QuickBot workspace: ### Admins * **Full workspace control**: Can manage workspace settings and delete the workspace * **Member management**: Can invite, remove, and change roles for other members * **Bot permissions**: Full access to create, edit, publish, and delete bots * **Billing access**: Can manage subscription, view usage, and handle payments * **Analytics access**: View detailed analytics and export data ### Members * **Bot creation**: Can create, edit, and collaborate on bots within the workspace * **Limited management**: Cannot manage workspace settings or invite other members * **Analytics access**: Can view bot performance and analytics * **Collaboration**: Can work with other members on every bot of the workspace ## Workspace Members The members table displays: * **Name**: Member's display name (if provided) * **Email**: Member's email address * **Role**: Current role (Admin or Member) * **Status**: Active (confirmed) or Pending (invitation sent but not accepted) * **Invite link**: Option to resend the invitation email (for pending members) * **Actions**: Role management and removal options (for admins) Workspace member limits are determined by your billing plan. When you reach your member limit: * An upgrade prompt will appear * New invitations will be disabled until you upgrade * An "Upgrade Plan" button provides quick access to billing options ## Inviting New Members 1. Enter email address of the person you want to invite. 2. Select the role from the dropdown. 3. Click "Invite" to send the invitation. After sending an invitation, the invitation appears in the members table with "Pending" status. The invitee receives an email with instructions to join. Once accepted, the status changes to "Active" Pending invitations count toward your member limit. ## Actions for Admins As an admin, you can manage member roles and remove members from the workspace. Use the actions menu (three dots) next to each member to access these options. **Immediate Effect**: Removing a member immediately revokes their access to the workspace, all bots, and associated data. They will no longer be able to access any workspace resources. # Settings Source: https://docs.quick.bot/app/workspace/settings Manage your workspace configuration. * **Icon**: Change the workspace icon. * **ID**: View the workspace ID. you can't change it. * **Delete Workspace**: Permanently delete the workspace. Deleting a workspace will permanently remove all associated bots, analytics, and member data. This action cannot be undone. # API Source: https://docs.quick.bot/builder/deploy/api Your bot can also be executed with HTTP requests. This is useful if you want to integrate your bot with another service or if you want to use it in a different programming language. ## Usage 1. All your requests need to be authenticated with an API token. [See instructions](/api/general). 2. To start the chat, send a POST request to `https://viewer.quick.bot/api/v1/conversations` The first response will contain a conversationId that you will need for subsequent requests. 3. To send replies, send POST requests to `https://viewer.quick.bot/api/v1/conversations//messages` With the following JSON body: ```json theme={null} { "message": "This is my reply" } ``` Check out the [Start chat API reference](/api/chat/conversations) for more information # Link and Domain Source: https://docs.quick.bot/builder/deploy/general In the **Deploy** tab, you can find your bot's URL in the sidebar and the option to add a custom domain. ## Your Bot's URL Here, you can customize the bot's ID. For example, if you set it to `my-awesome-bot`, your bot's URL will become `https://viewer.dev.quick.bot/my-awesome-bot`. ## Custom Domain If you have your own domain, you can use it as your bot's URL. 1. Click in **add my domain** and then **+ New Domain**. 2. Add your domain and copy the generated record. 3. In your DNS Provider paste the generated record for your domain. custom domain Publishing features may be restricted based on your plan: * **Custom domains**: Paid plans only * **Embed customization**: Advanced on higher tiers * **WhatsApp integration**: Enterprise plans # Web Source: https://docs.quick.bot/builder/deploy/web Our web client provides three display modes and multiple customization options to seamlessly integrate your bot into any web application. **Display modes**: * **Bubble**: Embeds the bot as a "chat bubble" at the bottom right corner of your site. Can be triggered automatically or with a click. It can also come with a "proactive message". * **Popup**: Embeds the bot in a Popup that overlays your website. It can be triggered after a delay or with a click of a button for example * **Standard**: Embeds the bot in a box with the size of your choice anywhere on your app. This is what is used on QuickBot homepage: You can also set the width to `100%` and the height to `100vh` to make it take the entire page dimensions **Customization options**: * Theme and styling * Trigger conditions * User identification * Pre-filled variables *** ## Integration You can get the standard HTML and Javascript code by clicking on the "Javascript" button in the "Deploy" tab of your bot. There are also appropriate instructions to deploy your bot in your platform of choice, make sure to head over the `Deploy` tab of your bot and select the platform you want to deploy your bot on. Here we will explain you the general integration steps for any platform. ### Code snippet Copy and paste the following code in your website HTML, ideally in the `` section: ```html theme={null} ``` This code is creating a container with a 100% width (will match parent width) and 600px height. ### Multiple bots If you have different bots on the same page you will have to make them distinct with an additional `id` prop: ```html theme={null} ... ``` ### Popup You can get the popup HTML and Javascript code by clicking on the "Javascript" button in the "Deploy" tab of your bot. Here is an example: ```html theme={null} ``` This code will automatically trigger the popup window after 3 seconds. ### Bubble You can get the bubble HTML and Javascript code by clicking on the "Javascript" button in the "Deploy" tab of your bot. Here is an example: ```html theme={null} ``` This code will show the bubble and let a preview message appear after 5 seconds. ### Custom button position You can move the button with some custom CSS on your website. For example, you can place the bubble button higher with the following CSS: ```css theme={null} quickbot-bubble::part(button) {   bottom: 60px; } quickbot-bubble::part(bot) {   bottom: 140px; height: calc(100% - 140px) } ``` If you have a preview message, you'll also have to manually position it: ```css theme={null} quickbot-bubble::part(bubble-message) {   bottom: 140px; } ``` ## Commands Here are the commands you can use to trigger your embedded bot: * `QuickBot.open()`: Open popup or bubble * `QuickBot.close()`: Close popup or bubble * `QuickBot.toggle()`: Toggle the bubble or popup open/close state, * `QuickBot.showPreviewMessage()`: Show preview message from the bubble, * `QuickBot.hidePreviewMessage()`: Hide preview message from the bubble, * `QuickBot.setPrefilledVariables(...)`: Set prefilled variables. Example: ```js theme={null} QuickBot.setPrefilledVariables({ Name: 'Jhon', Email: 'john@gmail.com', }) ``` For more information, check out [Additional configuration](#additional-configuration). * `QuickBot.setInputValue(...)`: Set the value in the currently displayed input. You can bind these commands on a button element, for example: ```html theme={null} ``` ## Callbacks If you need to trigger events on your parent website when the user interact with the bot, you can use the following callbacks: ```js theme={null} QuickBot.initStandard({ botId: 'your-bot-id', onNewInputBlock: (inputBlock) => { console.log('New user block displayed', inputBlock.id) }, onAnswer: (answer) => { console.log('Answer received', answer.message, answer.blockId) }, onInit: () => { console.log('Bot initialized') }, onEnd: () => { console.log('Bot ended') }, }) ``` ## Variables You can prefill the bot variable values in your embed code by adding the `prefilledVariables` option. Here is an example: ```js theme={null} QuickBot.initStandard({ botId: 'your-bot-id', prefilledVariables: { varURL: 'https://my-site.com/account', varName: 'Francisco', }, }) ``` This will prefill the `varURL` variable with "[https://my-site.com/account](https://my-site.com/account)" and the `varName` variable with "Francisco". More info about variables: [here](/builder/editor/variables). Note that if your site URL contains query params (i.e. [https://viewer.quick.bot/my-publicid?varName=John\&varSurname=Doe](https://viewer.quick.bot/my-publicid?varName=John\&varSurname=Doe)), the variables will automatically be injected to the bot. So you don't need to manually transfer query params to the bot embed configuration. # WhatsApp Source: https://docs.quick.bot/builder/deploy/whatsapp You can deploy your bot to **WhatsApp** using one of two methods. Choose the one that best fits your needs. Once your number is connected, you can start chatting with your bot on WhatsApp immediately. ## Deploy via Meta Cloud API Whatsapp deploy API 1. Go to your bot’s **Deploy** tab. 2. Click the **WhatsApp (API)**. 3. Choose between **New number** or **Existing number**. * **New Number**: lets you set up a new WhatsApp Business account from scratch through Quick.bot. * **Existing number**: use an existing WhatsApp Business number. 4. Accept all checkbox. 5. Click in **Connect with Facebook**. 6. Follows the instructions in facebook 7. After you finish the facebook authentication, you will be redirected back to the deploy page 8. Now your Bot is connected to your number. *** ## Deploy via QR Whatsapp deploy QR You need an existing business account to deploy via this method. If you don't have an existing number, we recommend you to deploy via API. 1. Go to your bot’s **Deploy** tab. 2. Click the **WhatsApp (QR)**. 3. Accept all checkbox. 4. Click in **Connect with Facebook**. 5. Now in Facebook, select your businnes portfolio. 6. Select **Connect a WhastApp Business App**. 7. Enter your Phone number. 8. Scan the QR using the Whatsapp Business App: * Open Whatsapp Business App (WA Business). * Go to settings. * Go to Linked Devices. * Now you can scan the QR. 9. Follow the remaining instructions, then click **Finish**. 10. After you finish the facebook authentication, you will be redirected back to the deploy page. 11. Now your Bot is connected to your number. ## FAQ You can integrate as many numbers as you need. QuickBot does not provide these numbers — you must use your own Meta application. Yes. You’ll need to configure a **Start bot condition** for each bot so the correct one triggers when a user starts a conversation. Integration uses the official **WhatsApp Business Platform** from Meta. Currently, the first **1,000 service conversations per month** are free. More details: Meta Pricing Documentation . This may be caused by a mismatch between the WhatsApp number shown in your WhatsApp profile settings and the number entered in QuickBot. For example, in Brazil some users have two numbers: one with 8 digits and another with 9. You must enter the exact number displayed in your WhatsApp profile for the bot to work correctly. # Audio Source: https://docs.quick.bot/builder/editor/blocks/agent/audio The Audio agent block allows you to play audio content to your users. You can either upload an audio file or provide a direct URL to an audio resource. Audio bubble ## Configuration Options ### Audio Source The Audio block provides two methods to add audio content: * **Upload**: Upload an audio file directly from your device * **Embed Link**: Provide a direct URL to an audio file hosted elsewhere ### Autoplay Setting You can enable or disable automatic playback of the audio when the block is displayed. Note that autoplay behavior is subject to browser policies and user interactions. ## Supported Features * **Variable Support**: The audio URL can include variables that will be dynamically replaced at runtime * **Audio Controls**: Users can play, pause, and control the audio playback * **Responsive Design**: The audio player adapts to different screen sizes with a maximum width constraint ## Troubleshooting ### The first audio bubble is not autoplaying This is expected behavior. Most web browsers have policies that prevent audio from playing automatically without user interaction. The user needs to interact with the page before audio can be played automatically. ### The audio is not playing on iOS / Safari This typically indicates that your audio file is malformed or uses an unsupported format. Depending on the source of your audio file, ensure the encoding is done correctly. To verify the file integrity: 1. Download the audio file to your computer 2. Try playing it locally with your system's media player 3. If it doesn't play locally, re-encode the file using standard audio formats (MP3, WAV, OGG) ### Variables not resolving in audio URLs If you're using variables in your audio URL and they're not being replaced: 1. Ensure the variable exists in your bot's variable list 2. Check that the variable name is spelled correctly 3. Verify the variable has a value assigned before the audio block is reached # Embed Source: https://docs.quick.bot/builder/editor/blocks/agent/embed The Embed agent block allows you to display websites, iframe content, or multimedia from various sources to your users. Not all websites allow embedding due to security policies (X-Frame-Options). If you see a blank space, it means the website you're trying to embed doesn't allow iframe embedding. Embed bubble To use this block, paste any embeddable URL, an HTML `