BoldSign AI Assistant
Chat with the BoldSign AI AssistantRequest Signatures Without Email Notifications
BoldSign allows you to request signatures without sending email notifications to signers and get signatures from signers through signing link using embedded signing.This guide will go through the process of requesting signature without sending emails using BoldSign API.
Disable Emails Notification
If you want to manage the signature process within your application and prevent email notifications from being sent to signers, BoldSign allows you to disable email notifications when sending documents using the API. This ensures that recipients will not receive any email communication associated with the signing process.By setting DisableEmails to true, you can disable the email notifications. Here are example codes that can be used to achieve this:
Code snippet
curl -X 'POST' \ 'https://api.boldsign.com/v1/template/send?templateId=b8085b47-63b3-47f8-8d5e-cb0acfe2d916' \
-H 'accept: application/json' \
-H 'X-API-KEY: {your API key}' \
-H 'Content-Type: application/json;odata.metadata=minimal;odata.streaming=true' \
-d '{
"title": "Invitation form",
"message": "Kindly review and sign this.",
"roles": [
{
"roleIndex": 1,
"signerName": "Richard",
"signerOrder": 1,
"signerEmail": "[email protected]",
"privateMessage": "Please check and sign the document.",
"signerType": "Signer",
"signerRole": "Manager",
"formFields": [
{
"id": "SignField",
"fieldType": "Signature",
"pageNumber": 1,
"bounds": {
"x": 100,
"y": 100,
"width": 100,
"height": 50
},
"isRequired": true
},
],
"locale": "EN"
}
],
"disableEmails": true,
}`
var apiClient = new ApiClient("https://api.boldsign.com", "{Your API Key}");
var templateClient = new TemplateClient(apiClient);
var signatureField = new FormField(
id: "sign_id",
type: FieldType.Signature,
pageNumber: 1,
bounds: new Rectangle(x: 100, y: 100, width: 100, height: 50));
var formFieldsCollections = new List<FormField>
{
signatureField,
};
var templateRole = new Roles(
roleSignerName: "David",
roleSignerEmailAddress: "[email protected]",
roleSignerIndex: 1,
formFields: formFieldsCollections,
locale: Locales.EN);
var roles = new List<Roles>
{
templateRole,
};
var sendForSignFromTemplate = new SendForSignFromTemplate()
{
TemplateId = "01c19aef-2dad-476d-b801-7178ef2e1036",
Roles = roles,
DisableEmails=true,
};
var documentCreated = templateClient.SendUsingTemplate(sendForSignFromTemplate);
Console.WriteLine(documentCreated.DocumentId.ToString());
import boldsign
configuration = boldsign.Configuration(host = "https://api.boldsign.com", api_key = "YOUR_API_KEY")
with boldsign.ApiClient(configuration) as api_client:
template_api = boldsign.TemplateApi(api_client)
send_for_sign_from_template_form = boldsign.SendForSignFromTemplateForm(
title = "Sample Template",
message = "Please sign this document.",
roles = [
boldsign.Role(
roleIndex = 1,
signerRole = "HR",
signerName = "David",
signerEmail = "[email protected]",
formFields = [
boldsign.FormField(
name = "Sign",
fieldType = "Signature",
font = "Helvetica",
pageNumber = 1,
isRequired = True,
bounds = boldsign.Rectangle(x = 50, y = 50, width = 100, height = 150)
)
]
)
],
disableEmails = True
)
document_created = template_api.send_using_template(
template_id = "YOUR_TEMPLATE_ID",
send_for_sign_from_template_form = send_for_sign_from_template_form
)
<?php require_once "vendor/autoload.php";
use BoldSign\Configuration;
use BoldSign\Api\TemplateApi;
$config = new Configuration();
$config->setHost("https://api.boldsign.com");
$config->setApiKey('YOUR_API_KEY');
$templateApi = new TemplateApi($config);
$formField = new BoldSign\Model\FormField();
$formField->setFieldType('Signature');
$formField->setPageNumber(1);
$bounds = new BoldSign\Model\Rectangle();
$bounds->setX(100);
$bounds->setY(100);
$bounds->setWidth(100);
$bounds->setHeight(50);
$formField->setBounds($bounds);
$role = new BoldSign\Model\Role();
$role->setRoleIndex(1);
$role->setSignerName('David');
$role->setSignerEmail('[email protected]');
$role->setFormFields([$formField]);
$sendForSignFromTemplateForm = new BoldSign\Model\SendForSignFromTemplateForm();
$sendForSignFromTemplateForm->setRoles([$role]);
$sendForSignFromTemplateForm->setDisableEmails(true);
$result = $templateApi->sendUsingTemplate('YOUR_TEMPLATE_ID', $sendForSignFromTemplateForm);
ApiClient client = Configuration.getDefaultApiClient();
client.setBasePath("https://api.boldsign.com");
client.setApiKey("YOUR_API_KEY");
TemplateApi templateApi = new TemplateApi(client);
Rectangle bounds = new Rectangle().x(100f).y(100f).width(100f).height(50f);
FormField formField = new FormField();
formField.setFieldType(FormField.FieldTypeEnum.SIGNATURE);
formField.setPageNumber(1);
formField.setBounds(bounds);
Role role = new Role();
role.setRoleIndex(1);
role.setSignerName("David");
role.setSignerEmail("[email protected]");
role.setFormFields(Arrays.asList(formField));
SendForSignFromTemplateForm sendForSignFromTemplateForm = new SendForSignFromTemplateForm();
sendForSignFromTemplateForm.setRoles(Arrays.asList(role));
sendForSignFromTemplateForm.setDisableEmails(true);
DocumentCreated documentCreated = templateApi.sendUsingTemplate("YOUR_TEMPLATE_ID", sendForSignFromTemplateForm);
import * as boldsign from "boldsign";
const templateApi = new boldsign.TemplateApi("https://api.boldsign.com");
templateApi.setApiKey("YOUR_API_KEY");
const formField = new boldsign.FormField();
formField.fieldType = boldsign.FormField.FieldTypeEnum.Signature;
formField.pageNumber = 1;
formField.bounds = new boldsign.Rectangle();
formField.bounds.x = 100;
formField.bounds.y = 100;
formField.bounds.width = 100;
formField.bounds.height = 50;
const role = new boldsign.Role();
role.roleIndex = 1;
role.signerName = "David";
role.signerEmail = "[email protected]";
role.formFields = [formField];
const sendForSignFromTemplateForm = new boldsign.SendForSignFromTemplateForm();
sendForSignFromTemplateForm.roles = [role];
sendForSignFromTemplateForm.disableEmails = true;
const documentCreated = templateApi.sendUsingTemplate("YOUR_TEMPLATE_ID", sendForSignFromTemplateForm);
Get Signing Link
If email notifications disabled, you can obtain the signatures from signers using signing link through embedded signing. You can embed the signing request in your application to facilitate the signature process without sending email notifications.
Code snippet
Here are example codes that can be used to achieve this:
curl -X 'GET' \ 'https://api.boldsign.com/v1/document/getEmbeddedSignLink?DocumentId=17882g56-6686-46d9-dhg3-ce5737751234&[email protected]' \ -H 'accept: application/json;odata.metadata=minimal;odata.streaming=true' \ -H 'X-API-KEY: {your API key}'
var documentClient = new DocumentClient(apiClient);
EmbeddedSigningLink embeddedSigningLink = await documentClient.GetEmbeddedSignLinkAsync(documentCreated.DocumentId, "[email protected]").ConfigureAwait(false);
string signLink = embeddedSigningLink.SignLink;
Console.WriteLine(signLink);
import boldsign
configuration = boldsign.Configuration(host = "https://api.boldsign.com", api_key = "YOUR_API_KEY")
with boldsign.ApiClient(configuration) as api_client:
document_api = boldsign.DocumentApi(api_client)
document_id = "YOUR_DOCUMENT_ID"
signing_email = "[email protected]"
embedded_signing_link = document_api.get_embedded_sign_link(
document_id = document_id,
signer_email = signing_email
)
import * as boldsign from "boldsign";
const documentApi = new boldsign.DocumentApi("https://api.boldsign.com");
documentApi.setApiKey("YOUR_API_KEY");
const signerEmail = "[email protected]";
const embeddedSignLink = await documentApi.getEmbeddedSignLink("YOUR_DOCUMENT_ID", signerEmail);
<?php require_once "vendor/autoload.php";
use BoldSign\Configuration;
use BoldSign\Api\DocumentApi;
$config = new Configuration();
$config->setHost('https://api.boldsign.com');
$config->setApiKey('YOUR_API_KEY');
$documentApi = new DocumentApi($config);
$signerEmail = '[email protected]';
$embeddedSigningLink = $documentApi->getEmbeddedSignLink("YOUR_DOCUMENT_ID", $signerEmail);
ApiClient client = Configuration.getDefaultApiClient();
client.setBasePath("https://api.boldsign.com");
client.setApiKey("YOUR_API_KEY");
DocumentApi documentApi = new DocumentApi(client);
String signerEmail = "[email protected]";
EmbeddedSigningLink embeddedSigningLink = documentApi.getEmbeddedSignLink("YOUR_DOCUMENT_ID", signerEmail, null, null, null, null);
In conclusion, enabling the DisableEmails option prevents signers from receiving email notifications. Meanwhile, utilizing embedded signing provides a signing link. Consequently, you can seamlessly acquire the signer's signature within your application using embedded signing.