BoldSign AI Assistant
Chat with the BoldSign AI AssistantSend document on behalf of others
BoldSign enables performing actions on behalf of another user, enhancing document management. This feature enables users to dispatch documents on behalf of other individuals.
To make use of this feature, it's necessary to obtain approval from an individual to use their email address to send documents on their behalf.
Follow the steps below to send document on behalf of other individual:
Create sender identity
Create a sender identity by using the name and email address of the individual to send documents on their behalf.
Here are example codes you can use to create a sender identity
Code snippet
curl -X 'POST' \
'https://api.boldsign.com/v1/senderIdentities/create' \
-H 'accept: */*' \
-H 'X-API-KEY: {your API key}' \
-H 'Content-Type: application/json;' \
-d '{
"name": "Sender identity",
"email": "[email protected]"
}'
var apiClient = new ApiClient("https://api.boldsign.com", "{your API key}");
var senderIdentityClient = new SenderIdentityClient(apiClient);
var senderIdentityRequest = new SenderIdentityRequest("Sender identity", "[email protected]",null);
var senderIdentityCreated = senderIdentityClient.CreateSenderIdentity(senderIdentityRequest);
import boldsign
configuration = boldsign.Configuration(host = "https://api.boldsign.com", api_key = "YOUR_API_KEY")
with boldsign.ApiClient(configuration) as api_client:
sender_identities_api = boldsign.SenderIdentitiesApi(api_client)
create_sender_identity_request = boldsign.CreateSenderIdentityRequest(
name = "Luther Cooper",
email = "[email protected]"
)
sender_identities_api.create_sender_identities(
create_sender_identity_request = create_sender_identity_request
)
<?php require_once "vendor/autoload.php";
use BoldSign\Configuration;
use BoldSign\Api\SenderIdentitiesApi;
use BoldSign\Model\CreateSenderIdentityRequest;
$config = new Configuration();
$config->setHost('https://api.boldsign.com');
$config->setApiKey('YOUR_API_KEY');
$sender_identities_api = new SenderIdentitiesApi($config);
$create_sender_identity_request = new CreateSenderIdentityRequest();
$create_sender_identity_request->setName('Sender identity');
$create_sender_identity_request->setEmail('[email protected]');
$sender_identities_api->createSenderIdentities($create_sender_identity_request);
import boldsign.ApiClient;
import boldsign.Configuration;
import boldsign.api.SenderIdentitiesApi;
import boldsign.model.CreateSenderIdentityRequest;
ApiClient client = Configuration.getDefaultApiClient();
client.setBasePath("https://api.boldsign.com");
client.setApiKey("YOUR_API_KEY");
SenderIdentitiesApi senderIdentitiesApi = new SenderIdentitiesApi(client);
CreateSenderIdentityRequest createSenderIdentityRequest = new CreateSenderIdentityRequest();
createSenderIdentityRequest.setName("Sender identity");
createSenderIdentityRequest.setEmail("[email protected]");
senderIdentitiesApi.createSenderIdentities(createSenderIdentityRequest);
import { SenderIdentitiesApi, CreateSenderIdentityRequest } from "boldsign";
const senderIdentitiesApi = new SenderIdentitiesApi("https://api.boldsign.com");
senderIdentitiesApi.setApiKey("YOUR_API_KEY");
const createSenderIdentityRequest = new CreateSenderIdentityRequest();
createSenderIdentityRequest.name = "Sender identity";
createSenderIdentityRequest.email = "[email protected]";
senderIdentitiesApi.createSenderIdentities(createSenderIdentityRequest);
In the above example, replace the name and email with the name and email of the individual that you want to send the documents on their behalf. Then, provide the notificationSettings to customize how sender identity should recieve email notification for the documents sent on behalf of them. For example, if viewed is set to true, an email will be automatically sent to the sender identity email address when the document is viewed by the signers.
After executing the above request, an approval email will be sent to the mentioned email address. Using the link within this email, the sender can assess the request and provide authorization for you to send documents using their email address. Once the sender grants approval, the requesting user gains the ability to send documents on behalf of the approving user.
Send document on behalf of others
Now, users can send documents on behalf of another user by including the sender's identity email address in the OnBehalfOf property.
Here are example codes you can use to do this:
Code snippet
curl -X 'POST' \ 'https://api.boldsign.com/v1/document/send' \
-H 'accept: application/json' \
-H 'X-API-KEY: {your API key}' \
-H 'Content-Type: multipart/form-data' \
-F 'OnBehalfOf=' \
-F 'Message=' \
-F 'Signers={
"name": "Hanky",
"emailAddress": "[email protected]",
"signerType": "Signer",
"formFields": [
{
"id": "string",
"name": "string",
"fieldType": "Signature",
"pageNumber": 1,
"bounds": {
"x": 50,
"y": 50,
"width": 1,
"height": 1
},
"isRequired": true
}
],
"locale": "EN"
}' \
-F 'Files={your file}' \
-F 'Title={title}' \
var apiClient = new ApiClient("https://api.boldsign.com", "{your API key}");
var documentClient = new DocumentClient(apiClient);
var documentFilePath = new DocumentFilePath
{
ContentType = "application/pdf",
FilePath = "{Your file path}",
};
var filesToUpload = new List<IDocumentFile>
{
documentFilePath,
};
var signatureField = new FormField(
id: "sign",
isRequired: true,
type: FieldType.Signature,
pageNumber: 1,
bounds: new Rectangle(x: 100, y: 100, width: 100, height: 50));
var formFieldCollections = new List<FormField>()
{
signatureField
};
var signer = new DocumentSigner(
signerName: "David",
signerType: SignerType.Signer,
signerEmail: "[email protected]",
formFields: formFieldCollections,
locale: Locales.EN);
var documentSigners = new List<DocumentSigner>()
{
signer
};
var sendForSign = new SendForSign()
{
Message = "please sign this",
Title = "Agreement",
OnBehalfOf = "",
Signers = documentSigners,
Files = filesToUpload
};
var documentCreated = documentClient.SendDocument(sendForSign);
import boldsign
configuration = boldsign.Configuration(api_key = "YOUR_API_KEY")
with boldsign.ApiClient(configuration) as api_client:
document_api = boldsign.DocumentApi(api_client)
send_for_sign = boldsign.SendForSign(
title = "Document SDK API",
document_title = "SDK Document Test case",
description = "Testing document from SDK integration test case",
files = ["YOUR_FILE_PATH"],
signers = [
boldsign.DocumentSigner(
name = "Hanky",
emailAddress = "[email protected]",
signerOrder = 1,
signerType = "Signer",
formFields = [
boldsign.FormField(
name = "Sign",
fieldType = "Signature",
font = "Helvetica",
pageNumber = 1,
isRequired = True,
bounds = boldsign.Rectangle(x = 50, y = 50, width = 100, height = 150)
)
],
privateMessage = "This is private message for signer"
)
],
onBehalfOf = "YOUR_BEHALF_EMAIL"
)
document_created = document_api.send_document(send_for_sign)
<?php require_once "vendor/autoload.php";
use BoldSign\Configuration;
use BoldSign\Api\DocumentApi;
use BoldSign\Model\SendForSign;
use BoldSign\Model\DocumentSigner;
use BoldSign\Model\FormField;
use BoldSign\Model\Rectangle;
$config = new Configuration();
$config->setHost('https://api.boldsign.com');
$config->setApiKey('YOUR_API_KEY');
$document_api = new DocumentApi($config);
$send_for_sign = new SendForSign();
$send_for_sign->setTitle("Document SDK API");
$send_for_sign->setMessage("please sign this");
$send_for_sign->setOnBehalfOf("YOUR_BEHALF_EMAIL");
$send_for_sign->setFiles(["YOUR_FILE_PATH"]);
$field = new FormField();
$field->setFieldType('Signature');
$field->setPageNumber(1);
$rectangle = new Rectangle();
$rectangle->setX(50);
$rectangle->setY(50);
$rectangle->setWidth(100);
$rectangle->setHeight(150);
$field->setBounds($rectangle);
$signer = new DocumentSigner();
$signer->setName("Hanky");
$signer->setEmailAddress("[email protected]");
$signer->setSignerType('Signer');
$signer->setFormFields([$field]);
$send_for_sign->setSigners([$signer]);
$document_api->sendDocument($send_for_sign);
import boldsign.ApiClient;
import boldsign.Configuration;
import boldsign.api.DocumentApi;
import boldsign.model.DocumentSigner;
import boldsign.model.FormField;
import boldsign.model.Rectangle;
import boldsign.model.SendForSign;
import java.io.File;
import java.util.Arrays;
ApiClient client = Configuration.getDefaultApiClient();
client.setBasePath("https://api.boldsign.com");
client.setApiKey("YOUR_API_KEY");
DocumentApi documentApi = new DocumentApi(client);
FormField signatureField = new FormField();
signatureField.setFieldType("Signature");
signatureField.setPageNumber(1);
Rectangle bounds = new Rectangle();
bounds.setX(50f);
bounds.setY(50f);
bounds.setWidth(100f);
bounds.setHeight(150f);
signatureField.setBounds(bounds);
DocumentSigner signer = new DocumentSigner();
signer.setName("Hanky");
signer.setEmailAddress("[email protected]");
signer.setSignerType("Signer");
signer.setFormFields(Arrays.asList(signatureField));
SendForSign sendForSign = new SendForSign();
sendForSign.setTitle("Document SDK API");
sendForSign.setMessage("please sign this");
sendForSign.setOnBehalfOf("YOUR_BEHALF_EMAIL");
sendForSign.setFiles(Arrays.asList(new File("YOUR_FILE_PATH")));
sendForSign.setSigners(Arrays.asList(signer));
documentApi.sendDocument(sendForSign);
import { DocumentApi, SendForSign, DocumentSigner, FormField, Rectangle } from "boldsign";
import * as fs from "fs";
const documentApi = new DocumentApi("https://api.boldsign.com");
documentApi.setApiKey("YOUR_API_KEY");
const signatureField = new FormField();
signatureField.fieldType = "Signature";
signatureField.pageNumber = 1;
const bounds = new Rectangle();
bounds.x = 50;
bounds.y = 50;
bounds.width = 100;
bounds.height = 150;
signatureField.bounds = bounds;
const signer = new DocumentSigner();
signer.name = "Hanky";
signer.emailAddress = "[email protected]";
signer.signerType = "Signer";
signer.formFields = [signatureField];
const sendForSign = new SendForSign();
sendForSign.title = "Document SDK API";
sendForSign.message = "please sign this";
sendForSign.onBehalfOf = "YOUR_BEHALF_EMAIL";
sendForSign.files = [fs.createReadStream("YOUR_FILE_PATH")];
sendForSign.signers = [signer];
documentApi.sendDocument(sendForSign);
In the above example, replace the OnBehalfOf with the email address of sender identity.
After executing the above code, the document will be created, and an email will be sent to the signer. The sender's identity email address will be used as the sender's address in the email. Subsequently, the signer will see the sender identity email address as the sender of the email and the document, rather than your own email address.