Zendesk Support integration summary

Stitch’s Zendesk Support integration replicates data using the Zendesk Support API. Refer to the Schema section for a list of objects available for replication.

Zendesk Support feature snapshot

A high-level look at Stitch's Zendesk Support (v1) integration, including release status, useful links, and the features supported in Stitch.

STITCH
Release status

Deprecated on May 24, 2023

Supported by

Stitch

Stitch plan

Standard

API availability

Not available

Singer GitHub repository

singer-io/tap-zendesk

REPLICATION SETTINGS
Anchor Scheduling

Supported

Advanced Scheduling

Supported

Table-level reset

Unsupported

Configurable Replication Methods

Unsupported

DATA SELECTION
Table selection

Supported

Column selection

Supported

Select all

Supported

TRANSPARENCY
Extraction Logs

Supported

Loading Reports

Supported

Connecting Zendesk Support

Zendesk Support setup requirements

To set up Zendesk Support in Stitch, you need:

  • Administrator permissions in Zendesk Support. Some data types in Zendesk Support may only be accessed with Admin permissions. For example: To replicate ticket metric or tag data, Zendesk Support’s API requires a user with Admin permissions.

    To ensure you can replicate all the data you need, we recommend a user with Admin permissions set up the integration.

  • A specific Zendesk Support plan if replicating ticket forms or SLA policies:

    • To replicate SLA policies, you must be on an Enterprise or Professional Zendesk Support plan.
    • To replicate ticket forms, you must be on an Enterprise Zendesk Support plan, or a Professional Zendesk Support plan with the ticket forms add-on.

    All other tables, with the exception of sla_policies and ticket_forms will be available for replication even if you aren’t on either of these Zendesk Support plans.


Step 1: Add Zendesk Support as a Stitch data source

  1. Sign into your Stitch account.
  2. On the Stitch Dashboard page, click the Add Integration button.

  3. Click the Zendesk Support icon.

  4. Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.

    For example, the name “Stitch Zendesk Support” would create a schema called stitch_zendesk_support in the destination. Note: Schema names cannot be changed after you save the integration.

  5. In the Zendesk Subdomain field, enter your Zendesk Support site prefix. For example: For stitchdata.zendesk.com, only stitchdata would be entered into this field.

Step 2: Define the historical replication start date

The Sync Historical Data setting defines the starting date for your Zendesk Support integration. This means that data equal to or newer than this date will be replicated to your data warehouse.

Change this setting if you want to replicate data beyond Zendesk Support’s default setting of 1 year. For a detailed look at historical replication jobs, check out the Syncing Historical SaaS Data guide.

Step 3: Create a replication schedule

In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.

Zendesk Support integrations support the following replication scheduling methods:

To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.

Step 4: Authorize Stitch to access Zendesk Support

  1. Next, you’ll be prompted to sign into your Zendesk Support account.
  2. After the authorization process is successfully completed, you’ll be directed back to Stitch.
  3. Click All Done.

Step 5: Set objects to replicate

The last step is to select the tables and columns you want to replicate. Learn about the available tables for this integration.

Note: If a replication job is currently in progress, new selections won’t be used until the next job starts.

For Zendesk Support integrations, you can select:

  1. Individual tables and columns

  2. All tables and columns

Click the tabs to view instructions for each selection method.

  1. In the integration’s Tables to Replicate tab, locate a table you want to replicate.
  2. To track a table, click the checkbox next to the table’s name. A blue checkmark means the table is set to replicate.

  3. To track a column, click the checkbox next to the column’s name. A blue checkmark means the column is set to replicate.

  4. Repeat this process for all the tables and columns you want to replicate.
  5. When finished, click the Finalize Your Selections button at the bottom of the screen to save your selections.
  1. Click into the integration from the Stitch Dashboard page.
  2. Click the Tables to Replicate tab.

  3. In the list of tables, click the box next to the Table Names column.
  4. In the menu that displays, click Track all Tables and Fields:

    The Track all Tables and Fields menu in the Tables to Replicate tab

  5. Click the Finalize Your Selections button at the bottom of the page to save your data selections.

Initial and historical replication jobs

After you finish setting up Zendesk Support, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.

For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.

Free historical data loads

The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.


Zendesk Support replication

Replicating SLA policies and ticket forms

To replicate SLA policies and ticket forms - or the sla_policies and ticket_forms tables - you need to be on an Enterprise or Professional Zendesk Support plan. To replicate ticket_forms on a Professional plan, you’ll also need to have the ticket forms add-on enabled in your Zendesk Support account.

If you set either table to replicate and don’t meet the requirements listed above, an error similar to the following will surface in the integration’s Extraction Logs:

tap - INFO replicated 0 records from "ticket_forms" endpoint
tap - CRITICAL {"error": {"message": "You do not have access to this page. Please contact the account owner of this help desk for further help.", "title": "Forbidden"}}

To resolve the error, de-select the appropriate table(s). Reach out to Zendesk if you have questions about your Zendesk plan.

Replicating user and organization custom fields

To replicate custom fields for Users and Organizations - or the users and organizations tables - you need to be on an Enterprise, Professional, or Team Zendesk plan.

If you set custom fields in the users or organizations tables to replicate and don’t meet the requirements listed above, an error similar to the following will surface in the integration’s Extraction Logs:

tap - WARNING The account credentials supplied do not have access to `organizations` custom fields.
tap - WARNING The account credentials supplied do not have access to `users` custom fields.

To resolve the error, de-select the appropriate field(s). Reach out to Zendesk if you have questions about your Zendesk plan.


Zendesk Support table reference

group_memberships

The group_memberships table contains info about the groups your Zendesk Support agents are members of.

Note: Retrieving group membership data requires Zendesk Support Agent or Admin permissions.

Deleted group memberships

As Zendesk Support’s API doesn’t currently provide a method for identifying deleted group memberships, we recommend periodically dropping this table and allowing Stitch to re-create it. Currently, dropping and re-populating the table is the only way to detect deletions.

Replication Method

Key-based Incremental

Primary Key

id

Replication Key

updated_at

Useful links

Zendesk Support documentation

group_memberships schema on GitHub

Zendesk Support API method

Join group_memberships with on
groups
group_memberships.group_id = groups.id
organizations
group_memberships.group_id = organizations.group_id
satisfaction_ratings
group_memberships.group_id = satisfaction_ratings.group_id
tickets
group_memberships.group_id = tickets.group_id
users
group_memberships.group_id = users.default_group_id

created_at

DATE-TIME

default

BOOLEAN

group_id

INTEGER

id

INTEGER

updated_at

DATE-TIME

url

STRING

user_id

INTEGER

groups

The groups table contains info about the groups in your Zendesk Support account.

Note: Retrieving group data requires Zendesk Support Admin or Agent permissions.

Replication Method

Key-based Incremental

Primary Key

id

Replication Key

updated_at

Useful links

Zendesk Support documentation

groups schema on GitHub

Zendesk Support API method

Join groups with on
group_memberships
groups.id = group_memberships.group_id
organizations
groups.id = organizations.group_id
satisfaction_ratings
groups.id = satisfaction_ratings.group_id
tickets
groups.id = tickets.group_id
users
groups.id = users.default_group_id
groups.id = users.id
macros
groups.id = macros.restriction.id

created_at

DATE-TIME

deleted

BOOLEAN

id

INTEGER

name

STRING

updated_at

DATE-TIME

url

STRING

macros

The macros table contains info about the macros in your Zendesk Support account. Macros are actions defined by you that modify the values of a ticket’s fields.

Note: Retrieving macro data requires Zendesk Support Agent or Admin permissions.

Replication Method

Key-based Incremental

Primary Key

id

Replication Key

updated_at

Useful links

Zendesk Support documentation

macros schema on GitHub

Zendesk Support API method

Join macros with on
ticket_audits
macros.id = ticket_audits.events.macro_id
groups
macros.restriction.id = groups.id
users
macros.restriction.id = users.id

actions

ARRAY

field

STRING

value

STRING

active

BOOLEAN

created_at

DATE-TIME

description

STRING

id

INTEGER

position

INTEGER

restriction

OBJECT

id

INTEGER

ids

ARRAY

type

STRING

title

STRING

updated_at

DATE-TIME

url

STRING

organizations

The organizations table contains information about the organizations your end-users belong to.

Custom organization fields

Stitch’s Zendesk Support integration will replicate any custom fields associated with organization records.

Note: Replicating organization custom fields requires that you be on a Team, Professional, or Enterprise Zendesk Support plan and have Admin permissions in Zendesk Support.

Replication Method

Key-based Incremental

Primary Key

id

Replication Key

updated_at

Useful links

Zendesk Support documentation

organizations schema on GitHub

Zendesk Support API method

Join organizations with on
groups
organizations.group_id = groups.id
group_memberships
organizations.group_id = group_memberships.group_id
satisfaction_ratings
organizations.group_id = satisfaction_ratings.group_id
tickets
organizations.group_id = tickets.group_id
organizations.id = tickets.organization_id
organizations.tags = tickets.tags
users
organizations.group_id = users.default_group_id
organizations.id = users.organization_id
organizations.tags = users.tags
tags
organizations.tags = tags.name

created_at

DATE-TIME

deleted_at

DATE-TIME

details

STRING

domain_names

ARRAY

external_id

STRING

group_id

INTEGER

id

INTEGER

name

STRING

notes

STRING

organization_fields

OBJECT

shared_comments

BOOLEAN

shared_tickets

BOOLEAN

tags

ARRAY

updated_at

DATE-TIME

url

STRING

satisfaction_ratings

The satisfaction_ratings table contains info about ratings users have offered on support tickets.

Note: This table is only available if satisfaction ratings are enabled in your Zendesk Support account.

Replication Method

Key-based Incremental

Primary Key

id

Replication Key

updated_at

Useful links

Zendesk Support documentation

satisfaction_ratings schema on GitHub

Zendesk Support API method

Join satisfaction_ratings with on
groups
satisfaction_ratings.group_id = groups.id
group_memberships
satisfaction_ratings.group_id = group_memberships.group_id
organizations
satisfaction_ratings.group_id = organizations.group_id
tickets
satisfaction_ratings.group_id = tickets.group_id
satisfaction_ratings.ticket_id = tickets.id
satisfaction_ratings.assignee_id = tickets.requester_id
satisfaction_ratings.requester_id = tickets.requester_id
satisfaction_ratings.assignee_id = tickets.follower_ids
satisfaction_ratings.requester_id = tickets.follower_ids
satisfaction_ratings.assignee_id = tickets.submitter_id
satisfaction_ratings.requester_id = tickets.submitter_id
satisfaction_ratings.assignee_id = tickets.collaborator_ids
satisfaction_ratings.requester_id = tickets.collaborator_ids
satisfaction_ratings.assignee_id = tickets.assignee_id
satisfaction_ratings.requester_id = tickets.assignee_id
users
satisfaction_ratings.group_id = users.default_group_id
satisfaction_ratings.assignee_id = users.id
satisfaction_ratings.requester_id = users.id
ticket_audits
satisfaction_ratings.ticket_id = ticket_audits.ticket_id
satisfaction_ratings.assignee_id = ticket_audits.author_id
satisfaction_ratings.requester_id = ticket_audits.author_id
ticket_comments
satisfaction_ratings.ticket_id = ticket_comments.ticket_id
satisfaction_ratings.assignee_id = ticket_comments.author_id
satisfaction_ratings.requester_id = ticket_comments.author_id
ticket_metrics
satisfaction_ratings.ticket_id = ticket_metrics.ticket_id

assignee_id

INTEGER

comment

STRING

created_at

DATE-TIME

group_id

INTEGER

id

INTEGER

reason

STRING

reason_id

INTEGER

requester_id

INTEGER

score

STRING

ticket_id

INTEGER

updated_at

DATE-TIME

url

STRING

sla_policies

The sla_policies table contains info about the Service Level Agreements (SLAs) in your Zendesk Support account. An SLA is a documented agreement between a support provider and their customers that defines performance measures for support.

Note: Replicating SLA policies requires that you be on an Enterprise or Professional Zendesk Support plan, and have Admin permissions in Zendesk Support.

Replication Method

Full Table

Primary Key

id

Useful links

Zendesk Support documentation

sla_policies schema on GitHub

Zendesk Support API method

created_at

DATE-TIME

description

STRING

filter

OBJECT

all

ARRAY

field

STRING

operator

STRING

value

STRING

any

ARRAY

field

STRING

operator

STRING

value

STRING

id

INTEGER

policy_metrics

ARRAY

business_hours

BOOLEAN

priority

STRING

target

INTEGER

position

INTEGER

title

STRING

updated_at

DATE-TIME

url

STRING

tags

The tags table the names and total number of applications of the tags in your Zendesk Support account.

Note: Retrieving tag data requires Zendesk Support Admin permissions.

Replication Method

Full Table

Primary Key

name

Useful links

Zendesk Support documentation

tags schema on GitHub

Zendesk Support API method

Join tags with on
organizations
tags.name = organizations.tags
tickets
tags.name = tickets.tags
users
tags.name = users.tags

count

INTEGER

name

STRING

ticket_audits

The ticket_audits table contains info about the activity associated with a ticket. An audit is a history of all updates to a given ticket. When a ticket is updated in Zendesk Support, an audit record is created. Each audit represents a single update to a ticket.

A single audit record may include multiple event types. For example: A ticket comment, satisfaction rating, and a change event. For a full list of Zendesk Support audit event types, refer to Zendesk Support’s documentation.

Replication

This table uses Append-Only Incremental Replication. This means that new audit records, or updates made to existing audits, are appended as new rows to the end of the table.

Replication Method

Append-Only Incremental

Primary Key

id

Replication Key

created_at

Useful links

Zendesk Support documentation

ticket_audits schema on GitHub

Zendesk Support API method

Join ticket_audits with on
macros
ticket_audits.events.macro_id = macros.id
ticket_comments
ticket_audits.id = ticket_comments.audit_id
ticket_audits.events.audit_id = ticket_comments.audit_id
ticket_audits.ticket_id = ticket_comments.ticket_id
ticket_audits.author_id = ticket_comments.author_id
satisfaction_ratings
ticket_audits.ticket_id = satisfaction_ratings.ticket_id
ticket_audits.author_id = satisfaction_ratings.assignee_id
ticket_audits.author_id = satisfaction_ratings.requester_id
tickets
ticket_audits.ticket_id = tickets.id
ticket_audits.author_id = tickets.requester_id
ticket_audits.author_id = tickets.follower_ids
ticket_audits.author_id = tickets.submitter_id
ticket_audits.author_id = tickets.collaborator_ids
ticket_audits.author_id = tickets.assignee_id
ticket_metrics
ticket_audits.ticket_id = ticket_metrics.ticket_id
users
ticket_audits.author_id = users.id

author_id

INTEGER

created_at

DATE-TIME

events

ARRAY

attachments

ARRAY

audit_id

INTEGER

author_id

INTEGER

body

STRING

created_at

DATE-TIME

data

OBJECT

answered_by_id

INTEGER

answered_by_name

STRING

call_duration

STRING

from

STRING

recording_url

STRING

started_at

DATE-TIME

to

STRING

transcription_status

STRING

transcription_text

STRING

field_name

STRING

formatted_from

STRING

formatted_to

STRING

html_body

STRING

id

INTEGER

macro_deleted

BOOLEAN

macro_id

STRING

macro_title

STRING

plain_body

STRING

previous_value

ARRAY, STRING

public

BOOLEAN

recipients

ARRAY

resource

STRING

subject

STRING

trusted

BOOLEAN

type

STRING

value

ARRAY, STRING

via

OBJECT

channel

STRING

source

OBJECT

from

OBJECT

address

STRING

deleted

BOOLEAN

id

INTEGER

name

STRING

original_recipients

ARRAY

revision_id

INTEGER

subject

STRING

ticket_id

INTEGER

title

STRING

rel

STRING

to

OBJECT

address

STRING

name

STRING

id

INTEGER

metadata

OBJECT

flags

ARRAY

flags_options

OBJECT

11

OBJECT

message

OBJECT

trusted

BOOLEAN

2

OBJECT

trusted

BOOLEAN

notifications_suppressed_for

ARRAY

system

OBJECT

client

STRING

ip_address

STRING

json_email_identifier

STRING

latitude

NUMBER

location

STRING

longitude

NUMBER

message_id

STRING

raw_email_identifier

STRING

trusted

BOOLEAN

ticket_id

INTEGER

via

OBJECT

channel

STRING

source

OBJECT

from

OBJECT

address

STRING

deleted

BOOLEAN

id

INTEGER

name

STRING

original_recipients

ARRAY

subject

STRING

ticket_id

INTEGER

ticket_ids

ARRAY

title

STRING

rel

STRING

to

OBJECT

address

STRING

name

STRING

ticket_comments

The ticket_comments table contains info about the comments on tickets, which is the conversation between requesters, collaborators, and agents. Comments can be public or private.

Replication Method

Key-based Incremental

Primary Key

id

Replication Key

created_at

Useful links

Zendesk Support documentation

ticket_comments schema on GitHub

Zendesk Support API method

Join ticket_comments with on
ticket_audits
ticket_comments.audit_id = ticket_audits.id
ticket_comments.audit_id = ticket_audits.events.audit_id
ticket_comments.ticket_id = ticket_audits.ticket_id
ticket_comments.author_id = ticket_audits.author_id
satisfaction_ratings
ticket_comments.ticket_id = satisfaction_ratings.ticket_id
ticket_comments.author_id = satisfaction_ratings.assignee_id
ticket_comments.author_id = satisfaction_ratings.requester_id
tickets
ticket_comments.ticket_id = tickets.id
ticket_comments.author_id = tickets.requester_id
ticket_comments.author_id = tickets.follower_ids
ticket_comments.author_id = tickets.submitter_id
ticket_comments.author_id = tickets.collaborator_ids
ticket_comments.author_id = tickets.assignee_id
ticket_metrics
ticket_comments.ticket_id = ticket_metrics.ticket_id
users
ticket_comments.author_id = users.id

attachments

ARRAY

audit_id

INTEGER

author_id

INTEGER

body

STRING

created_at

DATE-TIME

html_body

STRING

id

INTEGER

metadata

OBJECT

flags

ARRAY

flags_options

OBJECT

11

OBJECT

message

OBJECT

trusted

BOOLEAN

2

OBJECT

trusted

BOOLEAN

notifications_suppressed_for

ARRAY

system

OBJECT

client

STRING

ip_address

STRING

json_email_identifier

STRING

latitude

NUMBER

location

STRING

longitude

NUMBER

message_id

STRING

raw_email_identifier

STRING

trusted

BOOLEAN

plain_body

STRING

public

BOOLEAN

ticket_id

INTEGER

type

STRING

via

OBJECT

channel

STRING

source

OBJECT

from

OBJECT

address

STRING

deleted

BOOLEAN

id

INTEGER

name

STRING

original_recipients

ARRAY

subject

STRING

ticket_id

INTEGER

ticket_ids

ARRAY

title

STRING

rel

STRING

to

OBJECT

address

STRING

name

STRING

ticket_fields

The ticket_fields table contains info about the basic text and custom ticket fields in your Zendesk Support account.

Note: Retrieving ticket metric data requires Zendesk Support Agent or Admin permissions.

Replication Method

Key-based Incremental

Primary Key

id

Replication Key

updated_at

Useful links

Zendesk Support documentation

ticket_fields schema on GitHub

Zendesk Support API method

Join ticket_fields with on
ticket_forms
ticket_fields.id = ticket_forms.ticket_field_ids
tickets
ticket_fields.id = tickets.custom_fields.id

active

BOOLEAN

agent_description

STRING

collapsed_for_agents

BOOLEAN

created_at

DATE-TIME

custom_field_options

ARRAY

default

BOOLEAN

id

INTEGER

name

STRING

raw_name

STRING

value

STRING

description

STRING

editable_in_portal

BOOLEAN

id

INTEGER

position

INTEGER

raw_description

STRING

raw_title

STRING

raw_title_in_portal

STRING

regexp_for_validation

STRING

removable

BOOLEAN

required

BOOLEAN

required_in_portal

BOOLEAN

sub_type_id

INTEGER

system_field_options

ARRAY

tag

STRING

title

STRING

title_in_portal

STRING

type

STRING

updated_at

DATE-TIME

url

STRING

visible_in_portal

BOOLEAN

ticket_forms

The ticket_forms table contains info about the ticket forms in your Zendesk Support account.

Note: Replicating ticket forms requires that you be on an Enterprise Zendesk Support plan or a Professional plan with the corresponding add-on, and have Admin permissions in Zendesk Support.

Replication Method

Key-based Incremental

Primary Key

id

Replication Key

updated_at

Useful links

Zendesk Support documentation

ticket_forms schema on GitHub

Zendesk Support API method

Join ticket_forms with on
ticket_fields
ticket_forms.ticket_field_ids = ticket_fields.id
tickets
ticket_forms.ticket_field_ids = tickets.custom_fields.id
ticket_forms.id = tickets.ticket_form_id

active

BOOLEAN

created_at

DATE-TIME

default

BOOLEAN

display_name

STRING

end_user_visible

BOOLEAN

id

INTEGER

in_all_brands

BOOLEAN

name

STRING

position

INTEGER

raw_display_name

STRING

raw_name

STRING

restricted_brand_ids

ARRAY

ticket_field_ids

ARRAY

updated_at

DATE-TIME

url

STRING

ticket_metrics

The ticket_metrics table contains info about the metrics associated with Zendesk Support tickets. This table will not include records for deleted tickets.

Note: Retrieving ticket metric data requires Zendesk Support Admin permissions.

Deleted ticket metrics

As Zendesk Support’s API doesn’t currently support returning metrics for deleted tickets, this table will not contain any metrics for deleted tickets.

If you believe you’re missing records, check in your Zendesk Support account to see if the missing records are for deleted tickets.

For more info on how Zendesk Support handles deleting tickets, refer to their documentation.

Replication Method

Key-based Incremental

Primary Key

id

Replication Key

updated_at

Useful links

Zendesk Support documentation

ticket_metrics schema on GitHub

Zendesk Support API method

Join ticket_metrics with on
satisfaction_ratings
ticket_metrics.ticket_id = satisfaction_ratings.ticket_id
tickets
ticket_metrics.ticket_id = tickets.id
ticket_audits
ticket_metrics.ticket_id = ticket_audits.ticket_id
ticket_comments
ticket_metrics.ticket_id = ticket_comments.ticket_id

agent_wait_time_in_minutes

OBJECT

business

INTEGER

calendar

INTEGER

assigned_at

DATE-TIME

assignee_stations

INTEGER

assignee_updated_at

DATE-TIME

created_at

DATE-TIME

first_resolution_time_in_minutes

OBJECT

business

INTEGER

calendar

INTEGER

full_resolution_time_in_minutes

OBJECT

business

INTEGER

calendar

INTEGER

group_stations

INTEGER

id

INTEGER

initially_assigned_at

DATE-TIME

instance_id

INTEGER

latest_comment_added_at

DATE-TIME

metric

STRING

on_hold_time_in_minutes

OBJECT

business

INTEGER

calendar

INTEGER

reopens

INTEGER

replies

INTEGER

reply_time_in_minutes

OBJECT

business

INTEGER

calendar

INTEGER

requester_updated_at

DATE-TIME

requester_wait_time_in_minutes

OBJECT

business

INTEGER

calendar

INTEGER

solved_at

DATE-TIME

status

OBJECT

business

INTEGER

calendar

INTEGER

status_updated_at

DATE-TIME

ticket_id

INTEGER

time

STRING

type

STRING

updated_at

DATE-TIME

url

STRING

tickets

The tickets table contains info about the tickets in your Zendesk Support account. Tickets are the means through which your end users (customers) communicate with your Zendesk Support agents.

Note: Retrieving ticket data requires Zendesk Support Admin permissions.

Custom ticket fields

Stitch’s Zendesk Support integration will replicate all custom ticket fields.

Replication Method

Key-based Incremental

Primary Key

id

Replication Key

generated_timestamp

Useful links

Zendesk Support documentation

tickets schema on GitHub

Zendesk Support API method

Join tickets with on
groups
tickets.group_id = groups.id
group_memberships
tickets.group_id = group_memberships.group_id
organizations
tickets.group_id = organizations.group_id
tickets.organization_id = organizations.id
tickets.tags = organizations.tags
satisfaction_ratings
tickets.group_id = satisfaction_ratings.group_id
tickets.id = satisfaction_ratings.ticket_id
tickets.requester_id = satisfaction_ratings.assignee_id
tickets.follower_ids = satisfaction_ratings.assignee_id
tickets.submitter_id = satisfaction_ratings.assignee_id
tickets.collaborator_ids = satisfaction_ratings.assignee_id
tickets.assignee_id = satisfaction_ratings.assignee_id
tickets.requester_id = satisfaction_ratings.requester_id
tickets.follower_ids = satisfaction_ratings.requester_id
tickets.submitter_id = satisfaction_ratings.requester_id
tickets.collaborator_ids = satisfaction_ratings.requester_id
tickets.assignee_id = satisfaction_ratings.requester_id
users
tickets.group_id = users.default_group_id
tickets.organization_id = users.organization_id
tickets.tags = users.tags
tickets.requester_id = users.id
tickets.follower_ids = users.id
tickets.submitter_id = users.id
tickets.collaborator_ids = users.id
tickets.assignee_id = users.id
tags
tickets.tags = tags.name
ticket_fields
tickets.custom_fields.id = ticket_fields.id
ticket_forms
tickets.custom_fields.id = ticket_forms.ticket_field_ids
tickets.ticket_form_id = ticket_forms.id
ticket_audits
tickets.id = ticket_audits.ticket_id
tickets.requester_id = ticket_audits.author_id
tickets.follower_ids = ticket_audits.author_id
tickets.submitter_id = ticket_audits.author_id
tickets.collaborator_ids = ticket_audits.author_id
tickets.assignee_id = ticket_audits.author_id
ticket_comments
tickets.id = ticket_comments.ticket_id
tickets.requester_id = ticket_comments.author_id
tickets.follower_ids = ticket_comments.author_id
tickets.submitter_id = ticket_comments.author_id
tickets.collaborator_ids = ticket_comments.author_id
tickets.assignee_id = ticket_comments.author_id
ticket_metrics
tickets.id = ticket_metrics.ticket_id

allow_attachments

BOOLEAN

allow_channelback

BOOLEAN

assignee_id

INTEGER

brand_id

INTEGER

collaborator_ids

ARRAY

created_at

DATE-TIME

custom_fields

ARRAY

description

STRING

due_at

DATE-TIME

email_cc_ids

ARRAY

external_id

STRING

follower_ids

ARRAY

followup_ids

ARRAY

forum_topic_id

INTEGER

generated_timestamp

INTEGER

group_id

INTEGER

has_incidents

BOOLEAN

id

INTEGER

is_public

BOOLEAN

organization_id

INTEGER

priority

STRING

problem_id

INTEGER

raw_subject

STRING

recipient

STRING

requester_id

INTEGER

satisfaction_rating

OBJECT, STRING

assignee_id

INTEGER

comment

STRING

created_at

DATE-TIME

group_id

INTEGER

id

INTEGER

reason

STRING

reason_id

INTEGER

requester_id

INTEGER

score

STRING

ticket_id

INTEGER

updated_at

DATE-TIME

url

STRING

sharing_agreement_ids

ARRAY

status

STRING

subject

STRING

submitter_id

INTEGER

tags

ARRAY

ticket_form_id

INTEGER

type

STRING

updated_at

DATE-TIME

url

STRING

via

OBJECT

channel

STRING

source

OBJECT

from

OBJECT

address

STRING

name

STRING

subject

STRING

ticket_id

INTEGER

rel

STRING

to

OBJECT

address

STRING

name

STRING

users

The users table contains info about the users associated with your Zendesk Support account. This includes agents, admins, and end-users (customers).

Note: Retrieving user data requires Zendesk Support Admin permissions.

Custom user fields

Stitch’s Zendesk Support integration will replicate any custom fields associated with user records.

Note: Replicating user custom fields requires that you be on a Team, Professional, or Enterprise Zendesk Support plan.

Replication Method

Key-based Incremental

Primary Key

id

Replication Key

updated_at

Useful links

Zendesk Support documentation

users schema on GitHub

Zendesk Support API method

Join users with on
groups
users.default_group_id = groups.id
users.id = groups.id
group_memberships
users.default_group_id = group_memberships.group_id
organizations
users.default_group_id = organizations.group_id
users.organization_id = organizations.id
users.tags = organizations.tags
satisfaction_ratings
users.default_group_id = satisfaction_ratings.group_id
users.id = satisfaction_ratings.assignee_id
users.id = satisfaction_ratings.requester_id
tickets
users.default_group_id = tickets.group_id
users.organization_id = tickets.organization_id
users.tags = tickets.tags
users.id = tickets.requester_id
users.id = tickets.follower_ids
users.id = tickets.submitter_id
users.id = tickets.collaborator_ids
users.id = tickets.assignee_id
macros
users.id = macros.restriction.id
tags
users.tags = tags.name
ticket_audits
users.id = ticket_audits.author_id
ticket_comments
users.id = ticket_comments.author_id

active

BOOLEAN

alias

STRING

chat_only

BOOLEAN

created_at

DATE-TIME

custom_role_id

INTEGER

default_group_id

INTEGER

details

STRING

email

STRING

external_id

STRING

id

INTEGER

last_login_at

DATE-TIME

locale

STRING

locale_id

INTEGER

moderator

BOOLEAN

name

STRING

notes

STRING

only_private_comments

BOOLEAN

organization_id

INTEGER

permanently_deleted

BOOLEAN

phone

STRING

photo

OBJECT

report_csv

BOOLEAN

restricted_agent

BOOLEAN

role

STRING

role_type

INTEGER

shared

BOOLEAN

shared_agent

BOOLEAN

shared_phone_number

BOOLEAN

signature

STRING

suspended

BOOLEAN

tags

ARRAY

ticket_restriction

STRING

time_zone

STRING

two_factor_auth_enabled

BOOLEAN

updated_at

DATE-TIME

url

STRING

user_fields

OBJECT

verified

BOOLEAN


Questions? Feedback?

Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.