UNPKG

mailslurp-client

Version:

Official client for MailSlurp Email and SMS API. Create email addresses and phone numbers in Javascript without a mail server. Send and receive real emails in applications or tests.

873 lines 168 kB
"use strict"; /* tslint:disable */ /* eslint-disable */ /** * MailSlurp API * MailSlurp is an API for sending and receiving emails and SMS from dynamically allocated email addresses and phone numbers. It\'s designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://docs.mailslurp.com/) - [Examples](https://github.com/mailslurp/examples) repository * * The version of the OpenAPI document: 6.5.2 * Contact: contact@mailslurp.dev * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; return extendStatics(d, b); }; return function (d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __generator = (this && this.__generator) || function (thisArg, body) { var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function (v) { return step([n, v]); }; } function step(op) { if (f) throw new TypeError("Generator is already executing."); while (g && (g = 0, op[0] && (_ = 0)), _) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } if (t[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } }; Object.defineProperty(exports, "__esModule", { value: true }); exports.GetOrganizationEmailsPaginatedSortEnum = exports.GetEmailsPaginatedSortEnum = exports.GetEmailsOffsetPaginatedSortEnum = exports.GetEmailThreadsSortEnum = exports.GetEmailThreadItemsSortEnum = exports.EmailControllerApi = void 0; var runtime = __importStar(require("../runtime")); var models_1 = require("../models"); /** * */ var EmailControllerApi = /** @class */ (function (_super) { __extends(EmailControllerApi, _super); function EmailControllerApi() { return _super !== null && _super.apply(this, arguments) || this; } /** * Applies RFC3501 IMAP flag operations on a message. Current implementation supports read/unread semantics via the `\\\\Seen` flag only. * Set IMAP flags associated with a message. Only supports \'\\Seen\' flag. */ EmailControllerApi.prototype.applyImapFlagOperationRaw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.emailId === null || requestParameters.emailId === undefined) { throw new runtime.RequiredError('emailId', 'Required parameter requestParameters.emailId was null or undefined when calling applyImapFlagOperation.'); } if (requestParameters.imapFlagOperationOptions === null || requestParameters.imapFlagOperationOptions === undefined) { throw new runtime.RequiredError('imapFlagOperationOptions', 'Required parameter requestParameters.imapFlagOperationOptions was null or undefined when calling applyImapFlagOperation.'); } queryParameters = {}; headerParameters = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/{emailId}/imap-flag-operation".replace("{".concat('emailId', "}"), encodeURIComponent(String(requestParameters.emailId))), method: 'POST', headers: headerParameters, query: queryParameters, body: (0, models_1.ImapFlagOperationOptionsToJSON)(requestParameters.imapFlagOperationOptions), }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.JSONApiResponse(response, function (jsonValue) { return (0, models_1.EmailPreviewFromJSON)(jsonValue); })]; } }); }); }; /** * Applies RFC3501 IMAP flag operations on a message. Current implementation supports read/unread semantics via the `\\\\Seen` flag only. * Set IMAP flags associated with a message. Only supports \'\\Seen\' flag. */ EmailControllerApi.prototype.applyImapFlagOperation = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var response; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.applyImapFlagOperationRaw(requestParameters, initOverrides)]; case 1: response = _a.sent(); return [4 /*yield*/, response.value()]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; /** * Validates sender/inbox context and recipient eligibility before attempting a send. Useful for preflight checks in UI or test workflows. * Check whether an email send would be accepted */ EmailControllerApi.prototype.canSendRaw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.inboxId === null || requestParameters.inboxId === undefined) { throw new runtime.RequiredError('inboxId', 'Required parameter requestParameters.inboxId was null or undefined when calling canSend.'); } if (requestParameters.sendEmailOptions === null || requestParameters.sendEmailOptions === undefined) { throw new runtime.RequiredError('sendEmailOptions', 'Required parameter requestParameters.sendEmailOptions was null or undefined when calling canSend.'); } queryParameters = {}; if (requestParameters.inboxId !== undefined) { queryParameters['inboxId'] = requestParameters.inboxId; } headerParameters = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/can-send", method: 'POST', headers: headerParameters, query: queryParameters, body: (0, models_1.SendEmailOptionsToJSON)(requestParameters.sendEmailOptions), }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.JSONApiResponse(response, function (jsonValue) { return (0, models_1.CanSendEmailResultsFromJSON)(jsonValue); })]; } }); }); }; /** * Validates sender/inbox context and recipient eligibility before attempting a send. Useful for preflight checks in UI or test workflows. * Check whether an email send would be accepted */ EmailControllerApi.prototype.canSend = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var response; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.canSendRaw(requestParameters, initOverrides)]; case 1: response = _a.sent(); return [4 /*yield*/, response.value()]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; /** * Runs the same message-level audit bundle used by the email audit dashboard in one request. Combines content checks, HTML validation, compatibility analysis, and reputation verdict rollup when available. * Run aggregate email audit for a stored email */ EmailControllerApi.prototype.checkEmailAudit1Raw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.emailId === null || requestParameters.emailId === undefined) { throw new runtime.RequiredError('emailId', 'Required parameter requestParameters.emailId was null or undefined when calling checkEmailAudit1.'); } queryParameters = {}; headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/{emailId}/check-email-audit".replace("{".concat('emailId', "}"), encodeURIComponent(String(requestParameters.emailId))), method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.JSONApiResponse(response, function (jsonValue) { return (0, models_1.EmailAuditAnalysisResultFromJSON)(jsonValue); })]; } }); }); }; /** * Runs the same message-level audit bundle used by the email audit dashboard in one request. Combines content checks, HTML validation, compatibility analysis, and reputation verdict rollup when available. * Run aggregate email audit for a stored email */ EmailControllerApi.prototype.checkEmailAudit1 = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var response; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.checkEmailAudit1Raw(requestParameters, initOverrides)]; case 1: response = _a.sent(); return [4 /*yield*/, response.value()]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; /** * Runs content quality checks against hydrated email body content. This endpoint performs outbound HTTP checks for linked resources, so avoid use with sensitive or stateful URLs. * Check email body for broken links, images, and spelling issues */ EmailControllerApi.prototype.checkEmailBodyRaw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.emailId === null || requestParameters.emailId === undefined) { throw new runtime.RequiredError('emailId', 'Required parameter requestParameters.emailId was null or undefined when calling checkEmailBody.'); } queryParameters = {}; headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/{emailId}/check-email-body".replace("{".concat('emailId', "}"), encodeURIComponent(String(requestParameters.emailId))), method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.JSONApiResponse(response, function (jsonValue) { return (0, models_1.CheckEmailBodyResultsFromJSON)(jsonValue); })]; } }); }); }; /** * Runs content quality checks against hydrated email body content. This endpoint performs outbound HTTP checks for linked resources, so avoid use with sensitive or stateful URLs. * Check email body for broken links, images, and spelling issues */ EmailControllerApi.prototype.checkEmailBody = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var response; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.checkEmailBodyRaw(requestParameters, initOverrides)]; case 1: response = _a.sent(); return [4 /*yield*/, response.value()]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; /** * Detects HTML/CSS features in the target email body and reports compatibility across major email clients and devices. * Check client support for features used in a stored email body */ EmailControllerApi.prototype.checkEmailBodyFeatureSupportRaw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.emailId === null || requestParameters.emailId === undefined) { throw new runtime.RequiredError('emailId', 'Required parameter requestParameters.emailId was null or undefined when calling checkEmailBodyFeatureSupport.'); } queryParameters = {}; headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/{emailId}/check-email-body-feature-support".replace("{".concat('emailId', "}"), encodeURIComponent(String(requestParameters.emailId))), method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.JSONApiResponse(response, function (jsonValue) { return (0, models_1.CheckEmailBodyFeatureSupportResultsFromJSON)(jsonValue); })]; } }); }); }; /** * Detects HTML/CSS features in the target email body and reports compatibility across major email clients and devices. * Check client support for features used in a stored email body */ EmailControllerApi.prototype.checkEmailBodyFeatureSupport = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var response; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.checkEmailBodyFeatureSupportRaw(requestParameters, initOverrides)]; case 1: response = _a.sent(); return [4 /*yield*/, response.value()]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; /** * Evaluates HTML/CSS features in the supplied body and reports support coverage across major email clients and platforms. * Check email-client support for a provided HTML body */ EmailControllerApi.prototype.checkEmailClientSupportRaw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.checkEmailClientSupportOptions === null || requestParameters.checkEmailClientSupportOptions === undefined) { throw new runtime.RequiredError('checkEmailClientSupportOptions', 'Required parameter requestParameters.checkEmailClientSupportOptions was null or undefined when calling checkEmailClientSupport.'); } queryParameters = {}; headerParameters = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/check-email-client-support", method: 'POST', headers: headerParameters, query: queryParameters, body: (0, models_1.CheckEmailClientSupportOptionsToJSON)(requestParameters.checkEmailClientSupportOptions), }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.JSONApiResponse(response, function (jsonValue) { return (0, models_1.CheckEmailClientSupportResultsFromJSON)(jsonValue); })]; } }); }); }; /** * Evaluates HTML/CSS features in the supplied body and reports support coverage across major email clients and platforms. * Check email-client support for a provided HTML body */ EmailControllerApi.prototype.checkEmailClientSupport = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var response; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.checkEmailClientSupportRaw(requestParameters, initOverrides)]; case 1: response = _a.sent(); return [4 /*yield*/, response.value()]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; /** * Runs the aggregate audit bundle for the target email and stores the resulting audit record for later review and history tracking. * Persist aggregate email audit for a stored email */ EmailControllerApi.prototype.createEmailAuditForEmailRaw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.emailId === null || requestParameters.emailId === undefined) { throw new runtime.RequiredError('emailId', 'Required parameter requestParameters.emailId was null or undefined when calling createEmailAuditForEmail.'); } queryParameters = {}; headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/{emailId}/audit".replace("{".concat('emailId', "}"), encodeURIComponent(String(requestParameters.emailId))), method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.JSONApiResponse(response, function (jsonValue) { return (0, models_1.EmailAuditDtoFromJSON)(jsonValue); })]; } }); }); }; /** * Runs the aggregate audit bundle for the target email and stores the resulting audit record for later review and history tracking. * Persist aggregate email audit for a stored email */ EmailControllerApi.prototype.createEmailAuditForEmail = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var response; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.createEmailAuditForEmailRaw(requestParameters, initOverrides)]; case 1: response = _a.sent(); return [4 /*yield*/, response.value()]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; /** * Deletes all emails for the authenticated account context. This operation is destructive and cannot be undone. * Delete all emails in all inboxes. */ EmailControllerApi.prototype.deleteAllEmailsRaw = function (initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: queryParameters = {}; headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails", method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.VoidApiResponse(response)]; } }); }); }; /** * Deletes all emails for the authenticated account context. This operation is destructive and cannot be undone. * Delete all emails in all inboxes. */ EmailControllerApi.prototype.deleteAllEmails = function (initOverrides) { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.deleteAllEmailsRaw(initOverrides)]; case 1: _a.sent(); return [2 /*return*/]; } }); }); }; /** * Deletes a single email from account scope. Operation is destructive and not reversible. * Delete an email */ EmailControllerApi.prototype.deleteEmailRaw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.emailId === null || requestParameters.emailId === undefined) { throw new runtime.RequiredError('emailId', 'Required parameter requestParameters.emailId was null or undefined when calling deleteEmail.'); } queryParameters = {}; headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/{emailId}".replace("{".concat('emailId', "}"), encodeURIComponent(String(requestParameters.emailId))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.VoidApiResponse(response)]; } }); }); }; /** * Deletes a single email from account scope. Operation is destructive and not reversible. * Delete an email */ EmailControllerApi.prototype.deleteEmail = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.deleteEmailRaw(requestParameters, initOverrides)]; case 1: _a.sent(); return [2 /*return*/]; } }); }); }; /** * Returns attachment bytes by attachment ID. Use attachment IDs from email payloads or attachment listing endpoints. * Get email attachment bytes. Returned as `octet-stream` with content type header. If you have trouble with byte responses try the `downloadAttachmentBase64` response endpoints and convert the base 64 encoded content to a file or string. */ EmailControllerApi.prototype.downloadAttachmentRaw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.emailId === null || requestParameters.emailId === undefined) { throw new runtime.RequiredError('emailId', 'Required parameter requestParameters.emailId was null or undefined when calling downloadAttachment.'); } if (requestParameters.attachmentId === null || requestParameters.attachmentId === undefined) { throw new runtime.RequiredError('attachmentId', 'Required parameter requestParameters.attachmentId was null or undefined when calling downloadAttachment.'); } queryParameters = {}; if (requestParameters.apiKey !== undefined) { queryParameters['apiKey'] = requestParameters.apiKey; } headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/{emailId}/attachments/{attachmentId}" .replace("{".concat('emailId', "}"), encodeURIComponent(String(requestParameters.emailId))) .replace("{".concat('attachmentId', "}"), encodeURIComponent(String(requestParameters.attachmentId))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.TextApiResponse(response)]; } }); }); }; /** * Returns attachment bytes by attachment ID. Use attachment IDs from email payloads or attachment listing endpoints. * Get email attachment bytes. Returned as `octet-stream` with content type header. If you have trouble with byte responses try the `downloadAttachmentBase64` response endpoints and convert the base 64 encoded content to a file or string. */ EmailControllerApi.prototype.downloadAttachment = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var response; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.downloadAttachmentRaw(requestParameters, initOverrides)]; case 1: response = _a.sent(); return [4 /*yield*/, response.value()]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; /** * Returns attachment payload as base64 in JSON. Useful for clients that cannot reliably consume binary streaming responses. * Get email attachment as base64 encoded string as an alternative to binary responses. Decode the `base64FileContents` as a `utf-8` encoded string or array of bytes depending on the `contentType`. */ EmailControllerApi.prototype.downloadAttachmentBase64Raw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.emailId === null || requestParameters.emailId === undefined) { throw new runtime.RequiredError('emailId', 'Required parameter requestParameters.emailId was null or undefined when calling downloadAttachmentBase64.'); } if (requestParameters.attachmentId === null || requestParameters.attachmentId === undefined) { throw new runtime.RequiredError('attachmentId', 'Required parameter requestParameters.attachmentId was null or undefined when calling downloadAttachmentBase64.'); } queryParameters = {}; headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/{emailId}/attachments/{attachmentId}/base64" .replace("{".concat('emailId', "}"), encodeURIComponent(String(requestParameters.emailId))) .replace("{".concat('attachmentId', "}"), encodeURIComponent(String(requestParameters.attachmentId))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.JSONApiResponse(response, function (jsonValue) { return (0, models_1.DownloadAttachmentDtoFromJSON)(jsonValue); })]; } }); }); }; /** * Returns attachment payload as base64 in JSON. Useful for clients that cannot reliably consume binary streaming responses. * Get email attachment as base64 encoded string as an alternative to binary responses. Decode the `base64FileContents` as a `utf-8` encoded string or array of bytes depending on the `contentType`. */ EmailControllerApi.prototype.downloadAttachmentBase64 = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var response; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.downloadAttachmentBase64Raw(requestParameters, initOverrides)]; case 1: response = _a.sent(); return [4 /*yield*/, response.value()]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; /** * Returns hydrated email body text as a string with content type aligned to the underlying body format. * Get email body as string. Returned as `plain/text` with content type header. */ EmailControllerApi.prototype.downloadBodyRaw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.emailId === null || requestParameters.emailId === undefined) { throw new runtime.RequiredError('emailId', 'Required parameter requestParameters.emailId was null or undefined when calling downloadBody.'); } queryParameters = {}; headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/{emailId}/body".replace("{".concat('emailId', "}"), encodeURIComponent(String(requestParameters.emailId))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.TextApiResponse(response)]; } }); }); }; /** * Returns hydrated email body text as a string with content type aligned to the underlying body format. * Get email body as string. Returned as `plain/text` with content type header. */ EmailControllerApi.prototype.downloadBody = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var response; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.downloadBodyRaw(requestParameters, initOverrides)]; case 1: response = _a.sent(); return [4 /*yield*/, response.value()]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; /** * Streams hydrated email body bytes with content type derived from the message body format. * Get email body in bytes. Returned as `octet-stream` with content type header. */ EmailControllerApi.prototype.downloadBodyBytesRaw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.emailId === null || requestParameters.emailId === undefined) { throw new runtime.RequiredError('emailId', 'Required parameter requestParameters.emailId was null or undefined when calling downloadBodyBytes.'); } queryParameters = {}; headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/{emailId}/body-bytes".replace("{".concat('emailId', "}"), encodeURIComponent(String(requestParameters.emailId))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.TextApiResponse(response)]; } }); }); }; /** * Streams hydrated email body bytes with content type derived from the message body format. * Get email body in bytes. Returned as `octet-stream` with content type header. */ EmailControllerApi.prototype.downloadBodyBytes = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var response; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.downloadBodyBytesRaw(requestParameters, initOverrides)]; case 1: response = _a.sent(); return [4 /*yield*/, response.value()]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; /** * Forwards an existing email to new recipients. Uses the owning inbox context unless overridden by allowed sender options. * Forward email to recipients */ EmailControllerApi.prototype.forwardEmailRaw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.emailId === null || requestParameters.emailId === undefined) { throw new runtime.RequiredError('emailId', 'Required parameter requestParameters.emailId was null or undefined when calling forwardEmail.'); } if (requestParameters.forwardEmailOptions === null || requestParameters.forwardEmailOptions === undefined) { throw new runtime.RequiredError('forwardEmailOptions', 'Required parameter requestParameters.forwardEmailOptions was null or undefined when calling forwardEmail.'); } queryParameters = {}; headerParameters = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/{emailId}/forward".replace("{".concat('emailId', "}"), encodeURIComponent(String(requestParameters.emailId))), method: 'POST', headers: headerParameters, query: queryParameters, body: (0, models_1.ForwardEmailOptionsToJSON)(requestParameters.forwardEmailOptions), }, initOverrides)]; case 1: response = _a.sent(); return [2 /*return*/, new runtime.JSONApiResponse(response, function (jsonValue) { return (0, models_1.SentEmailDtoFromJSON)(jsonValue); })]; } }); }); }; /** * Forwards an existing email to new recipients. Uses the owning inbox context unless overridden by allowed sender options. * Forward email to recipients */ EmailControllerApi.prototype.forwardEmail = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var response; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.forwardEmailRaw(requestParameters, initOverrides)]; case 1: response = _a.sent(); return [4 /*yield*/, response.value()]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; /** * Returns metadata for a specific attachment ID (name, content type, and size fields). * Get email attachment metadata. This is the `contentType` and `contentLength` of an attachment. To get the individual attachments use the `downloadAttachment` methods. */ EmailControllerApi.prototype.getAttachmentMetaDataRaw = function (requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function () { var queryParameters, headerParameters, response; return __generator(this, function (_a) { switch (_a.label) { case 0: if (requestParameters.emailId === null || requestParameters.emailId === undefined) { throw new runtime.RequiredError('emailId', 'Required parameter requestParameters.emailId was null or undefined when calling getAttachmentMetaData.'); } if (requestParameters.attachmentId === null || requestParameters.attachmentId === undefined) { throw new runtime.RequiredError('attachmentId', 'Required parameter requestParameters.attachmentId was null or undefined when calling getAttachmentMetaData.'); } queryParameters = {}; headerParameters = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } return [4 /*yield*/, this.request({ path: "/emails/{emailId}/attachments/{attachmentId