Skip to main content

At a glance

Credentials

Set these per environment. See Connect an integration. With a managed OAuth app, Connect works without these variables; set them to use your own OAuth app instead.
VariableRequiredDescription
ZOHO_CLIENT_IDYesZoho OAuth Client ID from the Zoho API Console Docs.
ZOHO_CLIENT_SECRETYesZoho OAuth Client Secret from the Zoho API Console Docs.

Setup

  1. Create a Zoho account with CRM: Sign up at https://www.zoho.com/crm/ - the free edition (up to 3 users) is enough for development, or use an existing Zoho CRM org. Zoho also offers a developer sandbox via Zoho CRM Settings > Sandbox.
  2. Register an OAuth client: Open the Zoho API Console at https://api-console.zoho.com/, click Add Client, and choose Server-based Applications. Set the Authorized Redirect URI to your app’s callback URL (the /oauth/callback/zoho-crm path on your deployment).
  3. Copy the client credentials: After creating the client, copy the Client ID into ZOHO_CLIENT_ID and the Client Secret into ZOHO_CLIENT_SECRET.
  4. Authorize with the right scopes: The default scopes grant read, search, field-metadata, and COQL access (ZohoCRM.modules.READ, ZohoSearch.securesearch.READ, ZohoCRM.settings.fields.READ, ZohoCRM.coql.READ). Enable the optional ZohoCRM.modules.CREATE and ZohoCRM.modules.UPDATE scopes if agents should create or update records.
  • Zoho accounts live in region-specific datacenters. This connector defaults to accounts.zoho.com (US). If your org is in another region, use the matching accounts domain for the authorization and token URLs: accounts.zoho.eu (EU), accounts.zoho.in (India), accounts.zoho.com.au (Australia), accounts.zoho.jp (Japan), accounts.zohocloud.ca (Canada), accounts.zoho.sa (Saudi Arabia), or accounts.zoho.com.cn (China).
  • API calls automatically use the api_domain returned with your OAuth token (for example https://www.zohoapis.com for US or https://www.zohoapis.eu for EU), so tool URLs follow your org’s region.
  • The authorization request uses access_type=offline so Zoho issues a refresh token; access tokens expire after one hour and are refreshed automatically.
  • The fields query parameter is mandatory when listing module records and accepts at most 50 field API names.
Provider API reference: https://www.zoho.com/crm/developer/docs/api/v8/

Tools

ToolAccessDescription
List RecordsReadList records from a Zoho CRM module such as Leads, Contacts, Deals, or Accounts
Get RecordReadGet a single Zoho CRM record by ID from any module
Search RecordsReadSearch records in a Zoho CRM module by criteria, email, phone, or a free-text word
Get Fields MetadataReadList the field metadata of a Zoho CRM module so agents can discover the field API names required by list, search, and write tools
Run COQL QueryReadRun a CRM Object Query Language (COQL) SELECT query for filtered reads, joins, and aggregation that the list and search tools cannot express
Create RecordsWriteCreate up to 100 records in a Zoho CRM module (requires the ZohoCRM.modules.CREATE scope)
Update RecordWriteUpdate fields on an existing Zoho CRM record (requires the ZohoCRM.modules.UPDATE scope)

Example prompts

  • Search my Zoho CRM leads and summarize the most recent ones with their status and contact details.
  • Create a new lead in Zoho CRM with the details I provide.
  • List my open deals in Zoho CRM and summarize the pipeline by stage and amount.