# Deploy & channels overview

> Deploy puts one Bookbag agent everywhere your customers are — a website widget, email, WhatsApp, Slack, Instagram, and Facebook Messenger — all answering from the same knowledge.

A Bookbag agent isn't tied to one place. Once you've trained it, the **Deploy** tab lets you connect it to every surface your customers use — and the *same* agent, with the *same* knowledge and guardrails, answers consistently on all of them.

Open any agent and go to **Deploy** to see the **All channels** gallery. Each card is a channel you can turn on: the website widget and a hosted help page are first-party surfaces you can enable instantly, and the rest connect to outside platforms with a short setup.

> **START WITH THE WIDGET:** The website widget is the fastest path to a live agent — one script tag and you're done. Add messaging channels once the widget is working. See [Website widget](/docs/deploy/web-widget).

## Available channels

Channels fall into three groups by how they connect:

| Channel | Type | How it connects |
| --- | --- | --- |
| Website widget | First-party | A `<script>` embed you paste into your site. Live instantly. |
| Help page | First-party | A Bookbag-hosted page at a path you choose. No code. |
| Email | Messaging | Inbound email is forwarded to a webhook; the agent drafts a reply. |
| WhatsApp | Messaging | Meta Cloud API webhook + access token. Real two-way messaging. |
| Slack | Messaging | Slack Events API webhook + bot token. Answers in channels and DMs. |
| Instagram | Messaging | Meta Graph webhook for Instagram DMs. |
| Facebook Messenger | Messaging | Meta Graph webhook for your Page inbox. |

## How messaging channels work

Every messaging channel follows the same pattern. You point the platform at a Bookbag **inbound webhook**, Bookbag normalizes the incoming message into the shared chat runtime, the agent generates a grounded reply, and Bookbag sends that reply back out through the platform.

1. **Bind the channel** — Enable the channel on the Deploy tab and save the platform's credentials (bot token, access token, etc.). This creates a channel binding on the agent.
2. **Register the webhook** — Copy the inbound webhook URL from the channel card and paste it into the platform's developer settings. Meta and Slack send a one-time verification request that Bookbag answers automatically.
3. **Bookbag runs the agent** — When a customer messages, the platform POSTs to your webhook. Bookbag matches it to the right agent, retrieves the relevant knowledge, and composes a reply.
4. **The reply goes back out** — For asynchronous channels (WhatsApp, Slack, Messenger, Instagram) Bookbag pushes the answer back through the platform's send API using the credentials you saved.

> **ONE INBOUND URL PER CHANNEL TYPE:** Inbound webhooks live at `https://app.bookbag.ai/channels/<type>/webhook` — for example `.../channels/whatsapp/webhook`. The channel card on the Deploy tab shows the exact URL for each platform.

## One agent, consistent everywhere

Because all channels run the same agent, you only maintain knowledge and guardrails in one place. A change to a Q&A pair or the system prompt updates every channel at once — there's no per-channel copy to keep in sync.

- **Same knowledge** — every channel retrieves from the agent's sources.
- **Same guardrails** — the system prompt and fallback behavior apply everywhere.
- **Same actions** — lead collection, escalation, and custom actions work on every channel.
- **Unified inbox** — conversations that escalate land in the same [Help Desk](/docs/help-desk/overview), regardless of channel.

## What's next

- [Website widget](/docs/deploy/web-widget) — Embed the chat bubble on your storefront in one line.
- [WhatsApp](/docs/deploy/whatsapp) — Connect the Meta Cloud API for two-way WhatsApp support.
- [Slack](/docs/deploy/slack) — Answer questions in Slack channels and DMs.
- [Help Desk](/docs/help-desk/overview) — Handle escalated conversations from every channel in one inbox.
