Pipedrive Extended Actions
This article covers Pipedrive actions for activity management, note management, lead management, pipeline inspection, organization details, product management, utility operations, and merge operations. For basic person, organization, and deal read/write/search operations, see the CRM read and search actions guide and the CRM write actions guide.
Before you begin
- Connect Pipedrive at Settings > Integrations > Pipedrive and paste your API key. Find it in Pipedrive under Personal preferences > API.
- Person IDs and Organization IDs are numeric identifiers in Pipedrive. Lead IDs are UUIDs (longer alphanumeric strings). Use the correct format for each action.
- Pagination in Pipedrive uses either offset-based (start + limit) or cursor-based approaches depending on the API version. Follow the pagination outputs to retrieve additional pages.
All actions in this article cost 0 credits per row.
Activity Management
Add Activity
Returns: Single result
Create a new activity (call, meeting, task, email, lunch, or deadline) and link it to a deal, person, organization, or lead.
Inputs:
- Subject (Required): The activity subject or title
- Type (Required): Activity type (e.g., call, meeting, task, email, lunch, deadline)
- Due Date (Required): Format: YYYY-MM-DD
- Due Time (Required): Format: HH:MM
- Duration (Required): Format: HH:MM
- Deal ID (Required): Link to a deal
- Person ID (Required): Link to a person
- Organization ID (Required): Link to an organization
- Lead ID (Required): Link to a lead (UUID)
- Note (Required): Additional notes in HTML format
- Done (Required): Mark as completed
- Owner ID (Required): User who owns the activity
#Use case:
- Agency: Auto-create follow-up call activities for every new deal created from an enrichment workflow.
Get All Activities
Returns: Multiple results
Retrieve all activities from your Pipedrive account with optional filters for user, type, and completion status.
Inputs:
- Limit (Required): Max 500. Default: 100
- Cursor (Required): Pagination cursor
- Done (Required): Filter by completion status
- Sort By (Required): id, add_time, update_time
- Sort Direction (Required): asc or desc
#Use case:
- Agency: Pull all undone activities for a client account to build an outstanding tasks report.
Get Activities by Deal
Returns: Multiple results
Retrieve all activities linked to a specific deal.
Inputs:
- Deal ID (Required): The Pipedrive deal ID
- Limit (Required): Max 500. Default: 100
- Cursor (Required): Pagination cursor
Outputs
Same output fields as Get All Activities.
#Use case:
- Agency: Pull all activities on a deal before a client pipeline review to summarize sales engagement.
Get Activities by Person
Returns: Multiple results
Retrieve all activities where a specific person is the primary participant.
Inputs:
- Person ID (Required): The Pipedrive person ID
- Limit (Required): Max 500. Default: 100
- Cursor (Required): Pagination cursor
Outputs
Same output fields as Get All Activities.
#Use case:
- Agency: Check a person's activity history before reaching out to avoid contacting someone with a recent call logged.
Add Note
Returns: Single result
Create a new note and attach it to a deal, person, organization, project, or lead. Provide at least one entity ID.
Inputs:
- Content (Required): Note content in HTML format
- Lead ID (Required): UUID of the lead
- Deal ID (Required): Link to a deal
- Person ID (Required): Link to a person
- Organization ID (Required): Link to an organization
- Project ID (Required): Link to a project
- User ID (Required): Author of the note (admin only)
- Add Time (Required): Format: YYYY-MM-DD HH:MM:SS (UTC)
- Pin to Lead (Required): Yes (1) or No (0)
- Pin to Deal (Required): Yes (1) or No (0)
- Pin to Organization (Required): Yes (1) or No (0)
- Pin to Person (Required): Yes (1) or No (0)
- Pin to Project (Required): Yes (1) or No (0)
#Use case:
- Agency: Automatically add enrichment summary notes to person records after a waterfall enrichment run completes.
Get All Notes
Returns: Multiple results
Retrieve all notes from your Pipedrive account with optional filters and sorting.
Inputs:
- Limit (Required): Max 500. Default: 100
- Cursor (Required): Pagination cursor
- Sort By (Required): id, add_time, update_time
- Sort Direction (Required): asc or desc
#Use case:
- Agency: Export all notes to audit the quality of sales team documentation across deals.
Get All Leads
Returns: Multiple results
Retrieve all leads from Pipedrive with person and organization details.
Inputs:
- Limit (Required): Default: 100
- Start (Required): Pagination offset. Default: 0
- Sort Order (Required): e.g., "add_time DESC"
- Owner ID (Required): Filter by lead owner
- Person ID (Required): Filter by linked person
- Organization ID (Required): Filter by linked organization
#Use case:
- Agency: Pull all leads for a client account to reconcile against campaign attribution reports.
Get Lead Details
Returns: Single result
Retrieve full details for a single lead by its UUID.
Inputs:
- Lead ID (Required): UUID of the lead
#Use case:
- Agency: Look up a lead's value and linked person before deciding whether to convert it to a deal.
Add Lead
Returns: Single result
Create a new lead linked to a person or an organization.
Inputs:
- Lead Title (Required): Display name (e.g., "Deal with Acme Corp")
- Person ID (Required): Link to an existing person
- Organization ID (Required): Link to an existing organization
- Owner ID (Required): User who owns the lead
- Value Amount (Required): Potential monetary value
- Value Currency (Required): e.g., EUR, USD
- Expected Close Date (Required): Format: YYYY-MM-DD
- Label IDs (Required): Comma-separated label IDs
- Visible To (Required): Visibility group (1, 3, 5, or 7)
#Use case:
- Agency: Create leads from enriched prospect lists, linking each to the person and organization records created in earlier workflow steps.
Update Lead
Returns: Single result
Update one or more properties of an existing lead. Send empty values to leave properties unchanged.
Inputs:
- Lead ID (Required): UUID of the lead
- Title (Required): Updated lead name
- Owner ID (Required): New owner
- Person ID (Required): Re-link to a different person
- Organization ID (Required): Re-link to a different organization
- Value Amount (Required): Updated value (requires Value Currency)
- Value Currency (Required): Updated currency (requires Value Amount)
- Expected Close Date (Required): Format: YYYY-MM-DD
- Is Archived (Required): Archive or unarchive the lead
- Visible To (Required): 1 (Owner), 3 (Company), 5 (Owner's group + sub-groups), 7 (Entire company)
- Was Seen (Required): Mark as seen
#Use case:
- Agency: Update lead values after enrichment reveals company revenue data.
Get All Pipelines
Returns: Multiple results
Retrieve all pipelines from your Pipedrive account.
Inputs
No required inputs. Optional pagination and sort parameters may apply.
Outputs: Pipeline ID, Pipeline Name, URL Title, Active, Deal Probability Enabled, Add Time / Update Time
#Use case:
- Agency: Pull all pipelines to map IDs to names before building workflow routing rules.
Get Pipeline Details
Returns: Single result
Retrieve details for a specific pipeline by its ID.
Inputs:
- Pipeline ID (Required): Numeric Pipedrive pipeline ID
#Use case:
- Agency: Verify a pipeline is active before assigning deals to it in a workflow.
Get All Stages
Returns: Multiple results
Retrieve all stages across all pipelines, or filter by a specific pipeline ID.
Inputs:
- Pipeline ID (Required): Filter stages by pipeline
- Limit (Required): Max 500. Default: 100
- Cursor (Required): Pagination cursor
#Use case:
- Agency: Map stage names and probabilities to build a pipeline health dashboard for a client.
Get Deals by Pipeline
Returns: Multiple results
Retrieve all deals within a specific pipeline, optionally filtered by stage or status.
Inputs:
- Pipeline ID (Required): The pipeline to pull deals from
- Stage ID (Required): Filter by specific stage
- Status (Required): open, won, lost, or all_not_deleted
- Limit (Required): Max 500. Default: 100
- Cursor (Required): Pagination cursor
#Use case:
- Agency: Pull all open deals in a client's pipeline to build a weekly pipeline report.
Get Persons by Organization
Returns: Multiple results
Retrieve all persons (contacts) linked to a specific organization.
Inputs:
- Organization ID (Required): The Pipedrive organization ID
- Limit (Required): Max 500. Default: 100
- Cursor (Required): Pagination cursor
Pipedrive Extended Actions (Part 2)
Continued from Part 1.
Use cases
- Agency: Pull all contacts at a target company to plan multi-threaded outreach.
- Founder-led team: Find all persons at an organization before a sales meeting to identify additional stakeholders.
- RevOps: Audit person-to-organization links to find orphaned contacts.
- GTM engineer: Feed person IDs from this action into an enrichment column to fill missing email or phone data.
Deal Details and Products
Get Deal Details
Returns: Single result
Retrieve comprehensive details for a single deal by its ID, including activity counts, product counts, and email statistics.
Inputs:
- Deal ID (Required): The Pipedrive deal ID
#Use case:
- Agency: Pull deal details including activity counts to score deals by engagement level for a client review.
Add Product to Deal
Returns: Single result
Attach a product to a deal, creating a deal-product line item with pricing and billing details.
Inputs:
- Deal ID (Required): The deal to attach the product to
- Product ID (Required): The product to attach
- Item Price (Required): Unit price
- Quantity (Required): Number of units
- Tax (Required): Tax percentage. Default: 0
- Tax Method (Required): inclusive, exclusive, or none
- Discount (Required): Discount value. Default: 0
- Discount Type (Required): percentage or amount
- Comments (Required): Product-level comments
- Is Enabled (Required): Default: true
- Product Variation ID (Required): Specific product variation
- Billing Frequency (Required): one-time, annually, semi-annually, quarterly, monthly, weekly
- Billing Frequency Cycles (Required): Number of billing cycles (max 208)
- Billing Start Date (Required): Format: YYYY-MM-DD
#Use case:
- Agency: Auto-attach standard service products to new deals created from enrichment workflows.
List Deal Products
Returns: Multiple results
List all products attached to a specific deal.
Inputs:
- Deal ID (Required): The deal to list products for
- Sort By (Required): id, add_time, update_time, order_nr
- Sort Direction (Required): asc or desc
- Limit (Required): Max 500. Default: 100
- Cursor (Required): Pagination cursor
#Use case:
- Agency: Pull all products on a deal to verify pricing before sending a proposal.
List Users
Returns: Multiple results
Retrieve all users in your Pipedrive account.
Inputs
No required inputs.
Outputs: User ID, User Name, User Email, Is Active, Is Admin, Role ID
#Use case:
- Agency: Pull user IDs to map them as owners when creating records in bulk.
Create Webhook
Returns: Single result
Register a webhook to receive real-time notifications when records are created, changed, or deleted in Pipedrive.
Inputs:
- Name (Required): Webhook display name
- Subscription URL (Required): Publicly accessible URL for notifications
- Event Action (Required): * (All), create, change, or delete
- Event Object (Required): * (All), activity, deal, lead, note, organization, person, pipeline, product, stage, user
- User ID (Required): Filter events to a specific user
- HTTP Auth User (Required): Basic auth username (if endpoint requires it)
- HTTP Auth Password (Required): Basic auth password
- Version (Required): 2.0 (default) or 1.0
#Use case:
- Agency: Create webhooks to trigger TexAu workflows automatically when deals change stage in a client's Pipedrive.
Get Recent Changes
Returns: Multiple results
Retrieve all recent changes across deals, persons, organizations, and other entities after a given timestamp.
Inputs:
- Since Timestamp (Required): Format: YYYY-MM-DD HH:MM:SS (UTC)
- Item Types (Required): Comma-separated: deal, person, organization, activity, etc.
- Limit (Required): Default: 100
- Start (Required): Pagination offset
#Use case:
- Agency: Poll recent changes daily to detect new deals or contacts added by a client's sales team, then trigger enrichment.
Merge Deals
Returns: Single result
Merge one deal into another. The deal specified as "To Delete" is merged into the deal specified as "To Keep".
Inputs:
- Deal ID (To Delete) (Required): The deal that will be deleted
- Merge With ID (To Keep) (Required): The deal that will absorb the other deal's data
#Use case:
- Agency: Merge duplicate deals found during a CRM cleanup pass.
Merge Organizations
Returns: Single result
Merge one organization into another. The organization specified by ID is deleted, and its data is absorbed into the target.
Inputs:
- Organization ID (Required): The organization that will be deleted
- Merge With ID (Required): The organization that will keep the merged data
#Use case:
- Agency: Merge duplicate company records found after a bulk import.
Merge Persons
Returns: Single result
Merge one person into another. The person specified by ID is deleted, and their data is absorbed into the target.
Inputs:
- Person ID (To Delete) (Required): The person that will be deleted
- Merge With ID (To Keep) (Required): The person that will keep the merged data
#Use case:
- Agency: Merge duplicate contacts created by different team members working the same account.
Troubleshooting
Add Activity fails with "invalid type" The Type field must match one of the activity types configured in your Pipedrive account. Go to Pipedrive Settings > Activity Types to see valid options.
Add Lead fails with "person_id or organization_id required" A lead must be linked to at least one entity. Provide a Person ID, an Organization ID, or both.
Get All Leads returns empty even though leads exist Check your Owner ID filter. If set, only leads owned by that user are returned. Remove the filter to see all leads.
Add Note returns success but note does not appear in Pipedrive At least one entity ID (Lead ID, Deal ID, Person ID, Organization ID, or Project ID) must be provided. A note without an attached entity is created but may not appear in any record's timeline.
Create Webhook returns "subscription_url not reachable" The URL must be publicly accessible and must not redirect. Test the URL independently before registering it as a webhook endpoint.
Merge Persons or Merge Deals returns an error Verify that both IDs exist and are not already deleted or archived. You cannot merge a deleted record.
Get Recent Changes returns no data The Since Timestamp must be in UTC format (YYYY-MM-DD HH:MM:SS). Ensure the timestamp is not in the future and that changes have occurred since that time.
Update Lead returns success but no fields changed When using Update Lead, send empty values for fields you do not want to change. If all values are empty, the lead is fetched but not modified.