Switch the Zendesk widget to the ChaosDesk messenger
Updated Nov 9, 2026
Available on: Starter, Growth, Pro, Enterprise.
The ChaosDesk messenger is a drop-in replacement for the Zendesk Messaging Web Widget. The snippet keeps its shape: you change one URL and the key, and your zE() calls keep working.
1. Set up the messenger
In Admin Center, Channels, Messenger, for each brand that had the Zendesk widget:
- Turn the messenger on and set the name, colours, launcher and greeting.
- List the Allowed domains that embed the snippet.
- Rebuild your answer bot as an answer flow, and pick the hand-off group.
- Copy the Embed snippet.
2. Swap the snippet
Before:
<script id="ze-snippet" src="https://static.zdassets.com/ekr/snippet.js?key=YOUR-ZENDESK-KEY"></script>
After:
<script id="ze-snippet" src="https://app.chaosdesk.io/messenger.js?key=YOUR-CHAOSDESK-KEY"></script>
Keep id="ze-snippet"; async works as it did. Do the same in your apps' web views. Your ChaosDesk help centre adds the messenger by itself once the brand's messenger is on, and the older widget.js snippet now loads this same messenger, so no page needs two.
3. Signed-in customers
If you use loginUser, create a new shared secret in Authenticated customers (JWT) and sign your tokens with it, with the Key id as kid. The claims are the same as Zendesk's. Never reuse the old secret.
4. Check
- Update your Content Security Policy: add the ChaosDesk host to
script-src,frame-srcandconnect-src, and remove the Zendesk hosts. - On a test page: open the messenger, send a message, reload (the history stays), sign in, and check the unread badge when an agent replies.
Visitors start a new conversation after the switch. Their old Zendesk conversations are in ChaosDesk as imported tickets.
Related
Was this article helpful?
Still need help?
Submit a request