/** * BoldSign API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 1 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import axios, { AxiosError, AxiosRequestConfig, AxiosResponse } from 'axios'; import { ObjectSerializer, Authentication, VoidAuth, Interceptor, HttpBasicAuth, HttpBearerAuth, ApiKeyAuth, OAuth, RequestFile, CreateTemplateRequest,DocumentCreated,EditTemplateRequest,EmbeddedCloneTemplateJsonRequest,EmbeddedClonedTemplate,EmbeddedCreateTemplateRequest,EmbeddedMergeTemplateFormRequest,EmbeddedSendCreated,EmbeddedSendTemplateFormRequest,EmbeddedTemplateCreated,EmbeddedTemplateEditRequest,EmbeddedTemplateEdited,EmbeddedTemplatePreview,EmbeddedTemplatePreviewJsonRequest,ErrorResponse,ErrorResult,MergeAndSendForSignForm,SendForSignFromTemplateForm,TemplateCreated,TemplateProperties,TemplateRecords,TemplateShareErrorResponse,TemplateShareRequest,TemplateTag, } from '../model'; import { HttpError, optionsI, returnTypeT, returnTypeI, generateFormData, toFormData, queryParamsSerializer, USER_AGENT, } from './'; let defaultBasePath = 'https://api.boldsign.com'; // =============================================== // This file is autogenerated - Please do not edit // =============================================== export class TemplateApi { protected _basePath = defaultBasePath; protected _defaultHeaders : any = { 'User-Agent': USER_AGENT }; protected _useQuerystring : boolean = true; protected authentications = { 'default': new VoidAuth(), 'Bearer': new ApiKeyAuth('header', 'Authorization'), 'X-API-KEY': new ApiKeyAuth('header', 'X-API-KEY'), } protected interceptors: Interceptor[] = []; constructor(basePath?: string) { if (basePath) { this.basePath = basePath; } } set useQuerystring(value: boolean) { this._useQuerystring = value; } set basePath(basePath: string) { this._basePath = basePath; } set defaultHeaders(defaultHeaders: any) { this._defaultHeaders = { ...defaultHeaders, "User-Agent": USER_AGENT }; } get defaultHeaders() { return this._defaultHeaders; } get basePath() { return this._basePath; } public setDefaultAuthentication(auth: Authentication) { this.authentications.default = auth; } public setApiKey(apikey: string) { this.authentications["X-API-KEY"].apiKey = apikey; } public setAccessToken(accessToken: string) { this.authentications["Bearer"].apiKey = 'bearer ' + accessToken; } public addInterceptor(interceptor: Interceptor) { this.interceptors.push(interceptor); } /** * * @summary Add the Tags in Templates. * @param templateTag ContainsTemplateId and Label Names for AddingTags. * @param options */ public async addTag (templateTag?: TemplateTag, options: optionsI = {headers: {}}) : Promise { templateTag = deserializeIfNeeded(templateTag, "TemplateTag"); const localVarPath = this.basePath + '/v1/template/addTags'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json;odata.metadata=minimal;odata.streaming=true', 'application/json;odata.metadata=minimal;odata.streaming=false', 'application/json;odata.metadata=minimal', 'application/json;odata.metadata=full;odata.streaming=true', 'application/json;odata.metadata=full;odata.streaming=false', 'application/json;odata.metadata=full', 'application/json;odata.metadata=none;odata.streaming=true', 'application/json;odata.metadata=none;odata.streaming=false', 'application/json;odata.metadata=none', 'application/json;odata.streaming=true', 'application/json;odata.streaming=false', 'application/json', 'application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false', 'application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=true', 'application/json;odata.metadata=minimal;odata.streaming=false;IEEE754Compatible=false', 'application/json;odata.metadata=minimal;odata.streaming=false;IEEE754Compatible=true', 'application/json;odata.metadata=minimal;IEEE754Compatible=false', 'application/json;odata.metadata=minimal;IEEE754Compatible=true', 'application/json;odata.metadata=full;odata.streaming=true;IEEE754Compatible=false', 'application/json;odata.metadata=full;odata.streaming=true;IEEE754Compatible=true', 'application/json;odata.metadata=full;odata.streaming=false;IEEE754Compatible=false', 'application/json;odata.metadata=full;odata.streaming=false;IEEE754Compatible=true', 'application/json;odata.metadata=full;IEEE754Compatible=false', 'application/json;odata.metadata=full;IEEE754Compatible=true', 'application/json;odata.metadata=none;odata.streaming=true;IEEE754Compatible=false', 'application/json;odata.metadata=none;odata.streaming=true;IEEE754Compatible=true', 'application/json;odata.metadata=none;odata.streaming=false;IEEE754Compatible=true', 'application/json;odata.metadata=none;odata.streaming=false;IEEE754Compatible=false', 'application/json;odata.metadata=none;IEEE754Compatible=false', 'application/json;odata.metadata=none;IEEE754Compatible=true', 'application/json;odata.streaming=true;IEEE754Compatible=false', 'application/json;odata.streaming=true;IEEE754Compatible=true', 'application/json;odata.streaming=false;IEEE754Compatible=false', 'application/json;odata.streaming=false;IEEE754Compatible=true', 'application/json;IEEE754Compatible=false', 'application/json;IEEE754Compatible=true', 'application/xml', 'text/plain', 'application/octet-stream', 'text/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(templateTag, TemplateTag); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( templateTag, "TemplateTag" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'PATCH', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 400, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Generates a preview URL for a template to view it. * @param templateId * @param embeddedTemplatePreviewJsonRequest The embedded template preview request body. * @param options */ public async createEmbeddedPreviewUrl (templateId: string, embeddedTemplatePreviewJsonRequest?: EmbeddedTemplatePreviewJsonRequest, options: optionsI = {headers: {}}) : Promise { embeddedTemplatePreviewJsonRequest = deserializeIfNeeded(embeddedTemplatePreviewJsonRequest, "EmbeddedTemplatePreviewJsonRequest"); const localVarPath = this.basePath + '/v1/template/createEmbeddedPreviewUrl'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; // verify required parameter 'templateId' is not null or undefined if (templateId === null || templateId === undefined) { throw new Error('Required parameter templateId was null or undefined when calling createEmbeddedPreviewUrl.'); } if (templateId !== undefined) { localVarQueryParameters['templateId'] = ObjectSerializer.serialize(templateId, "string"); } (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(embeddedTemplatePreviewJsonRequest, EmbeddedTemplatePreviewJsonRequest); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( embeddedTemplatePreviewJsonRequest, "EmbeddedTemplatePreviewJsonRequest" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'POST', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, "EmbeddedTemplatePreview", ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 200, "EmbeddedTemplatePreview", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Generates a send URL using a template which embeds document sending process into your application. * @param templateId * @param embeddedSendTemplateFormRequest Embedded send template json request. * @param options */ public async createEmbeddedRequestUrlTemplate (templateId: string, embeddedSendTemplateFormRequest?: EmbeddedSendTemplateFormRequest, options: optionsI = {headers: {}}) : Promise { embeddedSendTemplateFormRequest = deserializeIfNeeded(embeddedSendTemplateFormRequest, "EmbeddedSendTemplateFormRequest"); const localVarPath = this.basePath + '/v1/template/createEmbeddedRequestUrl'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; // verify required parameter 'templateId' is not null or undefined if (templateId === null || templateId === undefined) { throw new Error('Required parameter templateId was null or undefined when calling createEmbeddedRequestUrlTemplate.'); } if (templateId !== undefined) { localVarQueryParameters['templateId'] = ObjectSerializer.serialize(templateId, "string"); } (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(embeddedSendTemplateFormRequest, EmbeddedSendTemplateFormRequest); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( embeddedSendTemplateFormRequest, "EmbeddedSendTemplateFormRequest" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'POST', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, "EmbeddedSendCreated", ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 201, "EmbeddedSendCreated", )) { return; } if (handleErrorCodeResponse( reject, error.response, 422, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Generates a URL to embeds Clone template process into your application. * @param templateId * @param embeddedCloneTemplateJsonRequest The embedded clone template request body. * @param options */ public async createEmbeddedTemplateCloneUrl (templateId: string, embeddedCloneTemplateJsonRequest?: EmbeddedCloneTemplateJsonRequest, options: optionsI = {headers: {}}) : Promise { embeddedCloneTemplateJsonRequest = deserializeIfNeeded(embeddedCloneTemplateJsonRequest, "EmbeddedCloneTemplateJsonRequest"); const localVarPath = this.basePath + '/v1/template/createEmbeddedCloneUrl'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; // verify required parameter 'templateId' is not null or undefined if (templateId === null || templateId === undefined) { throw new Error('Required parameter templateId was null or undefined when calling createEmbeddedTemplateCloneUrl.'); } if (templateId !== undefined) { localVarQueryParameters['templateId'] = ObjectSerializer.serialize(templateId, "string"); } (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(embeddedCloneTemplateJsonRequest, EmbeddedCloneTemplateJsonRequest); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( embeddedCloneTemplateJsonRequest, "EmbeddedCloneTemplateJsonRequest" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'POST', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, "EmbeddedClonedTemplate", ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 201, "EmbeddedClonedTemplate", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 400, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Generates a create URL to embeds template create process into your application. * @param embeddedCreateTemplateRequest The create embedded template request body. * @param options */ public async createEmbeddedTemplateUrl (embeddedCreateTemplateRequest?: EmbeddedCreateTemplateRequest, options: optionsI = {headers: {}}) : Promise { embeddedCreateTemplateRequest = deserializeIfNeeded(embeddedCreateTemplateRequest, "EmbeddedCreateTemplateRequest"); const localVarPath = this.basePath + '/v1/template/createEmbeddedTemplateUrl'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(embeddedCreateTemplateRequest, EmbeddedCreateTemplateRequest); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( embeddedCreateTemplateRequest, "EmbeddedCreateTemplateRequest" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'POST', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, "EmbeddedTemplateCreated", ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 201, "EmbeddedTemplateCreated", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 422, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Creates a new template. * @param createTemplateRequest The create template request body. * @param options */ public async createTemplate (createTemplateRequest?: CreateTemplateRequest, options: optionsI = {headers: {}}) : Promise { createTemplateRequest = deserializeIfNeeded(createTemplateRequest, "CreateTemplateRequest"); const localVarPath = this.basePath + '/v1/template/create'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(createTemplateRequest, CreateTemplateRequest); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( createTemplateRequest, "CreateTemplateRequest" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'POST', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, "TemplateCreated", ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 201, "TemplateCreated", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 403, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 422, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Deletes a template. * @param templateId * @param onBehalfOf * @param options */ public async deleteTemplate (templateId: string, onBehalfOf?: string, options: optionsI = {headers: {}}) : Promise { const localVarPath = this.basePath + '/v1/template/delete'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; // verify required parameter 'templateId' is not null or undefined if (templateId === null || templateId === undefined) { throw new Error('Required parameter templateId was null or undefined when calling deleteTemplate.'); } if (templateId !== undefined) { localVarQueryParameters['templateId'] = ObjectSerializer.serialize(templateId, "string"); } if (onBehalfOf !== undefined) { localVarQueryParameters['onBehalfOf'] = ObjectSerializer.serialize(onBehalfOf, "string"); } (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; let data = {}; if (localVarUseFormData) { const formData = toFormData(localVarFormParams); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } let localVarRequestOptions: AxiosRequestConfig = { method: 'DELETE', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 403, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Delete the Tags in Templates. * @param templateTag Contains TemplateId and LabelNames for Adding Tags. * @param options */ public async deleteTag (templateTag?: TemplateTag, options: optionsI = {headers: {}}) : Promise { templateTag = deserializeIfNeeded(templateTag, "TemplateTag"); const localVarPath = this.basePath + '/v1/template/deleteTags'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json;odata.metadata=minimal;odata.streaming=true', 'application/json;odata.metadata=minimal;odata.streaming=false', 'application/json;odata.metadata=minimal', 'application/json;odata.metadata=full;odata.streaming=true', 'application/json;odata.metadata=full;odata.streaming=false', 'application/json;odata.metadata=full', 'application/json;odata.metadata=none;odata.streaming=true', 'application/json;odata.metadata=none;odata.streaming=false', 'application/json;odata.metadata=none', 'application/json;odata.streaming=true', 'application/json;odata.streaming=false', 'application/json', 'application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false', 'application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=true', 'application/json;odata.metadata=minimal;odata.streaming=false;IEEE754Compatible=false', 'application/json;odata.metadata=minimal;odata.streaming=false;IEEE754Compatible=true', 'application/json;odata.metadata=minimal;IEEE754Compatible=false', 'application/json;odata.metadata=minimal;IEEE754Compatible=true', 'application/json;odata.metadata=full;odata.streaming=true;IEEE754Compatible=false', 'application/json;odata.metadata=full;odata.streaming=true;IEEE754Compatible=true', 'application/json;odata.metadata=full;odata.streaming=false;IEEE754Compatible=false', 'application/json;odata.metadata=full;odata.streaming=false;IEEE754Compatible=true', 'application/json;odata.metadata=full;IEEE754Compatible=false', 'application/json;odata.metadata=full;IEEE754Compatible=true', 'application/json;odata.metadata=none;odata.streaming=true;IEEE754Compatible=false', 'application/json;odata.metadata=none;odata.streaming=true;IEEE754Compatible=true', 'application/json;odata.metadata=none;odata.streaming=false;IEEE754Compatible=true', 'application/json;odata.metadata=none;odata.streaming=false;IEEE754Compatible=false', 'application/json;odata.metadata=none;IEEE754Compatible=false', 'application/json;odata.metadata=none;IEEE754Compatible=true', 'application/json;odata.streaming=true;IEEE754Compatible=false', 'application/json;odata.streaming=true;IEEE754Compatible=true', 'application/json;odata.streaming=false;IEEE754Compatible=false', 'application/json;odata.streaming=false;IEEE754Compatible=true', 'application/json;IEEE754Compatible=false', 'application/json;IEEE754Compatible=true', 'application/xml', 'text/plain', 'application/octet-stream', 'text/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(templateTag, TemplateTag); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( templateTag, "TemplateTag" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'DELETE', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 400, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Download the template. * @param templateId * @param onBehalfOf * @param includeFormFieldValues * @param options */ public async download (templateId: string, onBehalfOf?: string, includeFormFieldValues?: boolean, options: optionsI = {headers: {}}) : Promise { const localVarPath = this.basePath + '/v1/template/download'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; // verify required parameter 'templateId' is not null or undefined if (templateId === null || templateId === undefined) { throw new Error('Required parameter templateId was null or undefined when calling download.'); } if (templateId !== undefined) { localVarQueryParameters['templateId'] = ObjectSerializer.serialize(templateId, "string"); } if (onBehalfOf !== undefined) { localVarQueryParameters['onBehalfOf'] = ObjectSerializer.serialize(onBehalfOf, "string"); } if (includeFormFieldValues !== undefined) { localVarQueryParameters['includeFormFieldValues'] = ObjectSerializer.serialize(includeFormFieldValues, "boolean"); } (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; let data = {}; if (localVarUseFormData) { const formData = toFormData(localVarFormParams); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } let localVarRequestOptions: AxiosRequestConfig = { method: 'GET', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "arraybuffer", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, "Buffer", ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 200, "RequestFile", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 400, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Edit and updates an existing template. * @param templateId * @param editTemplateRequest The edit template request body. * @param options */ public async editTemplate (templateId: string, editTemplateRequest: EditTemplateRequest, options: optionsI = {headers: {}}) : Promise { editTemplateRequest = deserializeIfNeeded(editTemplateRequest, "EditTemplateRequest"); const localVarPath = this.basePath + '/v1/template/edit'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; // verify required parameter 'templateId' is not null or undefined if (templateId === null || templateId === undefined) { throw new Error('Required parameter templateId was null or undefined when calling editTemplate.'); } // verify required parameter 'editTemplateRequest' is not null or undefined if (editTemplateRequest === null || editTemplateRequest === undefined) { throw new Error('Required parameter editTemplateRequest was null or undefined when calling editTemplate.'); } if (templateId !== undefined) { localVarQueryParameters['templateId'] = ObjectSerializer.serialize(templateId, "string"); } (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(editTemplateRequest, EditTemplateRequest); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( editTemplateRequest, "EditTemplateRequest" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'PUT', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 400, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 422, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Generates a edit URL to embeds template edit process into your application. * @param templateId * @param embeddedTemplateEditRequest The embedded edit template request body. * @param options */ public async getEmbeddedTemplateEditUrl (templateId: string, embeddedTemplateEditRequest?: EmbeddedTemplateEditRequest, options: optionsI = {headers: {}}) : Promise { embeddedTemplateEditRequest = deserializeIfNeeded(embeddedTemplateEditRequest, "EmbeddedTemplateEditRequest"); const localVarPath = this.basePath + '/v1/template/getEmbeddedTemplateEditUrl'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; // verify required parameter 'templateId' is not null or undefined if (templateId === null || templateId === undefined) { throw new Error('Required parameter templateId was null or undefined when calling getEmbeddedTemplateEditUrl.'); } if (templateId !== undefined) { localVarQueryParameters['templateId'] = ObjectSerializer.serialize(templateId, "string"); } (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(embeddedTemplateEditRequest, EmbeddedTemplateEditRequest); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( embeddedTemplateEditRequest, "EmbeddedTemplateEditRequest" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'POST', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, "EmbeddedTemplateEdited", ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 201, "EmbeddedTemplateEdited", )) { return; } if (handleErrorCodeResponse( reject, error.response, 400, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Get summary of the template. * @param templateId * @param options */ public async getProperties (templateId: string, options: optionsI = {headers: {}}) : Promise { const localVarPath = this.basePath + '/v1/template/properties'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; // verify required parameter 'templateId' is not null or undefined if (templateId === null || templateId === undefined) { throw new Error('Required parameter templateId was null or undefined when calling getTemplateProperties.'); } if (templateId !== undefined) { localVarQueryParameters['templateId'] = ObjectSerializer.serialize(templateId, "string"); } (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; let data = {}; if (localVarUseFormData) { const formData = toFormData(localVarFormParams); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } let localVarRequestOptions: AxiosRequestConfig = { method: 'GET', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, "TemplateProperties", ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 200, "TemplateProperties", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 403, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary List all the templates. * @param page * @param templateType * @param pageSize * @param searchKey * @param onBehalfOf The sender identity\'s email used to filter the templates returned in the API. The API will return templates that were sent on behalf of the specified email address. * @param createdBy The templates can be listed by the creator of the template. * @param templateLabels Labels of the template. * @param startDate Start date of the template * @param endDate End date of the template * @param brandIds BrandId(s) of the template. * @param sharedWithTeamId The templates can be listed by the shared teams. * @param options */ public async listTemplates (page: number, templateType?: 'mytemplates' | 'sharedtemplate' | 'all', pageSize?: number, searchKey?: string, onBehalfOf?: Array, createdBy?: Array, templateLabels?: Array, startDate?: Date, endDate?: Date, brandIds?: Array, sharedWithTeamId?: Array, options: optionsI = {headers: {}}) : Promise { const localVarPath = this.basePath + '/v1/template/list'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; // verify required parameter 'page' is not null or undefined if (page === null || page === undefined) { throw new Error('Required parameter page was null or undefined when calling listTemplates.'); } if (templateType !== undefined) { localVarQueryParameters['TemplateType'] = ObjectSerializer.serialize(templateType, "'mytemplates' | 'sharedtemplate' | 'all'"); } if (pageSize !== undefined) { localVarQueryParameters['PageSize'] = ObjectSerializer.serialize(pageSize, "number"); } if (page !== undefined) { localVarQueryParameters['Page'] = ObjectSerializer.serialize(page, "number"); } if (searchKey !== undefined) { localVarQueryParameters['SearchKey'] = ObjectSerializer.serialize(searchKey, "string"); } if (onBehalfOf !== undefined) { localVarQueryParameters['OnBehalfOf'] = ObjectSerializer.serialize(onBehalfOf, "Array"); } if (createdBy !== undefined) { localVarQueryParameters['CreatedBy'] = ObjectSerializer.serialize(createdBy, "Array"); } if (templateLabels !== undefined) { localVarQueryParameters['TemplateLabels'] = ObjectSerializer.serialize(templateLabels, "Array"); } if (startDate !== undefined) { localVarQueryParameters['StartDate'] = ObjectSerializer.serialize(startDate, "Date"); } if (endDate !== undefined) { localVarQueryParameters['EndDate'] = ObjectSerializer.serialize(endDate, "Date"); } if (brandIds !== undefined) { localVarQueryParameters['BrandIds'] = ObjectSerializer.serialize(brandIds, "Array"); } if (sharedWithTeamId !== undefined) { localVarQueryParameters['SharedWithTeamId'] = ObjectSerializer.serialize(sharedWithTeamId, "Array"); } (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; let data = {}; if (localVarUseFormData) { const formData = toFormData(localVarFormParams); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } let localVarRequestOptions: AxiosRequestConfig = { method: 'GET', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, "TemplateRecords", ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 200, "TemplateRecords", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Send the document by merging multiple templates. * @param mergeAndSendForSignForm The merge and send details as JSON. * @param options */ public async mergeAndSend (mergeAndSendForSignForm?: MergeAndSendForSignForm, options: optionsI = {headers: {}}) : Promise { mergeAndSendForSignForm = deserializeIfNeeded(mergeAndSendForSignForm, "MergeAndSendForSignForm"); const localVarPath = this.basePath + '/v1/template/mergeAndSend'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(mergeAndSendForSignForm, MergeAndSendForSignForm); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( mergeAndSendForSignForm, "MergeAndSendForSignForm" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'POST', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, "DocumentCreated", ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 201, "DocumentCreated", )) { return; } if (handleErrorCodeResponse( reject, error.response, 422, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Generates a merge request URL using a template that combines document merging and sending processes into your application. * @param embeddedMergeTemplateFormRequest Embedded merge and send template json request. * @param options */ public async mergeCreateEmbeddedRequestUrlTemplate (embeddedMergeTemplateFormRequest?: EmbeddedMergeTemplateFormRequest, options: optionsI = {headers: {}}) : Promise { embeddedMergeTemplateFormRequest = deserializeIfNeeded(embeddedMergeTemplateFormRequest, "EmbeddedMergeTemplateFormRequest"); const localVarPath = this.basePath + '/v1/template/mergeCreateEmbeddedRequestUrl'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(embeddedMergeTemplateFormRequest, EmbeddedMergeTemplateFormRequest); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( embeddedMergeTemplateFormRequest, "EmbeddedMergeTemplateFormRequest" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'POST', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, "EmbeddedSendCreated", ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 201, "EmbeddedSendCreated", )) { return; } if (handleErrorCodeResponse( reject, error.response, 422, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Send a document for signature using a Template. * @param templateId * @param sendForSignFromTemplateForm The send template details as JSON. * @param options */ public async sendUsingTemplate (templateId: string, sendForSignFromTemplateForm?: SendForSignFromTemplateForm, options: optionsI = {headers: {}}) : Promise { sendForSignFromTemplateForm = deserializeIfNeeded(sendForSignFromTemplateForm, "SendForSignFromTemplateForm"); const localVarPath = this.basePath + '/v1/template/send'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; // verify required parameter 'templateId' is not null or undefined if (templateId === null || templateId === undefined) { throw new Error('Required parameter templateId was null or undefined when calling sendUsingTemplate.'); } if (templateId !== undefined) { localVarQueryParameters['templateId'] = ObjectSerializer.serialize(templateId, "string"); } (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(sendForSignFromTemplateForm, SendForSignFromTemplateForm); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( sendForSignFromTemplateForm, "SendForSignFromTemplateForm" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'POST', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, "DocumentCreated", ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 201, "DocumentCreated", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } if (handleErrorCodeResponse( reject, error.response, 422, "ErrorResult", )) { return; } reject(error); }); }); }); } /** * * @summary Share a template with teams and manage permissions. * @param templateId * @param templateShareRequest Permissions request. * @param options */ public async shareTemplate (templateId: string, templateShareRequest: TemplateShareRequest, options: optionsI = {headers: {}}) : Promise { templateShareRequest = deserializeIfNeeded(templateShareRequest, "TemplateShareRequest"); const localVarPath = this.basePath + '/v1/template/share'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this._defaultHeaders); const produces = ['application/json']; // give precedence to 'application/json' if (produces.indexOf('application/json') >= 0) { localVarHeaderParams['content-type'] = 'application/json'; } else { localVarHeaderParams['content-type'] = produces.join(','); } let localVarFormParams: any = {}; let localVarBodyParams: any = undefined; // verify required parameter 'templateId' is not null or undefined if (templateId === null || templateId === undefined) { throw new Error('Required parameter templateId was null or undefined when calling shareTemplate.'); } // verify required parameter 'templateShareRequest' is not null or undefined if (templateShareRequest === null || templateShareRequest === undefined) { throw new Error('Required parameter templateShareRequest was null or undefined when calling shareTemplate.'); } if (templateId !== undefined) { localVarQueryParameters['templateId'] = ObjectSerializer.serialize(templateId, "string"); } (Object).assign(localVarHeaderParams, options.headers); let localVarUseFormData = false; const result = generateFormData(templateShareRequest, TemplateShareRequest); localVarUseFormData = result.localVarUseFormData; let data = {}; if (localVarUseFormData) { const formData = toFormData(result.data); data = formData; localVarHeaderParams = { ...localVarHeaderParams, ...formData.getHeaders(), }; } else { data = ObjectSerializer.serialize( templateShareRequest, "TemplateShareRequest" ); } let localVarRequestOptions: AxiosRequestConfig = { method: 'PATCH', params: localVarQueryParameters, headers: localVarHeaderParams, url: localVarPath, paramsSerializer: this._useQuerystring ? queryParamsSerializer : undefined, maxContentLength: Infinity, maxBodyLength: Infinity, responseType: "json", }; if (localVarRequestOptions.method !== 'GET') { localVarRequestOptions.data = data; } let authenticationPromise = Promise.resolve(); if (this.authentications["X-API-KEY"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["X-API-KEY"].applyToRequest(localVarRequestOptions)); } if (this.authentications["Bearer"].apiKey) { authenticationPromise = authenticationPromise.then(() => this.authentications["Bearer"].applyToRequest(localVarRequestOptions)); } authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); let interceptorPromise = authenticationPromise; for (const interceptor of this.interceptors) { interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions)); } return interceptorPromise.then(() => { return new Promise((resolve, reject) => { axios.request(localVarRequestOptions) .then((response) => { handleSuccessfulResponse( resolve, reject, response, ); }, (error: AxiosError) => { if (error.response == null) { reject(error); return; } if (handleErrorCodeResponse( reject, error.response, 400, "TemplateShareErrorResponse", )) { return; } if (handleErrorCodeResponse( reject, error.response, 403, "TemplateShareErrorResponse", )) { return; } if (handleErrorCodeResponse( reject, error.response, 500, "ErrorResponse", )) { return; } if (handleErrorCodeResponse( reject, error.response, 401, "ErrorResult", )) { return; } reject(error); }); }); }); } } function deserializeIfNeeded (obj: T, classname: string): T { if (obj !== null && obj !== undefined && obj.constructor.name !== classname) { return ObjectSerializer.deserialize(obj, classname); } return obj; } type AxiosResolve = ( value: (T | PromiseLike), ) => void type AxiosReject = (reason?: any) => void; function handleSuccessfulResponse( resolve: AxiosResolve, reject: AxiosReject, response: AxiosResponse, returnType?: string, ) { let body = response.data; if ( response.status && response.status >= 200 && response.status <= 299 ) { if (returnType) { body = ObjectSerializer.deserialize(body, returnType); } resolve(body); } else { reject(new HttpError(response, body, response.status)); } } function handleErrorCodeResponse( reject: AxiosReject, response: AxiosResponse, code: number, returnType: string ): boolean { if (response.status !== code) { return false; } let body = response.data; if(code === 401) { body = "Unauthorized request (401): Invalid authentication."; } reject(new HttpError(response, body, response.status)); return true; } function handleErrorRangeResponse( reject: AxiosReject, response: AxiosResponse, code: string, returnType: string ): boolean { let rangeCodeLeft = Number(code[0] + "00"); let rangeCodeRight = Number(code[0] + "99"); if (response.status >= rangeCodeLeft && response.status <= rangeCodeRight) { const body = ObjectSerializer.deserialize( response.data, returnType, ); reject(new HttpError(response, body, response.status)); return true; } return false; }