Integrations Overview
What it is
BotBat integrations connect the platform to external systems so that data flows seamlessly in and out of your customer engagement workflows. Rather than operating as an isolated messaging tool, BotBat becomes a connected node in your broader technology stack, synchronizing contacts, triggering external processes, and receiving data from upstream systems.
There are four integration categories, each serving a distinct purpose. Channel integrations connect messaging providers (WhatsApp, Telegram, SMS, and others) and are managed on the Channels page. CRM integrations synchronize contact records, conversation history, and deal data with external CRM platforms. Webhook integrations enable event-driven communication by sending HTTP payloads to external endpoints when events occur in BotBat, or by receiving payloads from external systems to trigger BotBat workflows. API keys provide authenticated access to the BotBat REST API for custom development, scripting, and programmatic control.
The Integrations page in BotBat serves as the central hub for managing CRM connections, webhooks, and API keys. Channel integrations are linked here for reference but are configured on the dedicated Channels page.

Integration categories
The table below provides a detailed comparison of each integration type, including the direction of data flow, the authentication method, and common use cases.
| Category | Data Flow Direction | Authentication | Common Use Cases |
|---|---|---|---|
| Channel integrations | Bidirectional (messages in and out) | Platform-specific tokens and OAuth | WhatsApp, Telegram, Messenger, SMS, Webchat, Email |
| CRM integrations | Bidirectional (contact and deal sync) | OAuth or API key | Salesforce, HubSpot, Zoho CRM, Pipedrive |
| Webhooks (outgoing) | Outbound (BotBat to external) | Optional HMAC signing secret | Event notifications, analytics pipelines, data warehouses |
| Webhooks (incoming) | Inbound (external to BotBat) | Unique URL token | Workflow triggers, e-commerce order events, CRM updates |
| API keys | Both (programmatic API access) | Bearer token in HTTP header | Custom apps, backend services, migration scripts, reporting |
When to use
Connecting external CRM data. When your sales team uses a CRM like Salesforce or HubSpot, integrating it with BotBat ensures that contact information, conversation history, and deal stages stay synchronized. New contacts created in BotBat can automatically appear in your CRM, and updates made by sales reps in the CRM are reflected in BotBat. This eliminates manual data entry and reduces the risk of stale or conflicting records.

Building custom applications. If your engineering team needs to interact with BotBat programmatically, API keys unlock the full REST API. You can send messages, create and update contacts, trigger workflows, and pull analytics data from your own applications, backend services, or scripts. API keys are also used during data migrations when moving contacts or conversation history into BotBat from another platform.
Triggering external actions from BotBat events. Outgoing webhooks let you notify external systems in real time when something happens inside BotBat. For example, you can send a webhook payload to your analytics platform every time a campaign completes, push a notification to Slack when a VIP customer starts a conversation, or update your data warehouse whenever a contact attribute changes.

Triggering BotBat workflows from external events. Incoming webhooks work in the opposite direction. Your e-commerce platform can send an order-confirmation event to BotBat, which triggers a workflow that sends the customer a WhatsApp message with their receipt. Your CRM can notify BotBat when a deal closes, triggering an onboarding sequence. Any system capable of making an HTTP POST request can initiate a BotBat workflow.
Data flow architecture
Understanding how data moves between BotBat and external systems helps you design integrations that are efficient and free of duplication.
Inbound data flows from external systems into BotBat. This happens through incoming webhooks (external systems POST data to a BotBat-generated URL), through API calls made with an API key (your application calls the BotBat REST API), and through CRM sync pulls (BotBat periodically fetches updated records from the CRM). Inbound data can create contacts, update attributes, trigger workflows, and send messages.
Outbound data flows from BotBat to external systems. This happens through outgoing webhooks (BotBat POSTs event payloads to your endpoint), through CRM sync pushes (BotBat sends new or updated records to the CRM), and through API responses (your application reads data from the BotBat REST API). Outbound data enables real-time event processing, reporting, and cross-system consistency.
Bidirectional sync combines both directions. CRM integrations typically operate bidirectionally, synchronizing records on a schedule or in real time. Conflict resolution rules (such as "most recent update wins" or "CRM is the source of truth") can be configured per integration to prevent data collisions.

Steps
-
Navigate to Integrations. Click "Integrations" in the main navigation sidebar to open the integrations management page.
-
Review active integrations. The page displays all configured integrations grouped by category. Each integration shows its name, type, connection status (Connected, Error, Inactive), and the timestamp of the last successful sync or event delivery.
-
Connect a CRM. Click on a CRM provider card to start the connection flow. For OAuth-based CRMs (Salesforce, HubSpot), you will be redirected to the provider's authorization page. For API-key-based CRMs, enter the credentials in the setup form. Once connected, configure the sync direction, field mappings, and sync frequency.
-
Manage API keys. Click the "API Keys" tab to create, view, and revoke API keys. Detailed instructions are on the Set Up Integrations page.

-
Configure webhooks. Click the "Webhooks" tab to add outgoing webhook endpoints, select events to subscribe, and view delivery logs. See the Set Up Integrations page for step-by-step instructions.
-
Monitor integration health. Check integration status indicators regularly. A "Connected" status with a green indicator means the integration is operating normally. An "Error" status typically indicates an expired token, an unreachable endpoint, or a permissions issue. Click the integration to view error details and remediation steps.
Common pitfalls
Too many overlapping integrations. If multiple integrations push the same data into BotBat (for example, two CRM connections syncing the same contact list), you may end up with duplicate records or conflicting attribute values. Map out your data flows on paper before adding new integrations and ensure each data path is unique.
Not monitoring webhook delivery. Outgoing webhooks can silently fail if the receiving endpoint goes down, returns errors, or times out. BotBat retries failed deliveries, but if all retries are exhausted the event is marked as permanently failed. Check webhook delivery logs on a regular schedule and set up external monitoring on your receiving endpoints.
Storing API keys insecurely. API keys grant authenticated access to your BotBat account's REST API. Never expose them in client-side JavaScript, public Git repositories, or unencrypted configuration files. Use a secrets manager or environment variables, and rotate keys periodically.
Ignoring rate limits. Both the BotBat API and external services enforce rate limits. A custom integration that sends requests in a tight loop without backoff logic will hit these limits and start receiving 429 (Too Many Requests) responses. Build exponential backoff and retry logic into every custom integration.
Start by mapping your integration needs on paper: which systems need to send data to BotBat, which need to receive data from BotBat, and which need bidirectional sync. This prevents over-engineering and helps you choose the right integration type for each connection.
- Integrations Main Page
- CRM Integrations
- Webhook Management
- API Keys