Skip to main content

Zendesk Support

Search, read, create, update and comment on Zendesk tickets; read users, organizations and Help Center articles.

Connect a Zendesk Support account with an OAuth client to work its tickets end to end: search with Zendesk's query syntax, read tickets and their conversations, open new tickets, reassign and retag them, reply publicly or leave internal notes, and set status. Also reads people, organizations and Help Center articles. Authenticates with an OAuth client_credentials grant - API tokens are not supported, because Zendesk is removing them.

Connect

Credential fieldRequiredWhere it comes from
OAuth client id (CLIENT_ID)YesThe OAuth client's unique identifier from Admin Center → Apps and integrations → APIs.
OAuth client secret (CLIENT_SECRET)YesThe secret generated with the OAuth client. Zendesk shows it once, at creation.
SettingRequiredWhat it is
Account URL (ACCOUNT_URL)YesThe account's full base address, e.g. https://acme.zendesk.com or a host-mapped https://support.acme.com - every request stays on this host. Not a bare subdomain.
Scopes (SCOPES)NoSpace-separated OAuth scopes to request. Defaults to "tickets:read tickets:write users:read organizations:read hc:read" - narrow it only if the OAuth client was granted fewer, since Zendesk rejects the whole sign-in otherwise.

Tools

ToolAccessWhat it does
Who am I (yekar.zendesk-support.me)ReadThe Zendesk identity this connection acts as, plus the OAuth scopes it requests. Because the connection authenticates with a client_credentials grant, EVERY action is attributed to this one user - the admin who created the OAuth client - regardless of who triggered the automation, and their role is the permission ceiling. Call this first to verify the connection.
List tickets (yekar.zendesk-support.list-tickets)ReadA page of the account's tickets - subject, status, priority, requester/assignee, tags and dates (no description; use Get ticket for that). Narrow by assignee, requester or organization, and page with the returned cursor. Zendesk returns no total for cursor pages, so this reports whether more exist rather than a count - use Search when you need a match count.
Get ticket (yekar.zendesk-support.get-ticket)ReadOne ticket in full - subject, status, priority, type, requester/assignee/organization, tags, dates, custom fields, and its opening description (capped, with a truncated flag). Use List ticket comments for the conversation that followed.
List ticket comments (yekar.zendesk-support.list-ticket-comments)ReadA ticket's conversation, oldest first. Each comment carries an explicit public flag: TRUE means the end user can see it, FALSE means it is an internal agent-only note - never repeat the contents of a private note to a customer, and never assume a comment is public because it reads like one.
Search (yekar.zendesk-support.search)ReadSearch the account with Zendesk's query syntax across tickets, users and organizations. count is Zendesk's own match count for the whole query, not this page. Note the hard ceiling: the Search API returns at most 1000 results however you paginate, so when ceilingReached is true the real number of matches is unknown and larger - narrow the query rather than believing you have seen everything.
List users (yekar.zendesk-support.list-users)ReadA page of the account's people - name, email, role, organization. Filter by role or organization, and page with the returned cursor. Zendesk returns no total for cursor pages, so this reports whether more exist rather than a count; use Search for a match count.
Get user (yekar.zendesk-support.get-user)ReadOne person by id - name, email, role, organization, active flag and timezone.
Get organization (yekar.zendesk-support.get-organization)ReadOne organization by id - name, domain names, tags, and the details/notes fields agents keep account context in.
List help center articles (yekar.zendesk-support.list-articles)ReadA page of the Help Center's knowledge base articles - title, section, locale, draft/outdated flags and URL (no body; use Get help center article for that). count is the Help Center's own total for the query.
Get help center article (yekar.zendesk-support.get-article)ReadOne Help Center article in full, its HTML body reduced to plain text and capped with a truncated flag. Check the draft and outdated flags before quoting one to a customer.
Create ticket (yekar.zendesk-support.create-ticket)WriteOpen a new ticket with an opening comment. The comment's visibility is an explicit argument, not a default: public: true is emailed to the requester, public: false is an internal note. The ticket is submitted by the connection's identity - the admin who owns the OAuth client - so set requesterId when filing on someone else's behalf.
Update ticket (yekar.zendesk-support.update-ticket)WriteEdit a ticket's subject, priority, type, assignee, group, organization or tags. Omitted fields keep their value; tags REPLACE the whole set when passed. Use Set ticket status to change status and Add ticket comment to reply.
Add ticket comment (yekar.zendesk-support.add-ticket-comment)WriteAdd a comment to a ticket. public is a REQUIRED argument with no default, because it decides whether an end customer receives these words: true sends a reply to the requester, false records an internal agent-only note. The comment is authored by the connection's identity - the admin who owns the OAuth client - so it appears under that person's name.
Set ticket status (yekar.zendesk-support.set-ticket-status)WriteSet a ticket's status to an absolute value: new, open, pending, hold, solved or closed. Note that "closed" is TERMINAL - Zendesk permits no further edits or comments on a closed ticket, and nothing here can undo it. Prefer "solved", which Zendesk closes on its own schedule.

Notes

  • In Zendesk go to Admin Center → Apps and integrations → APIs → Zendesk API → OAuth clients, create a client, and paste its unique identifier (client id) and secret here. The secret is shown once.
  • Grant the OAuth client these scopes: tickets:read, tickets:write, users:read, organizations:read, hc:read. Zendesk fails the whole sign-in if it is asked for a scope the client does not have - if you granted fewer, narrow the Scopes property to match.
  • Set the Account URL to the full base address - https://acme.zendesk.com, or your host-mapped https://support.acme.com. A bare subdomain will not work.
  • EVERY action is attributed to the admin who created the OAuth client, not to the person who triggered the automation: tickets are submitted and comments authored under that name, and their role is the permission ceiling. Bind automations using this integration as a service connection.
  • API tokens and password auth are not supported. Zendesk is retiring API tokens - accounts created from 28 July 2026 cannot make one, and all remaining tokens stop working on 30 April 2027.
  • Comments carry an explicit public/private flag in both directions: replies you post must say which they are, and internal notes you read must never be repeated to a customer.