Zendesk Support
Zendesk Support is a cloud-based customer support platform.
Features
| Feature Name | Supported | Notes |
|---|---|---|
| Capture deletes | check | BRAND, CUSTOM_ROLE, FORUM_TOPIC, GROUP, GROUP_MEMBER, POST, SCHEDULE, SCHEDULE_HOLIDAY, TICKET*, TICKET_FIELD_HISTORY*, SLA_POLICY_HISTORY and all Zendesk Talk tables, except CALL_METRIC and CALL_LEG |
| History mode | check | AGENT_CHANNEL_HISTORY, AGENT_MAX_CAPACITY_HISTORY, AGENT_STATUS_HISTORY, AGENT_UNIFIED_STATUS_HISTORY, GROUP_SLA_POLICY_HISTORY, and GROUP_SLA_POLICY_METRIC_HISTORY tables. |
| Custom data | check | USER, ORGANIZATION, and TICKET tables. We support the custom table, TICKET_CUSTOM_FIELD. Data from the ticket custom fields populate this table. We support the custom table, TICKET_CUSTOM_STATUS. Data from the custom ticket statuses populate this table.<br>We do not support Zendesk custom objects. |
| Data blocking | check | ORGANIZATION_MEMBER table only |
| Column hashing | ||
| Re-sync | check | |
| API configurable | check | API configuration |
| Priority-first sync | check | CALL_METRIC, SATISFACTION_RATING, TICKET, TICKET_FIELD_HISTORY, and TICKET_TAG_HISTORY tables and thier child tables. |
| Fivetran data models | check | |
| Private networking | ||
| Authorization via API | check |
We capture deletes in the TICKET and TICKET_FIELD_HISTORY tables using the status field.
Supported products
| Product Name | Notes |
|---|---|
| Zendesk Chat | Using our Zendesk Chat connector |
| Zendesk Gather | Only Posts and Comments |
| Zendesk Guide | Only Articles |
| Zendesk Support | |
| Zendesk Talk | Within the Zendesk Support Connector |
Supported deployment models
We support the SaaS and Hybrid deployment models for the connector.
You must have an Enterprise or Business Critical plan to use the Hybrid Deployment model.
Setup guide
Follow our step-by-step Zendesk Support setup guide to connect Zendesk Support with your destination using Fivetran connectors.
Sync overview
The Zendesk Support connector supports multithreading. Fivetran uses multiple parallel API requests to sync data from Zendesk systems to your destination. Your connection’s sync speed depends on your Zendesk API quota.
Fivetran also syncs the following tables by registering a webhook endpoint with Zendesk.
AGENT_CHANNEL_HISTORYAGENT_MAX_CAPACITY_HISTORYAGENT_STATUS_HISTORYAGENT_UNIFIED_STATUS_HISTORY
These webhook tables are not supported when using Hybrid Deployment.
Historical sync time frame
You can configure the Historical sync time frame when setting up your connection to speed up both the initial sync and subsequent re-syncs. Historical sync time frame limits the amount of data synced for the following tables:
SATISFACTION_RATINGTICKETTICKET_TAGTICKET_FIELD
We apply the selected start date only to these tables, as they contain data that you are less likely to referenced much later.
For example, you might still refer a Zendesk agent created two years ago today if they are still with the company, so we do not apply the start date to the USER table. However, you are unlikely to refer to a ticket created 10 years ago , which is why we apply the start date to the TICKET table.
You can modify the Historical sync time frame at any time. If you change it to an earlier date, we perform a full historical sync, syncing data back to that new date. If you set it to a later date, we do not delete any existing data. Instead, we apply the new time frame only to subsequent re-syncs.
Schema information
This schema applies to all Zendesk Support connections created after December 7, 2017.
To zoom, open the ERD in a new window.Schema notes
To display some information about ticket deletion, we artificially create a TICKET_FIELD_HISTORY record when we detect a deleted ticket - it is not created from any audit event. This is because the source does not provide us event audit data for deleted tickets. Any ticket audit event indicating deletion of a ticket is added with a null value in the user_id column, and the updated_at value is taken from the updated_at value on the ticket that was deleted.
TICKET_FIELD_HISTORY.field_name is the custom field ID for custom fields. The TICKET_CUSTOM_FIELD table contains the custom field title.
We sync the multi-select fields only if you have enabled TICKET_FIELD_HISTORY table.
Schedule assignment for tickets is a Zendesk Enterprise feature. For all other accounts the default schedule applies to all tickets.
We sync the SCHEDULE and SCHEDULE_HOLIDAY tables only if you have created a schedule in Zendesk.
We sync the TICKET_SCHEDULE table when you create a trigger with a set schedule action. Read Zendesk's documentation for more information.
To create accurate measures of ticket metrics and SLA policy violations, we use the tables, DAYLIGHT_TIME and TIME_ZONE, to allow you to accurately calculate the schedule in the applicable time zone throughout the year.
We exclude the ORGANIZATION_MEMBERSHIP from the sync by default because they can be large tables and may degrade performance. We also exclude the AUDIT_LOG table from the sync by default. If you want to sync these tables, go to the Schema tab of your Fivetran dashboard and select the tables. Learn how in our connector schema documentation.
We perform a weekly sync of the ORGANIZATION_MEMBERSHIP table every Saturday. Additionally, we sync the table when a connector/table-level re-sync is triggered or if more than 7 days have passed since the last sync.
We sync the TICKET_LINK table only if you have Administrator permissions and the Jira application is installed in your Zendesk Support account. For more information about setting up Zendesk Support for Jira integration, see Zendesk's documentation.
We now sync data from the TICKET_CSAT_SURVEY table and its child tables using the default locale of the connecting Zendesk Support user. If no default locale is set, we use en-US as the default locale.
Triggering a historical resync after changing the user’s locale will increase Monthly Active Rows (MAR), as survey text content could vary between locales.
We sync the following tables only if Zendesk Talk is integrated with your account:
ADDRESSCALL_METRICCALL_LEGCALL_LEG_QUALITY_ISSUEGREETINGGREETING_CATEGORYGREETING_IVRIVRIVR_MENUIVR_MENU_ROUTEIVR_MENU_ROUTE_OPTIONLINELINE_CATEGORISED_GREETINGLINE_GREETINGLINE_GROUP
IVR, IVR_MENU, IVR_MENU_ROUTE, and IVR_MENU_ROUTE_OPTION tables are available only for Zendesk Talk's Professional and Enterprise plans.
Translation data
By default, the TRANSLATION table is enabled. To sync translation data for a specific entity, you must enable both the TRANSLATION table and the corresponding entity’s table. For example, to sync translation for article table, you need to enable both the TRANSLATION and ARTICLE tables.
Enabling the TRANSLATION table starts syncing translation data from that point forward. The connection does not backfill translation data for previously synced articles, sections, or categories. Additionally, triggering a re-sync for any entity's table also syncs the translation data for that entity, resulting in a MAR increase for the TRANSLATION table.
If you stop syncing translation data and start re-syncing it later, the connection will not backfill missing translation records for already synced articles, sections, and categories.
Subscription data
By default, the CONTENT_SUBSCRIPTION table is enabled. To sync content subscription data for a specific entity, you must enable both the CONTENT_SUBSCRIPTION table and the corresponding entity's table. For example, to sync content subscription data for the ARTICLE table, you must enable both the CONTENT_SUBSCRIPTION and ARTICLE tables.
When you enable the CONTENT_SUBSCRIPTION table, we start syncing content subscription data from that point forward. The connection does not backfill content subscription data for previously synced articles, sections, posts, or topics. Additionally, triggering a re-sync for any entity's table also syncs content subscription data for that entity, resulting in a MAR increase for the CONTENT_SUBSCRIPTION table.
If you stop syncing content subscription data and start re-syncing it later, the connection does not backfill missing content subscription records for previously synced articles, sections, posts, and topics.
By default, the USER_SUBSCRIPTION table is deselected in the schema. Selecting this table may degrade sync performance. Changes to user subscriptions aren't detected in incremental syncs because Zendesk doesn't update the user’s updated_at timestamp. A full resync of the USER table is required to capture up-to-date data, which can be time-consuming depending on the size of the USER table.
Syncing empty tables and columns
The Zendesk Support connector doesn't support the creation of empty tables and columns in your destination.
We create a table in the destination only if we can retrieve the table data from the source. If Zendesk doesn’t return data for the source table, we don’t create the table in your destination.
Zendesk API usage
The default Zendesk API usage limit of a connection is 90%. You can use our REST API to configure the usage between 25% - 90%.