Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ The file format of it is based on [Keep a Changelog](http://keepachangelog.com/e
For public Changelog covering all changes done to Pipedrive’s API, webhooks and app extensions platforms, see [public Changelog](https://pipedrive.readme.io/docs/changelog) with discussion area in [Developers Community](https://devcommunity.pipedrive.com/c/documentation/changelog/19).

## [Unreleased]
### Added
- Added `POST /deals/{id}/products/bulk` endpoint for creating multiple deal products at once (max 100 per request)
- Added `DELETE /deals/{id}/products` endpoint for deleting multiple deal products at once (max 100 per request)

## [30.0.0] - 2025-10-06
### Changed
Expand Down
2 changes: 2 additions & 0 deletions docs/v2.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,14 @@ BetaApi | uploadProductImage | **POST** /products/{id}/images | Upload an image
DealsApi | addDeal | **POST** /deals | Add a new deal
DealsApi | addDealFollower | **POST** /deals/{id}/followers | Add a follower to a deal
DealsApi | addDealProduct | **POST** /deals/{id}/products | Add a product to a deal
DealsApi | addManyDealProducts | **POST** /deals/{id}/products/bulk | Add multiple products to a deal
DealsApi | convertDealToLead | **POST** /deals/{id}/convert/lead | Convert a deal to a lead (BETA)
DealsApi | deleteAdditionalDiscount | **DELETE** /deals/{id}/discounts/{discount_id} | Delete a discount from a deal
DealsApi | deleteDeal | **DELETE** /deals/{id} | Delete a deal
DealsApi | deleteDealFollower | **DELETE** /deals/{id}/followers/{follower_id} | Delete a follower from a deal
DealsApi | deleteDealProduct | **DELETE** /deals/{id}/products/{product_attachment_id} | Delete an attached product from a deal
DealsApi | deleteInstallment | **DELETE** /deals/{id}/installments/{installment_id} | Delete an installment from a deal
DealsApi | deleteManyDealProducts | **DELETE** /deals/{id}/products | Delete many products from a deal
DealsApi | getAdditionalDiscounts | **GET** /deals/{id}/discounts | List discounts added to a deal
DealsApi | getArchivedDeals | **GET** /deals/archived | Get all archived deals
DealsApi | getDeal | **GET** /deals/{id} | Get details of a deal
Expand Down
231 changes: 219 additions & 12 deletions src/versions/v2/api/deals-api.ts

Large diffs are not rendered by default.

37 changes: 37 additions & 0 deletions src/versions/v2/models/add-many-deal-product-response.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
/* tslint:disable */
/* eslint-disable */
/**
* Pipedrive API v2
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
*
* The version of the OpenAPI document: 2.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/


// May contain unused imports in some cases
// @ts-ignore
import { GetDealsProductsResponseDataInner } from './get-deals-products-response-data-inner';

/**
*
* @export
* @interface AddManyDealProductResponse
*/
export interface AddManyDealProductResponse {
/**
* If the response is successful or not
* @type {boolean}
*/
'success'?: boolean;
/**
* Array of created deal products
* @type {Array<GetDealsProductsResponseDataInner>}
*/
'data'?: Array<GetDealsProductsResponseDataInner>;
}

32 changes: 32 additions & 0 deletions src/versions/v2/models/create-many-deal-product-request.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
/* tslint:disable */
/* eslint-disable */
/**
* Pipedrive API v2
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
*
* The version of the OpenAPI document: 2.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/


// May contain unused imports in some cases
// @ts-ignore
import { AddDealProductRequest } from './add-deal-product-request';

/**
*
* @export
* @interface CreateManyDealProductRequest
*/
export interface CreateManyDealProductRequest {
/**
* Array of products to attach to the deal. See the single product endpoint (https://developers.pipedrive.com/docs/api/v1/Deals#addDealProduct) for the expected format of array items.
* @type {Array<AddDealProductRequest>}
*/
'data': Array<AddDealProductRequest>;
}

Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
/* tslint:disable */
/* eslint-disable */
/**
* Pipedrive API v2
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
*
* The version of the OpenAPI document: 2.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/



/**
*
* @export
* @interface DeleteManyDealProductResponseAdditionalData
*/
export interface DeleteManyDealProductResponseAdditionalData {
/**
* Whether there are more products to delete (when the deal has more than 100 products)
* @type {boolean}
*/
'more_items_in_collection'?: boolean;
}

29 changes: 29 additions & 0 deletions src/versions/v2/models/delete-many-deal-product-response-data.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
/* tslint:disable */
/* eslint-disable */
/**
* Pipedrive API v2
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
*
* The version of the OpenAPI document: 2.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/



/**
*
* @export
* @interface DeleteManyDealProductResponseData
*/
export interface DeleteManyDealProductResponseData {
/**
* Array of IDs of products that were deleted from the deal
* @type {Array<number>}
*/
'ids'?: Array<number>;
}

45 changes: 45 additions & 0 deletions src/versions/v2/models/delete-many-deal-product-response.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
/* tslint:disable */
/* eslint-disable */
/**
* Pipedrive API v2
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
*
* The version of the OpenAPI document: 2.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/


// May contain unused imports in some cases
// @ts-ignore
import { DeleteManyDealProductResponseAdditionalData } from './delete-many-deal-product-response-additional-data';
// May contain unused imports in some cases
// @ts-ignore
import { DeleteManyDealProductResponseData } from './delete-many-deal-product-response-data';

/**
*
* @export
* @interface DeleteManyDealProductResponse
*/
export interface DeleteManyDealProductResponse {
/**
* If the response is successful or not
* @type {boolean}
*/
'success'?: boolean;
/**
*
* @type {DeleteManyDealProductResponseData}
*/
'data'?: DeleteManyDealProductResponseData;
/**
*
* @type {DeleteManyDealProductResponseAdditionalData}
*/
'additional_data'?: DeleteManyDealProductResponseAdditionalData | null;
}

5 changes: 5 additions & 0 deletions src/versions/v2/models/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ export * from './add-deal-request';
export * from './add-follower-response';
export * from './add-follower-response-all-of';
export * from './add-installment-request-body';
export * from './add-many-deal-product-response';
export * from './add-organization-request';
export * from './add-person-request';
export * from './add-person-request-emails-inner';
Expand All @@ -32,6 +33,7 @@ export * from './base-product-all-of';
export * from './base-product-all-of1';
export * from './base-response';
export * from './convert-lead-to-deal-request';
export * from './create-many-deal-product-request';
export * from './deal-item';
export * from './deal-item1';
export * from './deal-product-request-body';
Expand All @@ -48,6 +50,9 @@ export * from './delete-follower-response';
export * from './delete-follower-response-data';
export * from './delete-installment-response';
export * from './delete-installment-response-data';
export * from './delete-many-deal-product-response';
export * from './delete-many-deal-product-response-additional-data';
export * from './delete-many-deal-product-response-data';
export * from './delete-organization-response';
export * from './delete-organization-response-data';
export * from './delete-person-response';
Expand Down