Pipedrive integration summary

Stitch’s Pipedrive integration replicates data using the Pipedrive REST API. Refer to the Schema section for a list of objects available for replication.

Pipedrive feature snapshot

A high-level look at Stitch's Pipedrive (v1.0) integration, including release status, useful links, and the features supported in Stitch.

STITCH
Release Status Released Supported By

Singer Community

Stitch Plan

Free

Singer GitHub Repository

Pipedrive Repository

DATA SELECTION
Table Selection

Supported

Column Selection

Supported

REPLICATION SETTINGS
Anchor Scheduling

Supported

Advanced Scheduling

Unsupported

Table-level Reset

Unsupported

Configurable Replication Methods

Unsupported

TRANSPARENCY
Extraction Logs

Supported

Loading Reports

Supported

Connecting Pipedrive

Pipedrive setup requirements

To set up Pipedrive in Stitch, you need:

  • Admin permissions in Pipedrive. These permissions are required to ensure Stitch can successfully replicate your Pipedrive data.

Step 1: Create a Pipedrive user for Stitch

To ensure Stitch can access and replicate all your data, the Pipedrive credentials you use to connect to Stitch need Admin permissions. We recommend that you create a separate Pipedrive Admin user for Stitch, but this isn’t mandatory to use the integration. Creating a user for us simply makes our activity easier to distinguish in logs and audits.

If you don’t want to create a user for us, simply ensure that the credentials you use to connect to Stitch have Admin permissions. If the API token associated with a non-Admin user is used to set up the integration, Stitch may be unable to access and replicate all of your data.

Note: Users are counted at the account-level in Pipedrive, not the company level. If you want to create a user for us and are concerned about the cost of your Pipedrive subscription, don’t worry - you won’t be charged twice.

Step 2: Retrieve your Pipedrive API token

  1. If you created a Pipedrive user for Stitch, sign into Pipedrive as the Stitch user.

    If you didn’t, sign into Pipedrive as an Admin user.

  2. Click the user menu (where your avatar is) in the top right corner of the screen.
  3. Click Settings.
  4. In the settings menu, click API.
  5. The user’s API Token will display:

    Personal API token in the Pipedrive app

Leave this page open for now - you’ll need it to complete the setup in Stitch.

Step 3: Connect multiple Pipedrive companies

If you want to connect more than one Pipedrive company to Stitch, you’ll have to repeat the entire process in this article for every company you want to add. Essentially, you’ll have to create a separate Pipedrive integration for each company.

Our Pipedrive integration uses an API Token to authenticate. Pipedrive API tokens are unique not only at the user level, but the company level as well. This means that a user’s API Token will vary from company to company, even if everything is housed in the same Pipedrive account.

Step 4: Add Pipedrive as a Stitch data source

  1. Sign into your Stitch account.
  2. On the Stitch Dashboard page, click the Add Integration button.

  3. Click the Pipedrive icon.

  4. Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.

    For example, the name “Stitch Pipedrive” would create a schema called stitch_pipedrive in the destination. Note: Schema names cannot be changed after you save the integration.

  5. In the API Token field, paste the API token you retrieved in Step 2.

Step 5: Define the historical sync

The Sync Historical Data setting will define the starting date for your Pipedrive integration. This means that:

  • For tables using Incremental Replication, data equal to or newer than this date will be replicated to your data warehouse.
  • For tables using Full Table Replication, all data - including records that are older, equal to, or newer than this date - will be replicated to your data warehouse.

Change this setting if you want to replicate data beyond Pipedrive’s default setting of 1 year. For a detailed look at historical replication jobs, check out the Syncing Historical SaaS Data guide.

Step 6: Create a replication schedule

In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.

Pipedrive integrations support the following replication scheduling methods:

To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.

Step 7: Set tables and columns to replicate

To complete the setup, you’ll need to select the tables and columns you want to replicate to your data warehouse.

Check out the Schema section to learn more about the available tables in Pipedrive and how they replicate.

  1. In the list of tables that displays - or in the Tables to Replicate tab, if you skipped this step during setup - locate a table you want to replicate.
  2. To track a table, click the checkbox next to the table’s name. A green checkmark means the table is set to replicate.

  3. To track a column, click the checkbox next to the column’s name. A green checkmark means the column is set to replicate.

  4. Repeat this process for all the tables and columns you want to replicate.
  5. When finished, click the Finalize Your Selections button at the bottom of the screen to save your selections.

Note: If you change these settings while a replication job is still in progress, they will not be used until the next job starts.

Initial and historical replication jobs

After you finish setting up Pipedrive, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.

For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.

Free historical data loads

The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.


Pipedrive table schemas

Replication Method :

Key-based Incremental

Replication Key :

update_time

Primary Key :

id

API endpoint :

Get recent activities

The activities table contains info about recent activities - calls, tasks, lunches, etc. - recorded in your Pipedrive account.

id
INTEGER

The activity ID.

Reference:

update_time
DATE-TIME

The time the activity was last updated.

active_flag
BOOLEAN

add_time
DATE-TIME

assigned_to_user_id
INTEGER

Reference:

company_id
INTEGER

created_by_user_id
INTEGER

Reference:

deal_dropbox_bcc
STRING

deal_id
INTEGER

deal_title
STRING

done
BOOLEAN

due_date
STRING

due_time
STRING

duration
STRING

gcal_event_id
STRING

google_calendar_etag
STRING

google_calendar_id
STRING

marked_as_done_time
DATE-TIME

note
STRING

org_id
INTEGER

Reference:

org_name
STRING

owner_name
STRING

participants
ARRAY

person_id
INTEGER

Reference:

primary_flag
BOOLEAN

activities (table), participants (attribute)

person_dropbox_bcc
STRING

person_id
INTEGER

Reference:

person_name
STRING

reference_id
INTEGER

reference_type
STRING

subject
STRING

type
STRING

user_id
INTEGER

Reference:


Replication Method :

Key-based Incremental

Replication Key :

update_time

Primary Key :

id

API endpoint :

Get all activity types

The activity_types table contains info about the different kinds of activities in your Pipedrive account.

id
INTEGER

The activity type ID.

update_time
DATE-TIME

The time the activity type was last updated.

active_flag
BOOLEAN

add_time
DATE-TIME

color
STRING

icon_key
STRING

is_custom_flag
BOOLEAN

key_string
STRING

name
STRING

order_nr
INTEGER


Replication Method :

Full Table

Primary Key :

id

API endpoint :

Get all supported currencies

The currency table contains info about the currencies listed in your Pipedrive account.

id
INTEGER

The currency ID.

active_flag
BOOLEAN

code
STRING

decimal_points
INTEGER

is_custom_flag
BOOLEAN

name
STRING

symbol
STRING


Replication Method :

Full Table

Primary Key :

id

API endpoint :

List products attached to a deal

The deal_products table contains info about the products attached to deals.

id
INTEGER

The deal product ID.

active_flag
BOOLEAN

add_time
STRING

comments
STRING

currency
STRING

deal_id
INTEGER

Reference:

discount_percentage
NUMBER

duration
NUMBER

enabled_flag
BOOLEAN

item_price
NUMBER

last_edit
STRING

name
STRING

order_nr
INTEGER

product_id
INTEGER

Reference:

product_variation_id
INTEGER

quantity
INTEGER

quantity_formatted
STRING

sum
NUMBER

sum_formatted
STRING

sum_no_discount
NUMBER


Replication Method : Replication Key :

log_time

Primary Key :

id

API endpoint :

List updates about a deal

The dealflow table contains info about the updates made to a deal.

id
INTEGER

The deal flow ID.

log_time
DATE-TIME

additional_data
STRING

change_source
STRING

field_key
STRING

is_bulk_update_flag
BOOLEAN

item_id
INTEGER

new_value
STRING

old_value
STRING

user_id
INTEGER

Reference:


Replication Method :

Key-based Incremental

Replication Key :

update_time

Primary Key :

id

API endpoint :

Get recent deals

The deals table contains info about updates made recently to the deals in your Pipedrive account.

id
INTEGER

The deal ID.

Reference:

update_time
DATE-TIME

The time the deal was last updated.

active
BOOLEAN

activities_count
INTEGER

add_time
DATE-TIME

cc_email
STRING

close_time
DATE-TIME

creator_user_id
INTEGER

Reference:

currency
STRING

deleted
BOOLEAN

done_activities_count
INTEGER

email_messages_count
INTEGER

expected_close_date
STRING

files_count
INTEGER

first_won_time
DATE-TIME

followers_count
INTEGER

formatted_value
STRING

formatted_weighted_value
STRING

last_activity_date
STRING

last_activity_id
INTEGER

Reference:

last_incoming_mail_time
DATE-TIME

last_outgoing_mail_time
DATE-TIME

lost_reason
STRING

lost_time
DATE-TIME

next_activity_date
STRING

next_activity_duration
STRING

next_activity_id
INTEGER

Reference:

next_activity_note
STRING

next_activity_subject
STRING

next_activity_time
STRING

next_activity_type
STRING

notes_count
INTEGER

org_hidden
BOOLEAN

org_id
INTEGER

Reference:

org_name
STRING

owner_name
STRING

participants_count
INTEGER

person_hidden
BOOLEAN

person_id
INTEGER

person_name
STRING

pipeline_id
INTEGER

Reference:

Reference:

probability
NUMBER

products_count
INTEGER

reference_activities_count
INTEGER

rotten_time
DATE-TIME

stage_change_time
DATE-TIME

stage_id
INTEGER

Reference:

stage_order_nr
INTEGER

status
STRING

title
STRING

undone_activities_count
INTEGER

user_id
INTEGER

Reference:

value
NUMBER

visible_to
STRING

weighted_value
NUMBER

won_time
DATE-TIME


Replication Method :

Full Table

Primary Key :

id

API endpoint :

Get recent deletes

The delete_log table contains a list of record IDs that have been deleted from Pipedrive.

id
INTEGER

The ID of the deleted record.


Replication Method :

Key-based Incremental

Replication Key :

update_time

Primary Key :

id

API endpoint :

Get recent files

The files table contains info about the recently updated files in your Pipedrive account.

id
INTEGER

The file ID.

update_time
DATE-TIME

The time the file was last updated.

active_flag
BOOLEAN

activity_id
INTEGER

Reference:

add_time
DATE-TIME

cid
STRING

deal_id
INTEGER

Reference:

deal_name
STRING

description
STRING

email_message_id
INTEGER

file_name
STRING

file_size
INTEGER

file_type
STRING

inline_flag
BOOLEAN

log_id
INTEGER

mail_message_id
INTEGER

name
STRING

note_id
INTEGER

Reference:

org_id
INTEGER

Reference:

org_name
STRING

people_name
STRING

person_id
INTEGER

Reference:

person_name
STRING

product_id
INTEGER

Reference:

product_name
STRING

remote_id
STRING

remote_location
STRING

s3_bucket
STRING

url
STRING

user_id
INTEGER

Reference:


Replication Method :

Key-based Incremental

Replication Key :

update_time

Primary Key :

id

API endpoint :

Get all filters

The filters table contains info about the filters, or data validation conditions, used in your Pipedrive account.

id
INTEGER

The filter ID.

update_time
DATE-TIME

The time the filter was last updated.

active_flag
BOOLEAN

add_time
DATE-TIME

custom_view_id
INTEGER

name
STRING

temporary_flag
BOOLEAN

type
STRING

user_id
INTEGER

Reference:

visible_to
STRING


Replication Method :

Key-based Incremental

Replication Key :

update_time

Primary Key :

id

API endpoint :

Get recent notes

The notes table contains info about recent notes in your Pipedrive account. Notes are pieces of textual (HTML-formatted) information that can be attached to deals, persons and organizations.

id
INTEGER

The note ID.

Reference:

update_time
DATE-TIME

The time the note was last updated.

active_flag
BOOLEAN

add_time
DATE-TIME

content
STRING

deal
OBJECT

title
STRING

notes (table), deal (attribute)

deal_id
INTEGER

Reference:

last_update_user_id
INTEGER

Reference:

org_id
INTEGER

Reference:

organization
OBJECT

name
STRING

notes (table), organization (attribute)

person
OBJECT

name
STRING

notes (table), person (attribute)

person_id
INTEGER

Reference:

pinned_to_deal_flag
BOOLEAN

pinned_to_organization_flag
BOOLEAN

pinned_to_person_flag
BOOLEAN

user
OBJECT

email
STRING

icon_url
STRING

is_you
BOOLEAN

name
STRING

notes (table), user (attribute)

user_id
INTEGER

Reference:


Replication Method : Replication Key :

update_time

Primary Key :

id

API endpoint :

Get recent organizations

The organizations table contains info about the recent organizations in your Pipedrive account. Organizations are companies and other types of organizations you are making deals with.

id
INTEGER

The organization ID.

Reference:

update_time
DATE-TIME

The time the organization was last updated.

active_flag
BOOLEAN

activities_count
INTEGER

add_time
DATE-TIME

address
STRING

address_admin_area_level_1
STRING

address_admin_area_level_2
STRING

address_country
STRING

address_formatted_address
STRING

address_locality
STRING

address_postal_code
STRING

address_route
STRING

address_street_number
STRING

address_sublocality
STRING

address_subpremise
STRING

category_id
INTEGER

cc_email
STRING

closed_deals_count
INTEGER

company_id
INTEGER

country_code
STRING

done_activities_count
INTEGER

email_messages_count
INTEGER

files_count
INTEGER

first_char
STRING

followers_count
INTEGER

last_activity_date
STRING

last_activity_id
INTEGER

Reference:

lost_deals_count
INTEGER

name
STRING

next_activity_date
STRING

next_activity_id
INTEGER

Reference:

next_activity_time
STRING

notes_count
INTEGER

open_deals_count
INTEGER

owner_id
INTEGER

owner_name
STRING

people_count
INTEGER

picture_id
INTEGER

reference_activities_count
INTEGER

related_closed_deals_count
INTEGER

related_lost_deals_count
INTEGER

related_open_deals_count
INTEGER

related_won_deals_count
INTEGER

timeline_last_activity_time
DATE-TIME

timeline_last_activity_time_by_owner
DATE-TIME

undone_activities_count
INTEGER

visible_to
STRING

won_deals_count
INTEGER


Replication Method :

Key-based Incremental

Replication Key :

update_time

Primary Key :

id

API endpoint :

Get recent persons

The persons table contains info about the recent persons in your Pipedrive account. In Pipedrive, a person represents a contact, or a customer you’re doing a deal with.

id
INTEGER

The person ID.

Reference:

update_time
DATE-TIME

The time the person was last updated.

active_flag
BOOLEAN

activities_count
INTEGER

add_time
DATE-TIME

cc_email
STRING

closed_deals_count
INTEGER

company_id
INTEGER

done_activities_count
INTEGER

email
ARRAY

label
STRING

primary
BOOLEAN

value
STRING

persons (table), email (attribute)

email_messages_count
INTEGER

files_count
INTEGER

first_char
STRING

first_name
STRING

followers_count
INTEGER

last_activity_date
STRING

last_activity_id
INTEGER

Reference:

last_incoming_mail_time
DATE-TIME

last_name
STRING

last_outgoing_mail_time
DATE-TIME

lost_deals_count
INTEGER

name
STRING

next_activity_date
STRING

next_activity_id
INTEGER

Reference:

next_activity_time
STRING

notes_count
INTEGER

open_deals_count
INTEGER

org_id
INTEGER

Reference:

org_name
STRING

owner_id
INTEGER

owner_name
STRING

participant_closed_deals_count
INTEGER

participant_open_deals_count
INTEGER

phone
ARRAY

label
STRING

primary
BOOLEAN

value
STRING

persons (table), phone (attribute)

picture_id
INTEGER

reference_activities_count
INTEGER

related_closed_deals_count
INTEGER

related_lost_deals_count
INTEGER

related_open_deals_count
INTEGER

related_won_deals_count
INTEGER

timeline_last_activity_time
DATE-TIME

timeline_last_activity_time_by_owner
DATE-TIME

undone_activities_count
INTEGER

visible_to
STRING

won_deals_count
INTEGER


Replication Method :

Key-based Incremental

Replication Key :

update_time

Primary Key :

id

API endpoint :

Get all pipelines

The pipelines table contains info about the pipelines in your Pipedrive account.

id
INTEGER

The pipeline ID.

Reference:

Reference:

update_time
DATE-TIME

The time the pipeline was last updated.

active
BOOLEAN

add_time
DATE-TIME

name
STRING

order_nr
INTEGER

selected
BOOLEAN

url_title
STRING


Replication Method :

Key-based Incremental

Replication Key :

update_time

Primary Key :

id

API endpoint :

Get recent products

The products table contains info about the recent products in your Pipedrive account.

id
INTEGER

The product ID.

Reference:

update_time
DATE-TIME

The time the product was last updated.

active_flag
BOOLEAN

add_time
DATE-TIME

code
STRING

files_count
INTEGER

first_char
STRING

followers_count
INTEGER

name
STRING

owner_id
INTEGER

owner_name
STRING

prices
ARRAY

USD
OBJECT

products (table), prices (attribute)

selectable
BOOLEAN

tax
INTEGER

unit
STRING

visible_to
STRING


Replication Method :

Key-based Incremental

Replication Key :

update_time

Primary Key :

id

API endpoint :

Get all stages

The stages table contains info about the pipeline stages in your Pipedrive account.

id
INTEGER

The stage ID.

Reference:

update_time
DATE-TIME

The time the stage was last updated.

active_flag
BOOLEAN

add_time
DATE-TIME

deal_probability
INTEGER

name
STRING

order_nr
INTEGER

pipeline_id
INTEGER

Reference:

Reference:

pipeline_name
STRING

rotten_days
INTEGER

rotten_flag
BOOLEAN


Replication Method :

Key-based Incremental

Replication Key :

modified

Primary Key :

id

API endpoint :

Get recent users

The users table contains info about the users associated with your Pipedrive account. Note: This table contains info about the people with access to your Pipedrive account - they should not be confused with persons.

id
INTEGER

The user ID.

Reference:

modified
DATE-TIME

activated
BOOLEAN

active_flag
BOOLEAN

created
DATE-TIME

default_currency
STRING

email
STRING

has_created_company
BOOLEAN

icon_url
STRING

is_admin
INTEGER

is_you
BOOLEAN

lang
INTEGER

last_login
NULL

locale
STRING

name
STRING

phone
STRING

role_id
INTEGER

signup_flow_variation
STRING

timezone_name
STRING

timezone_offset
STRING



Questions? Feedback?

Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.