Zendesk
On This Page
Activate is currently available on the Hevo user interface only for users who have existing Activations. Further, effective Jul 01, 2023, Activate will be available only for the HubSpot and Salesforce Targets. For more information, please contact Hevo Support or your account executive.
Zendesk is a service-first CRM company that builds software designed to improve customer relationships. You can configure Zendesk as a Target in Activate to synchronize and transform data from your data warehouse and enrich your users and ticketing information in Zendesk.
Prerequisites
-
An active Zendesk account.
-
An Admin user in Zendesk.
-
Any Zendesk Suite or a Zendesk Support Enterprise plan to create custom objects using the Zendesk Sunshine platform. Read Sunshine’s custom objects guide for admins to know more about custom objects in Zendesk.
Configuring Zendesk as a Target
Perform the following steps to configure Zendesk as the Target in your Activation:
-
Click Activate in the Navigation Bar.
-
Do one of the following:
-
Select the TARGETS tab in the Targets List View, and click + CREATE TARGET.
-
Select the ACTIVATIONS tab in the Activations List View, and perform the following steps:
-
Click + CREATE ACTIVATION.
-
In the Select Warehouse page, select your Activate Warehouse or click + ADD WAREHOUSE to add a new warehouse. Read Activate Warehouses to configure the selected Warehouse type.
-
In the Select a Target page, click + ADD TARGET.
-
-
-
In the Select a Target Type page, click on Zendesk.
-
In the Configure your Zendesk Target page, specify the following information:
-
Target Name: A unique name for your Target.
-
Sub Domain: Your Zendesk sub-domain. Extract this from your dashboard URL. For example, if your dashboard URL is https://hevohelpdesk.zendesk.com, then your sub-domain is hevohelpdesk.
-
Email: The login email ID for your Zendesk account. This ID must be associated with an administrative account.
-
API Token: The Zendesk token you generated.
-
-
Click TEST & CONTINUE.
You can view the new Target in the Targets List View. If you are creating an Activation, you return to the Select Data to Synchronize page.
Generating a Zendesk API token
-
Log in to your Zendesk Admin Center (https://<your sub-domain name>/admin/home).
-
In the left navigation pane, click the Apps and integrations (
) icon and select APIs > Zendesk API.
-
From the Settings tab, enable Token access.
-
Click Add API token to generate a new API token.
-
Copy the API token and save it in a secure location like any other password. Read Zendesk documentation to know more about the process.
Data Replication
Activate allows data synchronization for all the supported standard and custom Zendesk objects using one of these behaviors:
-
Insert New and Update Existing Records (Upsert).
-
Update Existing Records (Update).
-
Add New Records (Insert).
-
Delete Existing Records (Delete).
Data is synchronized with all the standard Zendesk objects using the Batch API endpoints, which allow the update, delete, insert and create operations on up to 100 object records in a single call. If the number of records is more than 100, multiple calls are made. In the case of custom objects, the modifications are made one by one and not in batches. Read Synchronization Behaviors.
Activate synchronizes data from the Warehouse with the supported Zendesk objects using these unique identifiers:
Unique Identifiers | Description |
---|---|
id |
A unique value that Zendesk automatically assigns to the id field of the object record when it is created. |
external_id |
A unique identifier used to associate Zendesk object records with records from another system. For the Tickets object, the field, external_id is a matching identifier in the Upsert and Update sync behaviors. |
email |
The email address of the user. |
name |
A unique name for the organization. |
In the Upsert sync behavior, you must use an identifier other than id
. This is because Zendesk automatically assigns a value to the id
field for new records, thus overwriting any existing value sent by Activate, causing the synchronization to fail. For the Update sync behavior, you can use any one of the specified unique identifiers to synchronize data. To synchronize data in the Insert sync behavior, you do not need to specify an identifier. New records, as identified by the Activation SQL query from the Warehouse, are inserted and synchronized with the Target object. For the Delete sync behavior, Hevo only allows using the unique identifier id
to delete records from the Target object.
Data Model
The following table lists the objects supported by Activate and their unique or matching identifiers:
Object | Unique Identifiers | Matching Identifiers | Description |
---|---|---|---|
Organizations | - id - external_id - name |
NA | Provides details of the organizations into which your customers are segregated to route tickets created by them for better support. |
Tickets | - id |
- external_id |
Provides details of the communication between your customers and your Zendesk Support agents. |
Users | - id - external_id - email |
NA | Provides details of your Zendesk Support users based on their type: - End Users: Your customers who request for support using tickets. - Agents: Your Zendesk Support agents who resolve customer tickets. - Administrators: Your Zendesk Support agents with administrative abilities. |
Custom Objects | - id - external_id |
NA | Provides details of the custom objects created in the Zendesk portal for specific business requirements. Only accounts on the Zendesk Suite plans or the Zendesk Support Enterprise plan can create custom objects. |
Note: For the Tickets object, in the Upsert sync behavior, you can use the external_id
field only as a matching identifier. In the Update sync behavior, you can use the id
field as a unique identifier and the external_id
field as a matching identifier.
Target Considerations
-
A Zendesk Support Enterprise or any Zendesk Suite plan is needed to create custom objects. Read Custom Objects Limits to find out the limits on the total number of custom object records applicable to your account.
-
Zendesk imposes API rate limits on the connecting applications to prevent API traffic spikes. Since Activate uses Zendesk’s public APIs for synchronizing data, it is subject to the rate limits imposed by Zendesk. Read Usage limits.
-
The Zendesk trial account does not allow creating users using the bulk import functionality. Consequently, using Activate to create too many users while on the trial account may cause the API limits to be exceeded. To avoid this situation, you need to request the Zendesk Support team to enable the Bulk API flag in your account.
-
For some properties, the API endpoints of the Organizations, Tickets, and Users objects accept only a JSON array of strings or a comma-separated list as input. If the data values that are being synchronized are not in the expected format, an error is generated by the corresponding API endpoint, and the synchronization fails.
The following table provides a list of these properties:
Object Properties Organizations - domain_names
-tags
Tickets - collaborator_ids
-email_cc_ids
-follower_ids
-macro_ids
-tags
Users - external_id
-tags
-
The
tags
property or field in the Organizations, Tickets, and Users objects can contain values that are words or a combination of words. Tags provide context to the tickets or topics. If thetags
field is mapped in the Activation, any existing tags in these Zendesk objects are overwritten by the values that are returned by the Activation SQL query.For example, suppose a record with the
id
value 1339 in the Users object is tagged as a “P0_customer” and “issuenotresolved>7hrs”. Now, if the Activation SQL query returns the values for thetags
field of this record as the JSON array, [{“id”: 1339, “tags”:[“P0_customer”]}], then during data synchronization, Activate overwrites the existing tags with these values. Read About tags. -
You can assign end-users to multiple organizations to manage your ticket workflow and provide visibility to tickets that are relevant to them. To link end-users to multiple organizations, you must enable the setting from your Zendesk Admin Center.
For example, to allow users in your Sales or Product teams to access the Support team’s conversations, you can add them as end-users in the Support team. Read Enabling multiple organizations for users.
Revision History
Refer to the following table for the list of key updates made to this page:
Date | Release | Description of Change |
---|---|---|
Jan-24-2022 | 1.80 | Updated sections, Data Replication and Data Model to add information about the external_id field as a matching identifier for the Tickets object. |
Jan-03-2022 | 1.79 | Updated section, Target Considerations to provide additional information on certain Zendesk objects’ properties. |
Dec-20-2021 | 1.78 | New document. |