/* tslint:disable */
/* eslint-disable */
/**
* Dropsigner
*
Authentication
In order to call this APIs, you will need an API key. Set the API key in the header X-Api-Key:
X-Api-Key: your-app|xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
HTTP Codes
The APIs will return the following HTTP codes:
| Code | Description |
| 200 (OK) | Request processed successfully. The response is different for each API, please refer to the operation's documentation |
| 400 (Bad Request) | Syntax error. For instance, when a required field was not provided |
| 401 (Unauthorized) | API key not provided or invalid |
| 403 (Forbidden) | API key is valid, but the application has insufficient permissions to complete the requested operation |
| 422 (Unprocessable Entity) | API error. The response is as defined in ErrorModel |
Error Codes
Some of the error codes returned in a 422 response are provided bellow*:
- CertificateNotFound
- DocumentNotFound
- FolderNotFound
- CpfMismatch
- CpfNotExpected
- InvalidFlowAction
- DocumentInvalidKey
*The codes shown above are the main error codes. Nonetheless, this list is not comprehensive. New codes may be added anytime without previous warning.
Webhooks
It is recomended to subscribe to Webhook events instead of polling APIs. To do so, enable webhooks and register an URL that will receive a POST request whenever one of the events bellow occur.
All requests have the format described in Webhooks.WebhookModel. The data field varies according to the webhook event type:
To register your application URL and enable Webhooks, access the integrations section in your organization's details page.
*
* OpenAPI spec version: 2.6.0
*
*
* NOTE: This class is auto generated by the swagger code generator program.
* https://github.com/swagger-api/swagger-codegen.git
* Do not edit the class manually.
*/
import globalAxios, { AxiosResponse, AxiosInstance, AxiosRequestConfig } from 'axios';
import { Configuration } from '../configuration';
// Some imports not used depending on template conditions
// @ts-ignore
import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';
import { DocumentMarkMarksSessionCreateRequest } from '../models';
import { DocumentMarkMarksSessionCreateResponse } from '../models';
import { DocumentMarkMarksSessionModel } from '../models';
import { DocumentsCreateDocumentRequest } from '../models';
import { ErrorModel } from '../models';
/**
* MarksSessionsApi - axios parameter creator
* @export
*/
export const MarksSessionsApiAxiosParamCreator = function (configuration?: Configuration) {
return {
/**
* The purpose of the positioning session is to allow users to visually position signer marks. The result of the session is the same request provided while creating it but with the flowAction's prePositioned marks attribute filled according to the positions selected for each action. Result will be available by iFrame event when embedding the positioning session or by retrieving the session information via the GET API.
* @summary Creates a mark positioning session from a Document create request.
* @param {DocumentsCreateDocumentRequest} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
apiMarksSessionsDocumentsPost: async (body?: DocumentsCreateDocumentRequest, options: AxiosRequestConfig = {}): Promise => {
const localVarPath = `/api/marks-sessions/documents`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, 'https://example.com');
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions :AxiosRequestConfig = { method: 'POST', ...baseOptions, ...options};
const localVarHeaderParameter = {} as any;
const localVarQueryParameter = {} as any;
// authentication ApiKey required
if (configuration && configuration.apiKey) {
const localVarApiKeyValue = typeof configuration.apiKey === 'function'
? await configuration.apiKey("X-Api-Key")
: await configuration.apiKey;
localVarHeaderParameter["X-Api-Key"] = localVarApiKeyValue;
}
localVarHeaderParameter['Content-Type'] = 'application/json-patch+json';
const query = new URLSearchParams(localVarUrlObj.search);
for (const key in localVarQueryParameter) {
query.set(key, localVarQueryParameter[key]);
}
for (const key in options.params) {
query.set(key, options.params[key]);
}
localVarUrlObj.search = (new URLSearchParams(query)).toString();
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
const needsSerialization = (typeof body !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json';
localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || "");
return {
url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
options: localVarRequestOptions,
};
},
/**
*
* @summary Retrieves session information.
* @param {string} id The session ID obtained when the session was created
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
apiMarksSessionsIdGet: async (id: string, options: AxiosRequestConfig = {}): Promise => {
// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new RequiredError('id','Required parameter id was null or undefined when calling apiMarksSessionsIdGet.');
}
const localVarPath = `/api/marks-sessions/{id}`
.replace(`{${"id"}}`, encodeURIComponent(String(id)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, 'https://example.com');
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions :AxiosRequestConfig = { method: 'GET', ...baseOptions, ...options};
const localVarHeaderParameter = {} as any;
const localVarQueryParameter = {} as any;
// authentication ApiKey required
if (configuration && configuration.apiKey) {
const localVarApiKeyValue = typeof configuration.apiKey === 'function'
? await configuration.apiKey("X-Api-Key")
: await configuration.apiKey;
localVarHeaderParameter["X-Api-Key"] = localVarApiKeyValue;
}
const query = new URLSearchParams(localVarUrlObj.search);
for (const key in localVarQueryParameter) {
query.set(key, localVarQueryParameter[key]);
}
for (const key in options.params) {
query.set(key, options.params[key]);
}
localVarUrlObj.search = (new URLSearchParams(query)).toString();
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
return {
url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
options: localVarRequestOptions,
};
},
/**
* The purpose of the positioning session is to allow users to visually position signer marks. The result of the session is the same request provided while creating it but with the flowAction's prePositioned marks attribute filled according to the positions selected for each action. Result will be available by iFrame event when embedding the positioning session or by retrieving the session information via the GET API.
* @summary Creates a mark positioning session by requiring only the necessary data.
* @param {DocumentMarkMarksSessionCreateRequest} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
apiMarksSessionsPost: async (body?: DocumentMarkMarksSessionCreateRequest, options: AxiosRequestConfig = {}): Promise => {
const localVarPath = `/api/marks-sessions`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, 'https://example.com');
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions :AxiosRequestConfig = { method: 'POST', ...baseOptions, ...options};
const localVarHeaderParameter = {} as any;
const localVarQueryParameter = {} as any;
// authentication ApiKey required
if (configuration && configuration.apiKey) {
const localVarApiKeyValue = typeof configuration.apiKey === 'function'
? await configuration.apiKey("X-Api-Key")
: await configuration.apiKey;
localVarHeaderParameter["X-Api-Key"] = localVarApiKeyValue;
}
localVarHeaderParameter['Content-Type'] = 'application/json-patch+json';
const query = new URLSearchParams(localVarUrlObj.search);
for (const key in localVarQueryParameter) {
query.set(key, localVarQueryParameter[key]);
}
for (const key in options.params) {
query.set(key, options.params[key]);
}
localVarUrlObj.search = (new URLSearchParams(query)).toString();
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
const needsSerialization = (typeof body !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json';
localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || "");
return {
url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
options: localVarRequestOptions,
};
},
}
};
/**
* MarksSessionsApi - functional programming interface
* @export
*/
export const MarksSessionsApiFp = function(configuration?: Configuration) {
return {
/**
* The purpose of the positioning session is to allow users to visually position signer marks. The result of the session is the same request provided while creating it but with the flowAction's prePositioned marks attribute filled according to the positions selected for each action. Result will be available by iFrame event when embedding the positioning session or by retrieving the session information via the GET API.
* @summary Creates a mark positioning session from a Document create request.
* @param {DocumentsCreateDocumentRequest} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async apiMarksSessionsDocumentsPost(body?: DocumentsCreateDocumentRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>> {
const localVarAxiosArgs = await MarksSessionsApiAxiosParamCreator(configuration).apiMarksSessionsDocumentsPost(body, options);
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
return axios.request(axiosRequestArgs);
};
},
/**
*
* @summary Retrieves session information.
* @param {string} id The session ID obtained when the session was created
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async apiMarksSessionsIdGet(id: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>> {
const localVarAxiosArgs = await MarksSessionsApiAxiosParamCreator(configuration).apiMarksSessionsIdGet(id, options);
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
return axios.request(axiosRequestArgs);
};
},
/**
* The purpose of the positioning session is to allow users to visually position signer marks. The result of the session is the same request provided while creating it but with the flowAction's prePositioned marks attribute filled according to the positions selected for each action. Result will be available by iFrame event when embedding the positioning session or by retrieving the session information via the GET API.
* @summary Creates a mark positioning session by requiring only the necessary data.
* @param {DocumentMarkMarksSessionCreateRequest} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async apiMarksSessionsPost(body?: DocumentMarkMarksSessionCreateRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>> {
const localVarAxiosArgs = await MarksSessionsApiAxiosParamCreator(configuration).apiMarksSessionsPost(body, options);
return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
return axios.request(axiosRequestArgs);
};
},
}
};
/**
* MarksSessionsApi - factory interface
* @export
*/
export const MarksSessionsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
return {
/**
* The purpose of the positioning session is to allow users to visually position signer marks. The result of the session is the same request provided while creating it but with the flowAction's prePositioned marks attribute filled according to the positions selected for each action. Result will be available by iFrame event when embedding the positioning session or by retrieving the session information via the GET API.
* @summary Creates a mark positioning session from a Document create request.
* @param {DocumentsCreateDocumentRequest} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async apiMarksSessionsDocumentsPost(body?: DocumentsCreateDocumentRequest, options?: AxiosRequestConfig): Promise> {
return MarksSessionsApiFp(configuration).apiMarksSessionsDocumentsPost(body, options).then((request) => request(axios, basePath));
},
/**
*
* @summary Retrieves session information.
* @param {string} id The session ID obtained when the session was created
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async apiMarksSessionsIdGet(id: string, options?: AxiosRequestConfig): Promise> {
return MarksSessionsApiFp(configuration).apiMarksSessionsIdGet(id, options).then((request) => request(axios, basePath));
},
/**
* The purpose of the positioning session is to allow users to visually position signer marks. The result of the session is the same request provided while creating it but with the flowAction's prePositioned marks attribute filled according to the positions selected for each action. Result will be available by iFrame event when embedding the positioning session or by retrieving the session information via the GET API.
* @summary Creates a mark positioning session by requiring only the necessary data.
* @param {DocumentMarkMarksSessionCreateRequest} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async apiMarksSessionsPost(body?: DocumentMarkMarksSessionCreateRequest, options?: AxiosRequestConfig): Promise> {
return MarksSessionsApiFp(configuration).apiMarksSessionsPost(body, options).then((request) => request(axios, basePath));
},
};
};
/**
* MarksSessionsApi - object-oriented interface
* @export
* @class MarksSessionsApi
* @extends {BaseAPI}
*/
export class MarksSessionsApi extends BaseAPI {
/**
* The purpose of the positioning session is to allow users to visually position signer marks. The result of the session is the same request provided while creating it but with the flowAction's prePositioned marks attribute filled according to the positions selected for each action. Result will be available by iFrame event when embedding the positioning session or by retrieving the session information via the GET API.
* @summary Creates a mark positioning session from a Document create request.
* @param {DocumentsCreateDocumentRequest} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof MarksSessionsApi
*/
public async apiMarksSessionsDocumentsPost(body?: DocumentsCreateDocumentRequest, options?: AxiosRequestConfig) : Promise> {
return MarksSessionsApiFp(this.configuration).apiMarksSessionsDocumentsPost(body, options).then((request) => request(this.axios, this.basePath));
}
/**
*
* @summary Retrieves session information.
* @param {string} id The session ID obtained when the session was created
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof MarksSessionsApi
*/
public async apiMarksSessionsIdGet(id: string, options?: AxiosRequestConfig) : Promise> {
return MarksSessionsApiFp(this.configuration).apiMarksSessionsIdGet(id, options).then((request) => request(this.axios, this.basePath));
}
/**
* The purpose of the positioning session is to allow users to visually position signer marks. The result of the session is the same request provided while creating it but with the flowAction's prePositioned marks attribute filled according to the positions selected for each action. Result will be available by iFrame event when embedding the positioning session or by retrieving the session information via the GET API.
* @summary Creates a mark positioning session by requiring only the necessary data.
* @param {DocumentMarkMarksSessionCreateRequest} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof MarksSessionsApi
*/
public async apiMarksSessionsPost(body?: DocumentMarkMarksSessionCreateRequest, options?: AxiosRequestConfig) : Promise> {
return MarksSessionsApiFp(this.configuration).apiMarksSessionsPost(body, options).then((request) => request(this.axios, this.basePath));
}
}