# Zoho CRM

## Pipeline Concepts

Before setting up the pipeline, learn about pipeline concepts [here](/product/ingesting-your-data/pipelines.md)

## Step by Step Guide

### STEP-1: Configure Connection

To learn about Connection, refer [here](/product/ingesting-your-data/pipelines.md)

* Log into the Sprinkle application
* Navigate to Ingest -> Connections Tab -> Setup connections ->&#x20;
* Select Zoho CRM
* Provide all the mandatory details
  * *Name*: Name to identify this connection
  * *Advance Settings:* Refer [here](#advanced-connection-settings)
* Connect to Zoho
* Test Connection&#x20;
* Create

### STEP-2: Configure Pipeline

To learn about pipeline, refer [here](/product/ingesting-your-data/pipelines.md)

* Navigate to Ingest -> Pipelines Tab -> Setup sources ->&#x20;
* Select Zoho CRM
* Provide the name -> Create
* **Connection Tab**:&#x20;
  * From the drop-down, select the name of the connection created in STEP-2
  * Update

### STEP-3: Create a Dataset

**Datasets Tab**: To learn about Dataset, refer [here](/product/ingesting-your-data/pipelines.md). Add a Dataset for each report/dataset that you want to integrate, providing the following details

* *Report Type* (Required): Type of report
  * *Fields*
    * *Module Name*: Select from Contacts, Accounts, Deals, Activities, Campaigns, Tasks, Events, Notes, Calls
  * *Layouts*
    * *Module Name*: Select from Leads, Contacts, Accounts, Deals, Activities, Campaigns, Tasks, Events, Notes, Calls
  * *Modules*
    * *Module Name*: Select from Leads, Contacts, Deals, Activities, Campaigns, Tasks, Events, Notes, Calls&#x20;
  * *Profiles*
  * *Records* (Records will be fetched incrementally on the Modified\_Time column)
    * *Module Name*: Select from Leads, Contacts, Accounts, Deals, Activities, Campaigns, Tasks, Events, Notes, Calls
  * *Roles*
  * *Users*
* Flatten Level(Required): Select One Level or Multi Level. In one level, flattening will not be applied on complex type. They will be stored as string. In multi-level, flattening will be applied in complex level till they become simple type.
* *Destination Schema* (Required): Data warehouse schema where the table will be ingested into
* *Destination Table name* (Required): It is the table name to be created on the warehouse. If not given, sprinkle will create like ds\_\<datasourcename>\_\<tablename>
* *Destination Create Table Clause*: Provide additional clauses to warehouse-create table queries such as clustering, partitioning, and more, useful for optimizing DML statements. [Learn more](https://docs.sprinkledata.com/product/integrating-your-data/data-imports/destination-create-table-clause) on how to use this field.
* Create

### STEP-4: Run and schedule Ingestion

In the **Ingestion Jobs** ta&#x62;**:**

* Trigger the Job, using the Run button
* To schedule, enable Auto-Run. Change the frequency if needed

### Advanced Connection Settings

* **API Read Timeout (In seconds):** If reading the data takes more time than (n) seconds it will automatically timeout.
* **API Connection Timeout (In seconds):** API will wait for the server to respond for (n) seconds, if the server does not respond it timeouts.
* **Retry Limit:** If the API fails due to the API usage limit exceeded it will retry (n) more times.
* **Retry Sleep Time (In milliseconds):** Before retrying it will wait for (n) milliseconds.
* **Version:** Enter the required version.
* **Max Records Per Job:** Each job will fetch maximum of (n) records for a particular dataset.

## Dataset Fields

<details>

<summary>Fields</summary>

* system\_mandatory&#x20;
* webhook&#x20;
* json\_type&#x20;
* field\_label&#x20;
* created\_source&#x20;
* field\_read\_only&#x20;
* display\_label&#x20;
* ui\_type&#x20;
* read\_only&#x20;
* businesscard\_supported&#x20;
* currency&#x20;
* id&#x20;
* custom\_field&#x20;
* lookup&#x20;
* visible&#x20;
* length&#x20;
* view\_type\_view&#x20;
* view\_type\_edit&#x20;
* view\_type\_quick\_create&#x20;
* view\_type\_create&#x20;
* api\_name&#x20;
* unique&#x20;
* history\_tracking&#x20;
* data\_type&#x20;
* formula&#x20;
* mass\_update&#x20;
* multiselectlookup&#x20;
* pick\_list\_values&#x20;
* auto\_number&#x20;
* blueprint\_supported&#x20;
* pick\_list\_values
* quick\_sequence\_number&#x20;
* lookup\_display\_label&#x20;
* lookup\_api\_name&#x20;
* lookup\_module&#x20;
* lookup\_id&#x20;
* sub\_module\_api\_name
* sub\_module\_id
* currency\_rounding\_option&#x20;
* currency\_precision&#x20;
* decimal\_place

</details>

<details>

<summary>Layouts</summary>

* display\_label&#x20;
* visible&#x20;
* name&#x20;
* profiles
* id&#x20;
* sections
* status

</details>

<details>

<summary>Modules</summary>

* global\_search\_supported&#x20;
* kanban\_view&#x20;
* *field\_states*&#x20;
* deletable&#x20;
* creatable&#x20;
* filter\_status&#x20;
* inventory\_template\_supported&#x20;
* plural\_label&#x20;
* presence\_sub\_menu&#x20;
* triggers\_supported&#x20;
* id&#x20;
* isblueprintsupported&#x20;
* related\_list\_properties\_fields&#x20;
* per\_page&#x20;
* *properties*
* visibility&#x20;
* convertable&#x20;
* editable&#x20;
* emailtemplate\_support profiles
* filter\_supported&#x20;
* display\_field&#x20;
* search\_layout\_fields&#x20;
* kanban\_view\_supported&#x20;
* show\_as\_tab&#x20;
* sequence\_number&#x20;
* singular\_label&#x20;
* viewable&#x20;
* api\_supported&#x20;
* api\_name&#x20;
* quick\_create&#x20;
* generated\_type&#x20;
* feeds\_required&#x20;
* scoring\_supported&#x20;
* webform\_supported&#x20;
* arguments&#x20;
* module\_name&#x20;
* business\_card\_field\_limit&#x20;
* custom\_view\_display\_value&#x20;
* custom\_view\_shared\_type&#x20;
* custom\_view\_system\_name&#x20;
* custom\_view\_offline&#x20;
* custom\_view\_default&#x20;
* custom\_view\_system\_defined&#x20;
* custom\_view\_name&#x20;
* custom\_view\_id&#x20;
* custom\_view\_category&#x20;
* custom\_view\_fields&#x20;
* parent\_module

</details>

<details>

<summary>Profiles</summary>

* display\_label
* name
* description
* id&#x20;
* category

</details>

<details>

<summary>Records</summary>

* owner\_name&#x20;
* owner\_id&#x20;
* owner\_email&#x20;
* ownership&#x20;
* description&#x20;
* \_currency\_symbol&#x20;
* account\_type&#x20;
* \_review\_process\_approve&#x20;
* \_review\_process\_reject&#x20;
* \_review\_process\_resubmit&#x20;
* website&#x20;
* employees&#x20;
* last\_activity\_time&#x20;
* industry&#x20;
* record\_image&#x20;
* modified\_by\_name&#x20;
* modified\_by\_id&#x20;
* modified\_by\_email&#x20;
* \_state&#x20;
* \_process\_flow&#x20;
* phone&#x20;
* billing\_country&#x20;
* account\_name&#x20;
* id&#x20;
* account\_number&#x20;
* \_approved&#x20;
* \_approval\_delegate&#x20;
* \_approval\_approve&#x20;
* \_approval\_reject&#x20;
* \_approval\_resubmit&#x20;
* modified\_time&#x20;
* billing\_street&#x20;
* created\_time&#x20;
* \_editable&#x20;
* billing\_code&#x20;
* billing\_city&#x20;
* \_in\_merge&#x20;
* billing\_state&#x20;
* created\_by\_name&#x20;
* created\_by\_id&#x20;
* created\_by\_email&#x20;
* annual\_revenue&#x20;
* \_approval\_state

</details>

<details>

<summary>Roles</summary>

* display\_label
* share\_with\_peers
* name
* description
* id&#x20;
* admin\_user&#x20;
* reporting\_to\_name&#x20;
* reporting\_to\_id&#x20;

</details>

<details>

<summary>Users</summary>

* country&#x20;
* role\_name&#x20;
* role\_id&#x20;
* customize\_info\_show\_home&#x20;
* customize\_info\_show\_detail\_view&#x20;
* name\_format&#x20;
* language&#x20;
* locale&#x20;
* microsoft&#x20;
* personal\_account&#x20;
* isonline&#x20;
* default\_tab\_group&#x20;
* modified\_by\_name&#x20;
* modified\_by\_id&#x20;
* theme\_normal\_tab\_font\_color&#x20;
* theme\_normal\_tab\_background&#x20;
* theme\_selected\_tab\_font\_color&#x20;
* theme\_selected\_tab\_background&#x20;
* theme\_background&#x20;
* theme\_screen theme\_type&#x20;
* id&#x20;
* state&#x20;
* country\_locale&#x20;
* sandboxdeveloper&#x20;
* first\_name&#x20;
* email&#x20;
* decimal\_separator&#x20;
* created\_time&#x20;
* modified\_time&#x20;
* time\_format&#x20;
* offset&#x20;
* profile\_name&#x20;
* profile\_id&#x20;
* time\_zone&#x20;
* created\_by\_name&#x20;
* created\_by\_id&#x20;
* zuid&#x20;
* confirm&#x20;
* full\_name&#x20;
* territories&#x20;
* date\_format&#x20;
* status

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sprinkledata.com/product/ingesting-your-data/pipelines/applications/zoho-crm.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
