# Clevertap

## Pipeline Concepts

Before setting up the pipeline, learn about pipeline concepts [here](https://docs.sprinkledata.com/product/ingesting-your-data/pipelines)

## Step by Step Guide

### STEP-1: Configure Connection

To learn about Connection, refer [here](https://docs.sprinkledata.com/product/ingesting-your-data/pipelines)

* Log into Sprinkle application
* Navigate to Ingest -> Connections Tab -> New Connection ->&#x20;
* Select Clevertap&#x20;
* Provide all the mandatory details
  * *Name*: Name to identify this connection
  * *Account Id*
  * *Account Passcode*
  * *No of days*
  * *Location* : Refer [this](https://developer.clevertap.com/docs/authentication#section-example)&#x20;
  * *Advance Settings :* Refer [here](#advanced-connection-settings)
* Test Connection&#x20;
* Create

### STEP-2: Configure Pipeline

To learn about pipeline, refer [here](https://docs.sprinkledata.com/product/ingesting-your-data/pipelines)

* Navigate to Import -> Pipeline Tab -> Add ->&#x20;
* Select Clevertap
* Provide the name -> Create
* **Connection Tab**:&#x20;
  * From the drop-down, select the name of connection created in STEP-2
  * Update

### STEP-3: Create Dataset

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

* *Report Type (Required)*
  * *MESSAGES*
  * *ALL\_USER\_PROFILES*
  * *USER\_PROFILES\_PER\_EVENT*
    * *Event Name*
    * *Campaign Level*: Yes, if need user data per campaign level
    * *Start Date*: Format:YYYY-MM-DD. Data will be fetched from start date, for every run
  * *GET\_EVENT*
    * *Event Name*
  * *REAL\_TIME\_COUNT*
    * *User Type*: If true, will return user by type
  * *TRENDS*
    * *Event Name*
    * *Group Name*: Multiple Group names should be comma separated. [For more details](https://developer.clevertap.com/docs/trends-api#section-body-parameters) Group trend type will be daily.
  * *TOP\_PROPERTY\_COUNT*
    * *Event Name*
    * *Group Name*: Multiple Group names should be comma separated. [For more details](https://developer.clevertap.com/docs/trends-api#section-body-parameters) Group trend type will be daily.
    * *Property Type*: [For more details](https://developer.clevertap.com/docs/top-property-counts-api#section-body-parameters)
    * *Property Name*: [For more details](https://developer.clevertap.com/docs/top-property-counts-api#section-body-parameters)
* *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\_\<pipelinename>\_\<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/ingesting-your-data/pipelines/databases/features/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 Run button
* To schedule, enable Auto-Run. Change the frequency if needed

### Advanced Connection Settings

* **API Read Timeout (In seconds) :** Maximum time of inactivity between two data packets when waiting for the server's response. The default value is 30 seconds.
* **API Connection Timeout (In seconds) :** Time period within which a connection between a client and a server must be established.
* **Retry Limit :** Number of retries allowed when an API call fails. For example if an API call fails and retry limit is 5 then it will check 5 times for that API call and if it succeeded then it will stop checkin&#x67;**.**
* **Retry Sleep Time (In milliseconds) :** Given time, after which retry should happen in case an API call fails.
* **Incremental Batch Size (In days) :** No. of days in one batch for which data is being downloaded during incremental ingestion.
