iachat/app/controllers/api/v1
Sojan Jose 397b0bcc9d
feat: allow agent bots to toggle typing status (#13705)
Agent bot conversations now feel more natural because AgentBot tokens
can toggle typing status, so end users see a live typing indicator in
the widget while the bot is preparing a reply. This keeps the
interaction responsive and human-like without weakening token
authorization boundaries.

## Closes
- https://github.com/chatwoot/chatwoot/issues/8928
- https://linear.app/chatwoot/issue/CW-5205

## How to test
1. Open the widget and start a conversation as a customer.
2. Connect an AgentBot to the same inbox.
3. Trigger `toggle_typing_status` with the AgentBot token
(`typing_status: on`).
4. Confirm the customer sees the typing indicator in the widget.
5. Trigger `toggle_typing_status` with `typing_status: off` and confirm
the indicator disappears.

## What changed
- Added `toggle_typing_status` to bot-accessible conversation endpoints.
- Restricted bot-accessible endpoint usage to `AgentBot` token owners
only (non-user tokens like `PlatformApp` remain unauthorized).
- Updated typing status flow to preserve AgentBot identity in
dispatch/broadcast paths.
- Added request coverage for AgentBot success and PlatformApp
unauthorized behavior.
- Added Swagger documentation for `POST
/api/v1/accounts/{account_id}/conversations/{conversation_id}/toggle_typing_status`
and regenerated swagger artifacts.
2026-03-05 08:13:52 -08:00
..
accounts feat: allow agent bots to toggle typing status (#13705) 2026-03-05 08:13:52 -08:00
integrations feat: Slack link unfurling (#7940) 2023-09-29 19:35:56 +05:30
profile feat: MFA (#12290) 2025-09-18 20:19:24 +05:30
widget fix: disable email transcript for free plans (#13509) 2026-02-11 21:21:36 +05:30
accounts_controller.rb feat: Conversation workflows(EE) (#13040) 2026-01-27 11:36:20 +04:00
notification_subscriptions_controller.rb fix: Remove the notification subscription if present (#5510) 2022-09-27 12:36:57 -07:00
profiles_controller.rb feat: Ability to reset api_access_token (#11565) 2025-05-29 14:42:13 +05:30
webhooks_controller.rb chore: Upgrade Exception tracking (#4638) 2022-05-09 14:23:19 +05:30