All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
15.1.1 (2026-02-06)
- Documented three new OAuth2 scopes for field management in v1 README:
deal-fields:full- Allows applications to create, read, update and delete deal fieldsproduct-fields:full- Allows applications to create, read, update and delete product fieldscontact-fields:full- Allows applications to create, read, update and delete person and organization fields
15.1.0 (2026-01-27)
- Added
updated_sincequery parameter toGET /v1/leadsendpoint to filter leads by theirupdate_time - Added
updated_sincequery parameter toGET /v1/notesendpoint to filter notes by theirupdate_time
15.0.0 (2026-01-27)
- Removed deprecated bulk delete endpoints:
DELETE /v1/activitiesDELETE /v1/activityTypesDELETE /v1/dealsDELETE /v1/organizationsDELETE /v1/personsDELETE /v1/stagesPlease use the single delete endpoints instead, for exampleDELETE /api/v2/activities/{id}.
14.9.0 (2026-01-27)
- Added three new visibility flags to
ui_visibilityin organization fields v2 endpoints:org_detail_visible_flag,person_detail_visible_flag, anddeal_detail_visible_flag
14.8.0 (2026-01-27)
- Added
smart_bcc_emailto optionalinclude_fieldsin Persons and Organizations API v2
14.7.1 (2026-01-27)
- Added
subpremisefield to address structures in API v2 (ActivityItemLocation,OrganizationItemAddress,PersonItemPostalAddress) to support apartment/suite numbers
14.7.0 (2026-01-27)
- Added
GET /api/v2/persons/{id}/pictureendpoint to retrieve picture information for a specific person, including ID, file size, and URLs for both 128x128 (thumbnail) and 512x512 (full-size) versions of the person's profile picture
14.6.1 (2026-01-27)
- Removed
is_selectedfrom/api/v2/pipelinesresponse, the field was never returned
14.6.0 (2025-12-05)
- Added three new OAuth2 scopes for field management:
deal-fields:full- Allows applications to create, read, update and delete deal fieldsproduct-fields:full- Allows applications to create, read, update and delete product fieldscontact-fields:full- Allows applications to create, read, update and delete person and organization fields
14.5.0 (2025-12-02)
- Documented the following new v2 endpoints:
GET /api/v2/activityFieldsGET /api/v2/dealFieldsGET /api/v2/organizationFieldsGET /api/v2/personFieldsGET /api/v2/productFieldsGET /api/v2/activityFields/{field_code}GET /api/v2/dealFields/{field_code}GET /api/v2/organizationFields/{field_code}GET /api/v2/personFields/{field_code}GET /api/v2/productFields/{field_code}POST /api/v2/dealFieldsPOST /api/v2/organizationFieldsPOST /api/v2/personFieldsPOST /api/v2/productFieldsDELETE /api/v2/dealFields/{field_code}DELETE /api/v2/organizationFields/{field_code}DELETE /api/v2/personFields/{field_code}DELETE /api/v2/productFields/{field_code}POST /api/v2/dealFields/{field_code}/optionsPOST /api/v2/organizationFields/{field_code}/optionsPOST /api/v2/personFields/{field_code}/optionsPOST /api/v2/productFields/{field_code}/optionsPATCH /api/v2/dealFields/{field_code}/optionsPATCH /api/v2/organizationFields/{field_code}/optionsPATCH /api/v2/personFields/{field_code}/optionsPATCH /api/v2/productFields/{field_code}/optionsDELETE /api/v2/dealFields/{field_code}/optionsDELETE /api/v2/organizationFields/{field_code}/optionsDELETE /api/v2/personFields/{field_code}/optionsDELETE /api/v2/productFields/{field_code}/options
14.4.0 (2025-11-25)
- API v2 configuration for the host base path:
/api/v2instead of/v2. With this, API v1 configuration also changed from/v1to/api/v1, but this does not break backward compatibility as both/api/v1and/v1paths are supported for API v1.
- Added
POST /products/{id}/duplicateendpoint for duplicating an existing product - Added
deal_idquery parameter to the GET/v2/personsendpoint - Added
GET /v1/leadFieldsendpoint for fetching all lead fields
14.3.3 (2025-11-18)
- Prepared
nullable: trueto fields that can return null values in schemas for Field and Roles schemas
14.3.2 (2025-11-18)
- Fixed return type for
filesApi.downloadFilefunction
14.3.1 (2025-11-18)
- Corrected
FieldResponseschema to useGetFieldinstead ofFieldto ensure GET responses accurately reflect all field types returned by the API
14.3.0 (2025-10-06)
- Added
is_archivedfield in search response schemas for deals and leads
14.2.1 (2025-10-03)
- Fixed PHP SDK v2 Configuration to use correct
/v2API endpoints after OAuth token refresh instead of defaulting to/v1
14.2.0 (2025-10-03)
14.1.0 (2025-10-03)
- Added
POST /deals/{id}/products/bulkendpoint for creating multiple deal products at once (max 100 per request) - Added
DELETE /deals/{id}/productsendpoint for deleting multiple deal products at once (max 100 per request)
14.0.0 (2025-10-03)
- Removed deprecated
person_name,organization_name, andemaillead fields from itemSearch endpoints
13.2.5 (2025-10-03)
- Fixed incorrect description for max
limitparameter in itemSearch v2 endpoint
13.2.3 (2025-10-03)
13.2.2 (2025-09-08)
- Fixed incorrect
custom_fieldsschema implementations by using the proper shared definition fromcustom-fields.yaml
13.2.1 (2025-09-08)
- Documented the
custom_fieldsin /v2 api for create organization and update deal
13.2.0 (2025-09-08)
- Documented the
nameproperty in the Webhooks API for the following endpoints:GET /v1/webhooksPOST /v1/webhooks
13.1.0 (2025-09-08)
- Add documentation for product images functionality:
GET/api/v2/products/{id}/imagesendpointPOST/api/v2/products/{id}/imagesendpointPUT/api/v2/products/{id}/imagesendpointDELETE/api/v2/products/{id}/imagesendpoint
13.0.0 (2025-09-08)
- Removed all endpoints of the Subscriptions feature
- GET /v1/subscriptions/{id}
- GET /v1/subscriptions/find/{dealId}
- GET /v1/subscriptions/{id}/payments
- POST /v1/subscriptions/recurring
- POST /v1/subscriptions/installment
- PUT /v1/subscriptions/recurring/{id}
- PUT /v1/subscriptions/installment/{id}
- PUT /v1/subscriptions/recurring/{id}/cancel
- DELETE /v1/subscriptions/{id}
12.0.2 (2025-07-07)
- Added
custom_fieldstype todeal,person,organization,productschemas
12.0.1 (2025-06-25)
- Removed not supported
add_time,update_timeandstage_change_timefromPATCH /v2/deals/:idrequest body
12.0.0 (2025-06-17)
- Removed
deals_summaryfromGET /v1/stages/:idandGET /v1/pipelines/:id - Removed
totals_convert_currencyquery parameter fromGET /v1/pipelines/:id - Removed
everyonequery parameter fromGET /v1/stages/:id
11.1.1 (2025-06-09)
- Documented
addressproperty in the Organization v2 API for add and update endpoints:POST /v2/organizationsPATCH /v2/organizations/{id}
11.1.0 (2025-05-26)
- Fixed the OAuth scopes of Deal to Lead conversion and Lead to Deal conversion endpoints
- Added
smart_bcc_emailto optionalinclude_fieldsin Deals API v2 - Added
is_archivedto request bodies of POSTdealsendpoints and PUT/PATCH/deals/:idendpoints - Added
archive_timeto request bodies of POSTdealsendpoints
11.0.0 (2025-05-09)
- BREAKING CHANGE. The API token is sent in the
x-api-tokenheader instead ofapi_tokenquery parameter. The API key configuration must be updated as follows:
// previous versions
$config = (new Pipedrive\versions\v1\Configuration())->setApiKey('api_token', 'YOUR_API_KEY');
// starting from this version
$config = (new Pipedrive\versions\v1\Configuration())->setApiKey('x-api-token', 'YOUR_API_KEY');10.0.0 (2025-05-06)
- Fixed the OAuth scope of "Add a follower to a product" endpoint in API v2
- Added
creator_user_idto responses of Activities v2 endpoints - Added
marketing_statusdocumentation to Persons v2 endpoints - Added archived deals/leads endpoints:
GET /v1/deals/archivedGET /v2/deals/archivedGET /v1/deals/timeline/archivedGET /v1/deals/summary/archivedGET /v1/leads/archived
- Added
is_archivedandarchive_timeproperties to deals endpoints response - Added option to use
sort_by=due_datesorting forGET /api/v2/activities - Added option to use
done=true/falsequick filter forGET /api/v2/activities - Added
project_idandpinned_to_project_flagquery parameter to the GET/notesendpoint - Added
project_idandpinned_to_project_flagrequest bodies to the POST/PUT/notesendpoint - Added
project_idandpinned_to_project_flagto success responses of GET/POST/PUT
- Deprecated
GET /v1/activitiesin favor ofGET /api/v2/activities - Deprecated
GET /v1/activities/collectionin favor ofGET /api/v2/activities - Deprecated
GET /v1/activities/{id}in favor ofGET /api/v2/activities/{id} - Deprecated
POST /v1/activitiesin favor ofPOST /api/v2/activities - Deprecated
PUT /v1/activities/{id}in favor ofPATCH /api/v2/activities/{id} - Deprecated
DELETE /v1/activities/{id}in favor ofDELETE /api/v2/activities/{id} - Deprecated
DELETE /v1/activitiesin favor ofDELETE /api/v2/activities/{id} - Deprecated
GET /v1/dealsin favor ofGET /api/v2/deals - Deprecated
GET /v1/deals/collectionin favor ofGET /api/v2/deals - Deprecated
GET /v1/deals/{id}in favor ofGET /api/v2/deals/{id} - Deprecated
GET /v1/deals/searchin favor ofGET /api/v2/deals/search - Deprecated
POST /v1/dealsin favor ofPOST /api/v2/deals - Deprecated
PUT /v1/deals/{id}in favor ofPATCH /api/v2/deals - Deprecated
DELETE /v1/deals/{id}in favor ofDELETE /api/v2/deals/{id} - Deprecated
DELETE /v1/dealsin favor ofDELETE /api/v2/deals/{id} - Deprecated
GET /v1/deals/{id}/activitiesin favor ofGET /api/v2/activities?deal_id={id} - Deprecated
GET /v1/deals/{id}/personsin favor ofGET /api/v2/persons?deal_id={id} - Deprecated
GET /v1/personsin favor ofGET /api/v2/persons - Deprecated
GET /v1/persons/collectionin favor ofGET /api/v2/persons - Deprecated
GET /v1/persons/{id}in favor ofGET /api/v2/persons/{id} - Deprecated
GET /v1/persons/searchin favor ofGET /api/v2/persons/search - Deprecated
POST /v1/personsin favor ofPOST /api/v2/persons - Deprecated
PUT /v1/persons/{id}in favor ofPATCH /api/v2/persons/{id} - Deprecated
DELETE /v1/persons/{id}in favor ofDELETE /api/v2/persons/{id} - Deprecated
DELETE /v1/personsin favor ofDELETE /api/v2/persons/{id} - Deprecated
GET /v1/persons/{id}/dealsin favor ofGET /api/v2/deals?person_id={id} - Deprecated
GET /v1/persons/{id}/activitiesin favor ofGET /api/v2/activities?person_id={id} - Deprecated
GET /v1/organizationsin favor ofGET /api/v2/organizations - Deprecated
GET /v1/organizations/collectionin favor ofGET /api/v2/organizations - Deprecated
GET /v1/organizations/{id}in favor ofGET /api/v2/organizations/{id} - Deprecated
GET /v1/organizations/searchin favor ofGET /api/v2/organizations/search - Deprecated
POST /v1/organizationsin favor ofPOST /api/v2/organizations - Deprecated
PUT /v1/organizations/{id}in favor ofPATCH /api/v2/organizations/{id} - Deprecated
DELETE /v1/organizations/{id}in favor ofDELETE /api/v2/organizations/{id} - Deprecated
DELETE /v1/organizationsin favor ofDELETE /api/v2/organizations/{id} - Deprecated
GET /v1/organizations/{id}/dealsin favor ofGET /api/v2/deals?org_id={id} - Deprecated
GET /v1/organizations/{id}/activitiesin favor ofGET /api/v2/activities?org_id={id} - Deprecated
GET /v1/organizations/{id}/personsin favor ofGET /api/v2/persons?org_id={id} - Deprecated
GET /v1/productsin favor ofGET /api/v2/products - Deprecated
GET /v1/products/{id}in favor ofGET /api/v2/products/{id} - Deprecated
GET /v1/products/searchin favor ofGET /api/v2/products/search - Deprecated
POST /v1/productsin favor ofPOST /api/v2/products - Deprecated
PUT /v1/products/{id}in favor ofPATCH /api/v2/products/{id} - Deprecated
DELETE /v1/products/{id}in favor ofDELETE /api/v2/products/{id} - Deprecated
GET /v1/pipelinesin favor ofGET /api/v2/pipelines - Deprecated
GET /v1/pipelines/{id}in favor ofGET /api/v2/pipelines/{id} - Deprecated
POST /v1/pipelinesin favor ofPOST /api/v2/pipelines - Deprecated
PUT /v1/pipelines/{id}in favor ofPATCH /api/v2/pipelines/{id} - Deprecated
DELETE /v1/pipelines/{id}in favor ofDELETE /api/v2/pipelines/{id} - Deprecated
GET /v1/stagesin favor ofGET /api/v2/stages - Deprecated
GET /v1/stages/{id}in favor ofGET /api/v2/stages/{id} - Deprecated
POST /v1/stagesin favor ofPOST /api/v2/stages - Deprecated
PUT /v1/stages/{id}in favor ofPATCH /api/v2/stages/{id} - Deprecated
DELETE /v1/stages/{id}in favor ofDELETE /api/v2/stages/{id} - Deprecated
DELETE /v1/stagesin favor ofDELETE /api/v2/stages/{id} - Deprecated
GET /v1/itemSearchin favor ofGET /api/v2/itemSearch - Deprecated
GET /v1/itemSearch/fieldin favor ofGET /api/v2/itemSearch/field - Updated non archived deals/leads endpoint description to specify that following endpoints do not return archived items:
GET /v1/dealsGET /v2/dealsGET /v1/deals/timelineGET /v1/deals/summaryGET /v1/leads
- Removed deprecated
archived_statusquery parameter from leads endpoints
9.0.0 (2025-03-31)
- Updated
item_pricefield data type in products from integer -> number for products and deal products
- Added missing
partnershipvalue for user access apps list
- Notice informing the users of the upcoming Subscriptions API deprecation:
GET /v1/subscriptions/{id}GET /v1/subscriptions/find/{dealId}GET /v1/subscriptions/{id}/paymentsPOST /v1/subscriptions/recurringPOST /v1/subscriptions/installmentPUT /v1/subscriptions/recurring/{id}PUT /v1/subscriptions/installment/{id}PUT /v1/subscriptions/recurring/{id}/cancelDELETE /v1/subscriptions/{id}
- Updated Webhooks endpoints to v2, including available event_action and event_object properties
- Added
GET /v2/deals/installmentsendpoint to fetch all installments added to a list of deals with cursor pagination - Added
POST /v2/deals/{id}/installmentsendpoint to add an installment to a deal - Added
PATCH /v2/deals/{id}/installments/{installment_id}endpoint to edit an installment - Added
DELETE /v2/deals/{id}/installments/{installment_id}endpoint to delete an installment
8.1.5 (2025-03-17)
- Added deal_id, person_id, org_id and lead_id quick filters for GET /api/v2/activities endpoint.
- Added AdditionalData to the v2 schemas:
- deal
- stage
- pipeline
- activity
8.1.4 (2025-03-11)
- Added AdditionalData object schema to GetOrganizations and GetPersons data
8.1.3 (2025-03-05)
- Fixed AdditionalData object schema
8.1.2 (2025-02-10)
- Updated supported enum values for webhook types in the
GET /webhooksendpoint
8.1.0 (2025-02-06)
- Added “pipeline_id” query parameter to GET /api/v1/deals/summary endpoint
- Updated list of lead label colors to include 'brown', 'dark-gray', 'orange', 'pink'
8.0.0 (2025-01-30)
- Added compatibility for both API v1 and v2 endpoints. See migration guide for more details
- Add documentation for installments functionality:
POST/v1/deals/{id}/productsendpointPUT/v1/deals/{id}/products/{product_attachment_id}endpointDELETE/v1/deals/{id}/products/{product_attachment_id}endpointPOST/v2/deals/{id}/productsendpointPATCH/v2/deals/{id}/products/{product_attachment_id}endpointDELETE/v2/deals/{id}/products/{product_attachment_id}endpoint
- Added the field “notes” to product prices in the body and response for v1 and v2
- Added the field “overhead_cost” to the product variation prices in the response for v1
- Added the field “direct_cost” to the product variation prices in the response and body for v2
- Add "custom_fields" query paremeter to GET /api/v2/products
- Reduce maximum
limitquery param to 100 for the following endpoints- GET v1/files
- GET v1/deals/{id}/files
- GET v1/organizations/{id}/files
- GET v1/persons/{id}/files
- GET /v1/products/{id}/files
7.1.0 (2024-09-12)
- Added
notesfield to Prices in:GETandPOST/v2/products/{productId}/variationsendpointsPATCH/api/v2/products/{productId}/variations/{productVariationId}endpoint
- Notice informing the users of the upcoming Activity Invites feature deprecation:
POSTandPUT/v1/activitiesendpoints
- Fixed response schemas for GET
/v1/<entity>Fieldsrequests - Added missing "description" parameter to "Add a product" and "Update a product" endpoints
- Added the missing "label_ids" field to the contacts endpoints.
- Added "filter_id" to GET /api/v2/deals documentation
- Updated default values for "billing_frequency_cycles", "billing_start_date" fields
7.0.0 (2024-09-11)
- Removed request and response fields
durationandduration_unitfor all endpoints of deals and products using them
6.10.1 (2024-06-07)
- Cleanup unused company settings
6.10.0 (2024-06-07)
Added acv, mrr, arr, acv_currency, mrr_currency, and arr_currency to the BaseDeal entity and the following endpoints' response:
GET,POST/v1/dealsGET,PUT/v1/deals/{id}GET/v1/deals/timelinePUT/v1/deals/{id}/mergePOST/v1/deals/{id}/duplicate
6.9.0 (2024-05-30)
- Fixed documentation: property
valueof Lead is nullable.
6.8.1 (2024-05-29)
- Removed mention of address autocompletion by Google in Add Activities endpoint and other entities(organization, person, deal) fields.
6.8.0 (2024-05-22)
- Added
origin,origin_id,channelandchannel_idparameters representing the Source for Lead and Deal entity.
6.7.0 (2024-05-17)
- Added documentation for new endpoints
/deals/{id}/changelog,/persons/{id}/changelogand/organizations/{id}/changelog. - Added
is_deletedparameter for/v1/users/*responses. - Added
billing_frequency,billing_frequency_cyclesandbilling_start_datefields toGET,POSTandPUT/v1/deals/{id}/productsendpointsGET,POSTandPATCH/v2/deals/{id}/productsendpointsGET/v2/deals/productsendpoint
- Added
billing_frequency,billing_frequency_cyclesfields toGET,POSTandPUT/v1/productsendpointsGET/v1/products/{id}endpointGET,POSTandPATCH/v2/productsendpointsGET/v2/products/{id}endpoints
- Added RawData trait to models to allow access to all response data objects
6.6.0 (2024-04-02)
- Documentation for new endpoint
/deals/{id}/participantsChangelog
6.5.1 (2024-04-02)
won_time,lost_timeandclose_timeparameters for thePOST /v1/dealsandPUT /v1/deals/{id}endpoints
6.5.0 (2024-04-02)
- Documentation for
/meetings/userProviderLinksendpoints
6.4.0 (2024-04-02)
lead_idas an acceptable body parameter for thePOST /v1/callLogsendpoint
6.3.1 (2024-04-02)
- Mismatches of YAML responses in related_objects of some deal endpoints
6.3.0 (2023-10-16)
- Add
Projects,ProjectTemplatesandTaskspublic routes.
6.2.0 (2023-10-11)
- Document
labelparameter for the deal, person, org entities.
6.1.3 (2023-10-06)
- Incorrect type of
optionsfor thePOST and PUT /dealFields, /personFields and /organizationFieldsendpoints
6.1.2 (2023-09-12)
- Fixed incorrect response schema for the
GET /deals/{id}/productsendpoint
6.1.1 (2023-09-12)
- Added further details on behavior of
end_dateforPUT /v1/subscriptions/recurring/{id}/cancel
6.1.0 (2023-09-05)
- Resolved namespace issues in
$openAPITypesforProductAttachmentDetails,AddProductAttachmentDetails,BaseMailThread, andFieldTypeAsString(#91) models
6.0.0 (2023-08-30)
- Removed request and response fields
sum_no_discountforGET /deals/{id}/products,POST /deals/{id}/productsandPUT /deals/{id}/products/{product_attachment_id}
5.1.0 (2023-08-30)
- Fixed incorrect parameter descriptions for the
PUT /deals/{id}endpoint
5.0.0 (2023-08-16)
Release a stable version of 5.0.0 which is a complete rewrite of the client-php. With version 5 of the SDK, we have moved to an open-source SDK generator called OpenAPI Generator.
5.0.0-beta.1 (2023-07-24)
- Added list of searchable custom field types to persons, organizations, products and deals search endpoints descriptions.
- Changed
product_idbody parameter to be optional for Update Deal Product endpoint - Schemas for
call-logsas they only includedbase-responsewithout additional properties in the response schema
5.0.0-beta.0 (2023-06-14)
- Breaking switch to SDK generated with openapi-generator