Zoho Desk
TapData Cloud offers you cloud services that are suitable for scenarios requiring rapid deployment and low initial investment, helping you focus more on business development rather than infrastructure management. Free trial with TapData Cloud.TapData Enterprise can be deployed in your local data center, making it suitable for scenarios with strict requirements on data sensitivity or network isolation. It can serve to build real-time data warehouses, enable real-time data exchange, data migration, and more.TapData Community is an open-source data integration platform that provides basic data synchronization and transformation capabilities. This helps you quickly explore and implement data integration projects. As your project or business grows, you can seamlessly upgrade to TapData Cloud or TapData Enterprise to access more advanced features and service support.If you're interested, consider exploring ZoHo Desk's OpenAPI documentation and WebHook documentation to understand the details:
Of course, you can also follow the content below for a quick start on configuring the ZoHo Desk data source.
1. Attribute Descriptionβ
- Organization ID (org ID): Your data source organization. Obtain and configure this from ZoHo Desk manually.
- Client ID: Obtain and copy the client ID manually from ZoHo Desk.
- Client Secret: Similar to the client ID, you'll find the client secret alongside the client ID. Enter both to generate the application code.
- Application Generation Code: Use this code along with the client ID and client secret to get OpenAPI access key and refresh token.
- Connection Mode: Users can choose the connection mode, including normal document mode and CSV mode (not available yet).
- Incremental Mode: ZoHo Desk data sources only support WebHook incremental mode for OpenAPI. Details are explained below.
- Service URL: This URL is used to configure WebHooks. Copy and paste the generated service URL here for ZoHo Desk's WebHook configuration. Configuration process is explained below.
2. Configuration Stepsβ
2.1 Basic Configurationβ
Obtain Organization ID: In ZoHo Desk, click "Settings" in the upper right corner, then navigate to "Developer Space" and the "API" section. Find "Zoho Service Communication (ZSC) Key" at the bottom and copy the organization ID.
Access the API Console by clicking "ADD CLIENT" in the upper right corner. Choose "Self Client."
API Console Link: API Console
Click "Client Secret" in the menu to get the Client ID and Client Secret.
Next, generate the "Generate Code". Input the Scope, providing a complete scope benefits API data retrieval. Example scope:
Desk.tickets.ALL,Desk.search.READ,Desk.contacts.READ,Desk.contacts.WRITE,Desk.contacts.UPDATE,Desk.contacts.CREATE,Desk.tasks.ALL,Desk.basic.READ,Desk.basic.CREATE,Desk.settings.ALL,Desk.events.ALL,Desk.articles.READ,Desk.articles.CREATE,Desk.articles.UPDATE,Desk.articles.DELETE
You can customize the scope using the official documentation: OAuth Scopes.
Choose a "Time Duration": 3, 5, 7, or 10 minutes. You need to return to TapData Create Connection page within this time to get access and refresh tokens.
After clicking "Create", manually select the associated project (portal) which is the data source.
After generating "Generate Code", return to TapData Create Connection page within the specified time to obtain the Token. Follow the same steps to get Generate Code again if time is exceeded.
2.2 WebHook Configurationβ
Configuring WebHooks enables real-time data updates.
Global WebHook Configurationβ
First, click "Generate Service URL" to create the corresponding service URL for the data source. ZoHo Desk will use this URL to communicate update events.
Open ZoHo Desk, go to "Settings" in the upper right, select "Developer Space," then navigate to "WebHook." Create a new WebHook. Input the WebHook name, paste the generated service URL into the URL field, and select and add desired events.
Click "Save" to activate the WebHook.
Workflow WebHook Configurationβ
If the global WebHook configuration doesn't work, you may need to configure a WebHook within a workflow.
Access "Settings," find "Automation," select "Workflow," then "Rules." Create a new rule.
Choose the relevant module, name the rule, and proceed.
Select the execution event to trigger the workflow.
Optionally define conditions to filter specific events.
Choose an operation. For WebHook, select all operations, then choose "Send Cliq Notification" from external operations.
Edit the operation name and paste the service URL from the creation of ZoHo data source in TapData into the "InComing WebHook URL" field.
Edit the "Notification Message" and click "Save." This configures a workflow.
3. Table Descriptionsβ
- Tickets: Work Order Table
- Departments: Department Table
- Products: Product Table
- OrganizationFields: Custom Attribute Field Table
- Contracts: Contract Table
4. Precautionsβ
- Configuration of ZoHo data source requires generating the service URL and configuring it in ZoHo Desk. Otherwise, incremental events won't work.
- When duplicating a ZoHo data source, configure a new WebHook in ZoHo Desk as the service URL is unique for each data source.
- Avoid creating multiple ZoHo data sources using the same Client ID and Client Secret, as access keys from the same set are limited. This prevents unnecessary losses due to OpenAPI rate limiting. ZoHo Desk provides a limited number of OpenAPI access connections even for VIPs.
- In WebHook incremental mode, if you delete a record or data monitored by WebHooks in ZoHo Desk, you'll receive an update event related to the IsDel field. If you reset and restart the task, the deleted record won't be obtained due to ZoHo Open API not providing records with IsDel set to TRUE.
- Regarding the service URL, ZoHo WebHook requires your service URL to be accessible on port 80 or 443, e.g., http://xxx.xx.xxx:80/xxxxxxxx or https://xxx.xx.xxx:443/xxxxxx. Therefore, you need to receive ZoHo Desk's data on ports 80 or 443.