diff --git a/CHANGELOG.md b/CHANGELOG.md index f5f952b5..b02353d6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -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 `include_body` query parameter to `GET /v1/deals/{id}/mailMessages`, `GET /v1/persons/{id}/mailMessages`, and `GET /v1/organizations/{id}/mailMessages` — pass `1` to include the mail message body content in the response +- Added `body` field to `MailMessageData` schema to expose the mail message body content when `include_body=1` is used ## [33.4.3] - 2026-06-09 ### Fixed diff --git a/src/versions/v1/api/deals-api.ts b/src/versions/v1/api/deals-api.ts index 40419f80..dd2ef759 100644 --- a/src/versions/v1/api/deals-api.ts +++ b/src/versions/v1/api/deals-api.ts @@ -693,10 +693,11 @@ export const DealsApiAxiosParamCreator = function (configuration?: Configuration * @param {number} id The ID of the deal * @param {number} [start] Pagination start * @param {number} [limit] Items shown per page + * @param {0 | 1} [include_body] Whether to include the mail message body content in the response. `0` = Don\'t include, `1` = Include. * @throws {RequiredError} */ - getDealMailMessages: async (id: number, start?: number, limit?: number, ): Promise => { + getDealMailMessages: async (id: number, start?: number, limit?: number, include_body?: 0 | 1, ): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getDealMailMessages', 'id', id) const localVarPath = `/deals/{id}/mailMessages` @@ -727,6 +728,10 @@ export const DealsApiAxiosParamCreator = function (configuration?: Configuration localVarQueryParameter['limit'] = limit; } + if (include_body !== undefined) { + localVarQueryParameter['include_body'] = include_body; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -1311,11 +1316,12 @@ export const DealsApiFp = function(configuration?: Configuration) { * @param {number} id The ID of the deal * @param {number} [start] Pagination start * @param {number} [limit] Items shown per page + * @param {0 | 1} [include_body] Whether to include the mail message body content in the response. `0` = Don\'t include, `1` = Include. * @throws {RequiredError} */ - async getDealMailMessages(id: number, start?: number, limit?: number, ): Promise<(axios?: AxiosInstance, basePath?: string) => Promise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getDealMailMessages(id, start, limit, ); + async getDealMailMessages(id: number, start?: number, limit?: number, include_body?: 0 | 1, ): Promise<(axios?: AxiosInstance, basePath?: string) => Promise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getDealMailMessages(id, start, limit, include_body, ); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -1544,7 +1550,7 @@ export const DealsApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getDealMailMessages(requestParameters: DealsApiGetDealMailMessagesRequest, ): Promise { - return localVarFp.getDealMailMessages(requestParameters.id, requestParameters.start, requestParameters.limit, ).then((request) => request(axios, basePath)); + return localVarFp.getDealMailMessages(requestParameters.id, requestParameters.start, requestParameters.limit, requestParameters.include_body, ).then((request) => request(axios, basePath)); }, /** * Lists the participants associated with a deal.
If a company uses the [Campaigns product](https://pipedrive.readme.io/docs/campaigns-in-pipedrive-api), then this endpoint will also return the `data.marketing_status` field. @@ -2023,6 +2029,13 @@ export interface DealsApiGetDealMailMessagesRequest { * @memberof DealsApiGetDealMailMessages */ readonly limit?: number + + /** + * Whether to include the mail message body content in the response. `0` = Don\'t include, `1` = Include. + * @type {0 | 1} + * @memberof DealsApiGetDealMailMessages + */ + readonly include_body?: 0 | 1 } /** @@ -2418,7 +2431,7 @@ export class DealsApi extends BaseAPI { * @memberof DealsApi */ public getDealMailMessages(requestParameters: DealsApiGetDealMailMessagesRequest, ) { - return DealsApiFp(this.configuration).getDealMailMessages(requestParameters.id, requestParameters.start, requestParameters.limit, ).then((request) => request(this.axios, this.basePath)); + return DealsApiFp(this.configuration).getDealMailMessages(requestParameters.id, requestParameters.start, requestParameters.limit, requestParameters.include_body, ).then((request) => request(this.axios, this.basePath)); } /** diff --git a/src/versions/v1/api/organizations-api.ts b/src/versions/v1/api/organizations-api.ts index 8a7c0adc..51f5026a 100644 --- a/src/versions/v1/api/organizations-api.ts +++ b/src/versions/v1/api/organizations-api.ts @@ -293,10 +293,11 @@ export const OrganizationsApiAxiosParamCreator = function (configuration?: Confi * @param {number} id The ID of the organization * @param {number} [start] Pagination start * @param {number} [limit] Items shown per page + * @param {0 | 1} [include_body] Whether to include the mail message body content in the response. `0` = Don\'t include, `1` = Include. * @throws {RequiredError} */ - getOrganizationMailMessages: async (id: number, start?: number, limit?: number, ): Promise => { + getOrganizationMailMessages: async (id: number, start?: number, limit?: number, include_body?: 0 | 1, ): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getOrganizationMailMessages', 'id', id) const localVarPath = `/organizations/{id}/mailMessages` @@ -327,6 +328,10 @@ export const OrganizationsApiAxiosParamCreator = function (configuration?: Confi localVarQueryParameter['limit'] = limit; } + if (include_body !== undefined) { + localVarQueryParameter['include_body'] = include_body; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -564,11 +569,12 @@ export const OrganizationsApiFp = function(configuration?: Configuration) { * @param {number} id The ID of the organization * @param {number} [start] Pagination start * @param {number} [limit] Items shown per page + * @param {0 | 1} [include_body] Whether to include the mail message body content in the response. `0` = Don\'t include, `1` = Include. * @throws {RequiredError} */ - async getOrganizationMailMessages(id: number, start?: number, limit?: number, ): Promise<(axios?: AxiosInstance, basePath?: string) => Promise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getOrganizationMailMessages(id, start, limit, ); + async getOrganizationMailMessages(id: number, start?: number, limit?: number, include_body?: 0 | 1, ): Promise<(axios?: AxiosInstance, basePath?: string) => Promise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getOrganizationMailMessages(id, start, limit, include_body, ); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -677,7 +683,7 @@ export const OrganizationsApiFactory = function (configuration?: Configuration, * @throws {RequiredError} */ getOrganizationMailMessages(requestParameters: OrganizationsApiGetOrganizationMailMessagesRequest, ): Promise { - return localVarFp.getOrganizationMailMessages(requestParameters.id, requestParameters.start, requestParameters.limit, ).then((request) => request(axios, basePath)); + return localVarFp.getOrganizationMailMessages(requestParameters.id, requestParameters.start, requestParameters.limit, requestParameters.include_body, ).then((request) => request(axios, basePath)); }, /** * Lists updates about an organization. @@ -857,6 +863,13 @@ export interface OrganizationsApiGetOrganizationMailMessagesRequest { * @memberof OrganizationsApiGetOrganizationMailMessages */ readonly limit?: number + + /** + * Whether to include the mail message body content in the response. `0` = Don\'t include, `1` = Include. + * @type {0 | 1} + * @memberof OrganizationsApiGetOrganizationMailMessages + */ + readonly include_body?: 0 | 1 } /** @@ -1012,7 +1025,7 @@ export class OrganizationsApi extends BaseAPI { * @memberof OrganizationsApi */ public getOrganizationMailMessages(requestParameters: OrganizationsApiGetOrganizationMailMessagesRequest, ) { - return OrganizationsApiFp(this.configuration).getOrganizationMailMessages(requestParameters.id, requestParameters.start, requestParameters.limit, ).then((request) => request(this.axios, this.basePath)); + return OrganizationsApiFp(this.configuration).getOrganizationMailMessages(requestParameters.id, requestParameters.start, requestParameters.limit, requestParameters.include_body, ).then((request) => request(this.axios, this.basePath)); } /** diff --git a/src/versions/v1/api/persons-api.ts b/src/versions/v1/api/persons-api.ts index 45c6808c..d6630d2d 100644 --- a/src/versions/v1/api/persons-api.ts +++ b/src/versions/v1/api/persons-api.ts @@ -410,10 +410,11 @@ export const PersonsApiAxiosParamCreator = function (configuration?: Configurati * @param {number} id The ID of the person * @param {number} [start] Pagination start * @param {number} [limit] Items shown per page + * @param {0 | 1} [include_body] Whether to include the mail message body content in the response. `0` = Don\'t include, `1` = Include. * @throws {RequiredError} */ - getPersonMailMessages: async (id: number, start?: number, limit?: number, ): Promise => { + getPersonMailMessages: async (id: number, start?: number, limit?: number, include_body?: 0 | 1, ): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getPersonMailMessages', 'id', id) const localVarPath = `/persons/{id}/mailMessages` @@ -444,6 +445,10 @@ export const PersonsApiAxiosParamCreator = function (configuration?: Configurati localVarQueryParameter['limit'] = limit; } + if (include_body !== undefined) { + localVarQueryParameter['include_body'] = include_body; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -759,11 +764,12 @@ export const PersonsApiFp = function(configuration?: Configuration) { * @param {number} id The ID of the person * @param {number} [start] Pagination start * @param {number} [limit] Items shown per page + * @param {0 | 1} [include_body] Whether to include the mail message body content in the response. `0` = Don\'t include, `1` = Include. * @throws {RequiredError} */ - async getPersonMailMessages(id: number, start?: number, limit?: number, ): Promise<(axios?: AxiosInstance, basePath?: string) => Promise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getPersonMailMessages(id, start, limit, ); + async getPersonMailMessages(id: number, start?: number, limit?: number, include_body?: 0 | 1, ): Promise<(axios?: AxiosInstance, basePath?: string) => Promise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPersonMailMessages(id, start, limit, include_body, ); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -905,7 +911,7 @@ export const PersonsApiFactory = function (configuration?: Configuration, basePa * @throws {RequiredError} */ getPersonMailMessages(requestParameters: PersonsApiGetPersonMailMessagesRequest, ): Promise { - return localVarFp.getPersonMailMessages(requestParameters.id, requestParameters.start, requestParameters.limit, ).then((request) => request(axios, basePath)); + return localVarFp.getPersonMailMessages(requestParameters.id, requestParameters.start, requestParameters.limit, requestParameters.include_body, ).then((request) => request(axios, basePath)); }, /** * Lists products associated with a person. @@ -1158,6 +1164,13 @@ export interface PersonsApiGetPersonMailMessagesRequest { * @memberof PersonsApiGetPersonMailMessages */ readonly limit?: number + + /** + * Whether to include the mail message body content in the response. `0` = Don\'t include, `1` = Include. + * @type {0 | 1} + * @memberof PersonsApiGetPersonMailMessages + */ + readonly include_body?: 0 | 1 } /** @@ -1365,7 +1378,7 @@ export class PersonsApi extends BaseAPI { * @memberof PersonsApi */ public getPersonMailMessages(requestParameters: PersonsApiGetPersonMailMessagesRequest, ) { - return PersonsApiFp(this.configuration).getPersonMailMessages(requestParameters.id, requestParameters.start, requestParameters.limit, ).then((request) => request(this.axios, this.basePath)); + return PersonsApiFp(this.configuration).getPersonMailMessages(requestParameters.id, requestParameters.start, requestParameters.limit, requestParameters.include_body, ).then((request) => request(this.axios, this.basePath)); } /** diff --git a/src/versions/v1/models/mail-message-data.ts b/src/versions/v1/models/mail-message-data.ts index 33780c4e..d46681a5 100644 --- a/src/versions/v1/models/mail-message-data.ts +++ b/src/versions/v1/models/mail-message-data.ts @@ -54,6 +54,11 @@ export interface MailMessageData { */ 'body_url'?: string; /** + * The mail message body content. Only present when `include_body=1` is passed. + * @type {string} + */ + 'body'?: string; + /** * The connection account ID * @type {string} */