From a047130c56b674121a16eadfc092d83eb2014bab Mon Sep 17 00:00:00 2001 From: pipedrive-bot Date: Thu, 12 Feb 2026 08:47:16 +0000 Subject: [PATCH] Build 312 - version-minor --- CHANGELOG.md | 2 + .../v1/models/add-participants-response.ts | 8 +- src/versions/v1/models/add-person-request.ts | 2 +- .../v1/models/basic-person-request.ts | 6 +- ...-participant-item-person-id-email-inner.ts | 39 +++++++++ ...-participant-item-person-id-phone-inner.ts | 39 +++++++++ .../models/deal-participant-item-person-id.ts | 65 +++++++++++++++ ...deal-participant-item-related-item-data.ts | 34 ++++++++ .../v1/models/deal-participant-item.ts | 81 +++++++++++++++++++ .../models/get-deal-participants-response.ts | 10 +-- src/versions/v1/models/index.ts | 7 +- src/versions/v1/models/merge-person-item.ts | 6 +- src/versions/v1/models/person-all-of.ts | 8 +- src/versions/v1/models/person.ts | 6 +- .../persons-collection-response-object.ts | 6 +- .../v1/models/update-person-request.ts | 2 +- 16 files changed, 292 insertions(+), 29 deletions(-) create mode 100644 src/versions/v1/models/deal-participant-item-person-id-email-inner.ts create mode 100644 src/versions/v1/models/deal-participant-item-person-id-phone-inner.ts create mode 100644 src/versions/v1/models/deal-participant-item-person-id.ts create mode 100644 src/versions/v1/models/deal-participant-item-related-item-data.ts create mode 100644 src/versions/v1/models/deal-participant-item.ts diff --git a/CHANGELOG.md b/CHANGELOG.md index 0ae148ce..04e7a360 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ 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] +### Fixed +- Fixed `GET /v1/deals/{id}/participants` and `POST /v1/deals/{id}/participants` response schemas to accurately represent the API response structure. Added `DealParticipantItem` schema with proper nesting of `email` and `phone` fields within `person_id` object, replacing incorrect `PersonItem` reference. ## [31.3.0] - 2026-02-06 ### Added diff --git a/src/versions/v1/models/add-participants-response.ts b/src/versions/v1/models/add-participants-response.ts index 777ee174..75c90bdd 100644 --- a/src/versions/v1/models/add-participants-response.ts +++ b/src/versions/v1/models/add-participants-response.ts @@ -15,10 +15,10 @@ // May contain unused imports in some cases // @ts-ignore -import { AddParticipantsResponseData } from './add-participants-response-data'; +import { AddParticipantsResponseRelatedObjects } from './add-participants-response-related-objects'; // May contain unused imports in some cases // @ts-ignore -import { AddParticipantsResponseRelatedObjects } from './add-participants-response-related-objects'; +import { DealParticipantItem } from './deal-participant-item'; /** * @@ -33,9 +33,9 @@ export interface AddParticipantsResponse { 'success'?: boolean; /** * - * @type {AddParticipantsResponseData} + * @type {DealParticipantItem} */ - 'data'?: AddParticipantsResponseData; + 'data'?: DealParticipantItem; /** * * @type {AddParticipantsResponseRelatedObjects} diff --git a/src/versions/v1/models/add-person-request.ts b/src/versions/v1/models/add-person-request.ts index 1bb1bfba..522968a5 100644 --- a/src/versions/v1/models/add-person-request.ts +++ b/src/versions/v1/models/add-person-request.ts @@ -24,7 +24,7 @@ import { BasicPersonRequest } from './basic-person-request'; import { BasicPersonRequestEmailInner } from './basic-person-request-email-inner'; // May contain unused imports in some cases // @ts-ignore -import { PersonAllOfPhoneInner } from './person-all-of-phone-inner'; +import { DealParticipantItemPersonIdPhoneInner } from './deal-participant-item-person-id-phone-inner'; /** * @type AddPersonRequest diff --git a/src/versions/v1/models/basic-person-request.ts b/src/versions/v1/models/basic-person-request.ts index e4dae8bb..8cc4c8cc 100644 --- a/src/versions/v1/models/basic-person-request.ts +++ b/src/versions/v1/models/basic-person-request.ts @@ -18,7 +18,7 @@ import { BasicPersonRequestEmailInner } from './basic-person-request-email-inner'; // May contain unused imports in some cases // @ts-ignore -import { PersonAllOfPhoneInner } from './person-all-of-phone-inner'; +import { DealParticipantItemPersonIdPhoneInner } from './deal-participant-item-person-id-phone-inner'; /** * @@ -43,9 +43,9 @@ export interface BasicPersonRequest { 'email'?: Array; /** * A phone number supplied as a string or an array of phone objects related to the person. The structure of the array is as follows: `[{ \"value\": \"12345\", \"primary\": \"true\", \"label\": \"mobile\" }]`. Please note that only `value` is required. - * @type {Array} + * @type {Array} */ - 'phone'?: Array; + 'phone'?: Array; /** * The label assigned to the person. When the `label` field is updated, the `label_ids` field value will be overwritten by the `label` field value. * @type {number} diff --git a/src/versions/v1/models/deal-participant-item-person-id-email-inner.ts b/src/versions/v1/models/deal-participant-item-person-id-email-inner.ts new file mode 100644 index 00000000..9584f648 --- /dev/null +++ b/src/versions/v1/models/deal-participant-item-person-id-email-inner.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Pipedrive API v1 + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.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 DealParticipantItemPersonIdEmailInner +*/ +export interface DealParticipantItemPersonIdEmailInner { + /** + * The email address + * @type {string} + */ + 'value'?: string; + /** + * Boolean that indicates if email is primary for the person or not + * @type {boolean} + */ + 'primary'?: boolean; + /** + * The label that indicates the type of the email. (Possible values - work, home or other) + * @type {string} + */ + 'label'?: string; +} + diff --git a/src/versions/v1/models/deal-participant-item-person-id-phone-inner.ts b/src/versions/v1/models/deal-participant-item-person-id-phone-inner.ts new file mode 100644 index 00000000..196b836e --- /dev/null +++ b/src/versions/v1/models/deal-participant-item-person-id-phone-inner.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Pipedrive API v1 + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.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 DealParticipantItemPersonIdPhoneInner +*/ +export interface DealParticipantItemPersonIdPhoneInner { + /** + * The phone number + * @type {string} + */ + 'value'?: string; + /** + * Boolean that indicates if phone number is primary for the person or not + * @type {boolean} + */ + 'primary'?: boolean; + /** + * The label that indicates the type of the phone number. (Possible values - work, home, mobile or other) + * @type {string} + */ + 'label'?: string; +} + diff --git a/src/versions/v1/models/deal-participant-item-person-id.ts b/src/versions/v1/models/deal-participant-item-person-id.ts new file mode 100644 index 00000000..35b0adfc --- /dev/null +++ b/src/versions/v1/models/deal-participant-item-person-id.ts @@ -0,0 +1,65 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Pipedrive API v1 + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.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 { DealParticipantItemPersonIdEmailInner } from './deal-participant-item-person-id-email-inner'; +// May contain unused imports in some cases +// @ts-ignore +import { DealParticipantItemPersonIdPhoneInner } from './deal-participant-item-person-id-phone-inner'; + +/** +* The person data associated with the participant +* @export +* @interface DealParticipantItemPersonId +*/ +export interface DealParticipantItemPersonId { + /** + * Whether the person is active or not + * @type {boolean} + */ + 'active_flag'?: boolean; + /** + * The name of the person + * @type {string} + */ + 'name'?: string; + /** + * An email address as a string or an array of email objects related to the person. The structure of the array is as follows: `[{ \"value\": \"mail@example.com\", \"primary\": \"true\", \"label\": \"main\" }]`. Please note that only `value` is required. + * @type {Array} + */ + 'email'?: Array; + /** + * A phone number supplied as a string or an array of phone objects related to the person. The structure of the array is as follows: `[{ \"value\": \"12345\", \"primary\": \"true\", \"label\": \"mobile\" }]`. Please note that only `value` is required. + * @type {Array} + */ + 'phone'?: Array; + /** + * The ID of the owner of the person + * @type {number} + */ + 'owner_id'?: number; + /** + * The ID of the company related to the person + * @type {number} + */ + 'company_id'?: number; + /** + * The ID of the person + * @type {number} + */ + 'value'?: number; +} + diff --git a/src/versions/v1/models/deal-participant-item-related-item-data.ts b/src/versions/v1/models/deal-participant-item-related-item-data.ts new file mode 100644 index 00000000..3a4e97ce --- /dev/null +++ b/src/versions/v1/models/deal-participant-item-related-item-data.ts @@ -0,0 +1,34 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Pipedrive API v1 + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.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. + */ + + + +/** +* Information about the related deal +* @export +* @interface DealParticipantItemRelatedItemData +*/ +export interface DealParticipantItemRelatedItemData { + /** + * The ID of the deal + * @type {number} + */ + 'deal_id'?: number; + /** + * The title of the deal + * @type {string} + */ + 'title'?: string; +} + diff --git a/src/versions/v1/models/deal-participant-item.ts b/src/versions/v1/models/deal-participant-item.ts new file mode 100644 index 00000000..1561d64d --- /dev/null +++ b/src/versions/v1/models/deal-participant-item.ts @@ -0,0 +1,81 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Pipedrive API v1 + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.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 { DealParticipantItemPersonId } from './deal-participant-item-person-id'; +// May contain unused imports in some cases +// @ts-ignore +import { DealParticipantItemRelatedItemData } from './deal-participant-item-related-item-data'; +// May contain unused imports in some cases +// @ts-ignore +import { GetUserResponse } from './get-user-response'; +// May contain unused imports in some cases +// @ts-ignore +import { Person } from './person'; + +/** +* +* @export +* @interface DealParticipantItem +*/ +export interface DealParticipantItem { + /** + * The ID of the participant + * @type {number} + */ + 'id'?: number; + /** + * + * @type {DealParticipantItemPersonId} + */ + 'person_id'?: DealParticipantItemPersonId; + /** + * The date and time when the participant was added. Format: YYYY-MM-DD HH:MM:SS + * @type {string} + */ + 'add_time'?: string; + /** + * Whether the participant is active or not + * @type {boolean} + */ + 'active_flag'?: boolean; + /** + * + * @type {DealParticipantItemRelatedItemData} + */ + 'related_item_data'?: DealParticipantItemRelatedItemData; + /** + * + * @type {Person} + */ + 'person'?: Person; + /** + * + * @type {GetUserResponse} + */ + 'added_by_user_id'?: GetUserResponse; + /** + * The type of the related item + * @type {string} + */ + 'related_item_type'?: string; + /** + * The ID of the related item + * @type {number} + */ + 'related_item_id'?: number; +} + diff --git a/src/versions/v1/models/get-deal-participants-response.ts b/src/versions/v1/models/get-deal-participants-response.ts index 57552172..70be8f07 100644 --- a/src/versions/v1/models/get-deal-participants-response.ts +++ b/src/versions/v1/models/get-deal-participants-response.ts @@ -15,13 +15,13 @@ // May contain unused imports in some cases // @ts-ignore -import { GetDealsResponseRelatedObjects } from './get-deals-response-related-objects'; +import { DealParticipantItem } from './deal-participant-item'; // May contain unused imports in some cases // @ts-ignore -import { GetFieldsResponseAllOfAdditionalData } from './get-fields-response-all-of-additional-data'; +import { GetDealsResponseRelatedObjects } from './get-deals-response-related-objects'; // May contain unused imports in some cases // @ts-ignore -import { Person } from './person'; +import { GetFieldsResponseAllOfAdditionalData } from './get-fields-response-all-of-additional-data'; /** * @@ -36,9 +36,9 @@ export interface GetDealParticipantsResponse { 'success'?: boolean; /** * The array of participants - * @type {Array} + * @type {Array} */ - 'data'?: Array; + 'data'?: Array; /** * * @type {GetFieldsResponseAllOfAdditionalData} diff --git a/src/versions/v1/models/index.ts b/src/versions/v1/models/index.ts index 6216b122..83a8b4c0 100644 --- a/src/versions/v1/models/index.ts +++ b/src/versions/v1/models/index.ts @@ -56,7 +56,6 @@ export * from './add-organization-request-all-of'; export * from './add-organization-response'; export * from './add-organization-response-all-of'; export * from './add-participants-response'; -export * from './add-participants-response-data'; export * from './add-participants-response-related-objects'; export * from './add-person-follower-request'; export * from './add-person-follower-response'; @@ -153,6 +152,11 @@ export * from './deal-non-strict-with-details-all-of-stay-in-pipeline-stages'; export * from './deal-organization-data-with-id'; export * from './deal-organization-data-with-id-all-of'; export * from './deal-organization-data-with-id-all-of1'; +export * from './deal-participant-item'; +export * from './deal-participant-item-person-id'; +export * from './deal-participant-item-person-id-email-inner'; +export * from './deal-participant-item-person-id-phone-inner'; +export * from './deal-participant-item-related-item-data'; export * from './deal-person-data-with-id'; export * from './deal-person-data-with-id-all-of'; export * from './deal-person-data-with-id-all-of1'; @@ -622,7 +626,6 @@ export * from './permission-set'; export * from './person'; export * from './person-all-of'; export * from './person-all-of-email-inner'; -export * from './person-all-of-phone-inner'; export * from './person-all-of-picture-id'; export * from './person-count-and-email-info'; export * from './person-count-and-email-info-all-of'; diff --git a/src/versions/v1/models/merge-person-item.ts b/src/versions/v1/models/merge-person-item.ts index 413d045b..2d349d3f 100644 --- a/src/versions/v1/models/merge-person-item.ts +++ b/src/versions/v1/models/merge-person-item.ts @@ -18,13 +18,13 @@ import { AdditionalMergePersonInfo } from './additional-merge-person-info'; // May contain unused imports in some cases // @ts-ignore -import { PersonAllOf } from './person-all-of'; +import { DealParticipantItemPersonIdPhoneInner } from './deal-participant-item-person-id-phone-inner'; // May contain unused imports in some cases // @ts-ignore -import { PersonAllOfEmailInner } from './person-all-of-email-inner'; +import { PersonAllOf } from './person-all-of'; // May contain unused imports in some cases // @ts-ignore -import { PersonAllOfPhoneInner } from './person-all-of-phone-inner'; +import { PersonAllOfEmailInner } from './person-all-of-email-inner'; // May contain unused imports in some cases // @ts-ignore import { PersonAllOfPictureId } from './person-all-of-picture-id'; diff --git a/src/versions/v1/models/person-all-of.ts b/src/versions/v1/models/person-all-of.ts index 49b2288a..bb5a5ff6 100644 --- a/src/versions/v1/models/person-all-of.ts +++ b/src/versions/v1/models/person-all-of.ts @@ -15,10 +15,10 @@ // May contain unused imports in some cases // @ts-ignore -import { PersonAllOfEmailInner } from './person-all-of-email-inner'; +import { DealParticipantItemPersonIdPhoneInner } from './deal-participant-item-person-id-phone-inner'; // May contain unused imports in some cases // @ts-ignore -import { PersonAllOfPhoneInner } from './person-all-of-phone-inner'; +import { PersonAllOfEmailInner } from './person-all-of-email-inner'; // May contain unused imports in some cases // @ts-ignore import { PersonAllOfPictureId } from './person-all-of-picture-id'; @@ -46,9 +46,9 @@ export interface PersonAllOf { 'active_flag'?: boolean; /** * A phone number supplied as a string or an array of phone objects related to the person. The structure of the array is as follows: `[{ \"value\": \"12345\", \"primary\": \"true\", \"label\": \"mobile\" }]`. Please note that only `value` is required. - * @type {Array} + * @type {Array} */ - 'phone'?: Array; + 'phone'?: Array; /** * An email address as a string or an array of email objects related to the person. The structure of the array is as follows: `[{ \"value\": \"mail@example.com\", \"primary\": \"true\", \"label\": \"main\" } ]`. Please note that only `value` is required. * @type {Array} diff --git a/src/versions/v1/models/person.ts b/src/versions/v1/models/person.ts index c0eb8acb..3010b98c 100644 --- a/src/versions/v1/models/person.ts +++ b/src/versions/v1/models/person.ts @@ -18,6 +18,9 @@ import { AdditionalPersonInfo } from './additional-person-info'; // May contain unused imports in some cases // @ts-ignore +import { DealParticipantItemPersonIdPhoneInner } from './deal-participant-item-person-id-phone-inner'; +// May contain unused imports in some cases +// @ts-ignore import { Owner } from './owner'; // May contain unused imports in some cases // @ts-ignore @@ -27,9 +30,6 @@ import { PersonAllOf } from './person-all-of'; import { PersonAllOfEmailInner } from './person-all-of-email-inner'; // May contain unused imports in some cases // @ts-ignore -import { PersonAllOfPhoneInner } from './person-all-of-phone-inner'; -// May contain unused imports in some cases -// @ts-ignore import { PersonAllOfPictureId } from './person-all-of-picture-id'; // May contain unused imports in some cases // @ts-ignore diff --git a/src/versions/v1/models/persons-collection-response-object.ts b/src/versions/v1/models/persons-collection-response-object.ts index d60fcd56..ff42c876 100644 --- a/src/versions/v1/models/persons-collection-response-object.ts +++ b/src/versions/v1/models/persons-collection-response-object.ts @@ -18,7 +18,7 @@ import { BasicPersonRequestEmailInner } from './basic-person-request-email-inner'; // May contain unused imports in some cases // @ts-ignore -import { PersonAllOfPhoneInner } from './person-all-of-phone-inner'; +import { DealParticipantItemPersonIdPhoneInner } from './deal-participant-item-person-id-phone-inner'; /** * @@ -58,9 +58,9 @@ export interface PersonsCollectionResponseObject { 'email': Array; /** * A phone number supplied as a string or an array of phone objects related to the person. The structure of the array is as follows: `[{ \"value\": \"12345\", \"primary\": \"true\", \"label\": \"mobile\" }]`. Please note that only `value` is required. - * @type {Array} + * @type {Array} */ - 'phone': Array; + 'phone': Array; /** * The last updated date and time of the person. Format: YYYY-MM-DD HH:MM:SS * @type {string} diff --git a/src/versions/v1/models/update-person-request.ts b/src/versions/v1/models/update-person-request.ts index a36cf19a..f2129618 100644 --- a/src/versions/v1/models/update-person-request.ts +++ b/src/versions/v1/models/update-person-request.ts @@ -21,7 +21,7 @@ import { BasicPersonRequest } from './basic-person-request'; import { BasicPersonRequestEmailInner } from './basic-person-request-email-inner'; // May contain unused imports in some cases // @ts-ignore -import { PersonAllOfPhoneInner } from './person-all-of-phone-inner'; +import { DealParticipantItemPersonIdPhoneInner } from './deal-participant-item-person-id-phone-inner'; // May contain unused imports in some cases // @ts-ignore import { UpdatePersonRequestAllOf } from './update-person-request-all-of';