# Agent bots
| Item | Details |
|—|—|
| Who it is for | Administrators |
| Menu location | **Settings → Bots** |
| Plan dependency | Requires Agent Bots |
An Agent Bot pushes messages to your own service (or Dialogflow, etc.) over a **webhook**, and that external program decides the reply. Like [Captain](./7-captain-assistant) it is a non-human assignee — **do not let both fight for auto-reply on the same inbox**.
—
## 1. When to use it
– You already have an in-house dialogue engine
– You want Dialogflow or another third-party NLU (Dialogflow can also be connected per inbox under [Integrations](./25-integrations))
– You need fully custom buttons / API flows
If you only need “answer from help docs”, prefer Captain and skip running your own model.
—
## 2. Configuration outline
1. **Settings → Bots → Add**.
2. Enter name and webhook URL (HTTPS required).
3. The system issues a token for sending messages — store it in your server secret store.
4. Set the bot as an inbox assignee / subscribe to events per the docs.
5. Verify with a test conversation: inbound hits your URL, replies appear in the workspace.
Webhooks should respond within a few seconds; long work must be asynchronous. Validate Chatips signatures when the docs require it, to block forged requests.
—
## 3. Conversation status
While a bot is assignee, status is often **Pending**. To hand over: remove the bot assignee, set Open if needed, and assign an agent. Captain’s “hand over” tool is similar.
—
## 4. Frequently asked questions
**Events arrive but replies do not show?** Wrong token, wrong account / conversation ID, or message payload does not match the API.
**Duplicate replies?** Bot, automation and Captain all sending. Keep a single auto path.
—
## Related articles
– [Captain assistant](./7-captain-assistant)
– [Integrations](./25-integrations)
– [Channels and inboxes](./12-channels-and-inboxes)