Zoho CRM

Description

This Zoho connection allows users to migrate data from Zoho CRM.

Task Type Support

This connection type supports the following task types:

  • Data Migration

Data Migration Support

This connection can be used in a Data Migration.

Usable as Source Usable as Target Usable as Incremental Source Usable as Incremental Target

Connection String Templates

Template Name Description
Zoho CRM Zoho CRM configuration requires a Region, InstanceType, InitiateOAuth, OAuthClientId, OAuthClientSecret, OAuthAccessToken, and OAuthRefreshToken.

How to Set Up Zoho CRM in Loome

Pre-requisite Steps

Step 1. Register the Application in Zoho

Step 2. Generate the Authorization Code

Important: The authorization code returned in this step is only valid for one minute, so you need to exchange it quickly in Step 3.

Construct the authorization URL and open it in your browser: https://accounts.zoho.com/oauth/v2/auth?scope=ZohoCRM.modules.READ&client_id=YOUR_CLIENT_ID&response_type=code&access_type=offline&redirect_uri=YOUR_REDIRECT_URI

Key Parameters:

  1. Replace the placeholder values:
    • scopeZohoCRM.modules.READ (for read-only access to all CRM modules).
    • client_id → From your Server-Based Application created in Step 1.
    • redirect_uri → From your Server-Based Application created in Step 1 (must match exactly).
    • access_type=offline → Critical: This ensures you receive a refresh token.
    • https://accounts.zoho.com → Replace with your region-specific accounts server URL from Step 1.
  2. Open this URL in a browser.
  3. Log in with the Zoho account and approve access.
  4. Capture the code parameter returned in your redirect URI.

Step 3. Exchange the Code for Tokens

Construct the curl command and run it in Windows CMD:

curl -X POST "https://accounts.zoho.com/oauth/v2/token" ^
  -H "Content-Type: application/x-www-form-urlencoded" ^
  -d "grant_type=authorization_code" ^
  -d "client_id=YOUR_CLIENT_ID" ^
  -d "client_secret=YOUR_CLIENT_SECRET" ^
  -d "redirect_uri=YOUR_REDIRECT_URI" ^
  -d "code=AUTH_CODE"

Important Notes:

  1. Replace the placeholder values:
    • https://accounts.zoho.com → Use your region-specific accounts server URL from Step 1.
    • client_id → From your Server-Based Application created in Step 1.
    • client_secret → From your Server-Based Application created in Step 1.
    • redirect_uri → From your Server-Based Application created in Step 1 (must match exactly).
    • code → The authorization code from Step 2 (valid for only 1 minute).
  2. Open a Windows CMD console and run the command immediately after Step 2.

The response will look like this:

{
  "access_token": "1000.xxxxxxxx",
  "refresh_token": "1000.xxxxxxxx",
  "api_domain": "https://www.zohoapis.com",
  "token_type": "Bearer",
  "expires_in": 3600
}

Step 4. Record the Tokens and API Domain

Critical values to save:

  • Access Token → Needed for the initial connection (expires in 1 hour).
  • Refresh Token → Critical for long-term non-interactive operation (does not expire).
  • API Domain → The base URL for API calls (varies by region and service).

The Loome Zoho CRM Connector will use the refresh token to automatically fetch new access tokens when jobs run. The initial access token must be supplied; it does not matter if it has expired.

In Loome

Step 5. Configure the Loome Zoho CRM Connector

Create or update your Zoho CRM connection with the following properties:

Region=YOUR_REGION;
InstanceType=Production;
InitiateOAuth=REFRESH;
OAuthClientId=YOUR_CLIENT_ID;
OAuthClientSecret=YOUR_CLIENT_SECRET;
OAuthAccessToken=INITIAL_ACCESS_TOKEN;
OAuthRefreshToken=REFRESH_TOKEN;

Parameter Details:

  • Region → Must match the region you selected in Step 1:
    • US for United States (accounts.zoho.com)
    • Europe for Europe (accounts.zoho.eu)
    • India for India (accounts.zoho.in)
    • Australia for Australia (accounts.zoho.com.au)
    • Japan for Japan (accounts.zoho.jp)
    • China for China (accounts.zoho.com.cn)
    • Canada for Canada (accounts.zoho.ca)
  • InstanceType → Set to Production for production environments or Sandbox for sandbox/developer environments.
  • InitiateOAuth=REFRESH → Uses the refresh token to automatically obtain new access tokens without interactive login.
  • OAuthClientId → The Client ID from Step 1.
  • OAuthClientSecret → The Client Secret from Step 1.
  • OAuthAccessToken → The short-lived token you captured in Step 4.
  • OAuthRefreshToken → The long-lived token for automatic renewal you captured in Step 4.

Save the connection and you can then use it in tasks.

Operational Notes

  • You only need to run the manual flow once per connection to capture the refresh token.
  • After setup, the Loome Zoho CRM Connector will refresh tokens automatically during scheduled jobs.
  • If you add new scopes or need to re-authorize, re-run this process to obtain new tokens.
  • Each user/organization requires their own separate authorization flow and token set.