Support agent access control: roles, permissions, and the AI seat

Rama Adi
Written by

Rama Adi

Katelin Teen
Reviewed by

Katelin Teen

Last edited October 5, 2026

Expert Verified
Hand-drawn illustration of a support team and a friendly AI teammate each holding a different key card, with an admin at a key cabinet and locked ticket drawers

What support agent access control covers

Most teams think of access control as "agent or admin". In practice there are four layers, and a gap in any one of them undoes the other three.

LayerThe question it answersTypical controls
IdentityIs this really your agent?SSO, enforced 2FA, IP restrictions, session timeouts
VisibilityWhich tickets and customer data can they see?Ticket scope, inbox or department access, data masking
CapabilityWhat can they do with them?Roles and permissions: reply, delete, export, refund, change settings
AccountabilityCan you prove what happened?Audit log, access log, approval history

I'm Rama, and I build eesel's helpdesk integrations, so I spend a lot of my week on the other side of these permission screens. Every time eesel connects to a helpdesk it has to ask for scopes and then live inside a real agent's role. In Zendesk, for example, eesel's replies post as the Zendesk user who approved the connection, so that person's Zendesk role is the hard ceiling on what the AI can do. That's the lens I'll use throughout: access control is about the seats people forget about as much as the ones they set up on day one.

If you're also separating customers or brands, the visibility layer overlaps with multi-brand customer support and client-specific knowledge bases, which I won't repeat here.

Why ticket scope is not the same as access control

Ticket scope is the setting most people mean when they say "agents can only see their own tickets". In Zendesk, the options are all tickets, tickets in the agent's groups, tickets in their organization, or assigned only. Freshdesk offers all, group, or assigned tickets on Growth and up.

Freshdesk ticket visibility scope options showing all tickets, tickets in a group, and assigned tickets, as taken from Freshdesk's help center
Freshdesk ticket visibility scope options showing all tickets, tickets in a group, and assigned tickets, as taken from Freshdesk's help center

Here's the kind of team that needs it, from an r/Zendesk thread about separating divisions:

Reddit

"the agents would belong to different business divisions under the same overall company. They'd work on tickets that employees submit with sensitive data so this is why we want the agents in one division not to have access to see another agent group's tickets and so on"

Scope handles the front door. The vendor docs document at least three side doors:

  • CCs. Zendesk says CC'ing an agent, light agents included, sends them every public and private update by email, regardless of ticket access (Zendesk standard roles). One CC on a sensitive ticket and the scope setting stops mattering for that thread.
  • Admins. Admins see everything. Zoho Desk spells it out: even with sharing set to Private, "support admins can view all the tickets within a department" (Zoho data sharing rules). So the admin list is part of your visibility policy whether you planned it that way or not.
  • AI drafting. Zendesk's auto assist "may generate text replies based on that content for agents and end users who don't belong to the related user segment". In other words, restricted help center content can reach an agent who couldn't open the article. By default, every group has auto assist (auto assist setup).
Hand-drawn diagram of a locked box labelled ticket scope with three arrows escaping it: CC on a ticket, AI drafts from restricted articles, and admins see all tickets
Hand-drawn diagram of a locked box labelled ticket scope with three arrows escaping it: CC on a ticket, AI drafts from restricted articles, and admins see all tickets

Two helpdesks are blunter about the limits. Help Scout scopes by inbox, and its docs say "There is no method to restrict individual conversations" (Help Scout roles). Gorgias gives every role, including Observer, the "View tickets" permission and a default view of all open tickets, and documents no hard block on opening a ticket (Gorgias user permissions). Neither is wrong for a single-brand team. They just mean the separation has to come from separate inboxes or accounts, not from a role.

What each helpdesk lets you control

Here's the side-by-side I wish I'd had the first time I mapped this out. Prices are per agent per month as listed on each vendor's pricing page in October 2026, annual billing where the page shows both.

ZendeskFreshdeskGorgiasHelp ScoutFrontZoho DeskHubSpot Service Hub
Custom rolesEnterprise only (quote)Pro ($55) and upNone, 5 fixed rolesPer-user custom on Plus ($45) and ProEnterprise ($105)5 on Standard ($14), 25 on Professional, 50 on EnterprisePer-user toggles; team-only access on Professional+
Ticket scopeGroups, org, assignedGroup, assigned; view-only groups on EnterpriseViews only, no hard blockPer inboxPer shared inboxPer department; sharing rules on EnterpriseAll, team, own
Cheap or limited seatLight agents: 50 to 5,000 included on Growth and upCollaborators up to 5,000; day passes $2 to $12Not priced per agent; Observer roleLight Users: 5 free on Plus, 15 on ProGuest accountsLight agents $6/moView-only seats, free and unlimited
SSOSAML on all plansSAML on Growth+Custom OIDC on Advanced+SAML on ProSAML on Professional+Active DirectorySAML on Professional+
IP restrictionAll plansEnterpriseNot documentedNot documentedEnterpriseAll editionsNot documented
Audit logEnterprise+, kept indefinitelyEnterprise12 months (Pro, Advanced)Not documentedAll plans, 365 daysEnterprise30-day views, full on Enterprise
Who configures the AISupport admins by defaultAdministratorsLead and AdminBeacon settingsWorkspace admin presetNot documentedCustomer agent editor permission

Sources: Zendesk, Freshdesk, Gorgias, Help Scout, Front, Zoho Desk, HubSpot.

A few cells deserve a sentence. Zendesk and Zoho Desk include IP restrictions on every plan, and in Zendesk agents and admins can't bypass them (Zendesk IP restrictions). Front's audit log runs on every plan with 365 days of history and also logs changes made by Admin Copilot, the API and apps (Front audit log), which is unusually generous. And Zendesk on Enterprise drops the standard agent role entirely, so every agent's access comes from a custom role, with a cap of 197 per account.

Front's custom permission set is a good picture of what "least privilege" looks like at the button level. Front's own example is letting trainees draft in shared inboxes with "Send messages" switched off until they're trained.

Front teammate group permissions showing Contributor, Admin and Custom permission sets with conversation permissions such as assign, archive and send messages, as taken from Front's help center
Front teammate group permissions showing Contributor, Admin and Custom permission sets with conversation permissions such as assign, archive and send messages, as taken from Front's help center

For the per-vendor detail, my Zendesk roles guide walks the full permission list, and the Freshdesk version covers scopes. Gorgias has its own roles walkthrough too.

How much least privilege costs

The pattern across the table is that fine-grained roles are a top-tier feature. Here's where custom roles first unlock in each helpdesk.

Hand-drawn staircase showing where custom roles unlock: Gorgias no custom roles, Zoho Desk Standard $14, Help Scout Plus $45, Freshdesk Pro $55, Front Enterprise $105, Zendesk Enterprise quote only
Hand-drawn staircase showing where custom roles unlock: Gorgias no custom roles, Zoho Desk Standard $14, Help Scout Plus $45, Freshdesk Pro $55, Front Enterprise $105, Zendesk Enterprise quote only

A Zendesk consultant in the same r/Zendesk thread summed up what this means on lower plans:

Reddit

"Groups (even normal) can do this. As long as agents access is set to "Only tickets in their group". Admins will be able to always see all tickets but agents get locked down as long as Access is set that way. If in Enterprise custom roles is how you handle this."

Front has had this complaint for years. A 2022 Capterra review (the price it quotes is from then, not today) put it this way:

Capterra

"basic features like a user and team management are exclusive to the highest tier. For this even managing just a few users and their permission and settings is a real pain as long as you're not willing to upgread to the highest tier"

Verified Reviewer, CPO, Food & Beverages, Capterra

Privacy controls cost the most. Zendesk's data masking, which hides end-user names, emails and phone numbers from a role, sits in the Advanced Data Privacy and Protection add-on, sold only to Enterprise plans at an unpublished price (Zendesk ADPP). The same add-on carries the access log, which records who viewed which tickets for 90 days.

Zendesk custom role data masking settings with checkboxes to mask name, phone and email, as taken from Zendesk's help center
Zendesk custom role data masking settings with checkboxes to mask name, phone and email, as taken from Zendesk's help center

My honest take: if per-role permissions are a hard requirement and you aren't on Zendesk Enterprise money, Freshdesk Pro and Zoho Desk Professional are the cheapest full versions in this set. If you already run Zendesk on Suite Professional ($115), groups plus assigned-only scope, a short admin list and IP restrictions get you most of the way. Check my Zendesk pricing and Freshdesk pricing breakdowns before you upgrade just for roles.

The roles I'd set up for a typical support team

Most teams need five shapes of access, not fifteen. This is the setup I'd start from.

RoleTicket scopeCan doCan't do
Frontline agentTheir groupsReply, tag, assign within group, use macrosDelete tickets, export data, edit end users, manage business rules
Team leadAll ticketsEverything a frontline agent can, plus reports, views and macros for the teamBilling, user management, API tokens
Contractor or outsourced agentAssigned only, or one groupReply on the queue they're contracted forExport, bulk actions, view full payment or identity details
Light seat for other teamsTheir groupsRead, leave internal notesReply to customers, change ticket fields
AdminAllSettings, users, integrationsNothing restricted, which is why there should be two of them

The contractor row is the one I'd spend the most time on. After Coinbase disclosed in May 2025 that overseas support staff had been bribed to pull customer data, the Hacker News thread kept coming back to the same principle:

Hacker News

"That's not how front line support agent access should work. You get access based on active cases you are working on, not the keys to the kingdom because you might need to support a member at some future point in time."

Another commenter who built an admin panel for a PCI Level 1 payments company described the controls they added once they hired outside the US: "logging, monitoring and also rate-limiting (ask for manager to approve if more than 5 full details requests, etc.)" (vasusen, Hacker News). That last part, approval past a threshold, is the same pattern I'll come back to for AI. If you work with a BPO, my guides to outsourcing customer service and offshore support knowledge transfer cover the rest of the setup.

For the light seat row, pick the cheapest read-and-comment seat your helpdesk offers. Zendesk includes up to 100 light agents on Suite Professional (light agent seats), Freshdesk collaborators can't reply publicly or edit ticket properties (Freshdesk collaborators), and HubSpot's view-only seats are free and unlimited on paid plans (HubSpot seats).

Engineers and finance folks who just need to read a thread and leave a note don't need a full agent license, as I covered in cross-team support escalation.

Offboarding: where access lingers

Access control usually fails at the exit, not the entrance. Every helpdesk lets you remove a user. What differs is what happens to their tickets, their automations, and your bill.

HelpdeskRemove optionsWhat happens to open ticketsSeat billing
ZendeskDowngrade to end user, then suspendGo back to the groupStill charged until you change the subscription
FreshdeskDeactivate or deleteGo to the unassigned queueSeat freed on deactivate
GorgiasDelete onlyUnassigned; their stats are deletedNot priced per agent
Help ScoutDelete onlyGo to Unassigned; reassign with a Workflow before deletingNot stated
FrontBlock or deleteShared-inbox conversations unassignedLicense stays until next contract term
Zoho DeskDeactivate or deleteYou pick who takes overLicense not canceled
HubSpotDeactivate, then removeStay assigned until removedUnassign the seat first

Sources: Zendesk, Freshdesk, Gorgias, Help Scout, Front, Zoho Desk, HubSpot.

Three traps are worth knowing before someone's last day:

  • Order matters in Help Scout. To hand a leaver's conversations to a specific person, you run a Workflow first, because "There is no way to do this after the user has been deleted" (Help Scout).
  • Integrations break with the person. Zoho Desk says integrations set up by a deactivated agent stop working until an admin re-authorizes them, and Zendesk warns apps configured with the leaver's credentials can break. Always know whose login your integrations run on, including your AI.
  • Data goes with them. Downgrading a Zendesk agent drops their CSAT data and personal macros, and deleting a Gorgias user deletes their statistics. Export what you need first.

The quieter failure is that nobody remembers how the permissions were set up. A Zendesk user posted this in April 2026:

Reddit

"We had some turnover in IT so no one who set up Zendesk/my account for our team are here still and I can't figure out how to add it as an option for them."

Write the role setup down, and read your audit log once a quarter. Zendesk keeps its log indefinitely on Enterprise, with actor, IP address and activity type for every change (Zendesk audit log). My Zendesk audit log guide has the field-by-field version.

Zendesk audit log in Admin Center showing time, actor, IP address, item, activity type and activity columns, as taken from Zendesk's help center
Zendesk audit log in Admin Center showing time, actor, IP address, item, activity type and activity columns, as taken from Zendesk's help center

On Gorgias, the audit log keeps 12 months of events. For seasonal hires on temporary seats, my seasonal support onboarding post covers the rules per helpdesk.

Your AI agent needs a role too

Here's the part most access reviews skip. An AI support agent reads tickets, searches your knowledge base, and in many setups replies, tags, closes and refunds. It's a team member with the fastest hands in the building, and it's often set up by whoever had admin rights that afternoon.

The vendor docs show how uneven this is today:

  • Zendesk: any Support admin is a Client admin of AI agents by default (Zendesk AI agent access). The customer-facing AI agent respects user segments, but the agent-side auto assist doesn't, as covered above.
  • Freshdesk: building AI agents needs Administrator access, and the AI agent only learns from articles visible to all users, so restricted content stays out entirely (Freshdesk knowledge sources).
  • Gorgias: only Leads and Admins manage AI Agent, but every role sees its replies (Gorgias permissions).
  • HubSpot: the customer agent needs a "Customer agent editor" permission, and once created "it can't be deleted", only paused (HubSpot customer agent).
  • Front: AI settings come only with the workspace Admin preset, not as a separate permission (Front teammate groups).

None of the seven vendors I checked documents whether its AI agent respects an individual agent's ticket scope. So the safest assumption is that the AI sees what its connection sees, and you control it at the connection.

Good advice on this came from an r/AI_Agents thread about giving agents customer data:

Reddit

"You should treat an agent like you would any user: limit access via end points and only give them access to the endpoints they absolutely need. So avoid full/broad access as much as possible."

That matches what I hear from buyers. A CX lead at a DTC supplements brand on Gorgias and Shopify, at about 7,000 tickets a month, put it plainly on a sales call with eesel:

"I need an AI who is only handling the tickets that it's confident to handle and all the other ones, leave them alone."

So I think about an AI agent's access in three separate dials, and then a permission level for every action.

Hand-drawn diagram with three sliders for knowledge, actions and network access, and a switch with Auto for look up order, Needs approval for send reply and refund, and Disabled for delete ticket
Hand-drawn diagram with three sliders for knowledge, actions and network access, and a switch with Auto for look up order, Needs approval for send reply and refund, and Disabled for delete ticket
  1. Knowledge. Connect only the sources it needs. If agents in one division can't see another division's tickets, the AI answering that division shouldn't learn from them either.
  2. Actions. List every action and set each one: automatic, needs approval, or off. Looking up an order is low risk. Sending a reply or issuing a refund isn't, at least until you've seen it get those right.
  3. Network. If the AI calls your own APIs, allow only the domains it needs, and keep credentials out of the model's hands.

This is how eesel's AI helpdesk teammate is built. Each action is set per agent to Auto, Needs approval or Disabled, and approvals never run on their own after a timeout. Only workspace Owners and Editors can approve, and a Viewer can read the agent's work but the agent won't take write actions on their behalf (eesel account roles). Outbound calls only reach domains you add under Network Access, and the agent "only ever sees the name of the header, never its value", so API keys stay out of the model.

eesel Zendesk integration page listing read actions such as find agent, list tickets, look up customer and read ticket, each with its own permission setting
eesel Zendesk integration page listing read actions such as find agent, list tickets, look up customer and read ticket, each with its own permission setting

The same permissions apply from the terminal. The eesel CLI drives the same agent as the dashboard, and eesel integrations zendesk actions prints every Zendesk action with its approval setting, so you can audit an agent's permissions in one command or have a coding agent like Claude Code do it. Writes from the CLI follow the same rules, and a Viewer's writes are always held for an Editor. --dry-run shows the exact call a write would make before anything is sent.

eesel's docs say to start supervised: replies and anything irreversible on Needs approval, refunds and cancellations behind approval for good. Most teams start with internal notes, then hand over more as the agent proves itself, which is the same path a new hire takes. If you want the human side of that path, my guide on how to onboard an AI support agent walks through it, and AI escalation covers the handoff rules.

One honest caveat on the eesel side: PII redaction runs on past tickets before they're indexed, but when the agent fetches a live Zendesk ticket to draft a reply, the raw ticket content reaches the model. If masking card numbers at that point is a hard requirement, pair eesel with your helpdesk's own redaction, such as Zendesk ticket redaction.

A quarterly access review checklist

Access drifts. People change teams, contractors roll off, and someone gets admin "just for this afternoon". I'd run this every quarter:

  1. Count your admins. Two is plenty for most teams. Every extra admin sees every ticket.
  2. Compare seats to the roster. Anyone who left still holding a seat is both a security gap and a line item, especially on Zendesk, Front and Zoho Desk where the seat keeps billing.
  3. Check scope on contractor and outsourced seats. Assigned only or one group, with no export.
  4. Read the audit log for role changes, exports and sign-ins from new IP addresses.
  5. Review your AI agents like any other seat. Which sources, which actions on Auto, whose login the connection runs on. Ask your AI for system access requests setup, if you have one, the same questions.

If you're tightening compliance alongside this, my checklist on SOC 2 and GDPR for support chatbots and the Zendesk security overview are good next reads.

Try eesel as a scoped AI teammate

If your helpdesk is Zendesk, Freshdesk, Gorgias, Help Scout or Front and the AI seat is the one you're least sure about, eesel's AI helpdesk teammate is built for that. It joins your existing queue through the Zendesk integration (or Freshdesk and Gorgias), reads only the sources you connect, and takes only the actions you switch on. Connecting a tool changes nothing on its own: no automation turns on and no reply is sent until you add a trigger.

eesel activity view listing handled conversations with approved, rejected and pending filters, showing which runs are waiting on a human
eesel activity view listing handled conversations with approved, rejected and pending filters, showing which runs are waiting on a human

Every ticket it touches shows up in Activity with what it searched, what it did, who approved it and why, and before go-live the simulation skill replays your real past tickets so you can see its answers first. Pricing includes unlimited agents and seats on every plan, starting free with 100 credits and then from $299 a month for 500 credits, so adding reviewers to watch the AI doesn't cost a license each. What it isn't yet: SOC 2 Type II certified (that's in progress, per the security page), and SSO with enforced 2FA is an add-on from $199 a month. If you want an AI that starts on internal notes and earns its way up, try eesel free.

Frequently Asked Questions

What is support agent access control?
Support agent access control is the set of rules that decide who can sign in to your helpdesk, which tickets and customer data each agent can see, what they can do with them, and what gets logged. It covers roles, ticket scope, data masking, SSO, IP restrictions and audit logs. My breakdown of Zendesk roles and permissions shows one vendor's version in detail.
How do I restrict which tickets a support agent can see?
Set the agent's ticket scope to their groups or to assigned tickets only. Zendesk and Freshdesk both offer group and assigned-only scope, Zoho Desk scopes by department, and Help Scout and Front scope by inbox. Gorgias documents no hard block, so an agent can open the All view. See my guide to structuring agent groups.
Which helpdesk plans include custom agent roles?
Zoho Desk unlocks 5 custom profiles on Standard at $14 per agent a month, Help Scout adds per-user custom permissions on Plus, Freshdesk on Pro at $55, Front on Enterprise at $105, and Zendesk only on Enterprise, which is quote-only. Gorgias has 5 fixed roles and no custom ones. My Freshdesk roles post covers the cheapest full option.
Can agents see tickets outside their access scope?
Yes, in a few documented ways. In Zendesk, an agent CC'd on a ticket gets every public and private update by email regardless of scope, and admins in Zendesk and Zoho Desk always see every ticket. Check your views permissions and keep the admin list short.
What should happen to a support agent's access when they leave?
Block sign-in the same day, reassign their open tickets, and remove them from automations and integrations they authorized. Watch the billing side too: Zendesk, Zoho Desk and Front keep charging for the seat until you change the subscription. My notes on support knowledge retention cover what else walks out the door.
How should I control what an AI support agent can access?
Treat it like a new hire with its own role: connect only the knowledge sources it needs, enable only the actions it needs, and put replies, refunds and anything irreversible behind human approval until it has earned trust. eesel's AI helpdesk agent works this way, with Auto, Needs approval and Disabled set per action.
Do helpdesk AI tools respect agent permissions?
Not always. Zendesk's auto assist can draft replies from restricted help center content for agents outside that user segment, while Freshdesk's AI agent only learns from articles visible to all users. Test it before launch, as covered in my guide to Zendesk AI data privacy.

Share this article

Rama Adi

Article by

Rama Adi

Rama is a software engineer at eesel AI with two years of experience writing about B2B SaaS, AI tools, and customer support technology. Based in Bali, Indonesia, he brings a developer's perspective to product comparisons — cutting through marketing copy to what the integrations and APIs actually do.

Related Posts

All posts →
Hand-drawn illustration of a support team looking at one shared core knowledge binder that branches into three client-specific binders
Guides

Client-specific knowledge bases: how to keep each client's answers separate

How to build client-specific knowledge bases in Zendesk, Freshdesk, HubSpot, Help Scout, Zoho Desk and Front, and why the AI is where client content leaks.

KiraKiraOct 6, 2026
Hand-drawn illustration of a support agent at one desk routing work into three separate client lanes, each with its own knowledge binder and inbox
Guides

Multi-client helpdesk: how to run support for several clients or brands from one helpdesk

A multi-client helpdesk runs support for several clients or brands from one account. The inbox splits easily; customer records, admins and AI knowledge often don't.

Rama AdiRama AdiOct 6, 2026
Banner image for Zendesk views permissions explained: Who sees what and how to configure access
Guides

Zendesk views permissions explained: Who sees what and how to configure access

A practical guide to understanding Zendesk view permissions, including who can see personal and shared views, how to configure access by role, and troubleshooting common visibility issues.

Stevia PutriStevia PutriFeb 25, 2026
Banner image for How to give partners access to tickets in Zendesk: 4 methods
Guides

How to give partners access to tickets in Zendesk: 4 methods

Discover how to give partners access to tickets in Zendesk using department spaces, ticket sharing, shared organizations, or client portals. Complete setup guide with plan requirements.

Stevia PutriStevia PutriMar 2, 2026
Hand-drawn illustration of a support agent showing an open policy book with one bookmarked exception page to a smiling manager, with a tabbed exception logbook on the desk
Guides

Support exception management: how to grant, log, and learn from policy exceptions

A practical guide to support exception management: who can bend which policy, how to log every exception in your helpdesk, and how to turn repeat exceptions into rules.

Riellvriany IndriawanRiellvriany IndriawanOct 7, 2026
Hand-drawn illustration of an agent handing a personal ticket view over to a team shared view in Zendesk
Guides

Zendesk view personal vs shared: A complete guide for 2026

Understand when to use personal vs shared views in Zendesk, how to organize them effectively, and expert tips for managing view limits.

KiraKiraFeb 25, 2026
Hand-drawn illustration of a support agent holding a refund receipt next to a stacked ladder of approvers with rising dollar amounts and a manager giving a thumbs up with an approval stamp
Guides

Support refund approval matrix: who approves what, and where to enforce it

Build a support refund approval matrix: dollar bands, policy exceptions and approvers, plus where each helpdesk, Stripe, Shopify and your AI agent can enforce it.

Riellvriany IndriawanRiellvriany IndriawanOct 6, 2026
Hand-drawn illustration of a support agent holding back a wave of tickets and chats while a teammate points the overflow toward a backup inbox and a friendly AI teammate at a laptop
Guides

Support overflow management: where tickets go when your team is full

Support overflow management across 7 helpdesks: what happens when every agent is full, the backup lanes to build, and where AI takes the repeat questions.

Riellvriany IndriawanRiellvriany IndriawanOct 6, 2026
Hand-drawn illustration of one support team at a single desk sending replies out to three different storefronts, each with its own help center and style
Guides

Multi-brand customer support: one team, several brand voices, no mix-ups

Multi-brand customer support means one team serving several brands. Share the team, queue and customer profile; split the voice, policies and AI knowledge per brand.

Riellvriany IndriawanRiellvriany IndriawanOct 6, 2026

Ready to hire your AI teammate?

Set up in minutes. No credit card required.

Get started free