Skip to main content
Pipedrive logo

Overview

Add Pipedrive to any ModuleX agent or workflow. Sales CRM and pipeline management platform. Connects to the Pipedrive REST API ({your-domain}.pipedrive.com/api/v1 and /api/v2) to manage deals, contacts, leads, activities, organizations, and notes.
Categories: CRM · Sales · Auth: OAuth2 · Actions: 26

Authentication

OAuth2 Authentication

Connect using Pipedrive OAuth (recommended)

Required Credentials

FieldDescriptionRequiredFormat
Client IDPipedrive OAuth App Client IDYes-
Client SecretPipedrive OAuth App Client SecretYes-

OAuth Configuration

  • Authorization URL: https://oauth.pipedrive.com/oauth/authorize
  • Token URL: https://oauth.pipedrive.com/oauth/token
  • Scopes: deals:full, contacts:full, leads:full, activities:full, search:read, users:read, admin

Available Actions

Parameters

subject
string
required
Subject of the activity
type
string
required
Type of the activity (e.g. call, meeting, task, deadline, email, lunch). Must match an ActivityType key_string in Pipedrive.
owner_id
integer
ID of the user whom the activity will be assigned to. If omitted, assigned to the authorized user.
deal_id
string
ID of the deal this activity will be associated with
lead_id
string
ID of the lead this activity will be associated with
org_id
integer
ID of the organization this activity will be associated with
project_id
string
ID of the project this activity will be associated with
due_date
string
Due date of the activity. Format: YYYY-MM-DD
due_time
string
Due time of the activity in UTC. Format: HH:MM
duration
string
Duration of the activity. Format: HH:MM
busy
boolean
Set the activity as Busy or Free
done
boolean
Whether the activity is done or not
note
string
Note of the activity (HTML format)
public_description
string
Additional details about the activity that will be synced to your external calendar

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "AddActivityOutput",
  "type": "object"
}

Parameters

title
string
required
Deal title
owner_id
integer
ID of the user who will be marked as the owner of this deal
person_id
integer
ID of the person this deal will be associated with
org_id
integer
ID of the organization this deal will be associated with
pipeline_id
integer
ID of the pipeline this deal will be placed in
stage_id
integer
ID of the stage this deal will be placed in
value
string
Value of the deal. If omitted, value will be set to 0.
currency
string
Currency of the deal (3-character code). If omitted, uses the default currency of the authorized user.
status
string
Status of the deal. Allowed values: open, won, lost, deleted
probability
integer
Deal success probability percentage
lost_reason
string
Message about why the deal was lost (when status=lost)
visible_to
integer
Visibility of the deal. 1 = Owner & followers (private), 3 = Entire company (shared)
expected_close_date
string
Expected close date of the deal. Format: YYYY-MM-DD
note
string
Content of a note to attach to the deal after creation

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "AddDealOutput",
  "type": "object"
}

Parameters

type
string
required
The type of the item. Allowed values: lead, person, deal, organization
label_ids
array
required
The IDs of labels to add. Element type: string
lead_id
string
The ID of the lead (required when type=lead)
person_id
integer
The ID of the person (required when type=person)
deal_id
string
The ID of the deal (required when type=deal)
organization_id
integer
The ID of the organization (required when type=organization)
replace_existing_labels
boolean
Set to true to replace existing labels with the new ones, false to append (Default: false)

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "AddLabelsOutput",
  "type": "object"
}

Parameters

title
string
required
The name of the lead
person_id
integer
The ID of a person to link to. Required unless organization_id is specified.
organization_id
integer
The ID of an organization to link to. Required unless person_id is specified.
owner_id
integer
The ID of the user who will own the lead
label_ids
array
The IDs of lead labels to associate. Element type: string (UUID)
expected_close_date
string
Expected close date. Format: YYYY-MM-DD
visible_to
string
Visibility of the lead. Allowed values: 1, 3, 5, 7
was_seen
boolean
Whether the lead was seen in the Pipedrive UI
note
string
A note to add to the lead

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "AddLeadOutput",
  "type": "object"
}

Parameters

content
string
required
The content of the note in HTML format
lead_id
string
The ID of the lead to attach the note to
deal_id
string
The ID of the deal to attach the note to
person_id
integer
The ID of the person to attach the note to
organization_id
integer
The ID of the organization to attach the note to
user_id
integer
The ID of the user marked as the author (admin only)
pinned_to_deal_flag
boolean
Pin the note to the deal (requires deal_id) (Default: false)
pinned_to_lead_flag
boolean
Pin the note to the lead (requires lead_id) (Default: false)
pinned_to_org_flag
boolean
Pin the note to the organization (requires organization_id) (Default: false)
pinned_to_person_flag
boolean
Pin the note to the person (requires person_id) (Default: false)

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "AddNoteOutput",
  "type": "object"
}

Parameters

name
string
required
Organization name
owner_id
integer
ID of the user who will be marked as the owner
visible_to
integer
Visibility. 1 = Owner & followers (private), 3 = Entire company (shared)

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "AddOrganizationOutput",
  "type": "object"
}

Parameters

name
string
required
Person name
owner_id
integer
ID of the user who will be marked as the owner
org_id
integer
ID of the organization this person will belong to
emails
array
Email addresses. Element type: object with keys {value, primary, label}
phones
array
Phone numbers. Element type: object with keys {value, primary, label}
visible_to
integer
Visibility. 1 = Owner & followers (private), 3 = Entire company (shared)

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "AddPersonOutput",
  "type": "object"
}

Parameters

max_results
integer
Maximum number of results to return. If not provided, all leads are returned.
owner_id
integer
Filter leads by the given user ID
person_id
integer
Filter leads by the given person ID
organization_id
integer
Filter leads by the given organization ID
filter_id
integer
The ID of the filter to use. Takes precedence over other filters.
sort
string
Field and direction to sort by. Valid fields: id, title, owner_id, creator_id, was_seen, expected_close_date, next_activity_id, add_time, update_time

Response

{
  "$defs": {
    "LeadItem": {
      "additionalProperties": false,
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Id"
        },
        "title": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Title"
        },
        "owner_id": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Owner Id"
        },
        "person_id": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Person Id"
        },
        "organization_id": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Organization Id"
        },
        "was_seen": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Was Seen"
        },
        "expected_close_date": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Expected Close Date"
        },
        "add_time": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Add Time"
        },
        "update_time": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Update Time"
        }
      },
      "title": "LeadItem",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "leads": {
      "items": {
        "$ref": "#/$defs/LeadItem"
      },
      "title": "Leads",
      "type": "array"
    },
    "total": {
      "default": 0,
      "title": "Total",
      "type": "integer"
    }
  },
  "required": [
    "success"
  ],
  "title": "GetAllLeadsOutput",
  "type": "object"
}

Parameters

deal_id
string
required
The ID of the deal to retrieve

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "GetDealOutput",
  "type": "object"
}

Parameters

lead_id
string
required
The ID of the lead to retrieve

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "GetLeadByIdOutput",
  "type": "object"
}

Parameters

person_id
integer
required
The ID of the person to retrieve

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "GetPersonDetailsOutput",
  "type": "object"
}

Parameters

filter_id
integer
The ID of the filter to apply
owner_id
integer
Filter by owner user ID
person_id
integer
Filter by associated person ID
organization_id
integer
Filter by associated organization ID
pipeline_id
integer
Filter by pipeline ID
stage_id
integer
Filter by stage ID
status
string
Filter by status. Allowed values: open, won, lost, deleted
sort_by
string
Field to sort by. Allowed values: id, update_time, add_time
sort_direction
string
Sort direction. Allowed values: asc, desc
limit
integer
Maximum number of entries to return (max 500)
cursor
string
Cursor for pagination to the next page of results

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "deals": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "title": "Deals",
      "type": "array"
    },
    "cursor": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Cursor"
    }
  },
  "required": [
    "success"
  ],
  "title": "ListDealsOutput",
  "type": "object"
}

Response

{
  "$defs": {
    "LabelOption": {
      "additionalProperties": false,
      "properties": {
        "label": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Label"
        },
        "value": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Value"
        }
      },
      "title": "LabelOption",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "options": {
      "items": {
        "$ref": "#/$defs/LabelOption"
      },
      "title": "Options",
      "type": "array"
    }
  },
  "required": [
    "success"
  ],
  "title": "ListLeadLabelIdsOptionsOutput",
  "type": "object"
}

Response

{
  "$defs": {
    "LabelOption": {
      "additionalProperties": false,
      "properties": {
        "label": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Label"
        },
        "value": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Value"
        }
      },
      "title": "LabelOption",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "options": {
      "items": {
        "$ref": "#/$defs/LabelOption"
      },
      "title": "Options",
      "type": "array"
    }
  },
  "required": [
    "success"
  ],
  "title": "ListOrganizationLabelIdsOptionsOutput",
  "type": "object"
}

Response

{
  "$defs": {
    "LabelOption": {
      "additionalProperties": false,
      "properties": {
        "label": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Label"
        },
        "value": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Value"
        }
      },
      "title": "LabelOption",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "options": {
      "items": {
        "$ref": "#/$defs/LabelOption"
      },
      "title": "Options",
      "type": "array"
    }
  },
  "required": [
    "success"
  ],
  "title": "ListPersonLabelIdsOptionsOutput",
  "type": "object"
}

Response

{
  "$defs": {
    "UserOption": {
      "additionalProperties": false,
      "properties": {
        "label": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Label"
        },
        "value": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Value"
        }
      },
      "title": "UserOption",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "options": {
      "items": {
        "$ref": "#/$defs/UserOption"
      },
      "title": "Options",
      "type": "array"
    }
  },
  "required": [
    "success"
  ],
  "title": "ListUserIdOptionsOutput",
  "type": "object"
}

Parameters

deal_id
string
required
The ID of the deal to merge (will be removed)
target_deal_id
string
required
The ID of the deal to merge into (will be kept)

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "MergeDealsOutput",
  "type": "object"
}

Parameters

person_id
integer
required
The ID of the person to merge (will be removed)
target_person_id
integer
required
The ID of the person to merge into (will be kept, data prioritized on conflict)

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "MergePersonsOutput",
  "type": "object"
}

Parameters

lead_id
string
The ID of the lead whose notes to deduplicate
deal_id
string
The ID of the deal whose notes to deduplicate
person_id
integer
The ID of the person whose notes to deduplicate
organization_id
integer
The ID of the organization whose notes to deduplicate
user_id
integer
The ID of the user whose notes to deduplicate
project_id
string
The ID of the project whose notes to deduplicate
keyword
string
Only remove duplicate notes that contain this keyword

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "total_notes": {
      "default": 0,
      "title": "Total Notes",
      "type": "integer"
    },
    "duplicates_found": {
      "default": 0,
      "title": "Duplicates Found",
      "type": "integer"
    },
    "duplicates_removed": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "title": "Duplicates Removed",
      "type": "array"
    }
  },
  "required": [
    "success"
  ],
  "title": "RemoveDuplicateNotesOutput",
  "type": "object"
}

Parameters

type
string
required
The type of the item. Allowed values: lead, person, deal, organization
entity_id
string
required
ID of the entity to remove labels from
label_ids
array
required
The label IDs to remove. Element type: string

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "RemoveLabelsOutput",
  "type": "object"
}

Parameters

term
string
required
The search term (minimum 2 characters, or 1 with exact_match)
exact_match
boolean
When true, only full exact matches are returned (not case sensitive)
fields
array
Fields to search from. Allowed values: custom_fields, notes, title. Element type: string
person_id
integer
Filter by person ID
organization_id
integer
Filter by organization ID
include_fields
string
Optional fields to include. Allowed: lead.was_seen

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "items": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "title": "Items",
      "type": "array"
    }
  },
  "required": [
    "success"
  ],
  "title": "SearchLeadsOutput",
  "type": "object"
}

Parameters

search_term
string
The term to search for in note content
lead_id
string
Filter by lead ID
deal_id
string
Filter by deal ID
person_id
integer
Filter by person ID
organization_id
integer
Filter by organization ID
user_id
integer
Filter by user ID
sort_field
string
Sort field. Allowed: id, user_id, deal_id, org_id, person_id, content, add_time, update_time
sort_direction
string
Sort direction. Allowed: ASC, DESC (Default: DESC)
start_date
string
Date from which to fetch notes. Format: YYYY-MM-DD
end_date
string
Date until which to fetch notes. Format: YYYY-MM-DD
max_results
integer
Maximum number of results to return

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "notes": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "title": "Notes",
      "type": "array"
    },
    "total": {
      "default": 0,
      "title": "Total",
      "type": "integer"
    }
  },
  "required": [
    "success"
  ],
  "title": "SearchNotesOutput",
  "type": "object"
}

Parameters

term
string
required
The search term (minimum 2 characters, or 1 with exact_match)
fields
array
Fields to search from. Allowed: custom_fields, email, notes, phone, name. Element type: string
exact_match
boolean
When true, only full exact matches are returned (not case sensitive)
organization_id
integer
Filter by organization ID (upper limit: 2000)
include_fields
string
Optional fields to include. Allowed: person.picture
start
integer
Pagination start offset
limit
integer
Items per page

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "items": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "title": "Items",
      "type": "array"
    }
  },
  "required": [
    "success"
  ],
  "title": "SearchPersonsOutput",
  "type": "object"
}

Parameters

deal_id
string
required
ID of the deal to update
title
string
New deal title
owner_id
integer
ID of the new owner user
person_id
integer
ID of the person to associate
org_id
integer
ID of the organization to associate
pipeline_id
integer
ID of the pipeline
stage_id
integer
ID of the stage in the pipeline
value
string
Value of the deal
currency
string
Currency (3-character code)
status
string
Status. Allowed values: open, won, lost, deleted
probability
integer
Deal success probability percentage
lost_reason
string
Reason the deal was lost (when status=lost)
visible_to
integer
Visibility. 1 = private, 3 = shared
note
string
A note to add to the deal

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "UpdateDealOutput",
  "type": "object"
}

Parameters

lead_id
string
required
The ID of the lead to update
title
string
New title of the lead
person_id
integer
ID of the person to link to
organization_id
integer
ID of the organization to link to
owner_id
integer
ID of the new owner user
label_ids
array
Lead label IDs. Element type: string (UUID)
expected_close_date
string
Expected close date. Format: YYYY-MM-DD
visible_to
string
Visibility. Allowed values: 1, 3, 5, 7
was_seen
boolean
Whether the lead was seen in the UI
is_archived
boolean
Whether the lead is archived

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "UpdateLeadOutput",
  "type": "object"
}

Parameters

person_id
integer
required
The ID of the person to update
name
string
New name of the person
owner_id
integer
ID of the new owner user
org_id
integer
ID of the organization this person will belong to
emails
array
Email addresses. Element type: object with keys {value, primary, label}
phones
array
Phone numbers. Element type: object with keys {value, primary, label}
visible_to
integer
Visibility. 1 = private, 3 = shared

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "data": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Data"
    }
  },
  "required": [
    "success"
  ],
  "title": "UpdatePersonOutput",
  "type": "object"
}

Limits & Quotas

  • Rate limits: Pipedrive enforces per-plan rate limits. Professional plan: 200 requests/10 seconds; Enterprise plan: 400 requests/10 seconds. Exceeding the limit returns HTTP 429.
  • Pagination: List endpoints use cursor-based (v2) or offset-based (v1) pagination. The list_deals tool supports cursor; get_all_leads auto-paginates.
  • Error model: Non-2xx responses and timeouts are caught and returned as success=False + error rather than raising. The error string includes the HTTP status code and response body for debugging.

Clay

Dropcontact

HubSpot