---
title: "Zendesk Slack integration with an AI agent: tickets, notes, replies | Chickpea"
description: "A Zendesk Slack integration you talk to. Give a channel an AI teammate connected to Zendesk. Ask it to find a ticket, open one from a thread, or draft a reply."
canonical: https://chickpea.co/connectors/zendesk
keyword: "Zendesk AI agent in Slack"
verified: 2026-09-17
---

# A Zendesk AI agent that answers in your Slack channels.

> Chickpea gives a channel a named AI teammate that holds its own Zendesk connection: a Zendesk Slack integration you talk to. Ask it what is still open, find the ticket someone means, open one from a thread, or leave an internal note. It answers in the channel, with a link into Zendesk.

Facts checked against the sources on September 17, 2026. The HTML page is at https://chickpea.co/connectors/zendesk; every connector is listed at https://chickpea.co/connectors; the site index for agents is at https://chickpea.co/llms.txt.

**Zendesk** (Zendesk, Inc., https://www.zendesk.com): Search and update tickets, users, organizations, and help-center content. Category: Business and support. Lane: Direct API. Sign in: API token.

**Chickpea**: an open source Slack app that gives a workspace named AI teammates, each with its own handle, instructions, memory, connected accounts, schedules, and model, deployed to your own Cloudflare account or a Node host.

## What people ask it
The teammate in these examples is @support, published to #billing.

### Check the queue, find the ticket
- @support what's still open in Zendesk this morning, and who has each one
- @support find the ticket where the customer said the invoice was charged twice

Reads never need confirmation. Search takes the same query language as the search box in Zendesk, so "open and unassigned" becomes `status<solved assignee:none`. A long answer comes back as a table in the thread.

### Open a ticket from a thread
- @support turn this thread into a ticket for Northwind, priority high
- @support open a ticket: checkout fails on Safari, and quote what Priya wrote above

A new ticket is a small write, so it goes straight through. What you pointed at becomes the first comment, and the reply names the ticket number, the priority it set, and links to it.

### An internal note, or a reply the customer reads
- @support add an internal note on 7204 that billing confirmed the refund
- @support reply to the customer on 7204 that the duplicate charge is refunded

An internal note is a comment marked `public: false`, which only agents see, so it applies at once. A public reply reaches the customer. The teammate shows the wording it would send and waits for a yes.

### Change several tickets at once
- @support assign the unassigned billing tickets from last week to me
- @support tag every ticket about the duplicate charge with refund-sep and set them to normal

One ticket updates on the spot. A change across a set comes back as the list it would touch, with the count, and nothing applies until you answer.

### On a schedule
- @support every weekday at 9am Eastern, post the tickets still open and unassigned
- @support every Friday at 4pm Pacific, list what is still open from this week

A schedule saves on the spot. It needs a time zone, runs under the Zendesk connection of the person who asked, and pauses rather than runs if that connection ever goes away.

### Example conversations

**What is open**
> **Marco:** @support what's still open in Zendesk this morning, and who has each one?
> **@support:** Five tickets are below solved. Two are unassigned, and the oldest has been open since Friday.
>
> | Ticket | Subject | Assignee | Open since |
> |---|---|---|---|
> | #7150 | Charged twice | Unassigned | Fri Sep 12 |
> | #7171 | No receipt | Priya | Mon Sep 14 |
> | #7186 | Seat count wrong | Dana | Tue Sep 15 |
> | #7198 | Card declined | Unassigned | Wed Sep 16 |
> | #7204 | Duplicate charge | Dana | Wed Sep 16 |

**Ticket from a thread**
> **Priya:** @support turn this thread into a Zendesk ticket for Northwind. Subject: checkout fails on Safari. Priority high.
> **@support:** Done. #7211 Checkout fails on Safari is open at high priority, with the thread pasted in as the first comment. Open it in Zendesk

**Reply to the customer**
> **Dana:** @support reply to the customer on 7204: the duplicate charge is refunded and the money lands in five business days.
> **@support:** This one goes to the customer, so read it first. On #7204, as a public reply: "Thanks for flagging this. The second charge on order 4821 has been refunded. It should reach your card within five business days." Send it?
> Buttons: Send the reply · Change the wording

**Every weekday**
> **Sofia:** @support every weekday at 9am Eastern, post the tickets that are still open and unassigned here, oldest first.
> **@support:** Saved. Weekdays at 9:00 AM Eastern I'll post every ticket below solved with no assignee in #billing, oldest first. First run is Thu Sep 18. Say "pause the morning list" any time.

## Connect Zendesk
1. In Chickpea Admin, open the teammate, then **Connections**, find **Zendesk**, and choose **Connect**. Or ask in Slack, `@support connect Zendesk`, and follow the link it posts.
2. Give your workspace subdomain, the `acme` in `acme.zendesk.com`. Chickpea asks for it before the credential, and that one host becomes the only address the connection may call.
3. In Zendesk, open **Admin Center → Apps and integrations → APIs → Zendesk API** and add an API token. Only an administrator can create one, and Zendesk shows the full token once.
4. Choose who uses it. **Team** is one shared credential that everyone who can use the teammate acts through. **Personal** means each member adds their own, and Zendesk records their actions as them.
5. Paste the credential Basic auth wants, the base64 of `you@acme.com/token:<api_token>`, into the write-only field. Then ask `@support what is open in Zendesk`, which reads and changes nothing.

A connection belongs to one teammate. Giving a second teammate Zendesk means a second connection with its own credential, so the teammate in #eng never inherits the support queue.

## What the teammate is handed with Zendesk
A teammate with a Zendesk connection is handed a built-in skill for the Zendesk API: the base URL with your subdomain, the shape of the JSON that comes back, pagination, and tested recipes for listing, searching, reading, creating, and updating tickets. It also spells out that a comment marked `public: false` is an internal note and `public: true` is a reply the customer reads.

The skill is open source: https://github.com/pejmanjohn/chickpea/blob/main/src/config/connector-skills.ts

## Beside Zendesk
- **Stripe:** The ticket and the charge it is about, answered in one ask
- **Asana:** An escalation becomes a task with an owner and a date
- **Linear:** A bug in a ticket becomes an issue the engineers see
- **HubSpot:** Who the account is, beside what they wrote in
- All 37 connectors: https://chickpea.co/connectors

## Questions people ask

### Can an AI agent create Zendesk tickets from Slack?
Yes. Mention the teammate, say what the ticket is about, who it is for, and how urgent it is, and it creates the ticket through the Zendesk API and replies with the number and a link. It can quote the thread you asked in as the first comment. Anything you leave out it asks about rather than inventing.

### Does Slack integrate with Zendesk?
Two ways. Zendesk ships its own Slack integration, which creates tickets from messages, adds internal notes, handles approvals, and posts ticket updates into channels when an admin sets up triggers. A Chickpea teammate is the other way. It holds a Zendesk connection and does what you ask in the channel, through the Zendesk API.

### Do I still need the Slack for Zendesk integration?
Keep it if you use its notifications. A Chickpea teammate has no way to hear from Zendesk when a ticket changes, and trigger-based updates in a channel are exactly what the official integration is for. The two run side by side, and the teammate uses the API with its own credential.

### Is this the same as Zendesk AI agents?
No. Zendesk AI agents are Zendesk's own product. They answer customers across messaging, email, and voice, they come with every Suite and Support plan, and Zendesk prices them on resolutions. A Chickpea teammate answers your team in Slack, on infrastructure you run, and only touches a ticket when someone in the channel asks.

### Does it use Zendesk's MCP server?
No. The Zendesk connector is a direct API lane. The teammate calls `<your-subdomain>.zendesk.com/api/v2` with an API token, confined to GET, POST, and PUT, and never talks to an MCP server for Zendesk, first-party or otherwise. Chickpea does use vendor MCP servers for other connectors, such as Linear and Stripe.

### Can it reply to a customer?
Yes, and it asks first. A public reply is a consequential write under the confirmation policy, so the teammate shows you the wording and waits. An internal note applies at once, because it stays inside Zendesk. Underneath sits a stricter gate. During a Slack turn, any write through a connection is refused unless the message you just sent names that action.

### Can it delete or merge tickets?
It cannot delete anything. The Zendesk lane allows GET, POST, and PUT only, so deletion is refused at the connection, whatever the teammate is asked. Merging is not in the built-in recipes either, so treat it as something to do in Zendesk rather than from the channel.

### Where does my Zendesk credential live?
On your deployment, in a write-only field. It never reaches the browser, the model's context, the tool arguments, or Slack. The model picks a connection by ID and the secret goes in at the last moment, on the way out. Disconnect the account and the stored secret is removed, and any schedule that depended on it pauses.

### Who can create the API token, and will it keep working?
An administrator, from Admin Center, on any Suite or Support plan. Note Zendesk's own deadline: since 28 July 2026 tokens unused for 30 days are deleted, and Zendesk says all API tokens stop working by 30 April 2027, with OAuth as the migration path. Check that article before you build anything long-lived on a token.

### Will it post in Slack when a ticket changes?
Not on its own. There are no Zendesk webhooks in this lane, so nothing wakes the teammate up. Ask for a schedule instead, such as a weekday morning list of tickets that are open and unassigned, and it posts that to the channel at the time you set. For event-by-event alerts, use Zendesk triggers and its own Slack integration.

## Sources
- [Chickpea docs: connector catalog, the Zendesk preset and its lane](https://docs.chickpea.co/reference/connector-catalog/)
- [Chickpea docs: connections, team and personal accounts, how a credential reaches a call](https://docs.chickpea.co/agents/connections/)
- [Chickpea docs: authority and confirmation](https://docs.chickpea.co/security/authority-and-confirmation/)
- [Chickpea docs: connect a service, including the Zendesk subdomain](https://docs.chickpea.co/agents/connect-a-service/)
- [Chickpea docs: schedules](https://docs.chickpea.co/agents/schedules/)
- [Chickpea source: the Zendesk preset (host template, path, methods, credential)](https://github.com/pejmanjohn/chickpea/blob/main/src/config/presets.ts)
- [Chickpea source: the built-in Zendesk API skill and its recipes](https://github.com/pejmanjohn/chickpea/blob/main/src/config/connector-skills.ts)
- [Zendesk: managing API tokens, and the April 2027 deadline](https://support.zendesk.com/hc/en-us/articles/4408889192858)
- [Zendesk: the Support search reference, including assignee:none](https://support.zendesk.com/hc/en-us/articles/4408886879258-Zendesk-Support-search-reference)
- [Zendesk: using the Slack for Zendesk Support integration](https://support.zendesk.com/hc/en-us/articles/4408843621530-Using-the-Slack-for-Zendesk-Support-integration)
- [Zendesk: AI agents for customer service](https://www.zendesk.com/service/ai-agents/)
- [Chickpea source on GitHub](https://github.com/pejmanjohn/chickpea)

## More
- [Ahrefs MCP in Slack](https://chickpea.co/connectors/ahrefs.md)
- [Airtable MCP in Slack](https://chickpea.co/connectors/airtable.md)
- [Asana AI agent in Slack](https://chickpea.co/connectors/asana.md)
- [Jira and Confluence MCP in Slack](https://chickpea.co/connectors/atlassian.md)
- [BugSnag MCP in Slack](https://chickpea.co/connectors/bugsnag.md)
- [Cloudflare MCP in Slack](https://chickpea.co/connectors/cloudflare-api.md)
- [Exa MCP in Slack](https://chickpea.co/connectors/exa.md)
- [Firecrawl MCP in Slack](https://chickpea.co/connectors/firecrawl.md)
- [Fireflies MCP in Slack](https://chickpea.co/connectors/fireflies.md)
- [Gamma MCP in Slack](https://chickpea.co/connectors/gamma.md)
- [Gmail AI agent in Slack](https://chickpea.co/connectors/gmail.md)
- [Gong AI agent in Slack](https://chickpea.co/connectors/gong-managed.md)
- [Google Ads AI agent in Slack](https://chickpea.co/connectors/google-ads.md)
- [Google Analytics AI agent in Slack](https://chickpea.co/connectors/google-analytics.md)
- [Google Calendar AI agent in Slack](https://chickpea.co/connectors/google-calendar.md)
- [Google Docs AI agent in Slack](https://chickpea.co/connectors/google-docs.md)
- [Google Drive AI agent in Slack](https://chickpea.co/connectors/google-drive.md)
- [Google Search Console AI agent in Slack](https://chickpea.co/connectors/google-search-console.md)
- [Google Sheets AI agent in Slack](https://chickpea.co/connectors/google-sheets.md)
- [Google Slides AI agent in Slack](https://chickpea.co/connectors/google-slides.md)
- [Granola MCP in Slack](https://chickpea.co/connectors/granola.md)
- [HubSpot AI agent in Slack](https://chickpea.co/connectors/hubspot-managed.md)
- [Hugging Face MCP in Slack](https://chickpea.co/connectors/huggingface.md)
- [incident.io MCP in Slack](https://chickpea.co/connectors/incident-io.md)
- [Intercom MCP in Slack](https://chickpea.co/connectors/intercom.md)
- [Linear MCP in Slack](https://chickpea.co/connectors/linear.md)
- [LunarCrush MCP in Slack](https://chickpea.co/connectors/lunarcrush.md)
- [Meta Ads MCP in Slack](https://chickpea.co/connectors/meta-ads.md)
- [Monday.com MCP in Slack](https://chickpea.co/connectors/monday.md)
- [Neon MCP in Slack](https://chickpea.co/connectors/neon.md)
- [Notion Slack integration with an AI agent](https://chickpea.co/connectors/notion-managed.md)
- [PostHog MCP in Slack](https://chickpea.co/connectors/posthog.md)
- [Sentry MCP in Slack](https://chickpea.co/connectors/sentry.md)
- [Stripe MCP in Slack](https://chickpea.co/connectors/stripe.md)
- [Supabase MCP in Slack](https://chickpea.co/connectors/supabase.md)
- [YouTube AI agent in Slack](https://chickpea.co/connectors/youtube-managed.md)
- [All connectors](https://chickpea.co/connectors.md)

## Try Chickpea
- Site: https://chickpea.co/
- Deploy to Cloudflare: https://deploy.workers.cloudflare.com/?url=https://github.com/pejmanjohn/chickpea
- Source, Apache 2.0: https://github.com/pejmanjohn/chickpea
- Docs: https://docs.chickpea.co
