List deals with cursor-based pagination and filtering options. Backed by Pipedrive API v2 (GET /api/v2/deals).
Returns a page of deals. Use filters to narrow results by status, stage, owner, person, organization, or pipeline.
Workflow tips:
- Use status filter to get only 'open', 'won', 'lost', or 'deleted' deals; omit status entirely for all non-deleted deals (v1's 'all_not_deleted' has no v2 equivalent, so it is dropped rather than sent)
- Set owned_by_you=1 to see only your deals (resolves your user id via GET /users/me, cached)
- Combine with filter_id to use pre-configured Pipedrive filters
- Paginate with cursor: pass the cursor from the previous response's additional_data.next_cursor to get the next page; omit it (or pass null) for the first page. A null next_cursor means you're on the last page. 'start' is deprecated and ignored — v2 does not support offset pagination.
- sort_by only accepts a small set of v2 fields (confirmed working: id, add_time, update_time) — arbitrary v1 sort fields like 'title' or 'value' will be rejected by the API
- For all deals without manual pagination, use deals/list_all_auto instead
- Use add_time_from / add_time_until to filter by creation date (client-side). NOTE: this only filters the current page; for complete date-range results use deals/list_all_auto
Common use cases:
- List all open deals: { "status": "open" }
- List my won deals: { "status": "won", "owned_by_you": 1 }
- List deals in a specific stage: { "stage_id": 123 }
- Get the next page: { "cursor": "<next_cursor from previous response>" }
输入参数sortlimitstartcursororg_idstatussort_byuser_idstage_idfilter_idperson_idpipeline_id另有 3 个
Automatically fetch ALL deals with pagination handling. Backed by Pipedrive API v2 (GET /api/v2/deals), paginated via cursor.
This tool automatically handles cursor pagination and fetches all deals matching the filters.
Unlike deals/list, this returns ALL results in a single response.
WARNING: This can return large datasets. Use filters to limit results.
Workflow tips:
- Same filters as deals/list (status, stage_id, user_id, person_id, org_id, etc.)
- Specify max_items to limit total results if needed
- No need to manage cursor - pagination is automatic (loops until additional_data.next_cursor is null)
- Best for exports, reports, or comprehensive analysis
- Use add_time_from / add_time_until to filter by creation date (client-side)
- sort_by only accepts a small set of v2 fields (confirmed working: id, add_time, update_time)
Common use cases:
- Get all open deals: { "status": "open" }
- Export all deals for a pipeline: { "pipeline_id": 1 }
- Get old unqualified deals: { "pipeline_id": 4, "add_time_until": "2023-12-31" }
输入参数sortorg_idstatussort_byuser_idstage_idfilter_idmax_itemsperson_idpipeline_idowned_by_youadd_time_from另有 1 个
List archived deals with pagination and filtering options.
Returns a paginated list of archived deals. Archived deals are deals that have been removed from active pipelines.
Workflow tips:
- Use same filters as deals/list (status, stage_id, user_id, person_id, org_id, etc.)
- Filter by user_id to see archived deals by specific user
- Combine with filter_id to use pre-configured Pipedrive filters
- Use start/limit for pagination (default limit: 100, max: 500)
- Useful for historical analysis and cleanup
Common use cases:
- List all archived deals: {}
- List archived deals by user: { "user_id": 123 }
- List archived deals in a specific stage: { "stage_id": 5 }
- List archived deals for a person: { "person_id": 456 }
输入参数sortlimitstartorg_idstatususer_idstage_idfilter_idperson_idpipeline_idowned_by_you
Create a new deal in Pipedrive.
Creates a new deal with the specified information. Only title is required.
Custom fields:
- Pass display names: { "custom_fields": { "Industria": "Tech", "Budget": 5000 } }
- Or hash keys directly: { "custom_fields": { "abc123...": "raw value" } }
- For enum/set fields, pass option labels (not ids).
Workflow tips:
- Title is the only required field
- Use persons/search or organizations/search to get person_id or org_id
- Use pipelines/list to get pipeline_id and stage_id
- Set expected_close_date in YYYY-MM-DD format
- Probability should be 0-100 (percentage)
- Currency must be a 3-letter code (e.g., USD, EUR, GBP)
Common use cases:
- Simple deal: { "title": "New Deal", "value": 5000, "currency": "USD" }
- Deal with person: { "title": "Deal", "value": 1000, "person_id": 123 }
- Deal with organization: { "title": "Deal", "org_id": 456, "stage_id": 1 }
- Full deal: { "title": "Big Deal", "value": 50000, "currency": "USD", "person_id": 123, "org_id": 456, "pipeline_id": 1, "stage_id": 2, "expected_close_date": "2024-12-31" }
输入参数title必填valueorg_idstatususer_idadd_timecurrencystage_idperson_idvisible_tolost_reasonpipeline_id另有 3 个
Get detailed information about a specific deal by ID.
Retrieves complete information about a single deal, including all custom fields.
Workflow tips:
- Use deals/search or deals/list to find deal IDs first
- Response includes person, organization, pipeline, and stage information
- Cached for 5 minutes for better performance
Common use cases:
- Get deal details: { "id": 123 }
- Check deal status before updating
- Retrieve deal information for analysis
输入参数id必填
Update an existing deal.
Updates one or more fields of an existing deal. Only provide fields you want to change.
Custom fields:
- Pass display names: { "id": 123, "custom_fields": { "Industria": "Tech", "Budget": 5000 } }
- Or hash keys directly: { "id": 123, "custom_fields": { "abc123...": "raw value" } }
- For enum/set fields, pass option labels (not ids).
Workflow tips:
- Only specify fields you want to update
- Use deals/get first to see current values
- Use deals/move_to_stage for simple stage changes
- To mark as won/lost, update status field
Common use cases:
- Update value: { "id": 123, "value": 7500 }
- Change title: { "id": 123, "title": "Updated Deal Name" }
- Mark as won: { "id": 123, "status": "won" }
- Update multiple fields: { "id": 123, "value": 10000, "expected_close_date": "2024-12-31", "probability": 75 }
- Move to new stage: { "id": 123, "stage_id": 5 }
输入参数id必填titlevalueorg_idstatususer_idcurrencystage_idperson_idvisible_tolost_reasonpipeline_id另有 3 个
Move a deal to a different stage in the pipeline.
Convenience tool to move a deal to another stage. Use this instead of deals/update when only changing stages.
Workflow tips:
- Use pipelines/list to get available stages
- Moving stages may trigger automations in Pipedrive
- Stage must be in the same pipeline or specify pipeline_id
Common use cases:
- Move to next stage: { "id": 123, "stage_id": 5 }
- Move to won/lost stage: { "id": 123, "stage_id": 10 }
输入参数id必填stage_id必填
Delete a deal permanently.
WARNING: This permanently deletes the deal. Consider marking as lost instead.
Workflow tips:
- Deletion is permanent and cannot be undone
- Consider using deals/update with status='lost' instead
- Use deals/get first to confirm you have the right deal
- Related activities and notes are preserved but detached
Common use cases:
- Delete test deal: { "id": 123 }
- Clean up duplicate: { "id": 456 }
输入参数id必填
Duplicate an existing deal.
Creates a copy of an existing deal with all its properties. The new deal will have the same values, person, organization, etc.
Workflow tips:
- Creates exact copy except for ID and timestamps
- Followers are NOT copied to the new deal
- Products attached to the deal ARE copied
- Use deals/get to view the original before duplicating
- After duplication, you may want to update the title
Common use cases:
- Duplicate template deal: { "id": 123 }
- Create similar deal: { "id": 456 }
- Workflow: duplicate deal, then update specific fields
输入参数id必填
Search for deals using a text query.
Searches deals by title, notes, or custom fields. Much faster than filtering all deals.
Workflow tips:
- Search is case-insensitive by default
- Minimum 2 characters for search term
- Use exact_match=true for precise matching
- Combine with person_id or org_id to narrow results
- Use status filter to search only open/won/lost deals
- Results are cached for 5 minutes
Common use cases:
- Search by title: { "term": "acme" }
- Exact match: { "term": "ACME Corp Deal", "exact_match": true }
- Search for person's deals: { "term": "software", "person_id": 123 }
- Search open deals only: { "term": "contract", "status": "open" }
- Search in specific field: { "term": "urgent", "fields": "notes" }
输入参数term必填limitstartfieldsorg_idstatusperson_idexact_matchinclude_fields
Get deal statistics and summary.
Returns aggregated statistics about deals, including counts by status, total values, and conversion rates.
Workflow tips:
- Useful for dashboards and reporting
- Filter by user_id to see specific user's performance
- Use stage_id to analyze specific pipeline stages
- Combine with filter_id for custom segments
- Results show counts and values by status
Common use cases:
- Overall statistics: {} (no parameters)
- User performance: { "user_id": 123 }
- Stage analysis: { "stage_id": 5 }
- Open deals summary: { "status": "open" }
- Custom filter summary: { "filter_id": 10 }
输入参数statususer_idstage_idfilter_id
deals_get_archived_summary
Get archived deals statistics and summary.
Returns aggregated statistics about archived deals, including counts by status, total values, and conversion rates.
Workflow tips:
- Useful for historical analysis and reporting
- Filter by user_id to see specific user's archived performance
- Use stage_id to analyze archived deals from specific stages
- Combine with filter_id for custom segments
- Results show counts and values by status
Common use cases:
- Overall archived statistics: {} (no parameters)
- User archived performance: { "user_id": 123 }
- Stage archived analysis: { "stage_id": 5 }
- Archived open deals summary: { "status": "open" }
- Custom filter archived summary: { "filter_id": 10 }
输入参数statususer_idstage_idfilter_id
Add a follower to a deal.
Followers receive notifications about deal updates and can track the deal's progress.
Workflow tips:
- Use users/list to get user IDs
- User must exist in the Pipedrive account
- Follower receives notifications for deal changes
- Cannot add same follower twice
Common use cases:
- Add team member: { "id": 123, "user_id": 456 }
- Add manager for oversight: { "id": 789, "user_id": 10 }
输入参数id必填user_id必填
Remove a follower from a deal.
Stops a user from receiving notifications about this deal.
Workflow tips:
- Use deals/list_followers to get follower IDs first
- Follower ID is different from user ID
- Cannot remove the deal owner
Common use cases:
- Remove follower: { "id": 123, "follower_id": 456 }
- Workflow: list followers, then remove specific one
输入参数id必填follower_id必填
List all followers of a deal.
Returns list of users following this deal and receiving notifications about it.
Workflow tips:
- Shows user details for each follower
- Includes follower ID needed for removal
- Deal owner is automatically a follower
- Cached for 5 minutes
Common use cases:
- View followers: { "id": 123 }
- Before removing: list to get follower_id
输入参数id必填
Add a participant (person) to a deal.
Participants are persons who are involved in the deal beyond the primary contact.
Workflow tips:
- Use persons/search to find person IDs
- Person must exist in Pipedrive
- Deal can have multiple participants
- Different from the main person_id on the deal
Common use cases:
- Add decision maker: { "id": 123, "person_id": 456 }
- Add influencer: { "id": 789, "person_id": 101 }
- Add stakeholder: { "id": 234, "person_id": 567 }
输入参数id必填person_id必填
Remove a participant from a deal.
Removes a person from the deal's participants list.
Workflow tips:
- Use deals/list_participants to get participant IDs first
- deal_participant_id is NOT the same as person_id
- Cannot remove the primary person (person_id)
Common use cases:
- Remove participant: { "id": 123, "deal_participant_id": 456 }
- Workflow: list participants, then remove by deal_participant_id
输入参数id必填deal_participant_id必填
List all participants of a deal.
Returns all persons participating in this deal.
Workflow tips:
- Shows person details for each participant
- Includes deal_participant_id needed for removal
- Paginated for deals with many participants
- Cached for 5 minutes
Common use cases:
- View all participants: { "id": 123 }
- Paginated list: { "id": 123, "start": 0, "limit": 50 }
- Before removing: list to get deal_participant_id
输入参数id必填limitstart
Add a product to a deal.
Attaches a product to the deal with specific pricing, quantity, and discount.
Workflow tips:
- Use products/search or products/list to find product IDs
- Product must exist in Pipedrive catalog
- Specify item_price to override default product price
- Quantity defaults to 1 if not specified
- Discount is percentage (0-100)
- Duration is for subscription products
Common use cases:
- Add basic product: { "id": 123, "product_id": 456 }
- With custom price: { "id": 123, "product_id": 456, "item_price": 99.99, "quantity": 2 }
- With discount: { "id": 123, "product_id": 456, "quantity": 10, "discount_percentage": 15 }
- Subscription: { "id": 123, "product_id": 456, "duration": 12, "comments": "Annual subscription" }
输入参数id必填commentsdurationquantityitem_priceproduct_id必填enabled_flagdiscount_percentageproduct_variation_id
Update a product attached to a deal.
Modifies the price, quantity, discount, or other details of a product already attached to a deal.
Workflow tips:
- Use deals/list_products to get product_attachment_id
- product_attachment_id is NOT the same as product_id
- Only specify fields you want to update
- Cannot change the actual product, only its parameters
Common use cases:
- Update quantity: { "id": 123, "product_attachment_id": 789, "quantity": 5 }
- Change price: { "id": 123, "product_attachment_id": 789, "item_price": 149.99 }
- Add discount: { "id": 123, "product_attachment_id": 789, "discount_percentage": 20 }
- Update multiple: { "id": 123, "product_attachment_id": 789, "quantity": 3, "discount_percentage": 10, "comments": "Updated terms" }
输入参数id必填commentsdurationquantityitem_priceenabled_flagdiscount_percentageproduct_attachment_id必填
Remove a product from a deal.
Detaches a product from the deal.
Workflow tips:
- Use deals/list_products to get product_attachment_id
- product_attachment_id is NOT the same as product_id
- Updates deal value automatically
Common use cases:
- Remove product: { "id": 123, "product_attachment_id": 789 }
- Workflow: list products, then remove by product_attachment_id
输入参数id必填product_attachment_id必填
List all products attached to a deal.
Returns all products associated with this deal, including pricing and quantity details.
Workflow tips:
- Shows product_attachment_id needed for updates/removal
- Set include_product_data=1 to get full product details
- Includes calculated totals with discounts
- Cached for 5 minutes
Common use cases:
- List products: { "id": 123 }
- With full details: { "id": 123, "include_product_data": 1 }
- Paginated: { "id": 123, "start": 0, "limit": 50 }
输入参数id必填limitstartinclude_product_data
Attach a file to a deal.
Uploads and attaches a file to the deal. Useful for contracts, proposals, presentations, etc.
Workflow tips:
- Provide absolute file path on the local system
- File will be uploaded to Pipedrive
- Supports common formats: PDF, DOC, XLS, images, etc.
- File becomes part of the deal's audit trail
Common use cases:
- Attach contract: { "id": 123, "file_path": "/path/to/contract.pdf" }
- Attach proposal: { "id": 456, "file_path": "/path/to/proposal.docx" }
- Attach image: { "id": 789, "file_path": "/path/to/diagram.png" }
输入参数id必填file_path必填
List all files attached to a deal.
Returns all files associated with this deal.
Workflow tips:
- Shows file names, sizes, and upload dates
- Includes download URLs for each file
- Paginated for deals with many files
- Cached for 5 minutes
Common use cases:
- List all files: { "id": 123 }
- Paginated list: { "id": 123, "start": 0, "limit": 50 }
- Sorted by date: { "id": 123, "sort": "add_time" }
输入参数id必填sortlimitstart
Get deals timeline grouped by intervals.
Returns open and won deals grouped by a defined interval of time set in a date-type field.
Workflow tips:
- Useful for revenue forecasting and trend analysis
- Group deals by day, week, month, or quarter
- Use field_key to specify which date field to use (e.g., add_time, update_time, close_time, expected_close_date)
- Filter by user, pipeline, or custom filter
- Set exclude_deals to true to get only summary data
- Use totals_convert_currency for multi-currency reporting
Common use cases:
- Monthly revenue forecast: { "start_date": "2024-01-01", "interval": "month", "amount": 12, "field_key": "expected_close_date" }
- Weekly deal creation trends: { "start_date": "2024-01-01", "interval": "week", "amount": 8, "field_key": "add_time" }
- Quarterly sales pipeline: { "start_date": "2024-01-01", "interval": "quarter", "amount": 4, "field_key": "close_time", "pipeline_id": 1 }
- User performance: { "start_date": "2024-01-01", "interval": "month", "amount": 6, "field_key": "won_time", "user_id": 123 }
输入参数amount必填user_idinterval必填field_key必填filter_idstart_date必填pipeline_idexclude_dealstotals_convert_currency
deals_get_archived_deals_timeline
Get archived deals timeline grouped by intervals.
Returns archived deals grouped by a defined interval of time set in a date-type field.
Workflow tips:
- Analyze historical deal patterns
- Same parameters as deals/get_deals_timeline
- Useful for understanding past performance trends
- Can help identify seasonal patterns
Common use cases:
- Historical analysis: { "start_date": "2023-01-01", "interval": "month", "amount": 12, "field_key": "close_time" }
- Archived deals by quarter: { "start_date": "2023-01-01", "interval": "quarter", "amount": 4, "field_key": "archive_time" }
输入参数amount必填user_idinterval必填field_key必填filter_idstart_date必填pipeline_idexclude_dealstotals_convert_currency
List all activities associated with a deal.
Returns all activities linked to a specific deal, including calls, meetings, tasks, emails, and deadlines.
Workflow tips:
- Filter by done status to see completed or pending activities
- Use start and limit for pagination
- Exclude specific activity IDs if needed
- Cached for 5 minutes for better performance
- Activities are sorted by due date
Common use cases:
- List all activities: { "id": 123 }
- List pending activities: { "id": 123, "done": "0" }
- List completed activities: { "id": 123, "done": "1" }
- Paginated results: { "id": 123, "start": 0, "limit": 50 }
- Exclude certain activities: { "id": 123, "exclude": "1,2,3" }
输入参数id必填donelimitstartexclude
List updates about deal field values (changelog).
Returns the complete changelog of a deal, showing all field value changes over time.
Workflow tips:
- See who changed what and when
- Useful for audit trails and compliance
- Shows old and new values for each field
- Includes timestamp and user information
- Cached for 5 minutes
Common use cases:
- View full changelog: { "id": 123 }
- Audit field changes for compliance
- Track who updated deal value or stage
- Understand deal modification history
输入参数id必填
List updates about a deal (flow).
Returns a chronological list of all updates and activities related to a deal, including field changes, notes, emails, and other events.
Workflow tips:
- Shows complete activity feed for a deal
- Includes field updates, notes, emails, and activities
- Chronologically ordered
- More comprehensive than changelog
- Cached for 5 minutes
Common use cases:
- View deal activity feed: { "id": 123 }
- See all interactions and changes
- Track deal progression timeline
- Review communication history
输入参数id必填
deals_list_participant_updates
List updates about participants of a deal.
Returns the changelog of participants added to or removed from a deal.
Workflow tips:
- Track when participants were added/removed
- See who made participant changes
- Useful for team collaboration tracking
- Shows participant modification history
- Cached for 5 minutes
Common use cases:
- View participant history: { "id": 123 }
- Track team involvement over time
- Audit participant changes
- Understand collaboration patterns
输入参数id必填
List mail messages associated with a deal.
Returns all email messages linked to a specific deal, including sent and received emails.
Workflow tips:
- View email communication history for a deal
- Includes both sent and received messages
- Use pagination for deals with many emails
- Emails are sorted by date (newest first)
- Cached for 5 minutes
- Useful for tracking client communication
Common use cases:
- List all emails: { "id": 123 }
- Paginated results: { "id": 123, "start": 0, "limit": 50 }
- Review email thread for a deal
- Track communication history with client
输入参数id必填limitstart
Merge two deals together.
Merges one deal into another, combining their data. The source deal will be deleted and its data will be merged into the target deal.
Workflow tips:
- The deal specified in 'id' will be DELETED (source)
- The deal specified in 'merge_with_id' will be KEPT (target)
- All activities, notes, and followers will be transferred to the target deal
- Use deals/get to review both deals before merging
- This operation cannot be undone
- Deal products, files, and participants are merged
- Useful for cleaning up duplicates
Common use cases:
- Merge duplicate deals: { "id": 123, "merge_with_id": 456 }
- Consolidate related deals: { "id": 789, "merge_with_id": 456 }
- Clean up data after finding duplicates
Warning: This operation is irreversible. The source deal (id) will be permanently deleted.
输入参数id必填merge_with_id必填
deals_list_permitted_users
List permitted users for a deal.
Returns the list of users who have access to view and edit a specific deal based on its visibility settings.
Workflow tips:
- Shows which users can access the deal
- Depends on deal's visibility settings (private, shared, etc.)
- Includes user details and permission levels
- Useful for access control auditing
- Cached for 5 minutes
Common use cases:
- Check deal access: { "id": 123 }
- Audit who can see a sensitive deal
- Verify team member access
- Review sharing permissions
输入参数id必填
List all persons associated with a deal.
Returns all persons (contacts) linked to a specific deal, including the primary contact and any participants.
Workflow tips:
- Shows both primary contact and participants
- Includes full person details (name, email, phone, etc.)
- Use pagination for deals with many contacts
- Cached for 5 minutes
- Different from participants (participants are just person references)
Common use cases:
- List all contacts: { "id": 123 }
- Paginated results: { "id": 123, "start": 0, "limit": 50 }
- Get contact information for outreach
- Review all stakeholders in a deal
- Export contact list for communication
输入参数id必填limitstart
Mark a deal as won.
Updates the deal status to "won" and moves it to the appropriate won stage in the pipeline.
Workflow tips:
- Automatically moves deal to won stage
- Updates deal close date to current date
- Triggers won deal notifications and automations
- More convenient than using deals/update with status field
- Use deals/get first to verify the deal details
Common use cases:
- Mark deal as won: { "id": 123 }
- Close successful deals quickly
- Trigger win-based workflows
- Update sales metrics
输入参数id必填
Mark a deal as lost.
Updates the deal status to "lost" and optionally records the reason why the deal was lost.
Workflow tips:
- Automatically moves deal to lost stage
- Lost reason helps track why deals fail
- Triggers lost deal notifications and automations
- Use for pipeline health and loss analysis
- More convenient than using deals/update with status field
- Lost reason is important for improving sales process
Common use cases:
- Mark deal as lost: { "id": 123 }
- Mark with reason: { "id": 123, "lost_reason": "Competitor pricing" }
- Common lost reasons: "No budget", "Chose competitor", "Timing not right", "No response"
- Track loss patterns for improvement
输入参数id必填lost_reason
Delete multiple deals in bulk.
Marks multiple deals as deleted. After 30 days, the deals will be permanently deleted.
Workflow tips:
- Provide an array of deal IDs to delete
- Deals are soft-deleted first (marked as deleted)
- After 30 days, deals are permanently removed
- Use with caution - this affects multiple deals at once
- Consider using deals/list or deals/search to get IDs first
Common use cases:
- Clean up test deals: { "ids": [123, 456, 789] }
- Remove duplicate deals: { "ids": [111, 222] }
- Bulk cleanup after data import
Warning: This operation marks deals as deleted. They can be recovered within 30 days.
输入参数ids必填
Convert a deal into a lead (asynchronous, two-step flow).
Step 1 (this tool): POST starts the conversion. Returns { id: conversion_id, status: 'queued' | 'running' }.
Step 2 (separate tool): poll deals_convert_status with the deal id AND the conversion_id
returned here, every few seconds, until status === 'completed'. The completed response
includes the resulting lead_id.
Related entities (notes, files, emails, activities) are transferred to the new lead.
输入参数id必填
Check the status of a deal-to-lead conversion job.
Use the conversion_id returned by deals_convert_to_lead. Possible statuses: queued,
running, completed, failed. When completed, the response includes the resulting lead_id.
输入参数id必填conversion_id必填
List installments attached to one or more deals (API v2).
Installments are scheduled, fixed payments on a deal (the modern replacement for the
legacy subscriptions feature). Pass the deal IDs you want installments for.
Common use cases:
- Installments of one deal: { "deal_ids": [123] }
- Installments across several deals: { "deal_ids": [123, 456, 789] }
输入参数limitcursordeal_ids必填
Add an installment to a deal (API v2).
Required: description (name), amount (positive, non-zero) and billing_date (YYYY-MM-DD).
Common use cases:
- { "id": 123, "description": "Deposit", "amount": 500, "billing_date": "2026-01-15" }
输入参数id必填amount必填description必填billing_date必填
Update an existing installment on a deal (API v2).
Provide the deal id, the installment_id, and any of description / amount / billing_date.
输入参数id必填amountdescriptionbilling_dateinstallment_id必填
Delete an installment from a deal (API v2).
输入参数id必填installment_id必填
List all persons with optional filtering and pagination.
Supports filtering by:
- user_id: Filter by owner
- org_id: Filter by organization
- first_char: Filter by first character of name (single letter)
- filter_id: Apply a saved filter
Returns paginated results. Use start/limit for manual pagination.
输入参数sortlimitstartorg_iduser_idfilter_idfirst_char
Automatically fetch ALL persons using pagination.
This tool handles pagination automatically and returns all persons matching the filters.
Use this when you need the complete list without managing pagination manually.
Warning: This can return a large dataset if you have many persons.
Supports the same filters as persons_list:
- user_id: Filter by owner
- org_id: Filter by organization
- first_char: Filter by first character of name
- filter_id: Apply a saved filter
输入参数sortorg_iduser_idfilter_idfirst_char
Get all persons using the collection endpoint.
This endpoint provides an alternative way to fetch persons with different capabilities:
- Cursor-based pagination (more efficient for large datasets)
- Date range filtering (since/until)
- Optimized for data synchronization
- Better performance for large-scale operations
Key differences from persons_list:
- Uses cursor pagination instead of offset/limit
- Supports date-based filtering for incremental sync
- More efficient for fetching large volumes
- Better for ETL and data integration scenarios
Parameters:
- cursor: Pagination cursor from previous response
- limit: Items per page (default: 100, max: 500)
- since: Start date (YYYY-MM-DD) - get persons modified since this date
- until: End date (YYYY-MM-DD) - get persons modified until this date
- owner_id: Filter by owner user ID
- first_char: Filter by first character of name
Use cases:
- Initial data synchronization
- Incremental updates (using since parameter)
- Large-scale data exports
- Integration with external systems
- ETL pipelines
- Backup and archival
The cursor-based approach is more reliable than offset pagination for
datasets that change frequently, as it maintains consistency even when
records are added or deleted during pagination.
输入参数limitsinceuntilcursorowner_idfirst_char
Create a new person in Pipedrive.
Required fields:
- name: Full name of the person
Optional fields:
- owner_id: User who will own this person
- org_id: Organization this person belongs to
- email: Array of email addresses with format: [{"value": "[email protected]", "primary": true, "label": "work"}]
- phone: Array of phone numbers with format: [{"value": "+1234567890", "primary": true, "label": "mobile"}]
- job_title: Job title / function of the person (max 255 characters)
- visible_to: Visibility level (1=owner only, 3=entire company, 5=owner's followers, 7=visibility group)
- marketing_status: Marketing consent status (no_consent, unsubscribed, subscribed, archived)
- add_time: Optional creation time in YYYY-MM-DD HH:MM:SS format
Example email/phone arrays:
{
"email": [
{"value": "[email protected]", "primary": true, "label": "work"},
{"value": "[email protected]", "primary": false, "label": "home"}
],
"phone": [
{"value": "+1234567890", "primary": true, "label": "mobile"}
]
}
Custom fields:
- Pass display names: { "custom_fields": { "Region": "EU", "Tier": "Gold" } }
- Or hash keys directly: { "custom_fields": { "abc123...": "raw value" } }
- For enum/set fields, pass option labels (not ids).
输入参数name必填emailphoneorg_idadd_timeowner_idjob_titlevisible_tocustom_fieldsmarketing_status
Get detailed information about a specific person by ID.
Returns all person data including:
- Basic info (name, owner, organization)
- Contact details (emails, phones)
- Visibility and marketing status
- Activity counts (deals, activities, files, etc.)
- Timeline info (next activity, last activity)
- Custom fields
输入参数id必填
Update an existing person's information.
Required fields:
- id: Person ID to update
Optional fields (only provide fields you want to change):
- name: Full name
- owner_id: User who will own this person
- org_id: Organization this person belongs to
- email: Array of email addresses with format: [{"value": "[email protected]", "primary": true, "label": "work"}]
- phone: Array of phone numbers with format: [{"value": "+1234567890", "primary": true, "label": "mobile"}]
- job_title: Job title / function of the person (max 255 characters)
- visible_to: Visibility level (1=owner only, 3=entire company, 5=owner's followers, 7=visibility group)
- marketing_status: Marketing consent status (no_consent, unsubscribed, subscribed, archived)
Note: When updating email/phone arrays, provide the complete array (it replaces the existing one).
Custom fields:
- Pass display names: { "custom_fields": { "Region": "EU", "Tier": "Gold" } }
- Or hash keys directly: { "custom_fields": { "abc123...": "raw value" } }
- For enum/set fields, pass option labels (not ids).
输入参数id必填nameemailphoneorg_idowner_idjob_titlevisible_tocustom_fieldsmarketing_status
Delete a person from Pipedrive.
Warning: This action cannot be undone. The person will be permanently deleted.
Note: Deleting a person does not automatically delete associated:
- Deals (they will remain but without the person link)
- Activities (they will remain but without the person link)
- Notes (they will remain but without the person link)
输入参数id必填
Delete multiple persons in bulk.
Efficiently deletes multiple person records in a single operation. This is useful for:
- Data cleanup and maintenance
- Removing duplicate records
- Batch operations after data imports
- CRM hygiene improvements
- GDPR and data retention compliance
WARNING: This action is irreversible. All specified persons will be permanently deleted,
including:
- Person data and custom fields
- Associated notes (if configured)
- Follow relationships
- Activity history (may be preserved depending on settings)
Best practices:
1. Always verify the IDs before deletion
2. Consider exporting data as backup
3. Check if persons have active deals
4. Review organization associations
5. Ensure you have proper permissions
The 'ids' parameter should be a comma-separated string of person IDs.
Example: "123,456,789" will delete persons with IDs 123, 456, and 789.
Rate limits may apply for very large deletions. Consider batching if deleting
hundreds or thousands of records.
输入参数ids必填
Search for persons by name, email, phone, or notes.
The search uses Pipedrive's intelligent search that:
- Searches across multiple fields (name, email, phone, notes, custom fields)
- Supports fuzzy matching by default
- Returns ranked results
Search options:
- term: Search term (minimum 2 characters)
- fields: Specific fields to search in (default: all fields)
- exact_match: Use exact matching instead of fuzzy search
- org_id: Filter results by organization
- include_fields: Additional fields to include in response
The search is case-insensitive and supports partial matches.
输入参数term必填limitstartfieldsorg_idexact_matchinclude_fields
List all deals associated with a specific person.
Returns all deals where the person is linked, including:
- Deal details (title, value, stage, status)
- Timeline information
- Owner information
- Organization information
Filters:
- status: Filter by deal status (open, won, lost, deleted, all_not_deleted)
- sort: Sort by specific field
Supports pagination for large result sets.
输入参数id必填sortlimitstartstatus
List all activities associated with a specific person.
Returns all activities (calls, meetings, tasks, etc.) linked to the person, including:
- Activity details (type, subject, description)
- Due date and time
- Completion status
- Owner/assignee information
- Related deal/organization
Filters:
- done: Filter by completion status (true=completed, false=pending)
Supports pagination for large result sets.
输入参数id必填donelimitstart
List all files attached to a specific person.
Returns all files associated with the person, including:
- File metadata (name, type, size)
- Upload information (uploader, timestamps)
- File URL for download
- Associated deal/organization if applicable
Supports:
- Pagination for large file lists
- Sorting by various fields
This includes files uploaded directly to the person and files from related deals/activities.
输入参数id必填sortlimitstart
List products associated with a person.
Returns all products that have been sold to or associated with this person through deals.
This provides an overview of:
- All products the person has purchased
- Products in active deals
- Historical product associations
- Product preferences and patterns
Each entry includes:
- Product details (name, code, price)
- Deal information
- Quantities and pricing
- Dates and status
- Custom product fields
This is useful for:
- Understanding customer purchase history
- Cross-selling and upselling opportunities
- Product preferences analysis
- Revenue tracking per person
- Customer success and account management
- Renewal and subscription management
The data is aggregated from all deals associated with the person.
输入参数id必填limitstart
persons_list_mail_messages
List mail messages associated with a person.
Returns all email messages linked to this person, including:
- Emails sent to the person
- Emails received from the person
- Email threads and conversations
- Message subjects and snippets
- Send/receive timestamps
- Associated deals or organizations
This is useful for:
- Reviewing email communication history
- Understanding customer interactions
- Preparing for meetings or calls
- Tracking email engagement
- CRM integration and context
Supports pagination for handling large email histories.
输入参数id必填limitstart
Add a follower to a person.
Followers are users who will receive notifications about updates to this person.
This is useful for team collaboration and keeping stakeholders informed.
When a user follows a person, they will be notified about:
- Changes to person details
- New activities
- New deals
- New notes
- Other updates
Note: Users can only be added as followers if they have access to the person.
输入参数id必填user_id必填
List all followers of a specific person.
Returns a list of users who are following this person and will receive
notifications about updates.
Each follower entry includes:
- User ID
- User name
- User email
- When they started following
This is useful for:
- Checking who is tracking a person
- Auditing team access
- Managing notifications
输入参数id必填
Delete a follower from a person.
Removes a user from the list of followers for this person. After removal:
- The user will no longer receive notifications about person updates
- They will still have access to the person if permissions allow
- This only affects notification settings, not access rights
This is useful for:
- Managing notification preferences
- Adjusting team involvement
- Reducing notification noise
- Changing account ownership responsibilities
Note: The follower_id is the user ID of the follower to remove.
输入参数id必填follower_id必填
persons_list_field_updates
List updates about person field values (changelog).
Returns a chronological list of changes made to person fields. This is useful for:
- Auditing field changes
- Tracking data modifications
- Understanding update history
- Compliance and reporting
The changelog shows:
- Which fields were changed
- Old and new values
- Who made the change
- When the change occurred
Uses cursor-based pagination for efficient navigation through large change histories.
输入参数id必填limitcursor
List updates about a person (activity stream).
Returns a comprehensive timeline of all activities and changes related to a person:
- Field changes and updates
- Activities (calls, meetings, emails)
- Notes added
- Deals created or updated
- Files attached
- Followers added
- Other related events
This provides a complete audit trail and activity history for the person.
Parameters:
- all_changes: Set to show all field changes (not just recent)
- items: Filter which types of items to include in the stream
Useful for:
- Getting a complete overview of interactions
- Understanding person engagement history
- Tracking relationship development
- Customer success and account management
输入参数id必填itemslimitstartall_changes
Merge two persons into one.
Combines two person records, moving all related data to the primary person:
- All deals are transferred
- All activities are transferred
- All notes are transferred
- All files are transferred
- Email and phone numbers are combined
- Custom field data is merged
- The secondary person is deleted
WARNING: This action is irreversible. The person specified in merge_with_id will be deleted permanently.
Best practices:
1. Review both persons thoroughly before merging
2. Ensure you're merging duplicates, not different people
3. The person with ID 'id' will be kept (primary)
4. The person with 'merge_with_id' will be deleted (secondary)
5. Use persons_get to verify both records first
Use cases:
- Removing duplicate persons
- Consolidating split records
- Data cleanup and maintenance
- CRM hygiene improvements
输入参数id必填merge_with_id必填
persons_list_permitted_users
List users permitted to access a person.
Returns a list of all users who have permission to view and/or edit this person record.
This is determined by:
- The person's visibility settings
- User roles and permissions
- Team assignments
- Sharing rules
Each entry includes:
- User ID
- User name and email
- Access level (view/edit)
- Permission source
This is useful for:
- Security auditing
- Access management
- Understanding data visibility
- Compliance and governance
- Team coordination
Note: Results depend on the visibility settings of the person (e.g., owner only,
owner's team, everyone, etc.).
输入参数id必填
Add or update a person's profile picture.
Uploads an image file to set as the person's profile picture. The image will be:
- Displayed in person records
- Shown in lists and search results
- Visible to users with access to the person
- Used across the Pipedrive interface
Image requirements:
- Format: JPEG, PNG, GIF
- Recommended size: 512x512 pixels
- Maximum file size: Typically 5-10 MB (check Pipedrive limits)
Cropping parameters (optional):
- Use crop_x, crop_y to set the top-left corner of the crop area
- Use crop_width, crop_height to define the crop dimensions
- All crop values are in pixels
- If not provided, the full image is used
Workflow:
1. Read the image file as a Buffer
2. Provide the filename (with extension)
3. Optionally specify crop parameters
4. The tool uploads and sets the picture
Use cases:
- Adding profile photos for contacts
- Updating person images
- Visual identification in CRM
- Personalization and branding
输入参数id必填file必填crop_xcrop_yfilename必填crop_widthcrop_height
Delete a person's profile picture.
Removes the profile picture from the person record. The person will revert to:
- Default avatar
- Or initials-based placeholder
- Depending on Pipedrive settings
This is useful for:
- Updating outdated photos
- Privacy compliance (GDPR, etc.)
- Data cleanup
- Resetting profile images
Note: This does not delete the image file from Pipedrive storage, it only removes
the association with the person.
输入参数id必填
List organizations with pagination support. Returns paginated list of organizations with filtering options.
输入参数sortlimitstartuser_idfilter_idfirst_char
organizations_list_all_auto
Automatically fetch all organizations across all pages. Use this when you need complete data without manual pagination.
输入参数user_idfilter_idmax_itemsfirst_char
Create a new organization. Name is required. Supports address fields and custom fields.
Custom fields:
- Pass display names: { "custom_fields": { "Industry": "Tech", "Tier": "Gold" } }
- Or hash keys directly: { "custom_fields": { "abc123...": "raw value" } }
- For enum/set fields, pass option labels (not ids).
输入参数name必填labeladdressadd_timeowner_idvisible_toaddress_routecustom_fieldsaddress_countryaddress_localityaddress_subpremiseaddress_postal_code另有 5 个
Get details of a specific organization by ID.
输入参数id必填
Update an existing organization. Only provided fields will be updated.
Custom fields:
- Pass display names: { "custom_fields": { "Industry": "Tech", "Tier": "Gold" } }
- Or hash keys directly: { "custom_fields": { "abc123...": "raw value" } }
- For enum/set fields, pass option labels (not ids).
输入参数id必填namelabeladdressowner_idvisible_toaddress_routecustom_fieldsaddress_countryaddress_localityaddress_subpremiseaddress_postal_code另有 5 个
Delete an organization by ID.
输入参数id必填
Search organizations by name or other fields. Returns matching organizations.
输入参数term必填limitstartfieldsexact_match
organizations_list_persons
List all persons associated with a specific organization.
输入参数id必填limitstart
List all deals associated with a specific organization.
输入参数id必填limitstartstatus
organizations_list_activities
List all activities associated with a specific organization.
输入参数id必填donelimitstart
List all files attached to a specific organization.
输入参数id必填sortlimitstart
organizations_add_follower
Add a follower to an organization.
输入参数id必填user_id必填
organizations_list_followers
List all followers of a specific organization.
Returns the users that are following this organization and will receive
notifications about updates.
Each follower entry includes:
- User ID
- User name
- User email
- When they started following
This is useful for:
- Checking who is tracking an organization
- Auditing team access
- Managing notifications
输入参数id必填
organizations_bulk_delete
Delete multiple organizations in bulk.
Efficiently deletes multiple organization records in a single operation. This is useful for:
- Data cleanup and maintenance
- Removing duplicate records
- Batch operations after data imports
- CRM hygiene improvements
- GDPR and data retention compliance
WARNING: This action is irreversible. All specified organizations will be permanently deleted,
including:
- Organization data and custom fields
- Associated notes (if configured)
- Follow relationships
- Activity history (may be preserved depending on settings)
Best practices:
1. Always verify the IDs before deletion
2. Consider exporting data as backup
3. Check if organizations have active deals
4. Review person associations
5. Ensure you have proper permissions
The 'ids' parameter should be a comma-separated string of organization IDs.
Example: "123,456,789" will delete organizations with IDs 123, 456, and 789.
Rate limits may apply for very large deletions. Consider batching if deleting
hundreds or thousands of records.
输入参数ids必填
organizations_get_collection
Get all organizations using the collection endpoint.
This endpoint provides an alternative way to fetch organizations with different capabilities:
- Cursor-based pagination (more efficient for large datasets)
- Date range filtering (since/until)
- Optimized for data synchronization
- Better performance for large-scale operations
Key differences from organizations/list:
- Uses cursor pagination instead of offset/limit
- Supports date-based filtering for incremental sync
- More efficient for fetching large volumes
- Better for ETL and data integration scenarios
Parameters:
- cursor: Pagination cursor from previous response
- limit: Items per page (default: 100, max: 500)
- since: Start date (YYYY-MM-DD) - get organizations modified since this date
- until: End date (YYYY-MM-DD) - get organizations modified until this date
- owner_id: Filter by owner user ID
- first_char: Filter by first character of name
Use cases:
- Initial data synchronization
- Incremental updates (using since parameter)
- Large-scale data exports
- Integration with external systems
- ETL pipelines
- Backup and archival
The cursor-based approach is more reliable than offset pagination for
datasets that change frequently, as it maintains consistency even when
records are added or deleted during pagination.
输入参数limitsinceuntilcursorowner_idfirst_char
organizations_list_field_updates
List updates about organization field values (changelog).
Returns a chronological list of changes made to organization fields. This is useful for:
- Auditing field changes
- Tracking data modifications
- Understanding update history
- Compliance and reporting
The changelog shows:
- Which fields were changed
- Old and new values
- Who made the change
- When the change occurred
Uses cursor-based pagination for efficient navigation through large change histories.
输入参数id必填limitcursor
organizations_list_updates
List updates about an organization (activity stream).
Returns a comprehensive timeline of all activities and changes related to an organization:
- Field changes and updates
- Activities (calls, meetings, emails)
- Notes added
- Deals created or updated
- Files attached
- Followers added
- Other related events
This provides a complete audit trail and activity history for the organization.
Parameters:
- all_changes: Set to show all field changes (not just recent)
- items: Filter which types of items to include in the stream
Useful for:
- Getting a complete overview of interactions
- Understanding organization engagement history
- Tracking relationship development
- Account management and customer success
输入参数id必填itemslimitstartall_changes
organizations_delete_follower
Delete a follower from an organization.
Removes a user from the list of followers for this organization. After removal:
- The user will no longer receive notifications about organization updates
- They will still have access to the organization if permissions allow
- This only affects notification settings, not access rights
This is useful for:
- Managing notification preferences
- Adjusting team involvement
- Reducing notification noise
- Changing account ownership responsibilities
Note: The follower_id is the user ID of the follower to remove.
输入参数id必填follower_id必填
organizations_list_mail_messages
List mail messages associated with an organization.
Returns all email messages linked to this organization, including:
- Emails sent to the organization
- Emails received from the organization
- Email threads and conversations
- Message subjects and snippets
- Send/receive timestamps
- Associated deals or persons
This is useful for:
- Reviewing email communication history
- Understanding customer interactions
- Preparing for meetings or calls
- Tracking email engagement
- CRM integration and context
Supports pagination for handling large email histories.
输入参数id必填limitstart
Merge two organizations into one.
Combines two organization records, moving all related data to the primary organization:
- All deals are transferred
- All activities are transferred
- All notes are transferred
- All files are transferred
- All persons are transferred
- Custom field data is merged
- The secondary organization is deleted
WARNING: This action is irreversible. The organization specified in merge_with_id will be deleted permanently.
Best practices:
1. Review both organizations thoroughly before merging
2. Ensure you're merging duplicates, not different organizations
3. The organization with ID 'id' will be kept (primary)
4. The organization with 'merge_with_id' will be deleted (secondary)
5. Use organizations/get to verify both records first
Use cases:
- Removing duplicate organizations
- Consolidating split records
- Data cleanup and maintenance
- CRM hygiene improvements
输入参数id必填merge_with_id必填
organizations_list_permitted_users
List users permitted to access an organization.
Returns a list of all users who have permission to view and/or edit this organization record.
This is determined by:
- The organization's visibility settings
- User roles and permissions
- Team assignments
- Sharing rules
Each entry includes:
- User ID
- User name and email
- Access level (view/edit)
- Permission source
This is useful for:
- Security auditing
- Access management
- Understanding data visibility
- Compliance and governance
- Team coordination
Note: Results depend on the visibility settings of the organization (e.g., owner only,
owner's team, everyone, etc.).
输入参数id必填
List activities with pagination and filtering options. Can filter by user, type, done status, and date range.
输入参数donetypelimitstartuser_idend_datestart_date
Automatically fetch all activities across all pages. Use this when you need complete data without manual pagination.
输入参数donetypeuser_idend_datemax_itemsstart_date
Create a new activity. Subject, type, and due_date are required. Can link to deals, persons, organizations, projects, or leads.
输入参数donenotetype必填org_iddeal_idlead_idsubject必填user_iddue_date必填due_timedurationlocation另有 7 个
Get details of a specific activity by ID.
输入参数id必填
Update an existing activity. Only provided fields will be updated.
输入参数id必填donenotetypeorg_iddeal_idlead_idsubjectuser_iddue_datedue_timeduration另有 8 个
Delete an activity by ID.
输入参数id必填
Delete multiple activities in a single request.
This endpoint allows you to delete up to 100 activities at once by providing
an array of activity IDs.
Workflow tips:
- Maximum 100 activities per request
- All activities must exist and be accessible to the user
- Deletion is permanent and cannot be undone
- Failed deletions for individual activities won't stop others from being deleted
Common use cases:
- Clean up completed activities in bulk
- Remove outdated or duplicate activities
- Archive old activities by deleting them
Example:
{ "ids": [123, 456, 789] }
输入参数ids必填
Mark an activity as done. This is a convenience tool that updates the activity with done: true.
输入参数id必填
List all activities associated with a specific deal.
输入参数donelimitstartdeal_id必填
Upload a file to Pipedrive and attach it to a deal, person, organization, activity, or product.
Uploads a file from the specified file path and associates it with at least one entity.
Workflow tips:
- Provide the full file path to upload
- At least one entity ID must be provided (deal_id, person_id, org_id, activity_id, or product_id)
- The file name will be extracted from the path automatically
- Supports all common file types (documents, images, videos, etc.)
- Maximum file size depends on your Pipedrive plan
Common use cases:
- Attach contract to deal: { "file_path": "/path/contract.pdf", "deal_id": 123 }
- Add profile photo to person: { "file_path": "/path/photo.jpg", "person_id": 456 }
- Upload document to organization: { "file_path": "/path/doc.docx", "org_id": 789 }
- Attach multiple entities: { "file_path": "/path/file.pdf", "deal_id": 123, "person_id": 456 }
输入参数org_iddeal_idlead_idfile_path必填person_idproduct_idactivity_id
List files with pagination and filtering options.
Returns a paginated list of files. Use filters to narrow results by associated entity (deal, person, organization, activity, product).
Workflow tips:
- Filter by entity to get files for specific deals, persons, organizations, etc.
- Use sort to order by add_time, update_time, file_name, or file_size
- Set include_deleted_files=true to see deleted files
- Use start/limit for pagination (default limit: 100, max: 500)
- Combine multiple filters to narrow results
Common use cases:
- List all files for a deal: { "deal_id": 123 }
- List all files for a person: { "person_id": 456 }
- List all files for an organization: { "org_id": 789 }
- List recent files sorted by upload time: { "sort": "add_time", "sort_by": "desc" }
输入参数sortlimitstartorg_iddeal_idsort_byperson_idproduct_idactivity_idinclude_deleted_files
Get detailed information about a specific file.
Returns file metadata including name, size, type, associated entities, upload date, and more.
Workflow tips:
- Use this to get file metadata before downloading
- Returns information about which entities (deals, persons, orgs) the file is attached to
- Includes file type, size, and MIME type
- Shows who uploaded the file and when
Common use cases:
- Get file details: { "id": 123 }
- Check file associations before modifying
- Verify file exists before downloading
输入参数id必填
Get download URL for a file.
Returns a temporary download URL that can be used to download the file content.
Workflow tips:
- Returns a URL that expires after a certain time
- Use the URL to download the actual file content
- The URL includes authentication, so no additional headers needed
- Best used immediately after retrieval
Common use cases:
- Get download link: { "id": 123 }
- Download file for processing or backup
- Share temporary access to a file
输入参数id必填
Update file metadata (name or description).
Updates a file's name or description. Does not modify the actual file content.
Workflow tips:
- Can update file name (without extension) or description
- Name must not exceed 255 characters
- Description limited to 1000 characters
- At least one field (name or description) should be provided
Common use cases:
- Rename file: { "id": 123, "name": "Updated Contract" }
- Add description: { "id": 123, "description": "Q4 2024 sales contract" }
- Update both: { "id": 123, "name": "Contract V2", "description": "Updated terms" }
输入参数id必填namedescription
Delete a file from Pipedrive.
Permanently removes a file and its associations with entities.
Workflow tips:
- Deleting a file removes it from all associated entities
- This action cannot be undone
- Consider using files_get first to verify the file
- Deleted files may still appear in lists if include_deleted_files=true
Common use cases:
- Remove file: { "id": 123 }
- Clean up old attachments
- Remove duplicate files
输入参数id必填
Link a remote file from Google Drive, Dropbox, OneDrive, Box, or SharePoint.
Creates a link to a file stored in external cloud storage and associates it with a Pipedrive entity.
Workflow tips:
- Supported platforms: googledrive, dropbox, onedrive, box, sharepoint
- Provide the remote file's ID from the cloud storage platform
- Specify which entity type and ID to link to
- Remote files appear alongside uploaded files in Pipedrive
Common use cases:
- Link Google Drive file to deal: { "item_type": "deal", "item_id": 123, "remote_id": "1a2b3c", "remote_location": "googledrive" }
- Link Dropbox file to person: { "item_type": "person", "item_id": 456, "remote_id": "xyz789", "remote_location": "dropbox" }
- Link OneDrive file to org: { "item_type": "organization", "item_id": 789, "remote_id": "abc123", "remote_location": "onedrive" }
输入参数item_id必填item_type必填remote_id必填remote_location必填
Search across all Pipedrive entities (deals, persons, organizations, products, leads, files).
Performs a universal search that can search across multiple item types simultaneously.
Workflow tips:
- Search term must be at least 2 characters (1 if exact_match is true)
- Specify item_types to limit search to specific entities
- Use exact_match=true for precise searches
- search_for_related_items=true includes up to 100 related items
- Results include result_score for relevance ranking
- Can search specific fields using the fields parameter
Common use cases:
- Search everything: { "term": "acme" }
- Search deals only: { "term": "contract", "item_types": ["deal"] }
- Search persons and orgs: { "term": "john", "item_types": ["person", "organization"] }
- Exact match search: { "term": "John Smith", "exact_match": true }
- Search specific fields: { "term": "[email protected]", "fields": "email,phone" }
输入参数term必填limitstartfieldsitem_typesexact_matchsearch_for_related_items
Search for items by a specific field value.
Searches for items by targeting a specific field (custom or standard fields).
Workflow tips:
- Specify field_type: dealField, personField, organizationField, or productField
- Provide field_key: the API key of the field to search
- Use exact_match=true for precise matches
- return_item_ids=true returns only IDs instead of full objects
- Useful for searching custom fields
Common use cases:
- Search deal by custom field: { "term": "ABC123", "field_type": "dealField", "field_key": "custom_id" }
- Search person by email: { "term": "[email protected]", "field_type": "personField", "field_key": "email" }
- Search org by domain: { "term": "acme.com", "field_type": "organizationField", "field_key": "domain" }
- Get IDs only: { "term": "value", "field_type": "dealField", "field_key": "field", "return_item_ids": true }
输入参数term必填limitstartfield_key必填field_type必填exact_matchreturn_item_ids
Search for deals with advanced filtering options.
Performs a deal-specific search with additional filtering by person, organization, and status.
Workflow tips:
- Search term must be at least 2 characters
- Filter by person_id, org_id to narrow results
- Filter by status: open, won, lost, all_not_deleted
- Specify fields to search: title, notes, custom fields
- Use include_fields to limit response data
- Results ordered by relevance
Common use cases:
- Search deals by title: { "term": "contract" }
- Search open deals: { "term": "acme", "status": "open" }
- Search deals for person: { "term": "proposal", "person_id": 123 }
- Search specific fields: { "term": "urgent", "fields": "title,notes" }
- Limit response data: { "term": "deal", "include_fields": "title,value,stage_id" }
输入参数term必填limitstartfieldsorg_idstatusperson_idexact_matchinclude_fields
Search for persons with advanced filtering options.
Performs a person-specific search with additional filtering by organization.
Workflow tips:
- Search term must be at least 2 characters
- Filter by org_id to find persons in specific organizations
- Specify fields to search: name, email, phone, custom fields
- Use include_fields to limit response data
- Use exact_match for precise searches
- Results ordered by relevance
Common use cases:
- Search by name: { "term": "john smith" }
- Search by email: { "term": "[email protected]", "fields": "email" }
- Search in organization: { "term": "smith", "org_id": 123 }
- Search phone numbers: { "term": "+1234567890", "fields": "phone" }
- Limit response: { "term": "john", "include_fields": "name,email,phone" }
输入参数term必填limitstartfieldsorg_idexact_matchinclude_fields
Search for organizations with advanced filtering options.
Performs an organization-specific search across all organization fields.
Workflow tips:
- Search term must be at least 2 characters
- Specify fields to search: name, address, custom fields
- Use include_fields to limit response data
- Use exact_match for precise searches
- Results ordered by relevance
- Useful for finding companies by name or domain
Common use cases:
- Search by name: { "term": "acme corporation" }
- Search by address: { "term": "new york", "fields": "address" }
- Exact company match: { "term": "ACME Corp", "exact_match": true }
- Search custom field: { "term": "enterprise", "fields": "customer_type" }
- Limit response: { "term": "acme", "include_fields": "name,address,owner_id" }
输入参数term必填limitstartfieldsexact_matchinclude_fields
Search for products with advanced filtering options.
Performs a product-specific search across all product fields.
Workflow tips:
- Search term must be at least 2 characters
- Specify fields to search: name, code, description, custom fields
- Use include_fields to limit response data
- Use exact_match for precise searches (e.g., SKU lookup)
- Results ordered by relevance
- Useful for finding products by name, code, or SKU
Common use cases:
- Search by name: { "term": "premium subscription" }
- Search by code/SKU: { "term": "SKU-123", "fields": "code" }
- Exact product match: { "term": "PRD-001", "exact_match": true }
- Search description: { "term": "enterprise", "fields": "description" }
- Limit response: { "term": "product", "include_fields": "name,code,price" }
输入参数term必填limitstartfieldsexact_matchinclude_fields
List all pipelines.
Returns all pipelines in the Pipedrive account, including their stages.
Workflow tips:
- Returns both active and inactive pipelines
- Each pipeline includes its stages
- Use this to get pipeline IDs for deal creation
- Check deal_probability setting to see if probability tracking is enabled
- order_nr indicates the display order in Pipedrive
Common use cases:
- Get all pipelines: {}
- Find pipeline ID for deal creation
- Check available stages in each pipeline
- Verify pipeline configuration
无需输入参数。
Get detailed information about a specific pipeline.
Returns pipeline details including all its stages and deal statistics.
Workflow tips:
- Returns pipeline configuration and all stages
- Includes deal totals and conversion statistics
- Use totals_convert_currency to convert deal values to specific currency
- Shows stage order and probabilities
- Includes rotten deal settings per stage
Common use cases:
- Get pipeline details: { "id": 1 }
- Get pipeline with USD totals: { "id": 1, "totals_convert_currency": "USD" }
- Check stage configuration
- Analyze pipeline performance
输入参数id必填totals_convert_currency
Create a new pipeline.
Creates a new pipeline with the specified name and configuration.
Workflow tips:
- Only name is required
- Set order_nr to control display order (lower numbers first)
- active=false to create inactive pipeline
- deal_probability=true enables probability tracking (default)
- New pipelines start with no stages - add stages separately
Common use cases:
- Simple pipeline: { "name": "Sales Pipeline" }
- Inactive pipeline: { "name": "Archive", "active": false }
- Ordered pipeline: { "name": "Q1 Pipeline", "order_nr": 1 }
- Full config: { "name": "Enterprise Sales", "order_nr": 2, "active": true, "deal_probability": true }
输入参数name必填activeorder_nrdeal_probability
Update an existing pipeline.
Updates pipeline configuration including name, order, active status, and probability tracking.
Workflow tips:
- All fields except id are optional
- Use order_nr to reorder pipelines
- Set active=false to deactivate pipeline
- Changing deal_probability affects all stages
- At least one field should be updated
Common use cases:
- Rename pipeline: { "id": 1, "name": "New Sales Pipeline" }
- Deactivate pipeline: { "id": 1, "active": false }
- Reorder pipeline: { "id": 1, "order_nr": 5 }
- Update multiple fields: { "id": 1, "name": "Updated", "active": true, "order_nr": 1 }
输入参数id必填nameactiveorder_nrdeal_probability
Delete a pipeline.
Permanently removes a pipeline and all its stages.
Workflow tips:
- This action cannot be undone
- Deals in this pipeline will need to be moved first
- Consider deactivating instead of deleting
- All stages in the pipeline will be deleted
- Use pipelines_get first to verify
Common use cases:
- Remove pipeline: { "id": 1 }
- Clean up unused pipelines
- Remove test pipelines
输入参数id必填
Get all stages for a specific pipeline.
Returns all stages in a pipeline with their configuration.
Workflow tips:
- Returns stages in order (by order_nr)
- Shows deal probability for each stage
- Includes rotten deal settings
- Use this to get stage IDs for deal creation
Common use cases:
- Get stages: { "id": 1 }
- Find stage ID for deal placement
- Check stage probabilities
- Review stage order
输入参数id必填
Create a new pipeline stage.
Required: name + pipeline_id. Optional: order_nr (position in pipeline), deal_probability
(0-100), is_deal_rot_enabled + days_to_rot for rotting deals.
Common use cases:
- Basic stage: { "name": "Qualified", "pipeline_id": 1 }
- With probability and rot: { "name": "Negotiation", "pipeline_id": 1, "deal_probability": 75, "is_deal_rot_enabled": true, "days_to_rot": 30 }
输入参数name必填order_nrdays_to_rotpipeline_id必填deal_probabilityis_deal_rot_enabled
Update an existing stage.
Provide only the fields you want to change. To reorder stages within a pipeline, update
the order_nr field.
Common use cases:
- Rename: { "id": 5, "name": "Closed Won" }
- Reorder: { "id": 5, "order_nr": 0 }
- Adjust rot rules: { "id": 5, "is_deal_rot_enabled": true, "days_to_rot": 14 }
输入参数id必填nameorder_nrdays_to_rotpipeline_iddeal_probabilityis_deal_rot_enabled
Get all stages across all pipelines or filter by pipeline.
Returns data about all stages with their configuration.
Workflow tips:
- Omit pipeline_id to get stages from all pipelines
- Use pipeline_id to filter stages for a specific pipeline
- Returns stages with order, probability, and rotten settings
- Shows which pipeline each stage belongs to
- Results include pagination info
Common use cases:
- Get all stages: {}
- Get all stages: { "pipeline_id": null }
- Filter by pipeline: { "pipeline_id": 1 }
- Review all stage configurations across pipelines
- Find stage IDs for deal management
输入参数pipeline_id
Get a specific stage by ID.
Returns the stage's full configuration: name, pipeline_id, order_nr, probability, rotting settings.
输入参数id必填
Delete a stage by ID.
This is a soft delete. Existing deals in the stage are NOT cascaded — they remain pointing
to the deleted stage's ID until they are moved.
输入参数id必填
Delete multiple stages in bulk.
Marks multiple stages as deleted in one operation.
Note: This endpoint has been deprecated by Pipedrive. Consider using stages_delete for each stage instead.
Workflow tips:
- Provide comma-separated stage IDs
- All specified stages will be deleted
- Deletion is irreversible
- Consider impact on deals in these stages
- Returns array of deleted stage IDs
Common use cases:
- Delete multiple stages: { "ids": "1,2,3" }
- Bulk cleanup of unused stages
- Remove multiple deprecated stages
- Pipeline reorganization
输入参数ids必填
pipelines_conversion_statistics
Get deal conversion rates in a pipeline for a specific time period.
Returns stage-to-stage conversion rates and pipeline-to-close rates, showing how deals progress through the pipeline.
Response includes:
- stage_conversions: Array of conversion rates between stages
- won_conversion: Rate of deals won
- lost_conversion: Rate of deals lost
Workflow tips:
- Requires start_date and end_date in YYYY-MM-DD format
- Defaults to authorized user unless user_id is specified
- Use to analyze pipeline efficiency and identify bottlenecks
- Track conversion improvements over time
- Compare different time periods or users
Common use cases:
- Get Q4 2023 conversions: { "id": 1, "start_date": "2023-10-01", "end_date": "2023-12-31" }
- Track specific user performance: { "id": 1, "start_date": "2023-01-01", "end_date": "2023-12-31", "user_id": 123 }
- Identify weak conversion points in pipeline
- Monitor sales team effectiveness
输入参数id必填user_idend_date必填start_date必填
pipelines_movement_statistics
Get deal movement statistics in a pipeline for a specific time period.
Returns comprehensive statistics about how deals moved through the pipeline, including new deals, won/lost deals, and average deal age.
Response includes:
- movements_between_stages: Count of stage transitions
- new_deals: Count, IDs, values of new deals created
- deals_left_open: Deals still in pipeline
- won_deals: Successfully closed deals
- lost_deals: Lost opportunities
- average_age_in_days: Deal duration metrics by stage
Workflow tips:
- Requires start_date and end_date in YYYY-MM-DD format
- Defaults to authorized user unless user_id is specified
- Values returned in multiple currencies
- Use to understand pipeline velocity and deal flow
- Track deal aging and identify stalled deals
Common use cases:
- Monthly pipeline report: { "id": 1, "start_date": "2023-10-01", "end_date": "2023-10-31" }
- Track team member activity: { "id": 1, "start_date": "2023-01-01", "end_date": "2023-12-31", "user_id": 123 }
- Analyze deal flow patterns
- Monitor sales cycle length
- Identify pipeline bottlenecks
输入参数id必填user_idend_date必填start_date必填
Get all deals in a specific pipeline.
Returns a list of deals in the pipeline with optional filtering by stage, user, or custom filter. Includes pagination support and optional summary statistics.
Workflow tips:
- Filter by stage_id to see deals in specific stage
- Use everyone=1 to see all deals (ignores filter_id and user_id)
- Set get_summary=1 to include pipeline totals in additional_data
- Use totals_convert_currency to convert values to specific currency
- Supports pagination with start and limit parameters
- Can apply custom filters with filter_id
Common use cases:
- Get all deals in pipeline: { "id": 1 }
- Get deals in specific stage: { "id": 1, "stage_id": 5 }
- Get deals for user: { "id": 1, "user_id": 123 }
- Get everyone's deals with summary: { "id": 1, "everyone": 1, "get_summary": 1 }
- Paginated results: { "id": 1, "start": 0, "limit": 50 }
- Convert to USD: { "id": 1, "totals_convert_currency": "USD", "get_summary": 1 }
输入参数id必填limitstartuser_ideveryonestage_idfilter_idget_summarytotals_convert_currency
List all pipeline stages across the workspace.
Optionally filter by pipeline_id to scope to a single pipeline. Returns the canonical
stage collection via API v2.
Cached for 5 minutes.
Common use cases:
- List all stages: {}
- List stages of a pipeline: { "pipeline_id": 3 }
输入参数pipeline_id
Create a new note and attach it to a deal, person, organization, or lead.
Creates a note with the specified content and associates it with one or more entities.
Workflow tips:
- content is required and supports HTML formatting
- At least one entity should be specified (implicitly via schemas)
- Set pinned flags to pin note to specific entities
- user_id sets the note creator (defaults to authenticated user)
- add_time can be specified for backdating notes
- Content supports rich text and can include formatting
Common use cases:
- Simple note: { "content": "Follow up next week", "deal_id": 123 }
- Pinned note: { "content": "Important info", "person_id": 456, "pinned_to_person_flag": true }
- Multi-entity note: { "content": "Meeting notes", "deal_id": 123, "person_id": 456 }
- Rich text note: { "content": "<b>Action items:</b><ul><li>Send proposal</li></ul>", "deal_id": 789 }
输入参数org_idcontent必填deal_idlead_iduser_idadd_timeperson_idpinned_to_deal_flagpinned_to_lead_flagpinned_to_person_flagpinned_to_organization_flag
List notes with pagination and filtering options.
Returns a paginated list of notes. Use filters to narrow results by associated entity.
Workflow tips:
- Filter by entity to get notes for specific deals, persons, organizations, or leads
- Filter by user_id to get notes by specific user
- Use pinned flags to filter pinned notes
- Sort by add_time, update_time, or content
- Use start/limit for pagination (default limit: 100, max: 500)
Common use cases:
- List all notes for a deal: { "deal_id": 123 }
- List all notes for a person: { "person_id": 456 }
- List pinned notes: { "deal_id": 123, "pinned_to_deal_flag": true }
- List notes by user: { "user_id": 789 }
- Recent notes first: { "sort": "add_time", "sort_by": "desc" }
输入参数sortlimitstartorg_iddeal_idlead_idsort_byuser_idperson_idpinned_to_deal_flagpinned_to_lead_flagpinned_to_person_flag另有 1 个
Get detailed information about a specific note.
Returns note content and metadata including creator, timestamps, and associated entities.
Workflow tips:
- Returns full note content (may include HTML)
- Shows all entities the note is attached to
- Includes creator and last editor information
- Shows pinned status for each entity type
- Useful for retrieving note before updating
Common use cases:
- Get note details: { "id": 123 }
- Verify note content before editing
- Check which entities note is attached to
- View note creator and timestamps
输入参数id必填
Update an existing note.
Updates note content, entity associations, or pinned status.
Workflow tips:
- All fields except id are optional
- Can update content (supports HTML)
- Can change entity associations
- Can pin/unpin to specific entities
- Content supports rich text formatting
- At least one field should be updated
Common use cases:
- Update content: { "id": 123, "content": "Updated information" }
- Pin to deal: { "id": 123, "pinned_to_deal_flag": true }
- Change association: { "id": 123, "person_id": 456 }
- Update and pin: { "id": 123, "content": "New content", "pinned_to_person_flag": true }
输入参数id必填org_idcontentdeal_idlead_idperson_idpinned_to_deal_flagpinned_to_lead_flagpinned_to_person_flagpinned_to_organization_flag
Delete a note from Pipedrive.
Permanently removes a note from all associated entities.
Workflow tips:
- This action cannot be undone
- Note is removed from all associated entities
- Consider using notes_get first to verify the note
- Deleted notes cannot be recovered
Common use cases:
- Remove note: { "id": 123 }
- Clean up old notes
- Remove duplicate or incorrect notes
输入参数id必填
Get all field definitions for deals, including custom fields.
Use this to discover what fields are available before creating or updating deals. Returns field keys, types, validation rules, and whether fields are required.
Response includes:
- Field ID and key (use key in API requests)
- Field name and type (varchar, text, enum, date, monetary, etc.)
- Validation info (mandatory, editable, searchable)
- Options for enum/dropdown fields
- Filtering and sorting capabilities
Cached for 15 minutes as field definitions rarely change.
Common use cases:
- Discover custom fields before creating deals
- Check field types and validation rules
- Find field keys for API requests
- Understand available enum options
无需输入参数。
fields_list_person_fields
Get all field definitions for persons (contacts), including custom fields.
Use this to discover what fields are available before creating or updating persons. Returns field keys, types, validation rules, and whether fields are required.
Response includes:
- Field ID and key (use key in API requests)
- Field name and type (varchar, text, enum, phone, email, etc.)
- Validation info (mandatory, editable, searchable)
- Options for enum/dropdown fields
- Filtering and sorting capabilities
Cached for 15 minutes as field definitions rarely change.
Common use cases:
- Discover custom fields before creating persons
- Check field types and validation rules
- Find field keys for API requests
- Understand available enum options for person fields
无需输入参数。
fields_list_organization_fields
Get all field definitions for organizations, including custom fields.
Use this to discover what fields are available before creating or updating organizations. Returns field keys, types, validation rules, and whether fields are required.
Response includes:
- Field ID and key (use key in API requests)
- Field name and type (varchar, text, enum, address, etc.)
- Validation info (mandatory, editable, searchable)
- Options for enum/dropdown fields
- Filtering and sorting capabilities
Cached for 15 minutes as field definitions rarely change.
Common use cases:
- Discover custom fields before creating organizations
- Check field types and validation rules
- Find field keys for API requests
- Understand available enum options for organization fields
无需输入参数。
fields_list_activity_fields
Get all field definitions for activities, including custom fields.
Use this to discover what fields are available before creating or updating activities. Returns field keys, types, validation rules, and whether fields are required.
Response includes:
- Field ID and key (use key in API requests)
- Field name and type (varchar, text, enum, date, time, etc.)
- Validation info (mandatory, editable, searchable)
- Options for enum/dropdown fields
- Filtering and sorting capabilities
Cached for 15 minutes as field definitions rarely change.
Common use cases:
- Discover custom fields before creating activities
- Check field types and validation rules
- Find field keys for API requests
- Understand available enum options for activity fields
无需输入参数。
fields_list_product_fields
Get all field definitions for products, including custom fields.
Use this to discover what fields are available before creating or updating products. Returns field keys, types, validation rules, and whether fields are required.
Response includes:
- Field ID and key (use key in API requests)
- Field name and type (varchar, text, enum, monetary, double, etc.)
- Validation info (mandatory, editable, searchable)
- Options for enum/dropdown fields
- Filtering and sorting capabilities
Cached for 15 minutes as field definitions rarely change.
Common use cases:
- Discover custom fields before creating products
- Check field types and validation rules
- Find field keys for API requests
- Understand available enum options for product fields
无需输入参数。
Get all field definitions available for leads, including custom fields.
Leads share their custom field structure with deals, but this endpoint returns the
canonical list as it applies to leads. Read-only — to create/update/delete the underlying
custom fields, use the deal field tools (`fields_create_deal_field`, etc.).
Cached for 15 minutes as field definitions rarely change.
Common use cases:
- Discover field keys before creating/updating leads
- Check field types and validation rules
无需输入参数。
Get all field definitions available for notes.
Read-only — note fields are predefined by Pipedrive and cannot be created, updated, or
deleted via the API.
Cached for 15 minutes as field definitions rarely change.
Common use cases:
- Discover the structure of note objects
- Find field keys for note payloads
无需输入参数。
Get details of a specific field by ID and entity type.
Retrieves complete information about a single field definition, including all validation rules, options, and metadata.
Response includes:
- Field ID, key, and name
- Field type and validation rules
- Options for enum fields
- Flags: mandatory, editable, searchable, filterable, sortable, bulk_edit_allowed
Cached for 15 minutes as field definitions rarely change.
Common use cases:
- Get specific field details: { "entity_type": "deal", "field_id": 12345 }
- Check field validation rules before updating
- Retrieve enum options for a dropdown field
输入参数field_id必填entity_type必填
Get ALL field definitions across all entity types in a single call.
This is a convenient aggregator that fetches field definitions for deals, persons, organizations, activities, and products in one request. Useful for getting a complete overview of all custom fields in your Pipedrive account.
Returns an object with fields grouped by entity type:
- deal_fields: All deal field definitions
- person_fields: All person field definitions
- organization_fields: All organization field definitions
- activity_fields: All activity field definitions
- product_fields: All product field definitions
Each field includes:
- Field ID, key, and name
- Field type and validation rules
- Options for enum fields
- Flags: mandatory, editable, searchable, filterable, sortable
Cached for 15 minutes as field definitions rarely change.
Common use cases:
- Get complete field overview across all entities
- Build field mapping documentation
- Audit custom fields setup
- Prepare for data migration or integration
无需输入参数。
Search for fields by name or key across entity types.
Searches field definitions by matching against field names (case-insensitive) or field keys. Useful for finding specific custom fields when you don't know the exact field ID.
Search is performed across:
- Field names (e.g., "Customer Type", "Lead Source")
- Field keys (e.g., "9dc80c50d78a...")
Results include:
- Entity type the field belongs to
- Field ID, key, and name
- Field type and validation info
- All other field metadata
Cached for 15 minutes as field definitions rarely change.
Common use cases:
- Find field by name: { "query": "customer" }
- Find field by partial key: { "query": "9dc80c" }
- Search in specific entity: { "query": "status", "entity_type": "deal" }
- Find all custom fields containing "date"
输入参数query必填entity_type
fields_create_organization_field
Create a new custom field for organizations.
For `enum` and `set` field types, you must provide `options` (a non-empty array of `{ label }` objects).
Common use cases:
- Add a "Customer Type" dropdown to organizations
- Add a custom monetary value (e.g., "Annual Revenue")
- Add a date field (e.g., "Customer Since")
After creation, the field's `key` is the hash you must use in Organization create/update payloads. Field definitions are cached for 15 minutes — call `fields_list_organization_fields` after a brief delay to see it reflected.
输入参数name必填optionsfield_type必填add_visible_flag
fields_update_organization_field
Update an existing custom organization field.
Note: `field_type` cannot be changed. For `enum`/`set` fields, `options` is the **full set** of options after update — include each existing option's `id` to preserve it, or omit `id` to add a new option.
Common use cases:
- Rename a field
- Add/remove options on an enum dropdown
- Toggle the field's visibility in the add form
输入参数id必填nameoptionsadd_visible_flag
fields_delete_organization_field
Delete a custom organization field by ID.
This soft-deletes the field on Pipedrive. Existing values are preserved on records but the field stops appearing in the UI and new payloads.
Use `fields_bulk_delete_organization_fields` to delete several fields in one call.
输入参数id必填
fields_bulk_delete_organization_fields
Delete multiple custom organization fields in a single request.
Accepts either:
- a comma-separated string of field IDs (e.g. `"123,456,789"`)
- an array of numeric IDs (e.g. `[123, 456, 789]`)
Both shapes are normalized to Pipedrive's expected `?ids=` query parameter.
输入参数ids必填
Create a new custom field for deals.
For `enum` and `set` field types, you must provide `options` (a non-empty array of `{ label }` objects).
Common use cases:
- Add a "Deal Source" dropdown to deals
- Add a custom monetary value (e.g., "Expected Upsell")
- Add a date field (e.g., "Contract Start Date")
After creation, the field's `key` is the hash you must use in Deal create/update payloads. Field definitions are cached for 15 minutes — call `fields_list_deal_fields` after a brief delay to see it reflected.
输入参数name必填optionsfield_type必填add_visible_flag
Update an existing custom deal field.
Note: `field_type` cannot be changed. For `enum`/`set` fields, `options` is the **full set** of options after update — include each existing option's `id` to preserve it, or omit `id` to add a new option.
Common use cases:
- Rename a field
- Add/remove options on an enum dropdown
- Toggle the field's visibility in the add form
输入参数id必填nameoptionsadd_visible_flag
Delete a custom deal field by ID.
This soft-deletes the field on Pipedrive. Existing values are preserved on records but the field stops appearing in the UI and new payloads.
Use `fields_bulk_delete_deal_fields` to delete several fields in one call.
输入参数id必填
fields_bulk_delete_deal_fields
Delete multiple custom deal fields in a single request.
Accepts either:
- a comma-separated string of field IDs (e.g. `"123,456,789"`)
- an array of numeric IDs (e.g. `[123, 456, 789]`)
Both shapes are normalized to Pipedrive's expected `?ids=` query parameter.
输入参数ids必填
fields_create_person_field
Create a new custom field for persons.
For `enum` and `set` field types, you must provide `options` (a non-empty array of `{ label }` objects).
Common use cases:
- Add a "Lead Source" dropdown to persons
- Add a custom text field (e.g., "LinkedIn URL")
- Add a date field (e.g., "Birthday")
After creation, the field's `key` is the hash you must use in Person create/update payloads. Field definitions are cached for 15 minutes — call `fields_list_person_fields` after a brief delay to see it reflected.
输入参数name必填optionsfield_type必填add_visible_flag
fields_update_person_field
Update an existing custom person field.
Note: `field_type` cannot be changed. For `enum`/`set` fields, `options` is the **full set** of options after update — include each existing option's `id` to preserve it, or omit `id` to add a new option.
Common use cases:
- Rename a field
- Add/remove options on an enum dropdown
- Toggle the field's visibility in the add form
输入参数id必填nameoptionsadd_visible_flag
fields_delete_person_field
Delete a custom person field by ID.
This soft-deletes the field on Pipedrive. Existing values are preserved on records but the field stops appearing in the UI and new payloads.
Use `fields_bulk_delete_person_fields` to delete several fields in one call.
输入参数id必填
fields_bulk_delete_person_fields
Delete multiple custom person fields in a single request.
Accepts either:
- a comma-separated string of field IDs (e.g. `"123,456,789"`)
- an array of numeric IDs (e.g. `[123, 456, 789]`)
Both shapes are normalized to Pipedrive's expected `?ids=` query parameter.
输入参数ids必填
fields_create_product_field
Create a new custom field for products.
For `enum` and `set` field types, you must provide `options` (a non-empty array of `{ label }` objects).
Common use cases:
- Add a "Product Category" dropdown to products
- Add a custom text field (e.g., "SKU Code")
- Add a numeric field (e.g., "Weight (kg)")
After creation, the field's `key` is the hash you must use in Product create/update payloads. Field definitions are cached for 15 minutes — call `fields_list_product_fields` after a brief delay to see it reflected.
输入参数name必填optionsfield_type必填add_visible_flag
fields_update_product_field
Update an existing custom product field.
Note: `field_type` cannot be changed. For `enum`/`set` fields, `options` is the **full set** of options after update — include each existing option's `id` to preserve it, or omit `id` to add a new option.
Common use cases:
- Rename a field
- Add/remove options on an enum dropdown
- Toggle the field's visibility in the add form
输入参数id必填nameoptionsadd_visible_flag
fields_delete_product_field
Delete a custom product field by ID.
This soft-deletes the field on Pipedrive. Existing values are preserved on records but the field stops appearing in the UI and new payloads.
Use `fields_bulk_delete_product_fields` to delete several fields in one call.
输入参数id必填
fields_bulk_delete_product_fields
Delete multiple custom product fields in a single request.
Accepts either:
- a comma-separated string of field IDs (e.g. `"123,456,789"`)
- an array of numeric IDs (e.g. `[123, 456, 789]`)
Both shapes are normalized to Pipedrive's expected `?ids=` query parameter.
输入参数ids必填
fields_list_project_fields
Get all field definitions for projects, including custom fields (API v2).
Returns field codes, types and options. Cached for 15 minutes.
Common use cases:
- Discover project custom fields and their field codes
- Check field types before creating/updating projects
无需输入参数。
fields_create_project_field
Create a new custom field for projects (API v2).
For `enum` and `set` field types you must provide `options` (a non-empty array of
`{ label }` objects). The created field's `field_code` is what you use to update or
delete it later.
输入参数name必填optionsfield_type必填
fields_update_project_field
Update an existing project field (API v2).
Provide the `field_code` and any of name / options. Field type cannot be changed.
输入参数nameoptionsfield_code必填
fields_delete_project_field
Delete a project field by its field code (API v2).
输入参数field_code必填
Get performance metrics for the MCP server.
Returns comprehensive statistics about the server's performance including:
- Request counts and error rates
- Average response times
- Requests and errors by endpoint
- Cache statistics (size, hit rate)
- Rate limiter statistics
Useful for monitoring server health, debugging performance issues, and understanding usage patterns.
Metrics are always fresh (not cached) to provide real-time data.
Response includes:
- requestCount: Total number of API requests made
- errorCount: Total number of failed requests
- totalDuration: Cumulative request duration in milliseconds
- averageDuration: Average request duration in milliseconds
- errorRate: Percentage of requests that failed (0.0 to 1.0)
- requestsByEndpoint: Request count breakdown by endpoint
- errorsByEndpoint: Error count breakdown by endpoint
- cacheStats: Current cache size and statistics
- rateLimiterStats: Rate limiter queue and token information
- timestamp: Current server time
Common use cases:
- Monitor server performance
- Debug slow responses or errors
- Analyze usage patterns
- Check cache effectiveness
无需输入参数。
Check API connectivity and authentication status.
Verifies that the Pipedrive API is accessible and the authentication token is valid by making a test request to GET /users/me.
Returns:
- healthy: Boolean indicating if the API is accessible
- user: Current authenticated user information (if healthy)
- timestamp: Time of the health check
- error: Error details if unhealthy
Cached for 60 seconds to avoid excessive health checks.
Common use cases:
- Verify API token is valid
- Check if Pipedrive API is accessible
- Get basic connection status before performing operations
- Troubleshoot authentication issues
无需输入参数。
Get information about the currently authenticated user.
Returns complete details about the user associated with the API token, including:
- User ID, name, and email
- Account permissions and role
- Default currency and language
- Timezone and locale settings
- Company information
- Account limits and features
This is useful for understanding the context and permissions of the current API session.
Cached for 60 seconds as user information rarely changes during a session.
Response includes:
- id: User ID
- name: Full name
- email: Email address
- role_id: User's role ID
- timezone: User's timezone (e.g., "America/New_York")
- locale: User's locale (e.g., "en_US")
- default_currency: Default currency code
- is_admin: Whether user is an admin
- activated: Whether account is activated
- company_id: Company ID
- company_name: Company name
Common use cases:
- Get user context for operations
- Check user permissions
- Retrieve timezone for date/time operations
- Get default currency for monetary fields
无需输入参数。
Get list of supported currencies and exchange rates.
Returns all currencies configured in your Pipedrive account, including:
- Currency codes (USD, EUR, GBP, etc.)
- Currency symbols and names
- Exchange rates relative to account's default currency
- Whether currency is active
- Decimal precision
This is essential for working with monetary fields and understanding currency conversions in deals and products.
Cached for 24 hours as currency rates don't change frequently in Pipedrive configuration.
Response includes array of currencies with:
- id: Currency ID
- code: ISO 4217 currency code (e.g., "USD", "EUR")
- name: Full currency name (e.g., "US Dollar")
- symbol: Currency symbol (e.g., "$", "€")
- decimal_points: Number of decimal places
- is_custom_flag: Whether it's a custom currency
- active_flag: Whether currency is active
Common use cases:
- Get supported currencies before creating deals
- Validate currency codes for monetary fields
- Understand exchange rates for reporting
- Check which currencies are active in the account
无需输入参数。
Clear all cached data from the MCP server.
Removes all entries from the cache, forcing fresh API requests for subsequent operations. This is useful for:
- Debugging cache-related issues
- Forcing refresh of stale data
- Testing without cached responses
- Resetting after bulk data changes
Returns the number of cache entries that were cleared.
CAUTION: This will impact performance temporarily as all subsequent requests will need to fetch fresh data from the Pipedrive API. The cache will repopulate naturally as requests are made.
Response includes:
- message: Confirmation message
- previousSize: Number of cache entries that were cleared
- timestamp: Time when cache was cleared
Common use cases:
- Debug stale or incorrect cached data
- Force refresh after bulk imports or updates
- Test API behavior without cache
- Clear cache after configuration changes
无需输入参数。
Get all add-ons for a single company.
Returns the add-ons (billing subscriptions) configured for your Pipedrive company account.
Add-ons include features like:
- LeadBooster (lead generation tools)
- Prospector (contact database access)
- Smart Docs (document management)
- And other premium features
This is useful for:
- Checking which premium features are enabled
- Understanding account capabilities
- Determining available integrations
- Auditing subscription status
Cached for 24 hours as add-on configuration doesn't change frequently.
Response includes array of add-on codes:
- code: Add-on identifier (e.g., "leadbooster_v2", "prospector", "smart_docs_v2")
Common use cases:
- Check if LeadBooster is available before using lead features
- Verify Smart Docs access for document operations
- List all active premium features
- Audit company subscriptions
无需输入参数。
Get recently viewed or modified items.
Returns data about all recent changes that occurred after the given timestamp. This is useful for tracking activity, syncing data, or showing users what they've recently worked on.
Required fields:
- since_timestamp: Timestamp in UTC (YYYY-MM-DD HH:MM:SS format)
Optional fields:
- items: Filter by specific item types (comma-separated)
- start: Pagination start (default: 0)
- limit: Items shown per page
Supported item types:
- activity
- deal
- person
- organization
- product
- note
- file
- mail
- etc.
Workflow tips:
- Use ISO 8601 or YYYY-MM-DD HH:MM:SS format for timestamps
- Filter by item type to reduce response size
- Use pagination for large result sets
- Track changes since last sync
Common use cases:
- Recent activity: { "since_timestamp": "2024-12-10 10:00:00" }
- Recent deals only: { "since_timestamp": "2024-12-10 10:00:00", "items": "deal" }
- Multiple types: { "since_timestamp": "2024-12-10 10:00:00", "items": "deal,person,organization" }
- Paginated results: { "since_timestamp": "2024-12-10 10:00:00", "start": 0, "limit": 50 }
输入参数itemslimitstartsince_timestamp必填
system_get_user_connections
Get all user connections for the authorized user.
Returns data about all external service connections (integrations) for the currently authorized user. This shows which third-party services the user has connected to their Pipedrive account.
Common connections include:
- Google (Gmail, Calendar, Drive)
- Microsoft (Outlook, Office 365)
- Video calling services
- Email providers
- Calendar services
- And other integrations
This is useful for:
- Checking which services are connected
- Verifying integration status
- Debugging connection issues
- Auditing user integrations
Response includes:
- Service name as key (e.g., "google")
- Connection ID as value (e.g., "awesomeid-123-4567890")
Common use cases:
- Check if Google is connected before using Gmail features
- Verify email integration status
- List all user integrations
- Troubleshoot sync issues
无需输入参数。
List settings of the authorized user.
Returns all configuration settings for the currently authorized Pipedrive user. This includes personal preferences, feature flags, limits, and account-specific configurations.
Common settings include:
- list_limit: Default pagination size (e.g., 100)
- beta_app: Beta features access
- file_upload_destination: Storage location (e.g., "s3")
- callto_link_syntax: Phone call link format
- autofill_deal_expected_close_date: Auto-fill deal dates
- person_duplicate_condition: Duplicate detection rules
- marketplace_team: Marketplace team access
- And many other preferences
This is useful for:
- Understanding user preferences
- Checking feature access
- Debugging user-specific issues
- Auditing account configuration
- Determining default behaviors
Cached for 1 hour as settings don't change frequently.
Response includes key-value pairs of settings:
- Setting name as key
- Setting value as value (boolean, number, or string)
Common use cases:
- Check list_limit before pagination
- Verify beta feature access
- Understand duplicate detection rules
- Get default behaviors for operations
无需输入参数。
List all products with optional filtering and pagination.
Supports filtering by:
- user_id: Filter by owner
- filter_id: Apply a saved filter
- ids: Array of specific product IDs to return
- first_char: Filter by first character of name (single letter)
- get_summary: Include total count in response
Returns paginated results. Use start/limit for manual pagination.
输入参数idslimitstartuser_idfilter_idfirst_charget_summary
Automatically fetch ALL products using pagination.
This tool handles pagination automatically and returns all products matching the filters.
Use this when you need the complete list without managing pagination manually.
Warning: This can return a large dataset if you have many products.
Supports the same filters as products/list:
- user_id: Filter by owner
- filter_id: Apply a saved filter
- first_char: Filter by first character of name
输入参数user_idfilter_idfirst_char
Create a new product in Pipedrive.
Required fields:
- name: Product name
Optional fields:
- code: Product code (SKU)
- description: Product description
- unit: Unit type (e.g., "pcs", "kg", "hours")
- tax: Tax percentage (0-100)
- active_flag: Whether product is active (default: true)
- selectable: Whether product can be selected in deals (default: true)
- visible_to: Visibility level (1=owner only, 3=entire company)
- owner_id: User who will own this product
- prices: Array of price objects with format: [{"price": 100, "currency": "USD", "cost": 50}]
- billing_frequency: One of: one-time, weekly, monthly, quarterly, semi-annually, annually
- billing_frequency_cycles: Number of billing cycles
Custom fields:
- Pass display names: { "custom_fields": { "SKU Class": "A", "Category": "Electronics" } }
- Or hash keys directly: { "custom_fields": { "abc123...": "raw value" } }
- For enum/set fields, pass option labels (not ids).
Example prices array:
{
"prices": [
{"price": 100, "currency": "USD", "cost": 50, "overhead_cost": 10, "notes": "Standard price"},
{"price": 85, "currency": "EUR", "cost": 45}
]
}
输入参数taxcodename必填unitpricesowner_idselectablevisible_toactive_flagdescriptioncustom_fieldsbilling_frequency另有 1 个
Get detailed information about a specific product.
Returns complete product data including:
- Basic information (name, code, description, unit)
- Pricing information (prices array with different currencies)
- Billing information (frequency, cycles)
- Metadata (owner, visibility, timestamps)
- Tax and category information
Use this when you need full details about a product, such as:
- Viewing complete product specifications
- Getting pricing information
- Checking product availability and status
输入参数id必填
Update an existing product in Pipedrive.
All fields are optional except id. Only provide the fields you want to update.
Updatable fields:
- name: Product name
- code: Product code (SKU)
- description: Product description
- unit: Unit type
- tax: Tax percentage
- active_flag: Whether product is active
- selectable: Whether product can be selected in deals
- visible_to: Visibility level
- owner_id: Product owner
- prices: Array of price objects
- billing_frequency: Billing frequency
- billing_frequency_cycles: Number of billing cycles
Note: When updating prices, the entire prices array is replaced.
Custom fields:
- Pass display names: { "custom_fields": { "SKU Class": "A", "Category": "Electronics" } }
- Or hash keys directly: { "custom_fields": { "abc123...": "raw value" } }
- For enum/set fields, pass option labels (not ids).
输入参数id必填taxcodenameunitpricesowner_idselectablevisible_toactive_flagdescriptioncustom_fields另有 2 个
Delete a product from Pipedrive.
The product will be marked as deleted and after 30 days will be permanently deleted.
Note: Deleting a product does not automatically remove it from existing deals.
Deals that already have this product attached will keep the product information.
This is useful for:
- Discontinuing products
- Cleaning up old inventory
- Removing test products
输入参数id必填
Search for products by name, code, or custom fields.
This is a powerful search tool that finds products matching your query across multiple fields.
Search features:
- Searches product name, code, and custom fields by default
- Minimum 1 character required (or use exact_match for single chars)
- Returns relevance-scored results
- Supports pagination
Use cases:
- Finding products by partial name
- Looking up products by code/SKU
- Searching custom product attributes
- Quick product lookup during deal creation
输入参数term必填limitstartfieldsexact_matchinclude_fields
Get all deals where a specific product is attached.
Returns a list of deals that have this product in their products list.
This is useful for:
- Tracking product usage across deals
- Analyzing product performance
- Finding deals with specific products
- Revenue forecasting by product
Filter options:
- status: Filter by deal status (open, won, lost, deleted, all_not_deleted)
Each deal includes full deal information plus product attachment details.
输入参数id必填limitstartstatus
List all files attached to a specific product.
Returns files associated with the product such as:
- Product images
- Documentation
- Specifications
- Contracts
- Other attachments
Supports sorting by:
- id: File ID
- update_time: Last update time
Use this for:
- Viewing product documentation
- Accessing product images
- Managing product attachments
输入参数id必填sortlimitstart
Add a follower to a product.
Followers are users who will receive notifications about updates to this product.
This is useful for team collaboration and keeping stakeholders informed.
When a user follows a product, they will be notified about:
- Changes to product details
- Product being added to deals
- Price changes
- Other updates
Note: Users can only be added as followers if they have access to the product.
输入参数id必填user_id必填
List all followers of a specific product.
Returns a list of users who are following this product and will receive
notifications about updates.
Each follower entry includes:
- User ID
- Follower ID (relationship ID)
- Product ID
- When they started following
This is useful for:
- Checking who is tracking a product
- Auditing team access
- Managing notifications
输入参数id必填limitstart
Remove a follower from a product.
Stops a user from receiving notifications about this product.
Note: You need the follower_id (the relationship ID), not the user_id.
Get this from the products/list_followers endpoint.
输入参数id必填follower_id必填
products_list_permitted_users
List all users who have access to view and edit a specific product.
Returns a list of users who have permission to access this product based on
visibility settings and team structure.
Workflow tips:
- Product visibility determines which users can access it
- Visibility can be: owner only, owner's team, entire company, or custom
- This is useful for understanding who can see and modify the product
- Access permissions affect whether users can add the product to deals
Common use cases:
- Audit product access permissions
- Verify team members can see a product
- Check visibility before sharing product with team
- Troubleshoot why a user cannot see a product
Example:
{ "id": 123 }
输入参数id必填
List leads with pagination and filtering options.
Returns a paginated list of non-archived leads. Use filters to narrow results by owner, person, or organization.
Workflow tips:
- Leads are sorted by creation time (oldest to newest)
- Use owner_id to filter by lead owner
- Use person_id or organization_id to filter by associated entities
- filter_id takes precedence over other filters
- Use start/limit for pagination (default limit: 100, max: 500)
- For all leads without pagination, use leads/list_all_auto instead
- Use add_time_from / add_time_until to filter by creation date (client-side). NOTE: this only filters the current page; for complete date-range results use leads/list_all_auto
- Leads inherit custom fields structure from deals
Common use cases:
- List all leads: {}
- List leads for a specific owner: { "owner_id": 123 }
- List leads for a person: { "person_id": 456 }
- List leads for an organization: { "organization_id": 789 }
输入参数sortlimitstartowner_idfilter_idperson_idadd_time_fromadd_time_untilorganization_id
Automatically fetch ALL leads with pagination handling.
This tool automatically handles pagination and fetches all non-archived leads matching the filters.
Unlike leads/list, this returns ALL results in a single response.
WARNING: This can return large datasets. Use filters to limit results.
Workflow tips:
- Same filters as leads/list (owner_id, person_id, organization_id, filter_id)
- Specify max_items to limit total results if needed
- No need to manage start/limit - pagination is automatic
- Best for exports, reports, or comprehensive analysis
- Leads are sorted by creation time (oldest to newest)
Common use cases:
- Get all leads: {}
- Export all leads for a user: { "owner_id": 123 }
- Get all leads for analysis: { "max_items": 1000 }
输入参数sortowner_idfilter_idmax_itemsperson_idadd_time_fromadd_time_untilorganization_id
List archived leads with pagination and filtering options.
Returns a paginated list of archived leads. Archived leads are leads that have been
moved out of the active Leads Inbox but not deleted or converted to deals.
Workflow tips:
- Archived leads are sorted by creation time (oldest to newest)
- Use owner_id to filter by lead owner
- Use person_id or organization_id to filter by associated entities
- filter_id takes precedence over other filters
- Use start/limit for pagination (default limit: 100, max: 500)
- Archived leads can be restored to active status using leads/update
Common use cases:
- List all archived leads: {}
- List archived leads for a specific owner: { "owner_id": 123 }
- List archived leads for a person: { "person_id": 456 }
- Review archived leads before deletion: { "limit": 50 }
输入参数sortlimitstartowner_idfilter_idperson_idorganization_id
Create a new lead in Pipedrive.
Creates a new lead with the specified information. A lead must be linked to a person or an organization (or both).
All leads created through the API will have source_name "API" and origin "API".
Custom fields:
- Pass display names: { "custom_fields": { "Source": "Web", "Budget": 5000 } }
- Or hash keys directly: { "custom_fields": { "abc123...": "raw value" } }
- Uses deal field definitions (leads share the deal custom fields).
Workflow tips:
- Title is required
- Must have person_id, organization_id, or both
- Use persons/search or organizations/search to get IDs
- Value is optional but recommended (object with amount and currency)
- Leads inherit custom fields structure from deals
- Set expected_close_date in YYYY-MM-DD format
- label_ids is an array of UUID strings
Common use cases:
- Simple lead: { "title": "New Lead", "person_id": 123 }
- Lead with value: { "title": "Lead", "person_id": 123, "value": { "amount": 5000, "currency": "USD" } }
- Lead with org: { "title": "Company Lead", "organization_id": 456 }
- Full lead: { "title": "Big Lead", "person_id": 123, "organization_id": 456, "value": { "amount": 50000, "currency": "USD" }, "expected_close_date": "2024-12-31", "owner_id": 1 }
输入参数title必填valuechannelowner_idwas_seenlabel_idsorigin_idperson_idchannel_idvisible_tocustom_fieldsorganization_id另有 1 个
Get details of a specific lead by UUID.
Returns detailed information about a single lead including all fields and custom field values.
Workflow tips:
- Lead IDs are UUIDs (not integers like other entities)
- Use leads/search to find leads by title or other fields
- Custom fields from deals are inherited by leads
- Only set custom field values will appear in response
Common use cases:
- Get lead details: { "id": "adf21080-0e10-11eb-879b-05d71fb426ec" }
- Retrieve lead for update: { "id": "<uuid>" }
输入参数id必填
Update an existing lead in Pipedrive.
Updates one or more properties of a lead. Only properties included in the request will be updated.
Send null to unset a property (applicable for value, person_id, or organization_id).
Custom fields:
- Pass display names: { "custom_fields": { "Source": "Web", "Budget": 5000 } }
- Or hash keys directly: { "custom_fields": { "abc123...": "raw value" } }
- Uses deal field definitions (leads share the deal custom fields).
Workflow tips:
- Only include fields you want to update
- Lead ID must be a UUID
- Use null to clear optional fields
- value must be an object with amount and currency
- Leads inherit custom fields structure from deals
- Set is_archived to true to archive a lead
Common use cases:
- Update title: { "id": "<uuid>", "title": "Updated Title" }
- Update value: { "id": "<uuid>", "value": { "amount": 10000, "currency": "USD" } }
- Archive lead: { "id": "<uuid>", "is_archived": true }
- Clear person: { "id": "<uuid>", "person_id": null }
输入参数id必填titlevaluechannelowner_idwas_seenlabel_idsperson_idchannel_idvisible_tois_archivedcustom_fields另有 2 个
Delete a specific lead from Pipedrive.
Permanently deletes a lead by its UUID. This action cannot be undone.
Workflow tips:
- Lead ID must be a UUID
- This permanently deletes the lead
- Consider archiving instead (use leads/update with is_archived: true)
- Returns the deleted lead's ID on success
Common use cases:
- Delete a lead: { "id": "adf21080-0e10-11eb-879b-05d71fb426ec" }
Alternative:
- Archive instead of delete: Use leads/update with { "id": "<uuid>", "is_archived": true }
输入参数id必填
Search leads by title, notes, and custom fields.
Searches all leads by title, notes, and/or custom fields using a search term.
This is a wrapper of /v1/itemSearch with a narrower OAuth scope.
Workflow tips:
- Minimum 2 characters for search term (or 1 with exact_match)
- Use exact_match for case-insensitive exact matching
- Filter results by person_id or organization_id (max 2000 leads each)
- fields parameter specifies which fields to search (comma-separated)
- Results include result_score for relevance ranking
- Use start/limit for pagination
Common use cases:
- Search by title: { "term": "acme" }
- Exact match: { "term": "Acme Corp", "exact_match": true }
- Search for person's leads: { "term": "deal", "person_id": 123 }
- Search org's leads: { "term": "proposal", "organization_id": 456 }
输入参数term必填limitstartfieldsperson_idexact_matchinclude_fieldsorganization_id
Get all lead labels (tags/categories).
Returns details of all lead labels available in your Pipedrive account.
Lead labels are used to categorize and organize leads.
Workflow tips:
- This endpoint does not support pagination (all labels returned)
- Labels have UUIDs as identifiers
- Use label UUIDs when creating/updating leads
- Labels have name and color properties
- Results are heavily cached (24 hours) as labels change infrequently
Common use cases:
- List all labels: {}
- Get label IDs for lead creation
- Display available labels to users
Response format:
- Returns array of label objects with: id (UUID), name, color, add_time, update_time
无需输入参数。
Get all lead sources (where leads came from).
Returns all lead sources available in Pipedrive. Lead sources indicate where your leads originated.
Lead sources are pre-defined and cannot be modified. All leads created through the Pipedrive API
will automatically have lead source "API" assigned.
Available lead sources:
- Manually created
- Deal
- Web forms
- Prospector
- Leadbooster (includes Chatbot leads)
- Live chat
- Import
- Website visitors
- Workflow automation
- API
Workflow tips:
- Lead sources are fixed and cannot be edited
- This list may expand as new sources are added
- Results are heavily cached (24 hours) as sources rarely change
- Use for reference and reporting purposes
Common use cases:
- List all sources: {}
- Get source information for reports
- Display available sources to users
无需输入参数。
Create a new lead label.
Required: name + color. Color must be one of: blue, brown, dark-gray, gray, green,
orange, pink, purple, red, yellow.
Common use cases:
- Hot lead: { "name": "Hot", "color": "red" }
- Qualified lead: { "name": "Qualified", "color": "green" }
输入参数name必填color必填
Update an existing lead label.
Provide the label's UUID and any combination of name/color to change.
输入参数id必填namecolor
Delete a lead label by UUID.
Existing leads carrying this label will lose it after deletion.
输入参数id必填
Convert a lead into a deal (asynchronous, two-step flow).
Step 1 (this tool): POST starts the conversion. Returns { id: conversion_id, status: 'queued' | 'running' }.
Step 2 (separate tool): poll leads_convert_status with the lead id AND the conversion_id
returned here, every few seconds, until status === 'completed'. The completed response
includes the resulting deal_id.
Related entities (notes, files, emails, activities) are transferred to the new deal.
输入参数id必填