Zendesk Chat integration summary

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

Zendesk Chat feature snapshot

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

STITCH
Release status

Released on November 15, 2022

Supported by

Stitch

Stitch plan

Standard

API availability

Available

Singer GitHub repository

singer-io/tap-zendesk-chat

REPLICATION SETTINGS
Anchor Scheduling

Unsupported

Advanced Scheduling

Unsupported

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 Chat

Zendesk Chat setup requirements

To set up Zendesk Chat in Stitch, you need:

  • Owner permissions in Zendesk Chat. The user who authorizes the integration must have Owner permissions in Zendesk Chat. Otherwise, Stitch will encounter authentication issues and be unable to replicate data.

  • An Advanced or Premium Zendesk Chat account. Zendesk only allows customers on their Advanced or Paid Zendesk Chat plans to utilize the Rest API, which is what Stitch uses to connect to your Zendesk Chat account and replicate data.

    If your Zendesk Chat account is on Lite or Basic, you will need to upgrade your Zendesk Chat plan. More info on Zendesk Chat plans can be found on Zendesk’s website.


Step 1: Add Zendesk Chat 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 Chat 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 Chat” would create a schema called stitch_zendesk_chat in the destination. Note: Schema names cannot be changed after you save the integration.

  5. In the Zendesk Subdomain field, enter the subdomain of your Zendesk site. For example, the subdomain of stitchdata.zendesk.com would be stitchdata.

Step 2: Define the historical replication start date

The Sync Historical Data setting defines the starting date for your Zendesk Chat integration. This means that:

  • For tables using Key-based Incremental Replication, data equal to or newer than this date will be replicated to your destination.
  • For tables using Full Table Replication, all data - including records that are older, equal to, or newer than this date - will be replicated to your destination.

Change this setting if you want to replicate data beyond Zendesk Chat’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 Chat 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 Chat

Lastly, you’ll be directed to Zendesk’s website to complete the setup.

  1. Enter your Zendesk Chat credentials and click Login.
  2. Complete the authorization process.
  3. After the authorization process successfully completes, you’ll be redirected back to Stitch.
  4. Click All Done.

Initial and historical replication jobs

After you finish setting up Zendesk Chat, 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 Chat table reference

Replication Method :

Full Table

Primary Key :

account_key

API endpoint :

get Accounts

The account table contains info about accounts within your Zendesk Chat account.

account_key
STRING

The Zendesk Chat account key.

billing
OBJECT

additional_info
STRING

address1
STRING

address2
STRING

city
STRING

company
STRING

country_code
STRING

email
STRING

first_name
STRING

last_name
STRING

postal_code
STRING

state
STRING

account (table), billing (attribute)

create_date
DATE-TIME

plan
OBJECT

agent_leaderboard
BOOLEAN

agent_reports
BOOLEAN

analytics
BOOLEAN

chat_reports
BOOLEAN

daily_reports
BOOLEAN

email_reports
BOOLEAN

file_upload
BOOLEAN

goals
INTEGER

Reference:

high_load
BOOLEAN

integrations
BOOLEAN

ip_restriction
BOOLEAN

long_desc
STRING

max_advanced_triggers
STRING

max_agents
INTEGER

max_basic_triggers
STRING

max_concurrent_chats
STRING

max_departments
STRING

max_history_search_days
STRING

monitoring
BOOLEAN

name
STRING

operating_hours
BOOLEAN

price
NUMBER

rest_api
BOOLEAN

short_desc
STRING

sla
BOOLEAN

support
BOOLEAN

unbranding
BOOLEAN

widget_customization
STRING

account (table), plan (attribute)

status
STRING


Replication Method :

Full Table

Primary Key :

id

API endpoint :

get Agents

The agents table contains info about agents within your Zendesk Chat account.

id
INTEGER

The agent ID.

Reference:

create_date
DATE-TIME

departments
ARRAY

display_name
STRING

email
STRING

enabled
BOOLEAN

enabled_departments
ARRAY

value
INTEGER

agents (table), enabled_departments (attribute)

first_name
STRING

last_login
DATE-TIME

last_name
STRING

login_count
INTEGER

role_id
INTEGER

roles
OBJECT

administrator
BOOLEAN

owner
BOOLEAN

agents (table), roles (attribute)

scope
STRING

skills
ARRAY

value
INTEGER

agents (table), skills (attribute)

Replication Method :

Full Table

Primary Key :

id

API endpoint :

get Bans

The bans table contains info about bans created in your Zendesk Chat account.

id
INTEGER

The ban ID.

ip_address
STRING

reason
STRING

type
STRING

visitor_id
STRING

visitor_name
STRING


Replication Method :

Key-based Incremental

Replication Key :

timestamp

Primary Key :

id

API endpoint :

get Chats

The chats table contains info about the chats within your Zendesk Chat account.

id
STRING

The chat ID.

timestamp
DATE-TIME

The time the chat was created.

agent_ids
ARRAY

value
STRING

The agent IDs.

chats (table), agent_ids (attribute)

agent_names
ARRAY

value
STRING

chats (table), agent_names (attribute)

comment
STRING

conversions
ARRAY

attribution
OBJECT

agent_id
INTEGER

The agent ID.

Reference:

agent_name
STRING

chat_timestamp
DATE-TIME

department_id
INTEGER

The department ID.

department_name
STRING

chats (table), attribution (attribute)

goal_id
INTEGER

The goal ID.

Reference:

goal_name
STRING

id
STRING

timestamp
DATE-TIME

chats (table), conversions (attribute)

count
OBJECT

agent
INTEGER

total
INTEGER

visitor
INTEGER

chats (table), count (attribute)

department_id
INTEGER

The department ID.

Reference:

department_name
STRING

duration
INTEGER

end_timestamp
DATE-TIME

history
ARRAY

channel
STRING

conversion
OBJECT

attribution
OBJECT

agent_id
INTEGER

The agent ID.

Reference:

agent_name
STRING

chat_timestamp
DATE-TIME

department_id
INTEGER

The department ID.

Reference:

department_name
STRING

chats (table), attribution (attribute)

goal_id
INTEGER

The goal ID.

Reference:

goal_name
STRING

id
STRING

timestamp
DATE-TIME

chats (table), conversion (attribute)

department_id
INTEGER, STRING

The department ID

Reference:

department_name
STRING

msg
STRING

msg_id
INTEGER, STRING

name
STRING

new_rating
STRING

new_tags
ARRAY

value
STRING

chats (table), new_tags (attribute)

nick
STRING

options
STRING

prev_department_id
INTEGER, STRING

The previous department ID.

Reference:

rating
STRING

skills_name
ARRAY

value
STRING

chats (table), skills_name (attribute)

tags
ARRAY

value
STRING

chats (table), tags (attribute)

timestamp
DATE-TIME

type
STRING

chats (table), history (attribute)

message
STRING

missed
BOOLEAN

rating
STRING

referrer_search_engine
STRING

referrer_search_terms
STRING

response_time
OBJECT

avg
INTEGER, NUMBER

first
INTEGER

max
INTEGER

chats (table), response_time (attribute)

session
OBJECT

started_by
STRING

tags
ARRAY

value
STRING

chats (table), tags (attribute)

triggered
BOOLEAN

triggered_response
BOOLEAN

type
STRING

unread
BOOLEAN, INTEGER

visitor
OBJECT

email
STRING

id
STRING

name
STRING

notes
STRING

phone
STRING

chats (table), visitor (attribute)

webpath
ARRAY

from
STRING

timestamp
DATE-TIME

title
STRING

to
STRING

chats (table), webpath (attribute)

zendesk_ticket_id
INTEGER


Replication Method :

Full Table

Primary Key :

id

API endpoint :

get Departments

The departments table contains info about departments within your Zendesk Chat account.

id
INTEGER

The department ID.

Reference:

description
STRING

enabled
BOOLEAN

members
ARRAY

value
INTEGER

departments (table), members (attribute)

name
STRING

settings
OBJECT


Replication Method :

Full Table

Primary Key :

None

API endpoint :

get Goals

The goals table contains info about URL-based goals set within your Zendesk Chat account.

id
INTEGER

The goal ID.

Reference:

attribution_model
STRING

attribution_period
INTEGER

description
STRING

enabled
BOOLEAN

name
STRING

settings
OBJECT

conditions
ARRAY

operator
STRING

type
STRING

value
STRING

goals (table), conditions (attribute)
goals (table), settings (attribute)

Replication Method :

Full Table

Primary Key :

name

API endpoint :

get Shortcuts

The shortcuts table contains info about shortcuts within yoru Zendesk Chat account.

name
STRING

The name of the shortcut.

departments
ARRAY

value
INTEGER

shortcuts (table), departments (attribute)

id
STRING

The department ID.

Reference:

message
STRING

options
STRING

scope
STRING

tags
ARRAY

value
STRING

shortcuts (table), tags (attribute)

Replication Method :

Full Table

Primary Key :

id

API endpoint :

get Triggers

The triggers table contains info about triggers within your Zendesk Chat account.

id
INTEGER

The trigger ID.

definition
OBJECT

actions
STRING

condition
STRING

event
STRING

version
INTEGER

triggers (table), definition (attribute)

description
STRING

enabled
BOOLEAN

name
STRING



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.