Node.js SDK
Easily integrate BoldSign's e-signature features into your Node.js applications. This SDK simplifies sending documents for signature, embedding signing ceremonies, tracking document status, downloading signed documents, and managing e-signature workflows.
The Node SDK is available on npmjs and the source code can be found in the GitHub repository.
Install the package
Install the BoldSign Node SDK package in your project using the below command.
npm install boldsign
Authentication
You can authenticate and configure the BoldSign Node SDK using either an API Key or a Bearer Token. Depending on your authentication method, you can set up with one of the two configurations outlined below.
API Key
To authenticate using an API Key, you'll need to first generate your API key. You can refer to the API-Key for more details .
Once you have your API key, you can configure as follows:
const templateApi = new TemplateApi(); templateApi.setApiKey("Your-API-Key-Here");
Replace "Your-API-Key-Here" with the actual API key you generated. After setting this up, the SDK will use this API key for authenticating all API requests.
OAuth 2.0
To authenticate using an Bearer Token(Access Token), you'll need to first generate your Bearer Token. You can refer to the OAuth 2.0 for more details .
Once you have your Bearer Token, you can configure as follows:
const templateApi = new TemplateApi(); templateApi.setDefaultAuthentication("Your-Bearer-Token-Here");
Replace "Your-Bearer-Token-Here" with the actual Bearer Token you generated. After setting this up, the SDK will use this Bearer Token for authenticating all API requests.
Getting started
To prepare for sending a document for signing, you can authenticate using an API key after importing the BoldSign SDK. This example demonstrates the authentication process using an API key.
import { DocumentApi } from 'boldsign'; import { DocumentSigner, FormField, Rectangle, SendForSign } from 'boldsign'; import * as fs from 'fs'; // Create an instance of the DocumentApi class const documentApi = new DocumentApi(); // Configure API key authorization: X-API-KEY documentApi.setApiKey('YOUR_API_KEY_HERE');
Now, define the signature field that will be added to your document. This involves specifying the field type (Signature), page number, and the bounds (position and size) of the field on the page.
const bounds = new Rectangle(); bounds.x = 100; bounds.y = 50; bounds.width = 100; bounds.height = 100; // Define the signature field to be added to the document const formField = new FormField(); formField.fieldType = FormField.FieldTypeEnum.Signature; formField.pageNumber = 1; formField.bounds = bounds;
The document and its form fields require signing. So, specify the signer to sign the form fields, including their name and email address.
// Define the signer with a name and email address const documentSigner = new DocumentSigner(); documentSigner.name = "David"; documentSigner.emailAddress = "david@example.com"; documentSigner.signerType = DocumentSigner.SignerTypeEnum.Signer; documentSigner.formFields = [formField];
Now, prepare the document you want to send for signature. Specify the title of the document, the signers involved, and the file(s) to be signed. In this case, we are sending a PDF document.
// Prepare the request body for sending the document for signature var files = fs.createReadStream("agreement.pdf"); const sendForSign = new SendForSign(); sendForSign.title = "Agreement"; sendForSign.signers = [documentSigner]; sendForSign.files = [files];
The last step is to send the document for signing with the defined document, form fields and signer.
// Send the document for signature and capture the response const sendDocumentResponse = await documentApi.sendDocument(sendForSign);
The return type sendDocumentResponse
will contain the document ID of the document created, which can be used in later stages to get the particular document related operations.
Examples
You can find the Node.js example application in the official GitHub repository. Additional code examples are available in this GitHub repository.
Class reference
Refer to the Node.js SDK class reference documentation here.