# Integrating SailPoint with Zoho CRM

Zoho CRM is a customer relationship management platform that helps businesses streamline their sales, marketing, and customer support processes. It provides tools for managing leads, tracking deals, automating workflows, and engaging with customers across multiple channels, including email, phone, and social media. This document provides instructions to configure a new direct connection to a Zoho CRM source. For a reference to the terminology specific to SailPoint products, refer to [Source and Connector Definitions](<https://documentation.sailpoint.com/saas/help/sources/index.html#source-and-connector-definitions>).

> [!NOTE]
>
> To view the latest features, enhancements, and fixes for all SaaS connectors, refer to the [SaaS Release Notes](<https://community.sailpoint.com/release-notes/saas>) page.

## Supported Features

The Zoho CRM connector supports the following:

### Account Management

- Aggregate Users

### Entitlement Management

- Aggregate Role, Profile, and Territory

> [!IMPORTANT]
>
> Quick Compliance connectors have the following manual aggregation limits within a 24-hour period:
>
> - **Organization Admins**: Limited to 3 manual account or entitlement aggregations per day per source. This limit is cumulative across all admins in the organization.
> - **Regular Users**: Limited to 1 manual account or entitlement aggregation per day per source.
>
> These limits ensure that individual compliance statuses are kept up to date while maintaining continuous compliance monitoring. If you need to run additional aggregations beyond these limits, contact SailPoint Support.

## Prerequisites

Ensure the following prerequisites are met before proceeding with the configuration:

- Access to a **Zoho Developer Console** account.
- Generate and store the **OAuth Refresh Token** using the **Zoho OAuth 2.0** process.

Follow the steps below to generate a Refresh Token:

- **Create an OAuth Client:**

  1. Go to the [Zoho API Console](<https://api-console.zoho.in/>).
  2. Click **Add Client**.
  3. Select **Server-based Client**.
  4. Enter:

     1. `Client Name`.
     2. `Homepage URL`.
     3. `Redirect URI`.
  5. Click **Create**.
  6. Save the **Client ID** and **Client Secret**.
- **Get the Authorization Code:**

  1. Paste the URL in a browser: `https://accounts.zoho.in/oauth/v2/auth?scope=ZohoCRM.users.ALL,ZohoCRM.modules.ALL,ZohoCRM.settings.ALL&client_id=YOUR_CLIENT_ID&response_type=code&access_type=offline&redirect_uri=YOUR_REDIRECT_URI`
  2. Replace `YOUR_CLIENT_ID` and `YOUR_REDIRECT_URI` with `Client ID` and `Redirect URI`.
  3. Copy the **Authorization Code** from the URL: `https://your-redirect-uri.com/?code=AUTHORIZATION_CODE`
- **Generate Exchange Code for Tokens:**

  1. Send a `POST` request to **Zoho’s Token endpoint**:

     1. URL: `https://accounts.zoho.in/oauth/v2/token`.
     2. Header: `Content-Type: application/x-www-form-urlencoded`.
     3. Body: `client_id=YOUR_CLIENT_ID &client_secret=YOUR_CLIENT_SECRET &code=AUTHORIZATION_CODE &redirect_uri=YOUR_REDIRECT_URI &grant_type=authorization_code`.
  2. Save the `refresh_token`.

## Required Permissions

- Zoho uses region-specific domains. Use the **top-level domains (TLDs)/domain name extension** based on your account’s location.
- The **OAuth Token** used must have the following scopes:

  > **Important**
  >
  > Using the `READ` permission, instead of `ALL`, will restrict the connector’s access to only **reading data**. This means that any write operations, such as provisioning, updating, or assigning entitlements, will be prohibited.

  - `ZohoCRM.users.ALL`
  - `ZohoCRM.modules.ALL`
  - `ZohoCRM.settings.ALL`

  > **Note**
  >
  > For detailed information on supported OAuth scopes, see: - [Scopes | Online Help - Zoho CRM](<https://www.zoho.com/crm/developer/docs/api/v6/scopes.html>) The linked document is not maintained by SailPoint and is subject to change without notice.
