Prerequisites
- Messaging for Web set up in Zendesk with a working Web Widget. See Zendesk’s guide: Getting started with messaging.
- Zendesk Suite Professional plan or above.

Step 1: Create a Conversations Integration
Zendesk guide: Creating conversations integrations in Admin Center.- In Zendesk Admin Center, go to Apps and integrations > Integrations > Conversations integrations.
- Click Create integration and name it (for example, “IrisAgent Integration”).
- Set the webhook:
- Target URL:
https://api1.irisagent.com/v1/webhooks/zendesk - Events:
conversation:create,conversation:message, andswitchboard:releaseControl
- Target URL:
- Click Save.
- Copy the Webhook ID and Shared secret from the integration details page.

switchboard:releaseControl. Saving in IrisAgent does not change Zendesk event subscriptions.
Step 2: Generate API Keys
- In your Conversations integration, open the API Keys tab.
- Click Create API key and name it.
- Click the key and copy the App ID, Key ID, and Secret key. The secret key is shown only once.

Step 3: Configure IrisAgent
- In IrisAgent, go to Deploy > Chat channels.
- On the Zendesk Sunshine card, click Configure.
- Turn on Enable Chat Automation.
- Under Webhook Credentials, enter the Webhook ID and Shared secret.
- Under API Key, enter the App ID, Key ID, and Key Secret (the Zendesk secret key).
- Click Save.
Step 4: Limit IrisAgent to Specific Widgets or Brands (Optional)
The integration is account-wide, so by default IrisAgent answers in every Web Widget and brand. To limit it, use the Chat Filter. You do not need a second integration or API key. The filter is an allow-list. When it is on, IrisAgent answers only matching conversations and ignores the rest, including any new widget you launch later.- In the Zendesk Sunshine Configuration panel, turn on Chat Filter.
- Pick a Filter Mode:
- Simple: enter the Brand ID. The read-only Generated Query shows the resulting expression.
- Advanced: enter an expression in Query (examples below).
- Click Save.
Advanced expressions
The expression must return true or false. Invalid expressions are rejected when you save.
You cannot filter on ticket fields or tags. IrisAgent replies before the ticket exists.
Finding IDs
- Brand ID: Zendesk Admin Center > Account > Brands, open the brand. The ID is in the URL.
- Messaging integration ID: send a test message through each widget, then contact IrisAgent support. We can read the brand and integration ID each widget reports.
Step 5: Configure Human Handoff and Zendesk Routing
Zendesk webhook conversations use the chatbot configuration marked Default. Add these settings there.- Go to AI Products > Chatbot and click Configure and deploy.
- Select the Default configuration and open the Handoff tab.
- Set Method to Start a live chat.
- In Zendesk ticket tags, enter comma-separated tags (optional). Each tag can be up to 80 characters with no spaces. You can add up to 20 tags. Example:
escalated_to_human, priority_support - Click Update Configuration.
- Sends the procedure’s handoff response.
- Adds your tags to the active Zendesk ticket.
- Passes Switchboard control to Zendesk Agent Workspace and stops replying.
switchboard:releaseControl after the human session. A new ticket alone does not reset the handoff.
Route the tagged ticket in Zendesk
Create a Zendesk trigger on your tag (for example,escalated_to_human) that sets the group, priority, or skills. IrisAgent does not pick a Zendesk group.
Verify
- Send a test message through your Web Widget.
- Trigger Escalate to human.
- Check that the ticket has your tags, your trigger routed it, and IrisAgent stopped replying.
- Close the ticket, send another message as the same user, and confirm IrisAgent replies again.
- All credentials are correct.
- The webhook subscribes to all three events. If IrisAgent stays silent after a human session, confirm Zendesk delivered the release event.
- Your test widget matches the Chat Filter, if you set one. A filter that matches nothing stops all answers.
- The Default chatbot configuration uses Start a live chat with valid tags.
- Zendesk is connected as a ticketing source (needed for tagging).
- Your trigger conditions match the exact tag.