Skip to main content

About Zoho CRM

Zoho CRM is a customer relationship management platform. Serval connects to it through a Serval-managed Zoho OAuth application, so there is nothing to register in the Zoho API Console. You choose which permissions to grant when you connect, and your Zoho data center is detected automatically. Authentication: Zoho OAuth 2.0 with a Serval-managed application. You approve access on Zoho’s consent screen; there are no API keys to paste. Data sync: On demand only. Workflows call Zoho CRM at run time through a single API request action. There is no background sync.

What the Zoho CRM integration enables

Anything in the typed operations can be called from a workflow. For endpoints outside them, see the Zoho CRM v8 API reference.

Before you connect

1

Pick the Zoho account

Sign in with the Zoho account whose CRM organization you want to connect. To use the user, role, profile, group, or territory management permissions, the account must have the Administrator profile in Zoho CRM.
2

Decide which permissions workflows need

Read access to users and organization details is always included. Everything else is optional; see the permission presets below.
Zoho CRM sandbox and developer editions aren’t supported. Zoho issues separate tokens for each environment, and Serval connects to production organizations only.

Connect in Serval

1

Open the connect modal

In Serval, go to Integrations > All integrations > Zoho CRM. A permissions modal opens.
2

Select permission presets (all optional)

Check any presets your workflows need. Expand a preset to see the exact Zoho scopes it requests.Serval never requests Zoho’s wildcard .ALL scopes.
3

Click Connect to Zoho CRM

Authorization opens in a popup window or a full-page redirect.
4

Approve on the Zoho consent screen

Sign in and approve the requested permissions. Zoho shows the consent screen on every connect and reconnect; this is expected.
ZohoCRM.users.READ and ZohoCRM.org.READ are always requested, so a connection with no presets selected can still list users and read organization details.
Serval detects your Zoho data center (US, EU, IN, AU, JP, CN, CA, SA, or UK) from the authorization response. All API calls and token refreshes then use that data center’s servers.

Changing permissions

Permissions are fixed when you connect. To add or remove permissions, reconnect the integration. The modal opens with the presets you already granted checked. Any granted permission that no checked preset covers is listed under Keep current permissions and kept by default; clear that box to drop them. Change the selection and approve on Zoho again.

Verifying the connection

After connecting, Serval runs three health checks. All three use only the always-included scopes, so they pass regardless of which presets you chose. Test Zoho CRM Connection reads your organization details.
  • Success: “Successfully authenticated with Zoho CRM”
  • Failure (invalid token or missing scope): “Unable to authenticate with Zoho CRM. The OAuth token is invalid, expired, or missing a required scope. Reconnect the integration.”
  • Failure (other): “Unable to reach Zoho CRM. Check that the connected Zoho account has access to a CRM organization.”
List Zoho CRM Users lists a sample of active users.
  • Success: “Successfully listed active Zoho CRM users (sample size: [number])”
  • Failure: “Unable to list Zoho CRM users. Reconnect the integration so the ZohoCRM.users.READ scope is granted.”
Read Connected Zoho CRM Account reads the Zoho user the connection authenticates as.
  • Success: “Connected as a Zoho CRM user with the [profile] profile”
  • Failure: “Unable to read the connected Zoho CRM user. Reconnect the integration.”
The user, group, territory, role, and profile management presets only work when the connected account has the Administrator profile. If the third check reports a different profile, reconnect with an administrator account.

Gotchas and troubleshooting

The connection wasn’t granted the scope that operation needs. Reconnect and check the preset that covers it. For example, changing a user’s role needs Manage users.
Zoho runs the organization’s workflow rules, approvals, and blueprints when records are created or updated through the API. To skip them, pass an empty trigger array in the request body ("trigger": []).
Zoho only allows administrators to add, change, or delete users. Reconnect while signed in to a Zoho account with the Administrator profile.
Token refresh is automatic. A persistent authentication failure usually means the grant was revoked in Zoho. Reconnect the integration to create a new grant.