CRM & sales
Zoho CRM setup guide
Zoho CRM leads, contacts, accounts and deals. Agents search and query records, create and update them, add notes and tasks, convert qualified leads and email leads and contacts.
Agents look up customers and deals and keep your records tidy.
Ways to connect
Company admins connect apps, on the Integrations page in Everdeck: open Zoho CRM, choose one of the ways below, follow its steps and fill in its fields. Everdeck checks what you enter before it saves anything, and asks you to confirm it’s you (your second factor) before you type any secret. How connecting works.
Your Zoho API Console client
Your OAuth app.
This way signs in with an OAuth app you create for Zoho CRM, as its steps describe: Everdeck never uses an app of its own. Register this redirect URI with your app:
https://everdeck.io/api/oauth/callback
Then save the app’s client ID and secret in Everdeck, on the connect page or under OAuth apps, and sign in.
- Sign in to Zoho and open the API Console for your data centre, for example https://api-console.zoho.com (api-console.zoho.eu, .in, .com.au, .jp, .sg, .uk, .sa, .ae, api-console.zohocloud.ca or api-console.zoho.com.cn for other regions; use the domain you see when signed in to Zoho CRM).
- Click Add Client (or GET STARTED) and choose Server-based Applications.
- Enter a client name (letters, digits, _ and & only), your website as the homepage URL, and the authorized redirect URI https://everdeck.io/api/oauth/callback. Click Create.
- Copy the Client ID and Client Secret into the form and pick the same data centre.
- Click Connect, sign in as the Zoho CRM user the agent should act as, choose the CRM organization (Production) and accept the listed scopes. Trigger (lead_created, a new lead): set it up on the Intake page. Everdeck checks Zoho CRM every 10 minutes with a COQL query through this connection, so nothing more is needed here.
| Field | What to enter |
|---|---|
| Zoho data centre (where you sign in) | Choice: United States (zoho.com), Europe (zoho.eu), India (zoho.in), Australia (zoho.com.au), Japan (zoho.jp), Singapore (zoho.sg), United Kingdom (zoho.uk), Canada (zohocloud.ca), Saudi Arabia (zoho.sa), United Arab Emirates (zoho.ae), China (zoho.com.cn). |
The scopes Everdeck asks for:
ZohoCRM.modules.READZohoCRM.modules.CREATEZohoCRM.modules.UPDATEZohoCRM.coql.READZohoSearch.securesearch.READZohoCRM.settings.fields.READZohoCRM.users.READZohoCRM.send_mail.all.CREATEZohoCRM.notifications.ALL
When you disconnect, Everdeck asks Zoho CRM to revoke the sign-in, then deletes the tokens it saved.
What agents can do
An agent uses an action only when its charter grants it, on the agent’s Tools tab, where you choose whether each one runs by itself (Auto), asks first or never runs. Each action has a risk tier: tier 3 actions, which customers or the public see, ask first unless you choose otherwise, and tier 4 actions (money, deleting things, access) always need a person. How tools and tiers work.
Actions marked Reads outside content return things people outside your company may have written. Agents treat what they read as information, never as instructions, and their riskier actions later in the same session need approval.
-
Search recordsTier 0 · ReadReads outside content
zoho_crm_search_recordsSearch one module by email, phone, a word, or criteria such as ((Lead_Status:equals:Contacted)and(Owner:equals:4150868000000225013)). Give one of criteria, email, phone or word. Returns up to 200 records per page and 2,000 in total; records changed in the last moments may not be indexed yet (use query_records then).
-
Query records (COQL)Tier 0 · ReadReads outside content
zoho_crm_query_recordsRun a COQL SELECT, for example select Deal_Name, Stage, Amount, Closing_Date, Account_Name.Account_Name from Deals where Stage != 'Closed Won' and Closing_Date <= '2026-12-31' order by Closing_Date limit 50. Always name the fields and add a limit (max 2,000; offset with limit offset, count). Up to 25 conditions; lookup fields can be followed with a dot.
-
Read a recordTier 0 · ReadReads outside content
zoho_crm_get_recordRead one record by module and id with all its fields (rich text fields are cut at 500 characters).
-
Create a recordTier 2 · ReversibleReads outside content
zoho_crm_create_recordCreate a record in a module using field API names. Mandatory fields: Leads and Contacts Last_Name; Accounts Account_Name; Deals Deal_Name and Stage (and Pipeline when pipelines are on); Tasks Subject. Lookups take {"id": "..."}. Duplicate checks on unique fields apply, and workflow rules run as for a record created in the UI.
-
Update a recordTier 2 · ReversibleReads outside content
zoho_crm_update_recordChange fields on a record; send only the fields to change, for example move a deal with {"Stage": "Negotiation/Review"} or reassign with {"Owner": {"id": "..."}}.
-
Add a noteTier 2 · Reversible
zoho_crm_add_noteAttach a note to a lead, contact, account, deal or other record. Notes are internal to CRM users.
-
Create a taskTier 2 · Reversible
zoho_crm_create_taskCreate a follow-up task. Link it to an account, deal or other record with What_Id plus $se_module, and to a contact or lead with Who_Id. Owner defaults to the connected user.
-
Convert a leadTier 2 · ReversibleReads outside content
zoho_crm_convert_leadConvert a qualified lead into a contact and account (matched to existing ones by email and company), optionally creating a deal. Cannot be undone from the API.
-
Email a lead or contactTier 3 · ExternalReads outside content
zoho_crm_send_emailSend an email from the connected user's address to a record's email (lead, contact, account, deal or case). It is logged on the record. Costs 20 API credits.
-
List usersTier 0 · ReadReads outside content
zoho_crm_list_usersList CRM users with ids, emails, roles and status, for assigning owners.
-
List a module's fieldsTier 0 · ReadReads outside content
zoho_crm_list_fieldsList a module's fields: API name, label, data type, whether read-only, and lookup target. Use the api_name values in every create, update, search and query.
What can start work
These events from Zoho CRM can become tasks for your agents through Intake. How Intake works.
A new lead was created.
Connect Zoho CRM first. Then, on the Intake page, open Webhooks and sources, find it under Connector triggers and select Start watching. Then, on the Rules tab, select New rule to say which requests become tasks and who gets them.
Testing, problems and disconnecting
Everdeck checks the connection when you save it. On the connection’s page in Integrations, Test checks it again at any time.
If Zoho CRM later refuses the connection, for example because a key was deleted or a sign-in expired, the connection shows Needs attention on the Integrations page and the people who manage connections are told. Agents can’t use it until a company admin fixes it with Edit or Reconnect.
To stop agents using Zoho CRM, open the connection and select Disconnect. Agents stop using it at once and its saved credentials are deleted. What else happens depends on how it was connected: each way above says.
Still stuck?
Email [email protected] and say what you were trying to do. Or browse every guide.