Zendesk is where your support tickets, requesters, and organizations live, along with the metrics around how fast you resolve them. Connecting it as a data source through the Connectors library syncs those tables into your Alta workspace, where they become training data for Alta and a foundation for your metrics, dashboards, and Luna analysis. Once it's flowing, you can measure ticket volume, resolution times, and CSAT — and ask Luna questions in plain English. Zendesk connects with credentials (an API token).
Who this is for: Support, CX, and RevOps teams who want Zendesk ticket data measured alongside the rest of their customer data in Alta.
Before you start
Have your Zendesk subdomain, an admin/agent email, and an API token (Admin Center → Apps and integrations → APIs → Zendesk API).
Connect a source only once per workspace. If Zendesk already shows Connected, edit the existing connection.
Connect Zendesk
Open Connectors from the sidebar.
Find Zendesk via the CRM / Ticketing tab or the Search data sources box.
Click the Zendesk card to open the Create connector screen.
Fill in the connection fields shown (subdomain, email, API token), then click Create.
Alta runs a connect test. If it fails you'll see The connect test has failed with Zendesk's error — fix the field and retry.
The card then shows Connected and Data is syncing until the first sync finishes.
Choose which tables sync
Open the connection. Zendesk brings in tables like tickets, users, organizations, and ticket metrics.
Use the Synced toggle in the Zendesk tables section to control what's pulled in.
Turn off Show only synced tables to see everything available.
Key tables and fields synced
tickets —
id,status(new/open/pending/solved/closed),priority,created_at,updated_at,assignee_id,organization_id,via(channel)ticket_metrics —
ticket_id,first_resolution_time_in_minutes,full_resolution_time_in_minutes,reply_time_in_minutesusers — requesters and agents:
id,role,email,name,organization_idorganizations —
id,name, custom org fieldssatisfaction_ratings —
id,score(good/bad),ticket_id,created_at
What you can ask this data
Once it's syncing, build it into metrics and dashboards or just ask Luna / Ask AI. For example:
"How many tickets did we solve last week?" — counts
ticketswherestatus= solved by date."What's our average first resolution time?" — averages
ticket_metrics.first_resolution_time_in_minutes."Which organizations open the most tickets?" — groups
ticketsbyorganization_id."What's our CSAT this month?" — uses
satisfaction_ratings.score."What's ticket volume by channel?" — groups
ticketsbyvia.
Build your first metric (worked example)
Confirm
ticketsshows Last sync — Succeeded.In Metrics, create a metric on
ticketswith measure count of rows and date fieldcreated_at.Add a filter
status= solved to measure solved volume, set the period to weekly.Group by
assignee_id(joined tousers) to get a per-agent view.Save and add to a dashboard, then ask Luna "how many tickets did we solve last week?" to confirm.
Example use cases
Support operations dashboard. Volume, backlog, resolution time, and CSAT trended over time and by agent.
Account risk. Join ticket volume and CSAT to
organizationsto spot unhappy accounts for CS follow-up.Channel & priority mix. Where tickets come from and how priority affects resolution time.
Support + revenue. Combine with CRM data to make sure high-value accounts get fast resolutions.
Keep it in sync
Sync status shows Last sync (Succeeded/Failed) and the Sync frequency.
Click Sync now to refresh immediately; it's disabled while a sync runs.
Use the overflow menu (⋯) to Disable, Enable, or Delete.
Tips and common pitfalls
Resolution times live in
ticket_metrics. Sync that table (not justtickets) to report SLAs.Auth needs all three parts. Subdomain, email, and token must match — a wrong subdomain is a common failure.
Sync only what you need to keep syncs fast.
Deleting is permanent. Disable instead to pause.
Related
