> {
const { article_id: articleId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -302,8 +333,8 @@ export class Articles {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -316,19 +347,23 @@ export class Articles {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Article;
+ return { data: _response.body as Intercom.Article, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -338,12 +373,14 @@ export class Articles {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /articles/{article_id}.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -364,10 +401,17 @@ export class Articles {
* body: "New gifts in store for the jolly season
"
* })
*/
- public async update(
+ public update(
request: Intercom.UpdateArticleRequest,
requestOptions?: Articles.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__update(request, requestOptions));
+ }
+
+ private async __update(
+ request: Intercom.UpdateArticleRequest,
+ requestOptions?: Articles.RequestOptions,
+ ): Promise> {
const { article_id: articleId, ..._body } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -381,8 +425,8 @@ export class Articles {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -396,19 +440,23 @@ export class Articles {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Article;
+ return { data: _response.body as Intercom.Article, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -418,12 +466,14 @@ export class Articles {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling PUT /articles/{article_id}.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -442,10 +492,17 @@ export class Articles {
* article_id: "123"
* })
*/
- public async delete(
+ public delete(
+ request: Intercom.DeleteArticleRequest,
+ requestOptions?: Articles.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__delete(request, requestOptions));
+ }
+
+ private async __delete(
request: Intercom.DeleteArticleRequest,
requestOptions?: Articles.RequestOptions,
- ): Promise {
+ ): Promise> {
const { article_id: articleId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -459,8 +516,8 @@ export class Articles {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -473,19 +530,23 @@ export class Articles {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.DeletedArticleObject;
+ return { data: _response.body as Intercom.DeletedArticleObject, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -495,12 +556,14 @@ export class Articles {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling DELETE /articles/{article_id}.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -519,10 +582,17 @@ export class Articles {
* state: "published"
* })
*/
- public async search(
+ public search(
+ request: Intercom.SearchArticlesRequest = {},
+ requestOptions?: Articles.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__search(request, requestOptions));
+ }
+
+ private async __search(
request: Intercom.SearchArticlesRequest = {},
requestOptions?: Articles.RequestOptions,
- ): Promise {
+ ): Promise> {
const { phrase, state, help_center_id: helpCenterId, highlight } = request;
const _queryParams: Record = {};
if (phrase != null) {
@@ -553,8 +623,8 @@ export class Articles {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -568,17 +638,21 @@ export class Articles {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.SearchArticlesResponse;
+ return { data: _response.body as Intercom.SearchArticlesResponse, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -588,12 +662,14 @@ export class Articles {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /articles/search.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
diff --git a/src/api/resources/companies/client/Client.ts b/src/api/resources/companies/client/Client.ts
index de1baaf2..5ac7d49b 100644
--- a/src/api/resources/companies/client/Client.ts
+++ b/src/api/resources/companies/client/Client.ts
@@ -102,10 +102,17 @@ export class Companies {
* segment_id: "98765"
* })
*/
- public async retrieve(
+ public retrieve(
request: Intercom.RetrieveCompanyRequest = {},
requestOptions?: Companies.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__retrieve(request, requestOptions));
+ }
+
+ private async __retrieve(
+ request: Intercom.RetrieveCompanyRequest = {},
+ requestOptions?: Companies.RequestOptions,
+ ): Promise> {
const { name, company_id: companyId, tag_id: tagId, segment_id: segmentId, page, per_page: perPage } = request;
const _queryParams: Record = {};
if (name != null) {
@@ -144,8 +151,8 @@ export class Companies {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -159,19 +166,23 @@ export class Companies {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.CompaniesRetrieveResponse;
+ return { data: _response.body as Intercom.CompaniesRetrieveResponse, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -181,12 +192,14 @@ export class Companies {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /companies.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -218,10 +231,17 @@ export class Companies {
* @example
* await client.companies.createOrUpdate()
*/
- public async createOrUpdate(
+ public createOrUpdate(
+ request: Intercom.CreateOrUpdateCompanyRequest = {},
+ requestOptions?: Companies.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__createOrUpdate(request, requestOptions));
+ }
+
+ private async __createOrUpdate(
request: Intercom.CreateOrUpdateCompanyRequest = {},
requestOptions?: Companies.RequestOptions,
- ): Promise {
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -234,8 +254,8 @@ export class Companies {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -249,19 +269,23 @@ export class Companies {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Company;
+ return { data: _response.body as Intercom.Company, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 400:
- throw new Intercom.BadRequestError(_response.error.body as unknown);
+ throw new Intercom.BadRequestError(_response.error.body as unknown, _response.rawResponse);
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -271,12 +295,14 @@ export class Companies {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /companies.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -295,10 +321,17 @@ export class Companies {
* company_id: "5f4d3c1c-7b1b-4d7d-a97e-6095715c6632"
* })
*/
- public async find(
+ public find(
request: Intercom.FindCompanyRequest,
requestOptions?: Companies.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__find(request, requestOptions));
+ }
+
+ private async __find(
+ request: Intercom.FindCompanyRequest,
+ requestOptions?: Companies.RequestOptions,
+ ): Promise> {
const { company_id: companyId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -312,8 +345,8 @@ export class Companies {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -326,19 +359,23 @@ export class Companies {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Company;
+ return { data: _response.body as Intercom.Company, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -348,12 +385,14 @@ export class Companies {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /companies/{company_id}.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -376,10 +415,17 @@ export class Companies {
* company_id: "5f4d3c1c-7b1b-4d7d-a97e-6095715c6632"
* })
*/
- public async update(
+ public update(
request: Intercom.UpdateCompanyRequest,
requestOptions?: Companies.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__update(request, requestOptions));
+ }
+
+ private async __update(
+ request: Intercom.UpdateCompanyRequest,
+ requestOptions?: Companies.RequestOptions,
+ ): Promise> {
const { company_id: companyId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -393,8 +439,8 @@ export class Companies {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -407,19 +453,23 @@ export class Companies {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Company;
+ return { data: _response.body as Intercom.Company, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -429,12 +479,14 @@ export class Companies {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling PUT /companies/{company_id}.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -453,10 +505,17 @@ export class Companies {
* company_id: "5f4d3c1c-7b1b-4d7d-a97e-6095715c6632"
* })
*/
- public async delete(
+ public delete(
request: Intercom.DeleteCompanyRequest,
requestOptions?: Companies.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__delete(request, requestOptions));
+ }
+
+ private async __delete(
+ request: Intercom.DeleteCompanyRequest,
+ requestOptions?: Companies.RequestOptions,
+ ): Promise> {
const { company_id: companyId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -470,8 +529,8 @@ export class Companies {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -484,19 +543,23 @@ export class Companies {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.DeletedCompanyObject;
+ return { data: _response.body as Intercom.DeletedCompanyObject, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -506,12 +569,14 @@ export class Companies {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling DELETE /companies/{company_id}.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -530,10 +595,17 @@ export class Companies {
* company_id: "5f4d3c1c-7b1b-4d7d-a97e-6095715c6632"
* })
*/
- public async listAttachedContacts(
+ public listAttachedContacts(
+ request: Intercom.ListAttachedContactsRequest,
+ requestOptions?: Companies.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__listAttachedContacts(request, requestOptions));
+ }
+
+ private async __listAttachedContacts(
request: Intercom.ListAttachedContactsRequest,
requestOptions?: Companies.RequestOptions,
- ): Promise {
+ ): Promise> {
const { company_id: companyId, page, per_page: perPage } = request;
const _queryParams: Record = {};
if (page != null) {
@@ -556,8 +628,8 @@ export class Companies {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -571,19 +643,23 @@ export class Companies {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.CompanyAttachedContacts;
+ return { data: _response.body as Intercom.CompanyAttachedContacts, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -593,6 +669,7 @@ export class Companies {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -601,6 +678,7 @@ export class Companies {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -619,10 +697,17 @@ export class Companies {
* company_id: "5f4d3c1c-7b1b-4d7d-a97e-6095715c6632"
* })
*/
- public async listAttachedSegments(
+ public listAttachedSegments(
+ request: Intercom.ListSegmentsAttachedToCompanyRequest,
+ requestOptions?: Companies.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__listAttachedSegments(request, requestOptions));
+ }
+
+ private async __listAttachedSegments(
request: Intercom.ListSegmentsAttachedToCompanyRequest,
requestOptions?: Companies.RequestOptions,
- ): Promise {
+ ): Promise> {
const { company_id: companyId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -636,8 +721,8 @@ export class Companies {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -650,19 +735,23 @@ export class Companies {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.CompanyAttachedSegments;
+ return { data: _response.body as Intercom.CompanyAttachedSegments, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -672,6 +761,7 @@ export class Companies {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -680,6 +770,7 @@ export class Companies {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -709,75 +800,86 @@ export class Companies {
request: Intercom.ListCompaniesRequest = {},
requestOptions?: Companies.RequestOptions,
): Promise> {
- const list = async (request: Intercom.ListCompaniesRequest): Promise => {
- const { page, per_page: perPage, order } = request;
- const _queryParams: Record = {};
- if (page != null) {
- _queryParams["page"] = page.toString();
- }
- if (perPage != null) {
- _queryParams["per_page"] = perPage.toString();
- }
- if (order != null) {
- _queryParams["order"] = order;
- }
- const _response = await (this._options.fetcher ?? core.fetcher)({
- url: urlJoin(
- (await core.Supplier.get(this._options.baseUrl)) ??
- (await core.Supplier.get(this._options.environment)) ??
- environments.IntercomEnvironment.UsProduction,
- "companies/list",
- ),
- method: "POST",
- headers: {
- Authorization: await this._getAuthorizationHeader(),
- "X-Fern-Language": "JavaScript",
- "X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
- "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
- "X-Fern-Runtime": core.RUNTIME.type,
- "X-Fern-Runtime-Version": core.RUNTIME.version,
- ...requestOptions?.headers,
- },
- contentType: "application/json",
- queryParameters: _queryParams,
- requestType: "json",
- timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
- maxRetries: requestOptions?.maxRetries,
- abortSignal: requestOptions?.abortSignal,
- });
- if (_response.ok) {
- return _response.body as Intercom.CompanyList;
- }
- if (_response.error.reason === "status-code") {
- switch (_response.error.statusCode) {
- case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
- default:
+ const list = core.HttpResponsePromise.interceptFunction(
+ async (request: Intercom.ListCompaniesRequest): Promise> => {
+ const { page, per_page: perPage, order } = request;
+ const _queryParams: Record = {};
+ if (page != null) {
+ _queryParams["page"] = page.toString();
+ }
+ if (perPage != null) {
+ _queryParams["per_page"] = perPage.toString();
+ }
+ if (order != null) {
+ _queryParams["order"] = order;
+ }
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.IntercomEnvironment.UsProduction,
+ "companies/list",
+ ),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "intercom-client",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
+ "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...requestOptions?.headers,
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ requestType: "json",
+ timeoutMs:
+ requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Intercom.CompanyList, rawResponse: _response.rawResponse };
+ }
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 401:
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
+ default:
+ throw new errors.IntercomError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+ switch (_response.error.reason) {
+ case "non-json":
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
- body: _response.error.body,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /companies/list.");
+ case "unknown":
+ throw new errors.IntercomError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
- }
- switch (_response.error.reason) {
- case "non-json":
- throw new errors.IntercomError({
- statusCode: _response.error.statusCode,
- body: _response.error.rawBody,
- });
- case "timeout":
- throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /companies/list.");
- case "unknown":
- throw new errors.IntercomError({
- message: _response.error.errorMessage,
- });
- }
- };
+ },
+ );
let _offset = request?.page != null ? request?.page : 1;
+ const dataWithRawResponse = await list(request).withRawResponse();
return new core.Pageable({
- response: await list(request),
+ response: dataWithRawResponse.data,
+ rawResponse: dataWithRawResponse.rawResponse,
hasNextPage: (response) => (response?.data ?? []).length > 0,
getItems: (response) => response?.data ?? [],
loadPage: (_response) => {
@@ -816,68 +918,79 @@ export class Companies {
request: Intercom.ScrollCompaniesRequest = {},
requestOptions?: Companies.RequestOptions,
): Promise> {
- const list = async (request: Intercom.ScrollCompaniesRequest): Promise => {
- const { scroll_param: scrollParam } = request;
- const _queryParams: Record = {};
- if (scrollParam != null) {
- _queryParams["scroll_param"] = scrollParam;
- }
- const _response = await (this._options.fetcher ?? core.fetcher)({
- url: urlJoin(
- (await core.Supplier.get(this._options.baseUrl)) ??
- (await core.Supplier.get(this._options.environment)) ??
- environments.IntercomEnvironment.UsProduction,
- "companies/scroll",
- ),
- method: "GET",
- headers: {
- Authorization: await this._getAuthorizationHeader(),
- "X-Fern-Language": "JavaScript",
- "X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
- "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
- "X-Fern-Runtime": core.RUNTIME.type,
- "X-Fern-Runtime-Version": core.RUNTIME.version,
- ...requestOptions?.headers,
- },
- contentType: "application/json",
- queryParameters: _queryParams,
- requestType: "json",
- timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
- maxRetries: requestOptions?.maxRetries,
- abortSignal: requestOptions?.abortSignal,
- });
- if (_response.ok) {
- return _response.body as Intercom.CompanyScroll;
- }
- if (_response.error.reason === "status-code") {
- switch (_response.error.statusCode) {
- case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
- default:
+ const list = core.HttpResponsePromise.interceptFunction(
+ async (request: Intercom.ScrollCompaniesRequest): Promise> => {
+ const { scroll_param: scrollParam } = request;
+ const _queryParams: Record = {};
+ if (scrollParam != null) {
+ _queryParams["scroll_param"] = scrollParam;
+ }
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.IntercomEnvironment.UsProduction,
+ "companies/scroll",
+ ),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "intercom-client",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
+ "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...requestOptions?.headers,
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ requestType: "json",
+ timeoutMs:
+ requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Intercom.CompanyScroll, rawResponse: _response.rawResponse };
+ }
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 401:
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
+ default:
+ throw new errors.IntercomError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+ switch (_response.error.reason) {
+ case "non-json":
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
- body: _response.error.body,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /companies/scroll.");
+ case "unknown":
+ throw new errors.IntercomError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
- }
- switch (_response.error.reason) {
- case "non-json":
- throw new errors.IntercomError({
- statusCode: _response.error.statusCode,
- body: _response.error.rawBody,
- });
- case "timeout":
- throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /companies/scroll.");
- case "unknown":
- throw new errors.IntercomError({
- message: _response.error.errorMessage,
- });
- }
- };
+ },
+ );
+ const dataWithRawResponse = await list(request).withRawResponse();
return new core.Pageable({
- response: await list(request),
+ response: dataWithRawResponse.data,
+ rawResponse: dataWithRawResponse.rawResponse,
hasNextPage: (response) => response?.scroll_param != null,
getItems: (response) => response?.data ?? [],
loadPage: (response) => {
@@ -914,10 +1027,17 @@ export class Companies {
* id: "123"
* })
*/
- public async attachContact(
+ public attachContact(
+ request: Intercom.AttachContactToCompanyRequest,
+ requestOptions?: Companies.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__attachContact(request, requestOptions));
+ }
+
+ private async __attachContact(
request: Intercom.AttachContactToCompanyRequest,
requestOptions?: Companies.RequestOptions,
- ): Promise {
+ ): Promise> {
const { contact_id: contactId, ..._body } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -931,8 +1051,8 @@ export class Companies {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -946,21 +1066,25 @@ export class Companies {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Company;
+ return { data: _response.body as Intercom.Company, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 400:
- throw new Intercom.BadRequestError(_response.error.body as unknown);
+ throw new Intercom.BadRequestError(_response.error.body as unknown, _response.rawResponse);
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -970,6 +1094,7 @@ export class Companies {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -978,6 +1103,7 @@ export class Companies {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -997,10 +1123,17 @@ export class Companies {
* company_id: "58a430d35458202d41b1e65b"
* })
*/
- public async detachContact(
+ public detachContact(
+ request: Intercom.DetachContactFromCompanyRequest,
+ requestOptions?: Companies.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__detachContact(request, requestOptions));
+ }
+
+ private async __detachContact(
request: Intercom.DetachContactFromCompanyRequest,
requestOptions?: Companies.RequestOptions,
- ): Promise {
+ ): Promise> {
const { contact_id: contactId, company_id: companyId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -1014,8 +1147,8 @@ export class Companies {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -1028,19 +1161,23 @@ export class Companies {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Company;
+ return { data: _response.body as Intercom.Company, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1050,6 +1187,7 @@ export class Companies {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -1058,6 +1196,7 @@ export class Companies {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
diff --git a/src/api/resources/contacts/client/Client.ts b/src/api/resources/contacts/client/Client.ts
index a932e14b..894de6c9 100644
--- a/src/api/resources/contacts/client/Client.ts
+++ b/src/api/resources/contacts/client/Client.ts
@@ -93,78 +93,92 @@ export class Contacts {
request: Intercom.ListAttachedCompaniesRequest,
requestOptions?: Contacts.RequestOptions,
): Promise> {
- const list = async (
- request: Intercom.ListAttachedCompaniesRequest,
- ): Promise => {
- const { contact_id: contactId, page, per_page: perPage } = request;
- const _queryParams: Record = {};
- if (page != null) {
- _queryParams["page"] = page.toString();
- }
- if (perPage != null) {
- _queryParams["per_page"] = perPage.toString();
- }
- const _response = await (this._options.fetcher ?? core.fetcher)({
- url: urlJoin(
- (await core.Supplier.get(this._options.baseUrl)) ??
- (await core.Supplier.get(this._options.environment)) ??
- environments.IntercomEnvironment.UsProduction,
- `contacts/${encodeURIComponent(contactId)}/companies`,
- ),
- method: "GET",
- headers: {
- Authorization: await this._getAuthorizationHeader(),
- "X-Fern-Language": "JavaScript",
- "X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
- "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
- "X-Fern-Runtime": core.RUNTIME.type,
- "X-Fern-Runtime-Version": core.RUNTIME.version,
- ...requestOptions?.headers,
- },
- contentType: "application/json",
- queryParameters: _queryParams,
- requestType: "json",
- timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
- maxRetries: requestOptions?.maxRetries,
- abortSignal: requestOptions?.abortSignal,
- });
- if (_response.ok) {
- return _response.body as Intercom.ContactAttachedCompanies;
- }
- if (_response.error.reason === "status-code") {
- switch (_response.error.statusCode) {
- case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
- case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
- default:
+ const list = core.HttpResponsePromise.interceptFunction(
+ async (
+ request: Intercom.ListAttachedCompaniesRequest,
+ ): Promise> => {
+ const { contact_id: contactId, page, per_page: perPage } = request;
+ const _queryParams: Record = {};
+ if (page != null) {
+ _queryParams["page"] = page.toString();
+ }
+ if (perPage != null) {
+ _queryParams["per_page"] = perPage.toString();
+ }
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.IntercomEnvironment.UsProduction,
+ `contacts/${encodeURIComponent(contactId)}/companies`,
+ ),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "intercom-client",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
+ "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...requestOptions?.headers,
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ requestType: "json",
+ timeoutMs:
+ requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Intercom.ContactAttachedCompanies,
+ rawResponse: _response.rawResponse,
+ };
+ }
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 401:
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
+ case 404:
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.IntercomError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+ switch (_response.error.reason) {
+ case "non-json":
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
- body: _response.error.body,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.IntercomTimeoutError(
+ "Timeout exceeded when calling GET /contacts/{contact_id}/companies.",
+ );
+ case "unknown":
+ throw new errors.IntercomError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
- }
- switch (_response.error.reason) {
- case "non-json":
- throw new errors.IntercomError({
- statusCode: _response.error.statusCode,
- body: _response.error.rawBody,
- });
- case "timeout":
- throw new errors.IntercomTimeoutError(
- "Timeout exceeded when calling GET /contacts/{contact_id}/companies.",
- );
- case "unknown":
- throw new errors.IntercomError({
- message: _response.error.errorMessage,
- });
- }
- };
+ },
+ );
let _offset = request?.page != null ? request?.page : 1;
+ const dataWithRawResponse = await list(request).withRawResponse();
return new core.Pageable({
- response: await list(request),
+ response: dataWithRawResponse.data,
+ rawResponse: dataWithRawResponse.rawResponse,
hasNextPage: (response) => (response?.companies ?? []).length > 0,
getItems: (response) => response?.companies ?? [],
loadPage: (_response) => {
@@ -188,10 +202,17 @@ export class Contacts {
* contact_id: "63a07ddf05a32042dffac965"
* })
*/
- public async listAttachedSegments(
+ public listAttachedSegments(
+ request: Intercom.ListSegmentsAttachedToContactRequest,
+ requestOptions?: Contacts.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__listAttachedSegments(request, requestOptions));
+ }
+
+ private async __listAttachedSegments(
request: Intercom.ListSegmentsAttachedToContactRequest,
requestOptions?: Contacts.RequestOptions,
- ): Promise {
+ ): Promise> {
const { contact_id: contactId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -205,8 +226,8 @@ export class Contacts {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -219,19 +240,23 @@ export class Contacts {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.ContactSegments;
+ return { data: _response.body as Intercom.ContactSegments, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -241,6 +266,7 @@ export class Contacts {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -249,6 +275,7 @@ export class Contacts {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -273,10 +300,17 @@ export class Contacts {
* contact_id: "63a07ddf05a32042dffac965"
* })
*/
- public async listAttachedSubscriptions(
+ public listAttachedSubscriptions(
+ request: Intercom.ListAttachedSubscriptionsRequest,
+ requestOptions?: Contacts.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__listAttachedSubscriptions(request, requestOptions));
+ }
+
+ private async __listAttachedSubscriptions(
request: Intercom.ListAttachedSubscriptionsRequest,
requestOptions?: Contacts.RequestOptions,
- ): Promise {
+ ): Promise> {
const { contact_id: contactId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -290,8 +324,8 @@ export class Contacts {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -304,19 +338,23 @@ export class Contacts {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.SubscriptionTypeList;
+ return { data: _response.body as Intercom.SubscriptionTypeList, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -326,6 +364,7 @@ export class Contacts {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -334,6 +373,7 @@ export class Contacts {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -367,10 +407,17 @@ export class Contacts {
* consent_type: "opt_in"
* })
*/
- public async attachSubscription(
+ public attachSubscription(
request: Intercom.AttachSubscriptionToContactRequest,
requestOptions?: Contacts.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__attachSubscription(request, requestOptions));
+ }
+
+ private async __attachSubscription(
+ request: Intercom.AttachSubscriptionToContactRequest,
+ requestOptions?: Contacts.RequestOptions,
+ ): Promise> {
const { contact_id: contactId, ..._body } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -384,8 +431,8 @@ export class Contacts {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -399,19 +446,23 @@ export class Contacts {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.SubscriptionType;
+ return { data: _response.body as Intercom.SubscriptionType, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -421,6 +472,7 @@ export class Contacts {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -429,6 +481,7 @@ export class Contacts {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -448,10 +501,17 @@ export class Contacts {
* subscription_id: "37846"
* })
*/
- public async detachSubscription(
+ public detachSubscription(
+ request: Intercom.DetachSubscriptionFromContactRequest,
+ requestOptions?: Contacts.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__detachSubscription(request, requestOptions));
+ }
+
+ private async __detachSubscription(
request: Intercom.DetachSubscriptionFromContactRequest,
requestOptions?: Contacts.RequestOptions,
- ): Promise {
+ ): Promise> {
const { contact_id: contactId, subscription_id: subscriptionId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -465,8 +525,8 @@ export class Contacts {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -479,19 +539,23 @@ export class Contacts {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.SubscriptionType;
+ return { data: _response.body as Intercom.SubscriptionType, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -501,6 +565,7 @@ export class Contacts {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -509,6 +574,7 @@ export class Contacts {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -527,10 +593,17 @@ export class Contacts {
* contact_id: "63a07ddf05a32042dffac965"
* })
*/
- public async listAttachedTags(
+ public listAttachedTags(
+ request: Intercom.ListTagsAttachedToContactRequest,
+ requestOptions?: Contacts.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__listAttachedTags(request, requestOptions));
+ }
+
+ private async __listAttachedTags(
request: Intercom.ListTagsAttachedToContactRequest,
requestOptions?: Contacts.RequestOptions,
- ): Promise {
+ ): Promise> {
const { contact_id: contactId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -544,8 +617,8 @@ export class Contacts {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -558,19 +631,23 @@ export class Contacts {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.TagList;
+ return { data: _response.body as Intercom.TagList, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -580,12 +657,14 @@ export class Contacts {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /contacts/{contact_id}/tags.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -603,10 +682,17 @@ export class Contacts {
* contact_id: "63a07ddf05a32042dffac965"
* })
*/
- public async find(
+ public find(
request: Intercom.FindContactRequest,
requestOptions?: Contacts.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__find(request, requestOptions));
+ }
+
+ private async __find(
+ request: Intercom.FindContactRequest,
+ requestOptions?: Contacts.RequestOptions,
+ ): Promise> {
const { contact_id: contactId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -620,8 +706,8 @@ export class Contacts {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -634,17 +720,21 @@ export class Contacts {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Contact;
+ return { data: _response.body as Intercom.Contact, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -654,12 +744,14 @@ export class Contacts {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /contacts/{contact_id}.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -679,10 +771,17 @@ export class Contacts {
* name: "joe bloggs"
* })
*/
- public async update(
+ public update(
request: Intercom.UpdateContactRequest,
requestOptions?: Contacts.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__update(request, requestOptions));
+ }
+
+ private async __update(
+ request: Intercom.UpdateContactRequest,
+ requestOptions?: Contacts.RequestOptions,
+ ): Promise> {
const { contact_id: contactId, ..._body } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -696,8 +795,8 @@ export class Contacts {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -711,17 +810,21 @@ export class Contacts {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Contact;
+ return { data: _response.body as Intercom.Contact, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -731,12 +834,14 @@ export class Contacts {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling PUT /contacts/{contact_id}.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -754,10 +859,17 @@ export class Contacts {
* contact_id: "contact_id"
* })
*/
- public async delete(
+ public delete(
+ request: Intercom.DeleteContactRequest,
+ requestOptions?: Contacts.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__delete(request, requestOptions));
+ }
+
+ private async __delete(
request: Intercom.DeleteContactRequest,
requestOptions?: Contacts.RequestOptions,
- ): Promise {
+ ): Promise> {
const { contact_id: contactId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -771,8 +883,8 @@ export class Contacts {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -785,17 +897,21 @@ export class Contacts {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.ContactDeleted;
+ return { data: _response.body as Intercom.ContactDeleted, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -805,12 +921,14 @@ export class Contacts {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling DELETE /contacts/{contact_id}.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -829,10 +947,17 @@ export class Contacts {
* into: "667d60ac8a68186f43bafdbc"
* })
*/
- public async mergeLeadInUser(
+ public mergeLeadInUser(
+ request: Intercom.MergeContactsRequest,
+ requestOptions?: Contacts.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__mergeLeadInUser(request, requestOptions));
+ }
+
+ private async __mergeLeadInUser(
request: Intercom.MergeContactsRequest,
requestOptions?: Contacts.RequestOptions,
- ): Promise {
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -845,8 +970,8 @@ export class Contacts {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -860,17 +985,21 @@ export class Contacts {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Contact;
+ return { data: _response.body as Intercom.Contact, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -880,12 +1009,14 @@ export class Contacts {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /contacts/merge.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1015,63 +1146,74 @@ export class Contacts {
request: Intercom.SearchRequest,
requestOptions?: Contacts.RequestOptions,
): Promise> {
- const list = async (request: Intercom.SearchRequest): Promise => {
- const _response = await (this._options.fetcher ?? core.fetcher)({
- url: urlJoin(
- (await core.Supplier.get(this._options.baseUrl)) ??
- (await core.Supplier.get(this._options.environment)) ??
- environments.IntercomEnvironment.UsProduction,
- "contacts/search",
- ),
- method: "POST",
- headers: {
- Authorization: await this._getAuthorizationHeader(),
- "X-Fern-Language": "JavaScript",
- "X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
- "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
- "X-Fern-Runtime": core.RUNTIME.type,
- "X-Fern-Runtime-Version": core.RUNTIME.version,
- ...requestOptions?.headers,
- },
- contentType: "application/json",
- requestType: "json",
- body: request,
- timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
- maxRetries: requestOptions?.maxRetries,
- abortSignal: requestOptions?.abortSignal,
- });
- if (_response.ok) {
- return _response.body as Intercom.ContactList;
- }
- if (_response.error.reason === "status-code") {
- switch (_response.error.statusCode) {
- case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
- default:
+ const list = core.HttpResponsePromise.interceptFunction(
+ async (request: Intercom.SearchRequest): Promise> => {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.IntercomEnvironment.UsProduction,
+ "contacts/search",
+ ),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "intercom-client",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
+ "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...requestOptions?.headers,
+ },
+ contentType: "application/json",
+ requestType: "json",
+ body: request,
+ timeoutMs:
+ requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Intercom.ContactList, rawResponse: _response.rawResponse };
+ }
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 401:
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
+ default:
+ throw new errors.IntercomError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+ switch (_response.error.reason) {
+ case "non-json":
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
- body: _response.error.body,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /contacts/search.");
+ case "unknown":
+ throw new errors.IntercomError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
- }
- switch (_response.error.reason) {
- case "non-json":
- throw new errors.IntercomError({
- statusCode: _response.error.statusCode,
- body: _response.error.rawBody,
- });
- case "timeout":
- throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /contacts/search.");
- case "unknown":
- throw new errors.IntercomError({
- message: _response.error.errorMessage,
- });
- }
- };
+ },
+ );
+ const dataWithRawResponse = await list(request).withRawResponse();
return new core.Pageable({
- response: await list(request),
+ response: dataWithRawResponse.data,
+ rawResponse: dataWithRawResponse.rawResponse,
hasNextPage: (response) => response?.pages?.next?.starting_after != null,
getItems: (response) => response?.data ?? [],
loadPage: (response) => {
@@ -1101,74 +1243,85 @@ export class Contacts {
request: Intercom.ListContactsRequest = {},
requestOptions?: Contacts.RequestOptions,
): Promise> {
- const list = async (request: Intercom.ListContactsRequest): Promise => {
- const { page, per_page: perPage, starting_after: startingAfter } = request;
- const _queryParams: Record = {};
- if (page != null) {
- _queryParams["page"] = page.toString();
- }
- if (perPage != null) {
- _queryParams["per_page"] = perPage.toString();
- }
- if (startingAfter != null) {
- _queryParams["starting_after"] = startingAfter;
- }
- const _response = await (this._options.fetcher ?? core.fetcher)({
- url: urlJoin(
- (await core.Supplier.get(this._options.baseUrl)) ??
- (await core.Supplier.get(this._options.environment)) ??
- environments.IntercomEnvironment.UsProduction,
- "contacts",
- ),
- method: "GET",
- headers: {
- Authorization: await this._getAuthorizationHeader(),
- "X-Fern-Language": "JavaScript",
- "X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
- "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
- "X-Fern-Runtime": core.RUNTIME.type,
- "X-Fern-Runtime-Version": core.RUNTIME.version,
- ...requestOptions?.headers,
- },
- contentType: "application/json",
- queryParameters: _queryParams,
- requestType: "json",
- timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
- maxRetries: requestOptions?.maxRetries,
- abortSignal: requestOptions?.abortSignal,
- });
- if (_response.ok) {
- return _response.body as Intercom.ContactList;
- }
- if (_response.error.reason === "status-code") {
- switch (_response.error.statusCode) {
- case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
- default:
+ const list = core.HttpResponsePromise.interceptFunction(
+ async (request: Intercom.ListContactsRequest): Promise> => {
+ const { page, per_page: perPage, starting_after: startingAfter } = request;
+ const _queryParams: Record = {};
+ if (page != null) {
+ _queryParams["page"] = page.toString();
+ }
+ if (perPage != null) {
+ _queryParams["per_page"] = perPage.toString();
+ }
+ if (startingAfter != null) {
+ _queryParams["starting_after"] = startingAfter;
+ }
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.IntercomEnvironment.UsProduction,
+ "contacts",
+ ),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "intercom-client",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
+ "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...requestOptions?.headers,
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ requestType: "json",
+ timeoutMs:
+ requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Intercom.ContactList, rawResponse: _response.rawResponse };
+ }
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 401:
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
+ default:
+ throw new errors.IntercomError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+ switch (_response.error.reason) {
+ case "non-json":
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
- body: _response.error.body,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /contacts.");
+ case "unknown":
+ throw new errors.IntercomError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
- }
- switch (_response.error.reason) {
- case "non-json":
- throw new errors.IntercomError({
- statusCode: _response.error.statusCode,
- body: _response.error.rawBody,
- });
- case "timeout":
- throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /contacts.");
- case "unknown":
- throw new errors.IntercomError({
- message: _response.error.errorMessage,
- });
- }
- };
+ },
+ );
+ const dataWithRawResponse = await list(request).withRawResponse();
return new core.Pageable({
- response: await list(request),
+ response: dataWithRawResponse.data,
+ rawResponse: dataWithRawResponse.rawResponse,
hasNextPage: (response) => response?.pages?.next?.starting_after != null,
getItems: (response) => response?.data ?? [],
loadPage: (response) => {
@@ -1190,10 +1343,17 @@ export class Contacts {
* email: "joebloggs@intercom.io"
* })
*/
- public async create(
+ public create(
request: Intercom.CreateContactRequest,
requestOptions?: Contacts.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__create(request, requestOptions));
+ }
+
+ private async __create(
+ request: Intercom.CreateContactRequest,
+ requestOptions?: Contacts.RequestOptions,
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -1206,8 +1366,8 @@ export class Contacts {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -1221,17 +1381,21 @@ export class Contacts {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Contact;
+ return { data: _response.body as Intercom.Contact, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1241,12 +1405,14 @@ export class Contacts {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /contacts.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1262,10 +1428,17 @@ export class Contacts {
* contact_id: "63a07ddf05a32042dffac965"
* })
*/
- public async archive(
+ public archive(
+ request: Intercom.ArchiveContactRequest,
+ requestOptions?: Contacts.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__archive(request, requestOptions));
+ }
+
+ private async __archive(
request: Intercom.ArchiveContactRequest,
requestOptions?: Contacts.RequestOptions,
- ): Promise {
+ ): Promise> {
const { contact_id: contactId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -1279,8 +1452,8 @@ export class Contacts {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -1293,13 +1466,14 @@ export class Contacts {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.ContactArchived;
+ return { data: _response.body as Intercom.ContactArchived, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
@@ -1308,6 +1482,7 @@ export class Contacts {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -1316,6 +1491,7 @@ export class Contacts {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1331,10 +1507,17 @@ export class Contacts {
* contact_id: "63a07ddf05a32042dffac965"
* })
*/
- public async unarchive(
+ public unarchive(
+ request: Intercom.UnarchiveContactRequest,
+ requestOptions?: Contacts.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__unarchive(request, requestOptions));
+ }
+
+ private async __unarchive(
request: Intercom.UnarchiveContactRequest,
requestOptions?: Contacts.RequestOptions,
- ): Promise {
+ ): Promise> {
const { contact_id: contactId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -1348,8 +1531,8 @@ export class Contacts {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -1362,13 +1545,14 @@ export class Contacts {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.ContactUnarchived;
+ return { data: _response.body as Intercom.ContactUnarchived, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
@@ -1377,6 +1561,7 @@ export class Contacts {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -1385,6 +1570,7 @@ export class Contacts {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
diff --git a/src/api/resources/conversations/client/Client.ts b/src/api/resources/conversations/client/Client.ts
index b678ff40..d24ccbfd 100644
--- a/src/api/resources/conversations/client/Client.ts
+++ b/src/api/resources/conversations/client/Client.ts
@@ -97,75 +97,92 @@ export class Conversations {
request: Intercom.ListConversationsRequest = {},
requestOptions?: Conversations.RequestOptions,
): Promise> {
- const list = async (
- request: Intercom.ListConversationsRequest,
- ): Promise => {
- const { per_page: perPage, starting_after: startingAfter } = request;
- const _queryParams: Record = {};
- if (perPage != null) {
- _queryParams["per_page"] = perPage.toString();
- }
- if (startingAfter != null) {
- _queryParams["starting_after"] = startingAfter;
- }
- const _response = await (this._options.fetcher ?? core.fetcher)({
- url: urlJoin(
- (await core.Supplier.get(this._options.baseUrl)) ??
- (await core.Supplier.get(this._options.environment)) ??
- environments.IntercomEnvironment.UsProduction,
- "conversations",
- ),
- method: "GET",
- headers: {
- Authorization: await this._getAuthorizationHeader(),
- "X-Fern-Language": "JavaScript",
- "X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
- "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
- "X-Fern-Runtime": core.RUNTIME.type,
- "X-Fern-Runtime-Version": core.RUNTIME.version,
- ...requestOptions?.headers,
- },
- contentType: "application/json",
- queryParameters: _queryParams,
- requestType: "json",
- timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
- maxRetries: requestOptions?.maxRetries,
- abortSignal: requestOptions?.abortSignal,
- });
- if (_response.ok) {
- return _response.body as Intercom.PaginatedConversationResponse;
- }
- if (_response.error.reason === "status-code") {
- switch (_response.error.statusCode) {
- case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
- case 403:
- throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_);
- default:
+ const list = core.HttpResponsePromise.interceptFunction(
+ async (
+ request: Intercom.ListConversationsRequest,
+ ): Promise> => {
+ const { per_page: perPage, starting_after: startingAfter } = request;
+ const _queryParams: Record = {};
+ if (perPage != null) {
+ _queryParams["per_page"] = perPage.toString();
+ }
+ if (startingAfter != null) {
+ _queryParams["starting_after"] = startingAfter;
+ }
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.IntercomEnvironment.UsProduction,
+ "conversations",
+ ),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "intercom-client",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
+ "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...requestOptions?.headers,
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ requestType: "json",
+ timeoutMs:
+ requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Intercom.PaginatedConversationResponse,
+ rawResponse: _response.rawResponse,
+ };
+ }
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 401:
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
+ case 403:
+ throw new Intercom.ForbiddenError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
+ default:
+ throw new errors.IntercomError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+ switch (_response.error.reason) {
+ case "non-json":
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
- body: _response.error.body,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /conversations.");
+ case "unknown":
+ throw new errors.IntercomError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
- }
- switch (_response.error.reason) {
- case "non-json":
- throw new errors.IntercomError({
- statusCode: _response.error.statusCode,
- body: _response.error.rawBody,
- });
- case "timeout":
- throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /conversations.");
- case "unknown":
- throw new errors.IntercomError({
- message: _response.error.errorMessage,
- });
- }
- };
+ },
+ );
+ const dataWithRawResponse = await list(request).withRawResponse();
return new core.Pageable({
- response: await list(request),
+ response: dataWithRawResponse.data,
+ rawResponse: dataWithRawResponse.rawResponse,
hasNextPage: (response) => response?.pages?.next?.starting_after != null,
getItems: (response) => response?.conversations ?? [],
loadPage: (response) => {
@@ -210,10 +227,17 @@ export class Conversations {
* body: "Hello there"
* })
*/
- public async create(
+ public create(
request: Intercom.CreateConversationRequest,
requestOptions?: Conversations.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__create(request, requestOptions));
+ }
+
+ private async __create(
+ request: Intercom.CreateConversationRequest,
+ requestOptions?: Conversations.RequestOptions,
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -226,8 +250,8 @@ export class Conversations {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -241,21 +265,25 @@ export class Conversations {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Message;
+ return { data: _response.body as Intercom.Message, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 403:
- throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_);
+ throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_, _response.rawResponse);
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -265,12 +293,14 @@ export class Conversations {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /conversations.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -300,10 +330,17 @@ export class Conversations {
* display_as: "plaintext"
* })
*/
- public async find(
+ public find(
+ request: Intercom.FindConversationRequest,
+ requestOptions?: Conversations.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__find(request, requestOptions));
+ }
+
+ private async __find(
request: Intercom.FindConversationRequest,
requestOptions?: Conversations.RequestOptions,
- ): Promise {
+ ): Promise> {
const { conversation_id: conversationId, display_as: displayAs } = request;
const _queryParams: Record = {};
if (displayAs != null) {
@@ -322,8 +359,8 @@ export class Conversations {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -337,21 +374,25 @@ export class Conversations {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Conversation;
+ return { data: _response.body as Intercom.Conversation, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 403:
- throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_);
+ throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_, _response.rawResponse);
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -361,6 +402,7 @@ export class Conversations {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -369,6 +411,7 @@ export class Conversations {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -399,10 +442,17 @@ export class Conversations {
* }
* })
*/
- public async update(
+ public update(
request: Intercom.UpdateConversationRequest,
requestOptions?: Conversations.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__update(request, requestOptions));
+ }
+
+ private async __update(
+ request: Intercom.UpdateConversationRequest,
+ requestOptions?: Conversations.RequestOptions,
+ ): Promise> {
const { conversation_id: conversationId, display_as: displayAs, ..._body } = request;
const _queryParams: Record = {};
if (displayAs != null) {
@@ -421,8 +471,8 @@ export class Conversations {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -437,21 +487,25 @@ export class Conversations {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Conversation;
+ return { data: _response.body as Intercom.Conversation, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 403:
- throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_);
+ throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_, _response.rawResponse);
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -461,6 +515,7 @@ export class Conversations {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -469,6 +524,7 @@ export class Conversations {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -596,58 +652,73 @@ export class Conversations {
request: Intercom.SearchRequest,
requestOptions?: Conversations.RequestOptions,
): Promise> {
- const list = async (request: Intercom.SearchRequest): Promise => {
- const _response = await (this._options.fetcher ?? core.fetcher)({
- url: urlJoin(
- (await core.Supplier.get(this._options.baseUrl)) ??
- (await core.Supplier.get(this._options.environment)) ??
- environments.IntercomEnvironment.UsProduction,
- "conversations/search",
- ),
- method: "POST",
- headers: {
- Authorization: await this._getAuthorizationHeader(),
- "X-Fern-Language": "JavaScript",
- "X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
- "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
- "X-Fern-Runtime": core.RUNTIME.type,
- "X-Fern-Runtime-Version": core.RUNTIME.version,
- ...requestOptions?.headers,
- },
- contentType: "application/json",
- requestType: "json",
- body: request,
- timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
- maxRetries: requestOptions?.maxRetries,
- abortSignal: requestOptions?.abortSignal,
- });
- if (_response.ok) {
- return _response.body as Intercom.PaginatedConversationResponse;
- }
- if (_response.error.reason === "status-code") {
- throw new errors.IntercomError({
- statusCode: _response.error.statusCode,
- body: _response.error.body,
+ const list = core.HttpResponsePromise.interceptFunction(
+ async (
+ request: Intercom.SearchRequest,
+ ): Promise> => {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.IntercomEnvironment.UsProduction,
+ "conversations/search",
+ ),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "intercom-client",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
+ "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...requestOptions?.headers,
+ },
+ contentType: "application/json",
+ requestType: "json",
+ body: request,
+ timeoutMs:
+ requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
});
- }
- switch (_response.error.reason) {
- case "non-json":
+ if (_response.ok) {
+ return {
+ data: _response.body as Intercom.PaginatedConversationResponse,
+ rawResponse: _response.rawResponse,
+ };
+ }
+ if (_response.error.reason === "status-code") {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
- body: _response.error.rawBody,
- });
- case "timeout":
- throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /conversations/search.");
- case "unknown":
- throw new errors.IntercomError({
- message: _response.error.errorMessage,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
- }
- };
+ }
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.IntercomError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.IntercomTimeoutError(
+ "Timeout exceeded when calling POST /conversations/search.",
+ );
+ case "unknown":
+ throw new errors.IntercomError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ },
+ );
+ const dataWithRawResponse = await list(request).withRawResponse();
return new core.Pageable({
- response: await list(request),
+ response: dataWithRawResponse.data,
+ rawResponse: dataWithRawResponse.rawResponse,
hasNextPage: (response) => response?.pages?.next?.starting_after != null,
getItems: (response) => response?.conversations ?? [],
loadPage: (response) => {
@@ -712,10 +783,17 @@ export class Conversations {
* }
* })
*/
- public async reply(
+ public reply(
request: Intercom.ReplyToConversationRequest,
requestOptions?: Conversations.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__reply(request, requestOptions));
+ }
+
+ private async __reply(
+ request: Intercom.ReplyToConversationRequest,
+ requestOptions?: Conversations.RequestOptions,
+ ): Promise> {
const { conversation_id: conversationId, body: _body } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -729,8 +807,8 @@ export class Conversations {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -744,21 +822,25 @@ export class Conversations {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Conversation;
+ return { data: _response.body as Intercom.Conversation, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 403:
- throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_);
+ throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_, _response.rawResponse);
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -768,6 +850,7 @@ export class Conversations {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -776,6 +859,7 @@ export class Conversations {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -834,10 +918,17 @@ export class Conversations {
* }
* })
*/
- public async manage(
+ public manage(
request: Intercom.ManageConversationPartsRequest,
requestOptions?: Conversations.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__manage(request, requestOptions));
+ }
+
+ private async __manage(
+ request: Intercom.ManageConversationPartsRequest,
+ requestOptions?: Conversations.RequestOptions,
+ ): Promise> {
const { conversation_id: conversationId, body: _body } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -851,8 +942,8 @@ export class Conversations {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -866,21 +957,25 @@ export class Conversations {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Conversation;
+ return { data: _response.body as Intercom.Conversation, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 403:
- throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_);
+ throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_, _response.rawResponse);
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -890,6 +985,7 @@ export class Conversations {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -898,6 +994,7 @@ export class Conversations {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -923,10 +1020,17 @@ export class Conversations {
* conversation_id: "123"
* })
*/
- public async runAssignmentRules(
+ public runAssignmentRules(
+ request: Intercom.AutoAssignConversationRequest,
+ requestOptions?: Conversations.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__runAssignmentRules(request, requestOptions));
+ }
+
+ private async __runAssignmentRules(
request: Intercom.AutoAssignConversationRequest,
requestOptions?: Conversations.RequestOptions,
- ): Promise {
+ ): Promise> {
const { conversation_id: conversationId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -940,8 +1044,8 @@ export class Conversations {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -954,21 +1058,25 @@ export class Conversations {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Conversation;
+ return { data: _response.body as Intercom.Conversation, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 403:
- throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_);
+ throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_, _response.rawResponse);
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -978,6 +1086,7 @@ export class Conversations {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -986,6 +1095,7 @@ export class Conversations {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1022,10 +1132,17 @@ export class Conversations {
* }
* })
*/
- public async attachContactAsAdmin(
+ public attachContactAsAdmin(
+ request: Intercom.AttachContactToConversationRequest,
+ requestOptions?: Conversations.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__attachContactAsAdmin(request, requestOptions));
+ }
+
+ private async __attachContactAsAdmin(
request: Intercom.AttachContactToConversationRequest,
requestOptions?: Conversations.RequestOptions,
- ): Promise {
+ ): Promise> {
const { conversation_id: conversationId, ..._body } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -1039,8 +1156,8 @@ export class Conversations {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -1054,21 +1171,25 @@ export class Conversations {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Conversation;
+ return { data: _response.body as Intercom.Conversation, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 403:
- throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_);
+ throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_, _response.rawResponse);
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1078,6 +1199,7 @@ export class Conversations {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -1086,6 +1208,7 @@ export class Conversations {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1112,10 +1235,17 @@ export class Conversations {
* admin_id: "5017690"
* })
*/
- public async detachContactAsAdmin(
+ public detachContactAsAdmin(
request: Intercom.DetachContactFromConversationRequest,
requestOptions?: Conversations.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__detachContactAsAdmin(request, requestOptions));
+ }
+
+ private async __detachContactAsAdmin(
+ request: Intercom.DetachContactFromConversationRequest,
+ requestOptions?: Conversations.RequestOptions,
+ ): Promise> {
const { conversation_id: conversationId, contact_id: contactId, ..._body } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -1129,8 +1259,8 @@ export class Conversations {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -1144,23 +1274,27 @@ export class Conversations {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Conversation;
+ return { data: _response.body as Intercom.Conversation, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 403:
- throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_);
+ throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_, _response.rawResponse);
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
case 422:
- throw new Intercom.UnprocessableEntityError(_response.error.body as unknown);
+ throw new Intercom.UnprocessableEntityError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1170,6 +1304,7 @@ export class Conversations {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -1178,6 +1313,7 @@ export class Conversations {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1209,10 +1345,17 @@ export class Conversations {
* conversation_part_id: "really_123_doesnt_exist"
* })
*/
- public async redactConversationPart(
+ public redactConversationPart(
+ request: Intercom.RedactConversationRequest,
+ requestOptions?: Conversations.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__redactConversationPart(request, requestOptions));
+ }
+
+ private async __redactConversationPart(
request: Intercom.RedactConversationRequest,
requestOptions?: Conversations.RequestOptions,
- ): Promise {
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -1225,8 +1368,8 @@ export class Conversations {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -1240,19 +1383,23 @@ export class Conversations {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Conversation;
+ return { data: _response.body as Intercom.Conversation, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1262,12 +1409,14 @@ export class Conversations {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /conversations/redact.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1292,10 +1441,17 @@ export class Conversations {
* ticket_type_id: "80"
* })
*/
- public async convertToTicket(
+ public convertToTicket(
+ request: Intercom.ConvertConversationToTicketRequest,
+ requestOptions?: Conversations.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__convertToTicket(request, requestOptions));
+ }
+
+ private async __convertToTicket(
request: Intercom.ConvertConversationToTicketRequest,
requestOptions?: Conversations.RequestOptions,
- ): Promise {
+ ): Promise> {
const { conversation_id: conversationId, ..._body } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -1309,8 +1465,8 @@ export class Conversations {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -1324,17 +1480,18 @@ export class Conversations {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Ticket;
+ return { data: _response.body as Intercom.Ticket, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 400:
- throw new Intercom.BadRequestError(_response.error.body as unknown);
+ throw new Intercom.BadRequestError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -1344,6 +1501,7 @@ export class Conversations {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -1352,6 +1510,7 @@ export class Conversations {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
diff --git a/src/api/resources/dataAttributes/client/Client.ts b/src/api/resources/dataAttributes/client/Client.ts
index fe06c4fe..cd6b4d7e 100644
--- a/src/api/resources/dataAttributes/client/Client.ts
+++ b/src/api/resources/dataAttributes/client/Client.ts
@@ -86,10 +86,17 @@ export class DataAttributes {
* @example
* await client.dataAttributes.list()
*/
- public async list(
+ public list(
request: Intercom.ListDataAttributesRequest = {},
requestOptions?: DataAttributes.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(request, requestOptions));
+ }
+
+ private async __list(
+ request: Intercom.ListDataAttributesRequest = {},
+ requestOptions?: DataAttributes.RequestOptions,
+ ): Promise> {
const { model, include_archived: includeArchived } = request;
const _queryParams: Record = {};
if (model != null) {
@@ -112,8 +119,8 @@ export class DataAttributes {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -127,17 +134,21 @@ export class DataAttributes {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.DataAttributeList;
+ return { data: _response.body as Intercom.DataAttributeList, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -147,12 +158,14 @@ export class DataAttributes {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /data_attributes.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -210,10 +223,17 @@ export class DataAttributes {
* options: ["options"]
* })
*/
- public async create(
+ public create(
+ request: Intercom.CreateDataAttributeRequest,
+ requestOptions?: DataAttributes.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__create(request, requestOptions));
+ }
+
+ private async __create(
request: Intercom.CreateDataAttributeRequest,
requestOptions?: DataAttributes.RequestOptions,
- ): Promise {
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -226,8 +246,8 @@ export class DataAttributes {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -241,19 +261,23 @@ export class DataAttributes {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.DataAttribute;
+ return { data: _response.body as Intercom.DataAttribute, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 400:
- throw new Intercom.BadRequestError(_response.error.body as unknown);
+ throw new Intercom.BadRequestError(_response.error.body as unknown, _response.rawResponse);
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -263,12 +287,14 @@ export class DataAttributes {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /data_attributes.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -320,10 +346,17 @@ export class DataAttributes {
* description: "Trying to archieve"
* })
*/
- public async update(
+ public update(
+ request: Intercom.UpdateDataAttributeRequest,
+ requestOptions?: DataAttributes.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__update(request, requestOptions));
+ }
+
+ private async __update(
request: Intercom.UpdateDataAttributeRequest,
requestOptions?: DataAttributes.RequestOptions,
- ): Promise {
+ ): Promise> {
const { data_attribute_id: dataAttributeId, ..._body } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -337,8 +370,8 @@ export class DataAttributes {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -352,23 +385,27 @@ export class DataAttributes {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.DataAttribute;
+ return { data: _response.body as Intercom.DataAttribute, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 400:
- throw new Intercom.BadRequestError(_response.error.body as unknown);
+ throw new Intercom.BadRequestError(_response.error.body as unknown, _response.rawResponse);
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
case 422:
- throw new Intercom.UnprocessableEntityError(_response.error.body as unknown);
+ throw new Intercom.UnprocessableEntityError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -378,6 +415,7 @@ export class DataAttributes {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -386,6 +424,7 @@ export class DataAttributes {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
diff --git a/src/api/resources/dataExport/client/Client.ts b/src/api/resources/dataExport/client/Client.ts
index f4c041aa..72d82c09 100644
--- a/src/api/resources/dataExport/client/Client.ts
+++ b/src/api/resources/dataExport/client/Client.ts
@@ -101,10 +101,17 @@ export class DataExport {
* created_at_before: 1719492967
* })
*/
- public async create(
+ public create(
request: Intercom.CreateDataExportRequest,
requestOptions?: DataExport.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__create(request, requestOptions));
+ }
+
+ private async __create(
+ request: Intercom.CreateDataExportRequest,
+ requestOptions?: DataExport.RequestOptions,
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -117,8 +124,8 @@ export class DataExport {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -132,13 +139,14 @@ export class DataExport {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.DataExport;
+ return { data: _response.body as Intercom.DataExport, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
@@ -147,12 +155,14 @@ export class DataExport {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /export/content/data.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -172,10 +182,17 @@ export class DataExport {
* job_identifier: "job_identifier"
* })
*/
- public async find(
+ public find(
+ request: Intercom.FindDataExportRequest,
+ requestOptions?: DataExport.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__find(request, requestOptions));
+ }
+
+ private async __find(
request: Intercom.FindDataExportRequest,
requestOptions?: DataExport.RequestOptions,
- ): Promise {
+ ): Promise> {
const { job_identifier: jobIdentifier } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -189,8 +206,8 @@ export class DataExport {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -203,13 +220,14 @@ export class DataExport {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.DataExport;
+ return { data: _response.body as Intercom.DataExport, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
@@ -218,6 +236,7 @@ export class DataExport {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -226,6 +245,7 @@ export class DataExport {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -241,10 +261,17 @@ export class DataExport {
* job_identifier: "job_identifier"
* })
*/
- public async cancel(
+ public cancel(
request: Intercom.CancelDataExportRequest,
requestOptions?: DataExport.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__cancel(request, requestOptions));
+ }
+
+ private async __cancel(
+ request: Intercom.CancelDataExportRequest,
+ requestOptions?: DataExport.RequestOptions,
+ ): Promise> {
const { job_identifier: jobIdentifier } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -258,8 +285,8 @@ export class DataExport {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -272,13 +299,14 @@ export class DataExport {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.DataExport;
+ return { data: _response.body as Intercom.DataExport, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
@@ -287,6 +315,7 @@ export class DataExport {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -295,6 +324,7 @@ export class DataExport {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -316,10 +346,17 @@ export class DataExport {
* job_identifier: "job_identifier"
* })
*/
- public async download(
+ public download(
+ request: Intercom.DownloadDataExportRequest,
+ requestOptions?: DataExport.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__download(request, requestOptions));
+ }
+
+ private async __download(
request: Intercom.DownloadDataExportRequest,
requestOptions?: DataExport.RequestOptions,
- ): Promise {
+ ): Promise> {
const { job_identifier: jobIdentifier } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -333,8 +370,8 @@ export class DataExport {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -347,13 +384,14 @@ export class DataExport {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return;
+ return { data: undefined, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
@@ -362,6 +400,7 @@ export class DataExport {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -370,6 +409,7 @@ export class DataExport {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
diff --git a/src/api/resources/events/client/Client.ts b/src/api/resources/events/client/Client.ts
index 3b8c96f7..a51cd863 100644
--- a/src/api/resources/events/client/Client.ts
+++ b/src/api/resources/events/client/Client.ts
@@ -98,10 +98,17 @@ export class Events {
* type: "type"
* })
*/
- public async list(
+ public list(
request: Intercom.ListEventsRequest,
requestOptions?: Events.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(request, requestOptions));
+ }
+
+ private async __list(
+ request: Intercom.ListEventsRequest,
+ requestOptions?: Events.RequestOptions,
+ ): Promise> {
const {
user_id: userId,
intercom_user_id: intercomUserId,
@@ -144,8 +151,8 @@ export class Events {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -159,17 +166,21 @@ export class Events {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.DataEventSummary;
+ return { data: _response.body as Intercom.DataEventSummary, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -179,12 +190,14 @@ export class Events {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /events.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -244,10 +257,17 @@ export class Events {
* created_at: 1671028894
* })
*/
- public async create(
+ public create(
+ request: Intercom.CreateDataEventRequest,
+ requestOptions?: Events.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__create(request, requestOptions));
+ }
+
+ private async __create(
request: Intercom.CreateDataEventRequest,
requestOptions?: Events.RequestOptions,
- ): Promise {
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -260,8 +280,8 @@ export class Events {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -275,17 +295,21 @@ export class Events {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return;
+ return { data: undefined, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -295,12 +319,14 @@ export class Events {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /events.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -316,10 +342,17 @@ export class Events {
* @example
* await client.events.summaries()
*/
- public async summaries(
+ public summaries(
+ request: Intercom.ListEventSummariesRequest = {},
+ requestOptions?: Events.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__summaries(request, requestOptions));
+ }
+
+ private async __summaries(
request: Intercom.ListEventSummariesRequest = {},
requestOptions?: Events.RequestOptions,
- ): Promise {
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -332,8 +365,8 @@ export class Events {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -347,17 +380,21 @@ export class Events {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return;
+ return { data: undefined, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -367,12 +404,14 @@ export class Events {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /events/summaries.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
diff --git a/src/api/resources/helpCenters/client/Client.ts b/src/api/resources/helpCenters/client/Client.ts
index 523ddf97..f8a1cf28 100644
--- a/src/api/resources/helpCenters/client/Client.ts
+++ b/src/api/resources/helpCenters/client/Client.ts
@@ -93,10 +93,17 @@ export class HelpCenters {
* help_center_id: "123"
* })
*/
- public async find(
+ public find(
request: Intercom.FindHelpCenterRequest,
requestOptions?: HelpCenters.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__find(request, requestOptions));
+ }
+
+ private async __find(
+ request: Intercom.FindHelpCenterRequest,
+ requestOptions?: HelpCenters.RequestOptions,
+ ): Promise> {
const { help_center_id: helpCenterId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -110,8 +117,8 @@ export class HelpCenters {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -124,19 +131,23 @@ export class HelpCenters {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.HelpCenter;
+ return { data: _response.body as Intercom.HelpCenter, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -146,6 +157,7 @@ export class HelpCenters {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -154,6 +166,7 @@ export class HelpCenters {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -173,74 +186,87 @@ export class HelpCenters {
request: Intercom.ListHelpCentersRequest = {},
requestOptions?: HelpCenters.RequestOptions,
): Promise> {
- const list = async (request: Intercom.ListHelpCentersRequest): Promise => {
- const { page, per_page: perPage } = request;
- const _queryParams: Record = {};
- if (page != null) {
- _queryParams["page"] = page.toString();
- }
- if (perPage != null) {
- _queryParams["per_page"] = perPage.toString();
- }
- const _response = await (this._options.fetcher ?? core.fetcher)({
- url: urlJoin(
- (await core.Supplier.get(this._options.baseUrl)) ??
- (await core.Supplier.get(this._options.environment)) ??
- environments.IntercomEnvironment.UsProduction,
- "help_center/help_centers",
- ),
- method: "GET",
- headers: {
- Authorization: await this._getAuthorizationHeader(),
- "X-Fern-Language": "JavaScript",
- "X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
- "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
- "X-Fern-Runtime": core.RUNTIME.type,
- "X-Fern-Runtime-Version": core.RUNTIME.version,
- ...requestOptions?.headers,
- },
- contentType: "application/json",
- queryParameters: _queryParams,
- requestType: "json",
- timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
- maxRetries: requestOptions?.maxRetries,
- abortSignal: requestOptions?.abortSignal,
- });
- if (_response.ok) {
- return _response.body as Intercom.HelpCenterList;
- }
- if (_response.error.reason === "status-code") {
- switch (_response.error.statusCode) {
- case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
- default:
+ const list = core.HttpResponsePromise.interceptFunction(
+ async (
+ request: Intercom.ListHelpCentersRequest,
+ ): Promise> => {
+ const { page, per_page: perPage } = request;
+ const _queryParams: Record = {};
+ if (page != null) {
+ _queryParams["page"] = page.toString();
+ }
+ if (perPage != null) {
+ _queryParams["per_page"] = perPage.toString();
+ }
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.IntercomEnvironment.UsProduction,
+ "help_center/help_centers",
+ ),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "intercom-client",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
+ "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...requestOptions?.headers,
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ requestType: "json",
+ timeoutMs:
+ requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Intercom.HelpCenterList, rawResponse: _response.rawResponse };
+ }
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 401:
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
+ default:
+ throw new errors.IntercomError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+ switch (_response.error.reason) {
+ case "non-json":
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
- body: _response.error.body,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.IntercomTimeoutError(
+ "Timeout exceeded when calling GET /help_center/help_centers.",
+ );
+ case "unknown":
+ throw new errors.IntercomError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
- }
- switch (_response.error.reason) {
- case "non-json":
- throw new errors.IntercomError({
- statusCode: _response.error.statusCode,
- body: _response.error.rawBody,
- });
- case "timeout":
- throw new errors.IntercomTimeoutError(
- "Timeout exceeded when calling GET /help_center/help_centers.",
- );
- case "unknown":
- throw new errors.IntercomError({
- message: _response.error.errorMessage,
- });
- }
- };
+ },
+ );
let _offset = request?.page != null ? request?.page : 1;
+ const dataWithRawResponse = await list(request).withRawResponse();
return new core.Pageable({
- response: await list(request),
+ response: dataWithRawResponse.data,
+ rawResponse: dataWithRawResponse.rawResponse,
hasNextPage: (response) => (response?.data ?? []).length > 0,
getItems: (response) => response?.data ?? [],
loadPage: (_response) => {
diff --git a/src/api/resources/helpCenters/resources/collections/client/Client.ts b/src/api/resources/helpCenters/resources/collections/client/Client.ts
index e5b4fb85..b123a0c1 100644
--- a/src/api/resources/helpCenters/resources/collections/client/Client.ts
+++ b/src/api/resources/helpCenters/resources/collections/client/Client.ts
@@ -89,74 +89,87 @@ export class Collections {
request: Intercom.helpCenters.ListCollectionsRequest = {},
requestOptions?: Collections.RequestOptions,
): Promise> {
- const list = async (request: Intercom.helpCenters.ListCollectionsRequest): Promise => {
- const { page, per_page: perPage } = request;
- const _queryParams: Record = {};
- if (page != null) {
- _queryParams["page"] = page.toString();
- }
- if (perPage != null) {
- _queryParams["per_page"] = perPage.toString();
- }
- const _response = await (this._options.fetcher ?? core.fetcher)({
- url: urlJoin(
- (await core.Supplier.get(this._options.baseUrl)) ??
- (await core.Supplier.get(this._options.environment)) ??
- environments.IntercomEnvironment.UsProduction,
- "help_center/collections",
- ),
- method: "GET",
- headers: {
- Authorization: await this._getAuthorizationHeader(),
- "X-Fern-Language": "JavaScript",
- "X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
- "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
- "X-Fern-Runtime": core.RUNTIME.type,
- "X-Fern-Runtime-Version": core.RUNTIME.version,
- ...requestOptions?.headers,
- },
- contentType: "application/json",
- queryParameters: _queryParams,
- requestType: "json",
- timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
- maxRetries: requestOptions?.maxRetries,
- abortSignal: requestOptions?.abortSignal,
- });
- if (_response.ok) {
- return _response.body as Intercom.CollectionList;
- }
- if (_response.error.reason === "status-code") {
- switch (_response.error.statusCode) {
- case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
- default:
+ const list = core.HttpResponsePromise.interceptFunction(
+ async (
+ request: Intercom.helpCenters.ListCollectionsRequest,
+ ): Promise> => {
+ const { page, per_page: perPage } = request;
+ const _queryParams: Record = {};
+ if (page != null) {
+ _queryParams["page"] = page.toString();
+ }
+ if (perPage != null) {
+ _queryParams["per_page"] = perPage.toString();
+ }
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.IntercomEnvironment.UsProduction,
+ "help_center/collections",
+ ),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "intercom-client",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
+ "Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...requestOptions?.headers,
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ requestType: "json",
+ timeoutMs:
+ requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 20000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Intercom.CollectionList, rawResponse: _response.rawResponse };
+ }
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 401:
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
+ default:
+ throw new errors.IntercomError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+ switch (_response.error.reason) {
+ case "non-json":
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
- body: _response.error.body,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.IntercomTimeoutError(
+ "Timeout exceeded when calling GET /help_center/collections.",
+ );
+ case "unknown":
+ throw new errors.IntercomError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
- }
- switch (_response.error.reason) {
- case "non-json":
- throw new errors.IntercomError({
- statusCode: _response.error.statusCode,
- body: _response.error.rawBody,
- });
- case "timeout":
- throw new errors.IntercomTimeoutError(
- "Timeout exceeded when calling GET /help_center/collections.",
- );
- case "unknown":
- throw new errors.IntercomError({
- message: _response.error.errorMessage,
- });
- }
- };
+ },
+ );
let _offset = request?.page != null ? request?.page : 1;
+ const dataWithRawResponse = await list(request).withRawResponse();
return new core.Pageable({
- response: await list(request),
+ response: dataWithRawResponse.data,
+ rawResponse: dataWithRawResponse.rawResponse,
hasNextPage: (response) => (response?.data ?? []).length > 0,
getItems: (response) => response?.data ?? [],
loadPage: (_response) => {
@@ -186,10 +199,17 @@ export class Collections {
* description: "Missing required parameter"
* })
*/
- public async create(
+ public create(
request: Intercom.helpCenters.CreateCollectionRequest,
requestOptions?: Collections.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__create(request, requestOptions));
+ }
+
+ private async __create(
+ request: Intercom.helpCenters.CreateCollectionRequest,
+ requestOptions?: Collections.RequestOptions,
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -202,8 +222,8 @@ export class Collections {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -217,19 +237,23 @@ export class Collections {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Collection;
+ return { data: _response.body as Intercom.Collection, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 400:
- throw new Intercom.BadRequestError(_response.error.body as unknown);
+ throw new Intercom.BadRequestError(_response.error.body as unknown, _response.rawResponse);
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -239,12 +263,14 @@ export class Collections {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /help_center/collections.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -263,10 +289,17 @@ export class Collections {
* collection_id: "123"
* })
*/
- public async find(
+ public find(
request: Intercom.helpCenters.FindCollectionRequest,
requestOptions?: Collections.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__find(request, requestOptions));
+ }
+
+ private async __find(
+ request: Intercom.helpCenters.FindCollectionRequest,
+ requestOptions?: Collections.RequestOptions,
+ ): Promise> {
const { collection_id: collectionId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -280,8 +313,8 @@ export class Collections {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -294,19 +327,23 @@ export class Collections {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Collection;
+ return { data: _response.body as Intercom.Collection, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -316,6 +353,7 @@ export class Collections {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -324,6 +362,7 @@ export class Collections {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -343,10 +382,17 @@ export class Collections {
* name: "Update collection name"
* })
*/
- public async update(
+ public update(
request: Intercom.helpCenters.UpdateCollectionRequest,
requestOptions?: Collections.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__update(request, requestOptions));
+ }
+
+ private async __update(
+ request: Intercom.helpCenters.UpdateCollectionRequest,
+ requestOptions?: Collections.RequestOptions,
+ ): Promise> {
const { collection_id: collectionId, ..._body } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -360,8 +406,8 @@ export class Collections {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -375,19 +421,23 @@ export class Collections {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Collection;
+ return { data: _response.body as Intercom.Collection, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -397,6 +447,7 @@ export class Collections {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -405,6 +456,7 @@ export class Collections {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -423,10 +475,17 @@ export class Collections {
* collection_id: "123"
* })
*/
- public async delete(
+ public delete(
request: Intercom.helpCenters.DeleteCollectionRequest,
requestOptions?: Collections.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__delete(request, requestOptions));
+ }
+
+ private async __delete(
+ request: Intercom.helpCenters.DeleteCollectionRequest,
+ requestOptions?: Collections.RequestOptions,
+ ): Promise> {
const { collection_id: collectionId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -440,8 +499,8 @@ export class Collections {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -454,19 +513,23 @@ export class Collections {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.DeletedCollectionObject;
+ return { data: _response.body as Intercom.DeletedCollectionObject, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -476,6 +539,7 @@ export class Collections {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -484,6 +548,7 @@ export class Collections {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
diff --git a/src/api/resources/index.ts b/src/api/resources/index.ts
index 3e1d913c..7761ecb9 100644
--- a/src/api/resources/index.ts
+++ b/src/api/resources/index.ts
@@ -36,12 +36,12 @@ export * as dataEvents from "./dataEvents";
export * from "./dataEvents/types";
export * as news from "./news";
export * from "./news/types";
+export * as unstable from "./unstable";
export * as helpCenters from "./helpCenters";
export * as events from "./events";
export * as phoneCallRedirects from "./phoneCallRedirects";
export * as ticketTypes from "./ticketTypes";
export * as visitors from "./visitors";
-export * as customChannelEvents from "./customChannelEvents";
export * from "./admins/client/requests";
export * from "./articles/client/requests";
export * from "./helpCenters/client/requests";
diff --git a/src/api/resources/messages/client/Client.ts b/src/api/resources/messages/client/Client.ts
index 97ff5961..9fd4d027 100644
--- a/src/api/resources/messages/client/Client.ts
+++ b/src/api/resources/messages/client/Client.ts
@@ -166,10 +166,17 @@ export class Messages {
* create_conversation_without_contact_reply: true
* })
*/
- public async create(
+ public create(
request: Intercom.CreateMessageRequest,
requestOptions?: Messages.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__create(request, requestOptions));
+ }
+
+ private async __create(
+ request: Intercom.CreateMessageRequest,
+ requestOptions?: Messages.RequestOptions,
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -182,8 +189,8 @@ export class Messages {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -197,23 +204,27 @@ export class Messages {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Message;
+ return { data: _response.body as Intercom.Message, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 400:
- throw new Intercom.BadRequestError(_response.error.body as unknown);
+ throw new Intercom.BadRequestError(_response.error.body as unknown, _response.rawResponse);
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 403:
- throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_);
+ throw new Intercom.ForbiddenError(_response.error.body as Intercom.Error_, _response.rawResponse);
case 422:
- throw new Intercom.UnprocessableEntityError(_response.error.body as unknown);
+ throw new Intercom.UnprocessableEntityError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -223,12 +234,14 @@ export class Messages {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /messages.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
diff --git a/src/api/resources/news/resources/feeds/client/Client.ts b/src/api/resources/news/resources/feeds/client/Client.ts
index 35a6e147..7af908b2 100644
--- a/src/api/resources/news/resources/feeds/client/Client.ts
+++ b/src/api/resources/news/resources/feeds/client/Client.ts
@@ -85,10 +85,17 @@ export class Feeds {
* newsfeed_id: "123"
* })
*/
- public async listItems(
+ public listItems(
request: Intercom.news.ListNewsFeedItemsRequest,
requestOptions?: Feeds.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__listItems(request, requestOptions));
+ }
+
+ private async __listItems(
+ request: Intercom.news.ListNewsFeedItemsRequest,
+ requestOptions?: Feeds.RequestOptions,
+ ): Promise> {
const { newsfeed_id: newsfeedId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -102,8 +109,8 @@ export class Feeds {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -116,17 +123,21 @@ export class Feeds {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.PaginatedNewsItemResponse;
+ return { data: _response.body as Intercom.PaginatedNewsItemResponse, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -136,6 +147,7 @@ export class Feeds {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -144,6 +156,7 @@ export class Feeds {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -158,7 +171,13 @@ export class Feeds {
* @example
* await client.news.feeds.list()
*/
- public async list(requestOptions?: Feeds.RequestOptions): Promise {
+ public list(requestOptions?: Feeds.RequestOptions): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(requestOptions));
+ }
+
+ private async __list(
+ requestOptions?: Feeds.RequestOptions,
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -171,8 +190,8 @@ export class Feeds {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -185,17 +204,21 @@ export class Feeds {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.PaginatedNewsfeedResponse;
+ return { data: _response.body as Intercom.PaginatedNewsfeedResponse, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -205,12 +228,14 @@ export class Feeds {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /news/newsfeeds.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -228,10 +253,17 @@ export class Feeds {
* newsfeed_id: "123"
* })
*/
- public async find(
+ public find(
+ request: Intercom.news.FindNewsFeedRequest,
+ requestOptions?: Feeds.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__find(request, requestOptions));
+ }
+
+ private async __find(
request: Intercom.news.FindNewsFeedRequest,
requestOptions?: Feeds.RequestOptions,
- ): Promise {
+ ): Promise> {
const { newsfeed_id: newsfeedId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -245,8 +277,8 @@ export class Feeds {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -259,17 +291,21 @@ export class Feeds {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.Newsfeed;
+ return { data: _response.body as Intercom.Newsfeed, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -279,6 +315,7 @@ export class Feeds {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -287,6 +324,7 @@ export class Feeds {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
diff --git a/src/api/resources/news/resources/items/client/Client.ts b/src/api/resources/news/resources/items/client/Client.ts
index 7321ae29..2dc9fa97 100644
--- a/src/api/resources/news/resources/items/client/Client.ts
+++ b/src/api/resources/news/resources/items/client/Client.ts
@@ -82,7 +82,13 @@ export class Items {
* @example
* await client.news.items.list()
*/
- public async list(requestOptions?: Items.RequestOptions): Promise {
+ public list(requestOptions?: Items.RequestOptions): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(requestOptions));
+ }
+
+ private async __list(
+ requestOptions?: Items.RequestOptions,
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -95,8 +101,8 @@ export class Items {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -109,17 +115,21 @@ export class Items {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.PaginatedNewsItemResponse;
+ return { data: _response.body as Intercom.PaginatedNewsItemResponse, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -129,12 +139,14 @@ export class Items {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling GET /news/news_items.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -162,10 +174,17 @@ export class Items {
* }]
* })
*/
- public async create(
+ public create(
+ request: Intercom.NewsItemRequest,
+ requestOptions?: Items.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__create(request, requestOptions));
+ }
+
+ private async __create(
request: Intercom.NewsItemRequest,
requestOptions?: Items.RequestOptions,
- ): Promise {
+ ): Promise> {
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
(await core.Supplier.get(this._options.baseUrl)) ??
@@ -178,8 +197,8 @@ export class Items {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -193,17 +212,21 @@ export class Items {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.NewsItem;
+ return { data: _response.body as Intercom.NewsItem, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -213,12 +236,14 @@ export class Items {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError("Timeout exceeded when calling POST /news/news_items.");
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -237,10 +262,17 @@ export class Items {
* news_item_id: "123"
* })
*/
- public async find(
+ public find(
request: Intercom.news.FindNewsItemRequest,
requestOptions?: Items.RequestOptions,
- ): Promise {
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__find(request, requestOptions));
+ }
+
+ private async __find(
+ request: Intercom.news.FindNewsItemRequest,
+ requestOptions?: Items.RequestOptions,
+ ): Promise> {
const { news_item_id: newsItemId } = request;
const _response = await (this._options.fetcher ?? core.fetcher)({
url: urlJoin(
@@ -254,8 +286,8 @@ export class Items {
Authorization: await this._getAuthorizationHeader(),
"X-Fern-Language": "JavaScript",
"X-Fern-SDK-Name": "intercom-client",
- "X-Fern-SDK-Version": "6.3.0",
- "User-Agent": "intercom-client/6.3.0",
+ "X-Fern-SDK-Version": "6.4.0",
+ "User-Agent": "intercom-client/6.4.0",
"Intercom-Version": requestOptions?.version ?? this._options?.version ?? "2.11",
"X-Fern-Runtime": core.RUNTIME.type,
"X-Fern-Runtime-Version": core.RUNTIME.version,
@@ -268,19 +300,23 @@ export class Items {
abortSignal: requestOptions?.abortSignal,
});
if (_response.ok) {
- return _response.body as Intercom.NewsItem;
+ return { data: _response.body as Intercom.NewsItem, rawResponse: _response.rawResponse };
}
if (_response.error.reason === "status-code") {
switch (_response.error.statusCode) {
case 401:
- throw new Intercom.UnauthorizedError(_response.error.body as Intercom.Error_);
+ throw new Intercom.UnauthorizedError(
+ _response.error.body as Intercom.Error_,
+ _response.rawResponse,
+ );
case 404:
- throw new Intercom.NotFoundError(_response.error.body as unknown);
+ throw new Intercom.NotFoundError(_response.error.body as unknown, _response.rawResponse);
default:
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.body,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -290,6 +326,7 @@ export class Items {
throw new errors.IntercomError({
statusCode: _response.error.statusCode,
body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
});
case "timeout":
throw new errors.IntercomTimeoutError(
@@ -298,6 +335,7 @@ export class Items {
case "unknown":
throw new errors.IntercomError({
message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
});
}
}
@@ -331,10 +369,17 @@ export class Items {
* }
* })
*/
- public async update(
+ public update(
+ request: Intercom.news.UpdateNewsItemRequest,
+ requestOptions?: Items.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__update(request, requestOptions));
+ }
+
+ private async __update(
request: Intercom.news.UpdateNewsItemRequest,
requestOptions?: Items.RequestOptions,
- ): Promise {
+ ): Promise