Skip to main content

Zoho CRM

Sync overview

The Zoho CRM source supports both Full Refresh and Incremental syncs. You can choose if this connector will copy only the new or updated data, or all rows in the tables and columns you set up for replication, every time a sync is run.

Airbyte uses REST API to fetch data from Zoho CRM.

This Source Connector is based on an Airbyte CDK.

Output schema

This Source is capable of syncing:

  • standard modules available in Zoho CRM account
  • custom modules manually added by user, available in Zoho CRM account
  • custom fields in both standard and custom modules, available in Zoho CRM account

The discovering of Zoho CRM module schema is made dynamically based on Metadata API and should generally take no longer than 10 to 30 seconds.

Notes:

Some of Zoho CRM Modules may not be available for sync due to limitations of Zoho CRM Edition or permissions scope. For details refer to the Scopes section in the Zoho CRM documentation.

Connector streams and schemas are built dynamically on top of Metadata that is available from the REST API - please see Modules API, Modules Metadata API, Fields Metadata API. The list of available streams is the list of Modules as long as Module Metadata is available for each of them from the Zoho CRM API, and Fields Metadata is available for each of the fields. If a module you want to sync is not available from this connector, it's because the Zoho CRM API does not make it available.

Data type mapping

Integration TypeAirbyte TypeNotes
booleanboolean
doublenumber
currencynumber
integerinteger
profileimagestring
pickliststringenum
textareastring
websitestringformat: uri
datestringformat: date
datetimestringformat: date-time
textstring
phonestring
bigintstringairbyte_type: big_integer
event_reminderstring
emailstringformat: email
autonumberstringairbyte_type: big_integer
jsonarrayarray
jsonobjectobject
multiselectpicklistarray
lookupobject
ownerlookupobject
RRULEobject
ALARMobject

Any other data type not listed in the table above will be treated as string.

Features

FeatureSupported? (Yes/No)
Full Refresh Overwrite SyncYes
Full Refresh Append SyncYes
Incremental - Append SyncYes
Incremental - Append + Deduplication SyncYes
NamespacesNo

List of Supported Environments for Zoho CRM

Production

EnvironmentBase URL
UShttps://zohoapis.com
AUhttps://zohoapis.com.au
EUhttps://zohoapis.eu
INhttps://zohoapis.in
CNhttps://zohoapis.com.cn
JPhttps://zohoapis.jp

Sandbox

EnvironmentEndpoint
UShttps://sandbox.zohoapis.com
AUhttps://sandbox.zohoapis.com.au
EUhttps://sandbox.zohoapis.eu
INhttps://sandbox.zohoapis.in
CNhttps://sandbox.zohoapis.com.cn
JPhttps://sandbox.zohoapis.jp

Developer

EnvironmentEndpoint
UShttps://developer.zohoapis.com
AUhttps://developer.zohoapis.com.au
EUhttps://developer.zohoapis.eu
INhttps://developer.zohoapis.in
CNhttps://developer.zohoapis.com.cn
JPhttps://developer.zohoapis.jp

For more information about available environments, please visit this page

Performance considerations

Also, Zoho CRM API calls are associated with credits, each Zoho CRM edition has a limit in a 24-hour rolling window, so please, consider it when configuring your connections. More details about Zoho CRM API credit system can be found here.

Note about using the Zoho Developer Environment

The Zoho Developer environment API is inconsistent with production environment API. It contains about half of the modules supported in the production environment. Keep this in mind when pulling data from the Developer environment.

Setup Guide (Airbyte Open Source)

To set up a connection with a Zoho CRM source, you will need to choose start sync date, Zoho CRM edition, region and environment. The latest are described above. Except for those, you will need OAuth2.0 credentials - Client ID, Client Secret and Refresh Token.

Get Client ID, Client Secret, and Grant Token

  1. Log into https://api-console.zoho.com/
  2. Choose client
  3. Enter a scope the future refresh and access tokens will cover. For instance, it can be ZohoCRM.modules.ALL, ZohoCRM.settings.ALL, ZohoCRM.settings.modules.ALL. Make sure the scope covers all needed modules.
  4. Enter grant token's lifetime and description, click "Create".
  5. Copy Grant token, close the popup and copy Client ID and Client Secret on the "Client Secret" tab.

Create Refresh Token

For generating the refresh token, please refer to this page. Make sure to complete the auth flow quickly, as the initial token granted by Zoho CRM is only live for a few minutes before it can no longer be used to generate a refresh token.

Changelog

VersionDatePull RequestSubject
0.1.02022-03-3011193Initial release