/* tslint:disable */ /* eslint-disable */ /** * Elastic Email REST API * This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available here). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository here * * The version of the OpenAPI document: 4.0.0 * Contact: support@elasticemail.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import type { Configuration } from '../configuration'; import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; import globalAxios from 'axios'; // Some imports not used depending on template conditions // @ts-ignore import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from '../common'; // @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, type RequestArgs, BaseAPI, RequiredError, operationServerMap } from '../base'; // @ts-ignore import type { SubAccountInfo } from '../ee-api-models'; // @ts-ignore import type { SubaccountEmailCreditsPayload } from '../ee-api-models'; // @ts-ignore import type { SubaccountEmailSettings } from '../ee-api-models'; // @ts-ignore import type { SubaccountPayload } from '../ee-api-models'; /** * SubAccountsApi - axios parameter creator * @export */ export const SubAccountsApiAxiosParamCreator = function (configuration?: Configuration) { return { /** * Returns API key token for the specified SubAccount. The default API key created for the subaccount has a 48-hour expiration period. Required Access Level: ModifySubAccounts * @summary Get SubAccount ApiKey * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsByEmailApikeyGet: async (email: string, options: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'email' is not null or undefined assertParamExists('subaccountsByEmailApikeyGet', 'email', email) const localVarPath = `/subaccounts/{email}/apikey` .replace(`{${"email"}}`, encodeURIComponent(String(email))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication apikey required await setApiKeyToObject(localVarHeaderParameter, "X-ElasticEmail-ApiKey", configuration) setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, /** * Update email credits of a subaccount by the given amount. Required Access Level: ModifySubAccounts * @summary Add, Subtract Email Credits * @param {string} email Email address of Sub-Account * @param {SubaccountEmailCreditsPayload} subaccountEmailCreditsPayload Amount of email credits to add or subtract from the current SubAccount email credits pool (positive or negative value) * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsByEmailCreditsPatch: async (email: string, subaccountEmailCreditsPayload: SubaccountEmailCreditsPayload, options: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'email' is not null or undefined assertParamExists('subaccountsByEmailCreditsPatch', 'email', email) // verify required parameter 'subaccountEmailCreditsPayload' is not null or undefined assertParamExists('subaccountsByEmailCreditsPatch', 'subaccountEmailCreditsPayload', subaccountEmailCreditsPayload) const localVarPath = `/subaccounts/{email}/credits` .replace(`{${"email"}}`, encodeURIComponent(String(email))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication apikey required await setApiKeyToObject(localVarHeaderParameter, "X-ElasticEmail-ApiKey", configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(subaccountEmailCreditsPayload, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, /** * Deletes specified SubAccount. An email will be sent to confirm this change. Required Access Level: ModifySubAccounts * @summary Delete SubAccount * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsByEmailDelete: async (email: string, options: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'email' is not null or undefined assertParamExists('subaccountsByEmailDelete', 'email', email) const localVarPath = `/subaccounts/{email}` .replace(`{${"email"}}`, encodeURIComponent(String(email))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication apikey required await setApiKeyToObject(localVarHeaderParameter, "X-ElasticEmail-ApiKey", configuration) setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, /** * Returns details for the specified SubAccount. Required Access Level: ViewSubAccounts * @summary Load SubAccount * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsByEmailGet: async (email: string, options: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'email' is not null or undefined assertParamExists('subaccountsByEmailGet', 'email', email) const localVarPath = `/subaccounts/{email}` .replace(`{${"email"}}`, encodeURIComponent(String(email))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication apikey required await setApiKeyToObject(localVarHeaderParameter, "X-ElasticEmail-ApiKey", configuration) setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, /** * Update SubAccount email settings. Required Access Level: ModifySubAccounts * @summary Update SubAccount Email Settings * @param {string} email * @param {SubaccountEmailSettings} subaccountEmailSettings Updated Email Settings * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsByEmailSettingsEmailPut: async (email: string, subaccountEmailSettings: SubaccountEmailSettings, options: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'email' is not null or undefined assertParamExists('subaccountsByEmailSettingsEmailPut', 'email', email) // verify required parameter 'subaccountEmailSettings' is not null or undefined assertParamExists('subaccountsByEmailSettingsEmailPut', 'subaccountEmailSettings', subaccountEmailSettings) const localVarPath = `/subaccounts/{email}/settings/email` .replace(`{${"email"}}`, encodeURIComponent(String(email))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication apikey required await setApiKeyToObject(localVarHeaderParameter, "X-ElasticEmail-ApiKey", configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(subaccountEmailSettings, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, /** * Returns a list of all your SubAccounts. Required Access Level: ViewSubAccounts * @summary Load SubAccounts * @param {number} [limit] Maximum number of returned items. * @param {number} [offset] How many items should be returned ahead. * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsGet: async (limit?: number, offset?: number, options: RawAxiosRequestConfig = {}): Promise => { const localVarPath = `/subaccounts`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication apikey required await setApiKeyToObject(localVarHeaderParameter, "X-ElasticEmail-ApiKey", configuration) if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, /** * Add a new SubAccount to your Account. To receive an access token for this SubAccount, make a POST security/apikeys request using the \'subaccount\' parameter. The default API key created for the subaccount has a 48-hour expiration period. Required Access Level: ModifySubAccounts * @summary Add SubAccount * @param {SubaccountPayload} subaccountPayload * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsPost: async (subaccountPayload: SubaccountPayload, options: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'subaccountPayload' is not null or undefined assertParamExists('subaccountsPost', 'subaccountPayload', subaccountPayload) const localVarPath = `/subaccounts`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication apikey required await setApiKeyToObject(localVarHeaderParameter, "X-ElasticEmail-ApiKey", configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(subaccountPayload, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, } }; /** * SubAccountsApi - functional programming interface * @export */ export const SubAccountsApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = SubAccountsApiAxiosParamCreator(configuration) return { /** * Returns API key token for the specified SubAccount. The default API key created for the subaccount has a 48-hour expiration period. Required Access Level: ModifySubAccounts * @summary Get SubAccount ApiKey * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} */ async subaccountsByEmailApikeyGet(email: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.subaccountsByEmailApikeyGet(email, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SubAccountsApi.subaccountsByEmailApikeyGet']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Update email credits of a subaccount by the given amount. Required Access Level: ModifySubAccounts * @summary Add, Subtract Email Credits * @param {string} email Email address of Sub-Account * @param {SubaccountEmailCreditsPayload} subaccountEmailCreditsPayload Amount of email credits to add or subtract from the current SubAccount email credits pool (positive or negative value) * @param {*} [options] Override http request option. * @throws {RequiredError} */ async subaccountsByEmailCreditsPatch(email: string, subaccountEmailCreditsPayload: SubaccountEmailCreditsPayload, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.subaccountsByEmailCreditsPatch(email, subaccountEmailCreditsPayload, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SubAccountsApi.subaccountsByEmailCreditsPatch']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Deletes specified SubAccount. An email will be sent to confirm this change. Required Access Level: ModifySubAccounts * @summary Delete SubAccount * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} */ async subaccountsByEmailDelete(email: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.subaccountsByEmailDelete(email, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SubAccountsApi.subaccountsByEmailDelete']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Returns details for the specified SubAccount. Required Access Level: ViewSubAccounts * @summary Load SubAccount * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} */ async subaccountsByEmailGet(email: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.subaccountsByEmailGet(email, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SubAccountsApi.subaccountsByEmailGet']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Update SubAccount email settings. Required Access Level: ModifySubAccounts * @summary Update SubAccount Email Settings * @param {string} email * @param {SubaccountEmailSettings} subaccountEmailSettings Updated Email Settings * @param {*} [options] Override http request option. * @throws {RequiredError} */ async subaccountsByEmailSettingsEmailPut(email: string, subaccountEmailSettings: SubaccountEmailSettings, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.subaccountsByEmailSettingsEmailPut(email, subaccountEmailSettings, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SubAccountsApi.subaccountsByEmailSettingsEmailPut']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Returns a list of all your SubAccounts. Required Access Level: ViewSubAccounts * @summary Load SubAccounts * @param {number} [limit] Maximum number of returned items. * @param {number} [offset] How many items should be returned ahead. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async subaccountsGet(limit?: number, offset?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.subaccountsGet(limit, offset, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SubAccountsApi.subaccountsGet']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Add a new SubAccount to your Account. To receive an access token for this SubAccount, make a POST security/apikeys request using the \'subaccount\' parameter. The default API key created for the subaccount has a 48-hour expiration period. Required Access Level: ModifySubAccounts * @summary Add SubAccount * @param {SubaccountPayload} subaccountPayload * @param {*} [options] Override http request option. * @throws {RequiredError} */ async subaccountsPost(subaccountPayload: SubaccountPayload, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.subaccountsPost(subaccountPayload, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SubAccountsApi.subaccountsPost']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, } }; /** * SubAccountsApi - factory interface * @export */ export const SubAccountsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = SubAccountsApiFp(configuration) return { /** * Returns API key token for the specified SubAccount. The default API key created for the subaccount has a 48-hour expiration period. Required Access Level: ModifySubAccounts * @summary Get SubAccount ApiKey * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsByEmailApikeyGet(email: string, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.subaccountsByEmailApikeyGet(email, options).then((request) => request(axios, basePath)); }, /** * Update email credits of a subaccount by the given amount. Required Access Level: ModifySubAccounts * @summary Add, Subtract Email Credits * @param {string} email Email address of Sub-Account * @param {SubaccountEmailCreditsPayload} subaccountEmailCreditsPayload Amount of email credits to add or subtract from the current SubAccount email credits pool (positive or negative value) * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsByEmailCreditsPatch(email: string, subaccountEmailCreditsPayload: SubaccountEmailCreditsPayload, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.subaccountsByEmailCreditsPatch(email, subaccountEmailCreditsPayload, options).then((request) => request(axios, basePath)); }, /** * Deletes specified SubAccount. An email will be sent to confirm this change. Required Access Level: ModifySubAccounts * @summary Delete SubAccount * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsByEmailDelete(email: string, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.subaccountsByEmailDelete(email, options).then((request) => request(axios, basePath)); }, /** * Returns details for the specified SubAccount. Required Access Level: ViewSubAccounts * @summary Load SubAccount * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsByEmailGet(email: string, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.subaccountsByEmailGet(email, options).then((request) => request(axios, basePath)); }, /** * Update SubAccount email settings. Required Access Level: ModifySubAccounts * @summary Update SubAccount Email Settings * @param {string} email * @param {SubaccountEmailSettings} subaccountEmailSettings Updated Email Settings * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsByEmailSettingsEmailPut(email: string, subaccountEmailSettings: SubaccountEmailSettings, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.subaccountsByEmailSettingsEmailPut(email, subaccountEmailSettings, options).then((request) => request(axios, basePath)); }, /** * Returns a list of all your SubAccounts. Required Access Level: ViewSubAccounts * @summary Load SubAccounts * @param {number} [limit] Maximum number of returned items. * @param {number} [offset] How many items should be returned ahead. * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsGet(limit?: number, offset?: number, options?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.subaccountsGet(limit, offset, options).then((request) => request(axios, basePath)); }, /** * Add a new SubAccount to your Account. To receive an access token for this SubAccount, make a POST security/apikeys request using the \'subaccount\' parameter. The default API key created for the subaccount has a 48-hour expiration period. Required Access Level: ModifySubAccounts * @summary Add SubAccount * @param {SubaccountPayload} subaccountPayload * @param {*} [options] Override http request option. * @throws {RequiredError} */ subaccountsPost(subaccountPayload: SubaccountPayload, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.subaccountsPost(subaccountPayload, options).then((request) => request(axios, basePath)); }, }; }; /** * SubAccountsApi - interface * @export * @interface SubAccountsApi */ export interface SubAccountsApiInterface { /** * Returns API key token for the specified SubAccount. The default API key created for the subaccount has a 48-hour expiration period. Required Access Level: ModifySubAccounts * @summary Get SubAccount ApiKey * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApiInterface */ subaccountsByEmailApikeyGet(email: string, options?: RawAxiosRequestConfig): AxiosPromise; /** * Update email credits of a subaccount by the given amount. Required Access Level: ModifySubAccounts * @summary Add, Subtract Email Credits * @param {string} email Email address of Sub-Account * @param {SubaccountEmailCreditsPayload} subaccountEmailCreditsPayload Amount of email credits to add or subtract from the current SubAccount email credits pool (positive or negative value) * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApiInterface */ subaccountsByEmailCreditsPatch(email: string, subaccountEmailCreditsPayload: SubaccountEmailCreditsPayload, options?: RawAxiosRequestConfig): AxiosPromise; /** * Deletes specified SubAccount. An email will be sent to confirm this change. Required Access Level: ModifySubAccounts * @summary Delete SubAccount * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApiInterface */ subaccountsByEmailDelete(email: string, options?: RawAxiosRequestConfig): AxiosPromise; /** * Returns details for the specified SubAccount. Required Access Level: ViewSubAccounts * @summary Load SubAccount * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApiInterface */ subaccountsByEmailGet(email: string, options?: RawAxiosRequestConfig): AxiosPromise; /** * Update SubAccount email settings. Required Access Level: ModifySubAccounts * @summary Update SubAccount Email Settings * @param {string} email * @param {SubaccountEmailSettings} subaccountEmailSettings Updated Email Settings * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApiInterface */ subaccountsByEmailSettingsEmailPut(email: string, subaccountEmailSettings: SubaccountEmailSettings, options?: RawAxiosRequestConfig): AxiosPromise; /** * Returns a list of all your SubAccounts. Required Access Level: ViewSubAccounts * @summary Load SubAccounts * @param {number} [limit] Maximum number of returned items. * @param {number} [offset] How many items should be returned ahead. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApiInterface */ subaccountsGet(limit?: number, offset?: number, options?: RawAxiosRequestConfig): AxiosPromise>; /** * Add a new SubAccount to your Account. To receive an access token for this SubAccount, make a POST security/apikeys request using the \'subaccount\' parameter. The default API key created for the subaccount has a 48-hour expiration period. Required Access Level: ModifySubAccounts * @summary Add SubAccount * @param {SubaccountPayload} subaccountPayload * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApiInterface */ subaccountsPost(subaccountPayload: SubaccountPayload, options?: RawAxiosRequestConfig): AxiosPromise; } /** * SubAccountsApi - object-oriented interface * @export * @class SubAccountsApi * @extends {BaseAPI} */ export class SubAccountsApi extends BaseAPI implements SubAccountsApiInterface { /** * Returns API key token for the specified SubAccount. The default API key created for the subaccount has a 48-hour expiration period. Required Access Level: ModifySubAccounts * @summary Get SubAccount ApiKey * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApi */ public subaccountsByEmailApikeyGet(email: string, options?: RawAxiosRequestConfig) { return SubAccountsApiFp(this.configuration).subaccountsByEmailApikeyGet(email, options).then((request) => request(this.axios, this.basePath)); } /** * Update email credits of a subaccount by the given amount. Required Access Level: ModifySubAccounts * @summary Add, Subtract Email Credits * @param {string} email Email address of Sub-Account * @param {SubaccountEmailCreditsPayload} subaccountEmailCreditsPayload Amount of email credits to add or subtract from the current SubAccount email credits pool (positive or negative value) * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApi */ public subaccountsByEmailCreditsPatch(email: string, subaccountEmailCreditsPayload: SubaccountEmailCreditsPayload, options?: RawAxiosRequestConfig) { return SubAccountsApiFp(this.configuration).subaccountsByEmailCreditsPatch(email, subaccountEmailCreditsPayload, options).then((request) => request(this.axios, this.basePath)); } /** * Deletes specified SubAccount. An email will be sent to confirm this change. Required Access Level: ModifySubAccounts * @summary Delete SubAccount * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApi */ public subaccountsByEmailDelete(email: string, options?: RawAxiosRequestConfig) { return SubAccountsApiFp(this.configuration).subaccountsByEmailDelete(email, options).then((request) => request(this.axios, this.basePath)); } /** * Returns details for the specified SubAccount. Required Access Level: ViewSubAccounts * @summary Load SubAccount * @param {string} email Email address of Sub-Account * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApi */ public subaccountsByEmailGet(email: string, options?: RawAxiosRequestConfig) { return SubAccountsApiFp(this.configuration).subaccountsByEmailGet(email, options).then((request) => request(this.axios, this.basePath)); } /** * Update SubAccount email settings. Required Access Level: ModifySubAccounts * @summary Update SubAccount Email Settings * @param {string} email * @param {SubaccountEmailSettings} subaccountEmailSettings Updated Email Settings * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApi */ public subaccountsByEmailSettingsEmailPut(email: string, subaccountEmailSettings: SubaccountEmailSettings, options?: RawAxiosRequestConfig) { return SubAccountsApiFp(this.configuration).subaccountsByEmailSettingsEmailPut(email, subaccountEmailSettings, options).then((request) => request(this.axios, this.basePath)); } /** * Returns a list of all your SubAccounts. Required Access Level: ViewSubAccounts * @summary Load SubAccounts * @param {number} [limit] Maximum number of returned items. * @param {number} [offset] How many items should be returned ahead. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApi */ public subaccountsGet(limit?: number, offset?: number, options?: RawAxiosRequestConfig) { return SubAccountsApiFp(this.configuration).subaccountsGet(limit, offset, options).then((request) => request(this.axios, this.basePath)); } /** * Add a new SubAccount to your Account. To receive an access token for this SubAccount, make a POST security/apikeys request using the \'subaccount\' parameter. The default API key created for the subaccount has a 48-hour expiration period. Required Access Level: ModifySubAccounts * @summary Add SubAccount * @param {SubaccountPayload} subaccountPayload * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubAccountsApi */ public subaccountsPost(subaccountPayload: SubaccountPayload, options?: RawAxiosRequestConfig) { return SubAccountsApiFp(this.configuration).subaccountsPost(subaccountPayload, options).then((request) => request(this.axios, this.basePath)); } }