Zoho CRM Connector
This topic describes the integration connector between Zoho CRM and HCL CDP, which facilitates the synchronization of contact and lead records to create a unified customer profile.
Prerequisites
To utilize this integration, the following prerequisites must be met:
- API Access: Necessary API credentials for both Zoho CRM and HCL CDP.
- Data Mapping: Definition of alignment between Zoho CRM properties and HCL CDP attributes.
- Zoho Account: An active Zoho account with a Client ID and Client Secret.
Get Client ID and Client Secret in Zoho CRM (OAuth)
- Navigate to
https://accounts.zoho.com/signupto create an account. - Verify your email address after signing up.
- Open the Zoho API Console at
https://api-console.zoho.com/. - Click Add Client to register your application.
- Select Server-based Applications (Web-based) as the Client Type.
- Enter a Client Name (e.g.,
MyCRMIntegration
). - Enter a Homepage URL (e.g.,
https://yourdomain.com). - In Authorized Redirect URIs, add your redirect URL (e.g.,
https://yourdomain.com/callback).Important: Zoho only redirects to whitelisted URLs. - Click Create to receive your Client ID and Client Secret.
Connection Parameters
The following parameters are required to establish a connection:
| Property | Description |
|---|---|
| Base URL | The base URL for accessing the Zoho CRM API. |
| Redirect URI | The URI where Zoho will redirect after user login. |
| CDP API URL | The URL for accessing the HCL CDP API. |
| Access Token | The OAuth 2.0 access token for Zoho CRM. |
| Auth URL | The authorization URL for Zoho CRM. |
| Client ID | The client ID associated with your Zoho CRM application. |
| Refresh Token | The OAuth 2.0 refresh token for Zoho CRM. |
| Client Secret | The client secret for your Zoho CRM application. |
| Activity Fetch Units | Frequency units (e.g., hours, days). |
| Activity Fetch Frequency | The rate at which activities are fetched. |
Action Configurations
Define the following properties:
| Property | Description |
|---|---|
| Module | Select Module Leads or Contacts |
| CDP API Key | Keys used to autenticate the CDP tenant |
| CDP API Passkey | Keys used to authenticate the CDP tenant |
| Leads/Contacts fields <drop down> | Select required fields for Leads/Contacts |
| CDP Prefix | Give Prefix if required |
| CDP Primary Identifier | Primary Identifier name for CDP (e.g., identity) |
| Duration | Duration of days that the flow should run |
Extracting Data from Zoho CRM
Data is extracted using the Zoho COQL API.
Endpoint:
POST
https://www.zohoapis.in/crm/v2/coql
{
"select_query": "SELECT Email, First_Name, Last_Name, Created_Time FROM Contacts WHERE Created_Time >= '2000-01-01T00:00:00+05:30' LIMIT 200 OFFSET 0"
}Example Response (Excerpt): A JSON object
containing matching contact/lead
records.{
"data": [
{
"Owner": { "id": "#UserID#" },
"Email": "username#email.com",
"Description": null,
"Mailing_Zip": "70116",
"Other_Phone": null,
"Mailing_State": "LA",
"Twitter": "johnbuttbent_sample",
"Other_Zip": null,
"Mailing_Street": "6649 N Blue Gum St",
"Other_State": null,
"Salutation": null,
"Other_Country": null,
"Last_Activity_Time": "2025-02-03T16:18:59+05:30",
"First_Name": "John",
"Full_Name": "John Butt (Sample)",
"Asst_Phone": null,
"Record_Image": "d06i747e8cfc499564b129b6fbb219be962d0",
"Department": "Design",
"Modified_By": { "id": "854148000000345001" }
...
}
]
}Inserting Data into HCL CDP
Endpoint:
POST https://<base_url>/customer-profiles/v1/profiles
[
{
"properties" :
{"Owner":{"id":"#UserID#"},
"Company":"Creative Business Systems",
"Email":"username@email.com",
"Description":null,
"Rating":null,
"Website":"http://www.domain.com",
"Twitter":"username_sample",
"Salutation":"Mr.",
"Last_Activity_Time":"2025-02-03T16:19:01+05:30",
"First_Name":"Chau",
"Full_Name":"Chau Kitzman (Sample)",
"Lead_Status":"Attempted to Contact",
"Industry":"ERP",
"Record_Image":"d06i727aacf0b09e6402eadf8b555f67219f9",
"Modified_By":{"id":"#userID#"},
"Skype_ID":"chau-kitzman",
"Unsubscribed_Mode":null,
"Phone":"555-555-5555",
"Street":"6649 N Blue Gum St",
"Zip_Code":"70116",
"id":"854148000000344416",
"Email_Opt_Out":false,
"Designation":"Junior Executive",
"Modified_Time":"2025-02-03T16:19:01+05:30",
"Enrich_Status__s":null,
"Created_Time":"2025-02-03T16:18:54+05:30",
"Unsubscribed_Time":null,
"Change_Log_Time__s":"2025-02-03T16:19:01+05:30",
"City":"New Orleans",
"No_of_Employees":null,
"Mobile":"555-555-5555",
"Last_Name":"Kitzman (Sample)",
"State":"LA",
"Locked__s":false,
"Lead_Source":"Advertisement",
"Country":"United States",
"Created_By":{"id":"#UserID#"},
"Fax":null,
"Annual_Revenue":100000,
"Secondary_Email":null,
"Last_Enriched_Time__s":null
},
"userId":ZH854148000000344416,
"type":"identitfy"
},
.. . . . .
]
Success Response:
200,Data Processed successfully,a67f4ed4-4339-41ca-985b-9e774d4f0aff,,2025-04-09T06:03:07