Sprinkle Docs
  • What is Sprinkle?
  • Quick Start
  • Analysing your data
    • πŸ”­Analytics Overview
    • πŸ’ Data Models
      • *️Variables
      • 🌲Hierarchies
      • 🀿Column Mask
    • πŸŽ‰Switch to New Reports & Dashboards
    • πŸ†•Reports
      • Overview
      • Build Using Tables
        • Create a new Report
        • Layout and options
        • Build and Format - Overview
        • Apply Row Limits
        • Identify Date Columns
        • Filter your data
        • Visualizations
          • Table
          • Pivot
          • Line Chart
          • Bar Chart
          • Column Chart
          • Area Chart
          • Combo Chart
          • Scatter & Bubble Plot
          • Pie Chart
          • Funnel Chart
          • Stat Card
          • Point Map
          • Heat Map
          • Radial gauge chart
        • Advanced Features
          • Custom Analysis
          • Variables
          • Table & Quick Calculations
          • Drill - Hierarchical & Date
          • Break Out
          • RLS in Table reports
          • Scheduled Exports
          • Embedding Table Reports
      • Build Using Models
        • Create a new report
        • Layout and options
        • Visualizations
        • Advanced Features
      • Build SQL Reports
        • Create a new Report
        • Layout and options
        • Writing a SQL Code on Editor
        • Visualizations
        • Variables in SQL Reports
    • πŸ†•Dashboards
      • πŸŒ€Filters
      • πŸ‘†Click Behaviour
      • ⏰Data Alerts
      • πŸ—“οΈDate Drill
      • πŸ“€Scheduled Exports
      • πŸ”—Embed link
      • πŸ–₯️Dashboard layout
      • πŸ“±Mobile Dashboards
  • Transforming your data
    • πŸ”°SQL Transform
    • πŸ““Python Notebooks
  • Integrating your data
    • ☁️Destination Warehouses
      • AWS Athena
        • Manage storage of Flow tables
      • AWS Redshift
      • Azure Synapse
      • Databricks
      • Google BigQuery
      • MySQL
      • Postgres
      • Snowflake
      • SQL Server
      • K8 Setup
        • AWS EKS
        • Google GKE
        • Azure AKS
    • βš™οΈWarehouse & Storage Setup
  • Ingesting your data
    • β˜„οΈData Imports
      • Databases
        • Azure Cosmos DB
        • Azure Table Storage
        • Google BigQuery
        • Mongo DB
        • MySQL DB
        • Oracle DB
        • Postgres DB
        • SQL Server DB
        • Features
          • Ingestion Modes
          • Add Multiple Datasets
          • CDC Setup
            • CDC setup in Mysql
            • CDC setup in Postgres
            • CDC setup in Mongo
            • CDC setup in SQL Server
          • Destination Create Table Clause
          • SSH Tunnel Setup
      • Files
        • AWS S3
        • AWS S3 External
        • Azure Blob
        • FTP
        • Google Cloud Storage
        • Google Sheet
        • SFTP
      • Applications
        • Apple Search Ads
        • Appsflyer
        • Branch
        • Clevertap
        • Facebook Ads
        • Freshdesk
        • Freshsales
        • Google Ads
        • Google Ads V2
        • Google Analytics
        • Google Analytics 4
        • Google Analytics MCF
        • Google Search Console
        • Hubspot
        • Impact Ads
        • Intercom
        • Klaviyo
        • Leadsquared
        • LinkedIn Ads
        • Magento
        • Mailchimp
        • Marketo
        • Mixpanel
        • MoEngage
        • Rocketlane
        • Salesforce
        • SAP S4
        • Shopify
        • Snapchat Marketing
        • TikTok Ads
        • WooCommerce
        • Zendesk Chat
        • Zendesk Support
        • Zoho Analytics
        • Zoho Books
        • Zoho CRM
        • Zoho Desk
        • Zoho Invoice
        • Zoho Subscription
      • Events
        • Apache Kafka
        • AWS Kinesis
        • Azure EventHub
    • πŸ“€File Uploads
    • πŸ€–API Pulls
    • πŸ•ΈοΈWebhooks
  • Collaborating on data
    • πŸ“€Sharing
    • πŸ’¬Comments
    • ⚑Activity
    • 🏷️Labels
  • Managing Schedules and Data Refreshes
    • ⏱️Schedules
    • πŸ””Notifications
  • User Management
    • πŸ”‘Access Management
    • πŸ§‘β€πŸ€β€πŸ§‘Groups
    • πŸ“‚Folders
    • πŸ”„Syncing users, groups and RLS
    • πŸ“§Azure AD Integration
  • Data Security & Privacy
    • πŸ”Security at Sprinkle
    • πŸ“„GDPR
    • πŸ“„Privacy Policy
  • Release Notes
    • πŸ“’Release Notes
      • πŸ—’οΈRelease Notes - v12.1 (New)
      • πŸ—’οΈRelease Notes - v12.0
      • πŸ—’οΈRelease Notes - v11.0
      • πŸ—’οΈRelease Notes - v10.8
      • πŸ—’οΈRelease Notes - v10.7
      • πŸ—’οΈRelease Notes - v10.6
      • πŸ—’οΈRelease Notes - v10.5
      • πŸ—’οΈRelease Notes - v10.4
      • πŸ—’οΈRelease Notes - v10.3
      • πŸ—’οΈRelease Notes - v10.2
      • πŸ—’οΈRelease Notes - v10.1
      • πŸ—’οΈRelease Notes - v10.0
      • πŸ—’οΈRelease Notes - v9.31
      • πŸ—’οΈRelease Notes - v9.30
      • πŸ—’οΈRelease Notes - v9.29
      • πŸ—’οΈRelease Notes - v9.28
      • πŸ—’οΈRelease Notes - v9.27
      • πŸ—’οΈRelease Notes - v9.25
      • πŸ—’οΈRelease Notes - v9.24
      • πŸ—’οΈRelease Notes - v9.23
      • πŸ—’οΈRelease Notes - v9.22
      • πŸ—’οΈRelease Notes - v9.21
      • πŸ—’οΈRelease Notes - v9.20
      • πŸ—’οΈRelease Notes - v9.19
      • πŸ—’οΈRelease Notes - v9.18
      • πŸ—’οΈRelease Notes - v9.17
      • πŸ—’οΈRelease Notes - v9.16
      • πŸ—’οΈRelease Notes - v9.14
      • πŸ—’οΈRelease Notes - v9.13
      • πŸ—’οΈRelease Notes - v9.12
      • πŸ—’οΈRelease Notes -v9.8
      • πŸ—’οΈRelease Notes - v9.7
      • πŸ—’οΈRelease Notes - v9.6
      • πŸ—’οΈRelease Notes - v9.5
      • πŸ—’οΈRelease Notes - v9.4
      • πŸ—’οΈRelease Notes - v9.3
      • πŸ—’οΈRelease Notes - v9.2
      • πŸ—’οΈRelease Notes - v9.1
      • πŸ—’οΈRelease Notes - v9.0 (Major)
      • πŸ—’οΈRelease Notes - v7.23
      • πŸ—’οΈRelease Notes - v7.21
      • πŸ—’οΈRelease Notes - v7.20
      • πŸ—’οΈRelease Notes - v7.15
      • πŸ—’οΈRelease Notes - v7.14
      • πŸ—’οΈRelease Notes - v7.13
Powered by GitBook
On this page
  • Watch Video
  • Datasource Concepts
  • Step by Step Guide
  • Step 1: Configure REST API datasource
  • Step 2: Create a Dataset
  • Step 3: Run and Schedule Ingestion
  1. Ingesting your data

API Pulls

Guide to ingest data using your application's REST APIs

PreviousFile UploadsNextWebhooks

Last updated 1 year ago

With API Pulls, you can pull data from any application that exposes REST APIs and ingest it into the data warehouse without any coding.

Watch Video

Datasource Concepts

Step by Step Guide

Step 1: Configure REST API datasource

  • Navigate to Ingest-> API Pulls Tab -> Create API Pulls

Step 2: Create a Dataset

  • Provide the name (Required)

  • URL with Params (Required): Provide the base URL (with parameters if any). For example, https://base_url_example?params_key1=params_value1ΒΆms_key2=params_value2.

  • Sensitive Params (Optional): Provide sensitive parameters if required, for example, params_key1=params_value1& params_key2=params_value2.

  • Request Method (Required)

    • GET

    • POST

      • Body: Raw Data

        • Content Type: Select from the drop-down

        • Raw Data

  • Headers (Optional): Header format is JSON, for example, {"key1":"value1","key2:":"value2"}.

  • Data Root (Optional): Give the json path from which data should be extracted.

    • For ex - {country:[{state:st1,city:abc},{state:st2,city:xyz}],offset:1} if data_root is country, then {state:st1, city:abc},{state:st2,city:xyz} will be stored in two different rows in the warehouse table. Otherwise whole json will be flattened and stored in single row.

    • For complex type give keys with dot(.) separated. ex - {book:{writer:[{name:abc},{name,xyz}]},offset:1} for book.writer it will give {name:abc} and {name,xyz} in two separate rows.

  • Flatten Json (Required): if want to make flatten schema of json.

    • No

    • Yes

      • Flatten Level (Required): Select from 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>

  • Click 'Create'

Step 3: Run and Schedule Ingestion

In the Ingestion Jobs tab:

  • Trigger the Job using the 'Run' button.

  • To schedule, enable Auto-Run. Change the frequency if required.

Before setting up the datasource, learn about datasource concepts

To learn about datasource, refer

Datasets Tab: To learn about datasets, refer . Add a dataset for each API from which you want to ingest data, providing the following details:

Destination Create Table Clause: Provide additional clauses to warehouse-create table queries such as clustering, partitioning, and more, useful for optimizing DML statements ( on how to use this field).

πŸ€–
here
here
here
Learn more
πŸ“Ί
API Pulls : Explanation & Feature Walkthrough