Category / Section
How to set the prefilled value for form fields using BoldSign API?
Published:
5 mins read
BoSign API makes signing easier by filling in form fields with prefilled values. This saves time for signers as they can quickly review and make any needed edits.
Supported form fields
Prefilled values can be set for the following form field types:
- Textbox
- Checkbox
- Radio button
- Image
- Editable Date
- Dropdown
Setting prefilled values
To set a prefilled value for a form field, you need to specify the value in the value
property of the corresponding form field object.
Here are example codes you can use to do this:
Code snippet
cURL
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 'Title="Sample Document"' \
-F 'Signers={
"name": "hanky",
"emailAddress": "hankyWhites@gmail.com",
"signerType": "Signer",
"signerRole": "Signer",
"formFields": [
{
"id": "TextBox",
"name": "TextBox",
"fieldType": "TextBox",
"pageNumber": 1,
"bounds": {
"x": 100,
"y": 100,
"width": 125,
"height": 25
},
"isRequired": true,
"value": "Prefilled Value"
}
],
"locale": "EN"
}' \
-F 'Files={your file}' \
C#
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 TextBoxField = new FormField(
id: "TextBox",
isRequired: true,
value: "Prefilled Value",
type: FieldType.TextBox,
pageNumber: 1,
bounds: new Rectangle(x: 100, y: 100, width: 125, height: 25));
var formFieldCollections = new List<FormField>()
{
TextBoxField
};
var signer = new DocumentSigner(
name: "David",
emailAddress: "david@cubeflakes.com",
formFields: formFieldCollections,
locale: Locales.EN);
var documentSigners = new List<DocumentSigner>()
{
signer
};
var sendForSign = new SendForSign()
{
Signers = documentSigners,
Files = filesToUpload,
Title = "Sample Document"
};
var documentCreated = documentClient.SendDocument(sendForSign);
Console.WriteLine(documentCreated.DocumentId);
Python
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="hankyWhites@cubeflakes.com",
signerOrder=1,
signerType="Signer",
formFields=[
boldsign.FormField(
name="TextBox",
fieldType="TextBox",
font="Helvetica",
pageNumber=1,
isRequired=True,
value="Prefilled Value",
bounds=boldsign.Rectangle(x=50, y=50, width=100, height=150)
)
],
privateMessage="This is private message for signer"
)
]
)
send_document_response = document_api.send_document(send_for_sign)
NodeJS
const axios = require('axios');
const FormData = require('form-data');
const fs = require('fs');
let data = new FormData();
data.append('Signers', '{\r\n "name": "hanky",\r\n "emailAddress": "hankyWhites@gmail.com",\r\n "signerType": "Signer",\r\n "signerRole": "Signer",\r\n "formFields": [\r\n {\r\n "id": "TextBox",\r\n "name": "TextBox",\r\n "fieldType": "TextBox",\r\n "pageNumber": 1,\r\n "bounds": {\r\n "x": 100,\r\n "y": 100,\r\n "width": 125,\r\n "height": 25\r\n },\r\n "value": "Prefilled Value",\r\n "isRequired": true\r\n}\r\n ],\r\n "locale": "EN"\r\n}');
data.append('Files', fs.createReadStream('{Your file path}'));
data.append('Title', "Sample Document");
let config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://api.boldsign.com/v1/document/send',
headers: {
'accept': 'application/json',
'X-API-KEY': '{Your API key}',
...data.getHeaders()
},
data : data
};
axios.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});
In the above example, you can set any field type as any of the supported fields listed above and set the prefilled value to the value
property for any fields. When you execute the code, a document will be generated with the specified value that you set for the field type.