@idfy/sdk
Version:
Node.js SDK for Idfy REST API
249 lines • 8.49 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SignatureService = void 0;
const IdfyBaseService_1 = require("../IdfyBaseService");
const APIHelper_1 = require("../../infrastructure/APIHelper");
const Urls_1 = require("../../infrastructure/Urls");
class SignatureService extends IdfyBaseService_1.default {
constructor() {
super(...arguments);
this._endpointBase = 'signature';
}
/**
* Retrieves details of a single document.
* @param documentId
*/
getDocument(documentId) {
return super.get(`${Urls_1.default.signature}/documents/${documentId}`);
}
/**
* Creates a new document.
* @param documentCreateOptions
*/
createDocument(documentCreateOptions) {
return super.post(`${Urls_1.default.signature}/documents`, documentCreateOptions);
}
/**
* Updates a document.
* @param documentId
* @param documentUpdateOptions
*/
updateDocument(documentId, documentUpdateOptions) {
return super.patch(`${Urls_1.default.signature}/documents/${documentId}`, documentUpdateOptions);
}
/**
* Cancels a document.
* @param documentId
* @param reason
*/
cancelDocument(documentId, reason) {
const params = { reason };
const url = APIHelper_1.default.appendQueryParams(`${Urls_1.default.signature}/documents/${documentId}/cancel`, params);
return super.post(url);
}
/**
* Retrieves the status of a document.
* @param documentId
*/
getDocumentStatus(documentId) {
return super.get(`${Urls_1.default.signature}/documents/${documentId}/status`);
}
/**
* Retrieves the status of a document.
* @param documentId
*/
getDocumentSummary(documentId) {
return super.get(`${Urls_1.default.signature}/documents/${documentId}/summary`);
}
/**
* Queries your documents using the provided parameters.
* @param externalId
* @param signerId
* @param externalSignerId
* @param fromDate
* @param toDate
* @param lastUpdated
* @param signedDate
* @param nameOfSigner
* @param title
* @param status
* @param tags
* @param offset
* @param limit
*/
listDocumentSummaries(externalId, signerId, externalSignerId, fromDate, toDate, lastUpdated, signedDate, nameOfSigner, title, status, tags, offset, limit) {
const url = APIHelper_1.default.appendQueryParams(`${Urls_1.default.signature}/documents/summary`, {
externalId,
signerId,
externalSignerId,
fromDate,
toDate,
lastUpdated,
signedDate,
nameOfSigner,
title,
status,
tags,
offset,
limit
});
return super.get(url);
}
/**
* Retrieves the details of a single signer.
* @param documentId
* @param signerId
*/
getSigner(documentId, signerId) {
return super.get(`${Urls_1.default.signature}/documents/${documentId}/signers/${signerId}`);
}
/**
* Creates a new signer.
* @param documentId
* @param signerOptions
*/
createSigner(documentId, signerOptions) {
return super.post(`${Urls_1.default.signature}/documents/${documentId}/signers`, signerOptions);
}
/**
* Updates a signer.
* @param documentId
* @param signerId
* @param signerOptions
*/
updateSigner(documentId, signerId, signerOptions) {
return super.patch(`${Urls_1.default.signature}/documents/${documentId}/signers/${signerId}`, signerOptions);
}
/**
* Deletes a signer.
* @param documentId
* @param signerId
*/
deleteSigner(documentId, signerId) {
return super.delete(`${Urls_1.default.signature}/documents/${documentId}/signers/${signerId}`);
}
/**
* Lists all signers of a document.
* @param documentId
*/
listSigners(documentId) {
return super.get(`${Urls_1.default.signature}/documents/${documentId}/signers`);
}
/**
* Retrieves the details of a single attachment.
* @param documentId
* @param attachmentId
*/
getAttachment(documentId, attachmentId) {
return super.get(`${Urls_1.default.signature}/documents/${documentId}/attachments/${attachmentId}`);
}
/**
* Adds an attachment to the specified document.
* @param documentId
* @param attachmentOptions
*/
createAttachment(documentId, attachmentOptions) {
return super.post(`${Urls_1.default.signature}/documents/${documentId}/attachments`, attachmentOptions);
}
/**
* Updates the specified attachment (Will only take affect if no one has signed the document yet).
* @param documentId
* @param attachmentId
* @param attachmentOptions
*/
updateAttachment(documentId, attachmentId, attachmentOptions) {
return super.patch(`${Urls_1.default.signature}/documents/${documentId}/attachments/${attachmentId}`, attachmentOptions);
}
/**
* Deletes the specified attachment (Will only take affect if no one has signed the document yet).
* @param documentId
* @param attachmentId
*/
deleteAttachment(documentId, attachmentId) {
return super.delete(`${Urls_1.default.signature}/documents/${documentId}/attachments/${attachmentId}`);
}
/**
* Returns a list of all attachments for the specified document.
* @param documentId
*/
listAttachments(documentId) {
return super.get(`${Urls_1.default.signature}/documents/${documentId}/attachments`);
}
/**
* Retrieves the signed document file.
* @param documentId
* @param fileFormat
*/
getFile(documentId, fileFormat) {
const url = APIHelper_1.default.appendQueryParams(`${Urls_1.default.signature}/documents/${documentId}/files`, {
fileFormat
});
return super.getBuffer(url);
}
/**
* Retrieves the signed document file for the specified signer.
* @param documentId
* @param signerId
* @param fileFormat
*/
getFileForSigner(documentId, signerId, fileFormat) {
const url = APIHelper_1.default.appendQueryParams(`${Urls_1.default.signature}/documents/${documentId}/files/signers/${signerId}`, {
fileFormat
});
return super.getBuffer(url);
}
/**
* Retrieves the attachment file.
* @param documentId
* @param attachmentId
* @param fileFormat
*/
getAttachmentFile(documentId, attachmentId, fileFormat) {
const url = APIHelper_1.default.appendQueryParams(`${Urls_1.default.signature}/documents/${documentId}/files/attachments/${attachmentId}`, {
fileFormat
});
return super.getBuffer(url);
}
/**
* Retrieves the attachment file for the specified signer.
* @param documentId
* @param attachmentId
* @param signerId
* @param fileFormat
*/
getAttachmentFileForSigner(documentId, attachmentId, signerId, fileFormat) {
const url = APIHelper_1.default.appendQueryParams(`${Urls_1.default.signature}/documents/${documentId}/files/attachments/${attachmentId}/signers/${signerId}`, {
fileFormat
});
return super.getBuffer(url);
}
/**
* Returns a list of all notifications that has been sent / attempted sent for a document.
* @param documentId
*/
listNotifications(documentId) {
return super.get(`${Urls_1.default.signature}/documents/${documentId}/notifications`);
}
/**
* Sends a reminder to the specified signers.
* @param documentId
* @param manualReminder
*/
sendReminders(documentId, manualReminder) {
return super.post(`${Urls_1.default.signature}/documents/${documentId}/notifications/reminder`, manualReminder);
}
/**
* Returns a list of all color themes that can be used in the signature application.
*/
listThemes() {
return super.get(`${Urls_1.default.signature}/themes/list/themes`);
}
/**
* Returns a list of all spinners that can be used in the signature application.
*/
listSpinners() {
return super.get(`${Urls_1.default.signature}/themes/list/spinners`);
}
}
exports.SignatureService = SignatureService;
//# sourceMappingURL=SignatureService.js.map