BoldSign AI Assistant
Chat with the BoldSign AI AssistantHow to Create New Custom Fields Easily
Custom Fields help organize documents by allowing you to create and reuse fields tailored to your needs. These fields are used to store frequently used information, ensuring consistency across documents and reducing repetitive tasks.
Once created, a Custom Field is linked to your brand, making it easy to drag and drop into any document, quickly filling in details without manual entry.
To set up a custom field via the API, provide key details like fieldName, description, order, and formfield settings. To prevent team members from editing the Id of the custom field, specify the idPrefix and set restrictIdPrefixChange to true.
Below are examples of how to create a custom form field for Phone Number using TextBox field:
Code snippet
curl -X POST \
'https://api.boldsign.com/v1/customField/create' \
-H 'accept: application/json' \
-H 'X-API-KEY: {your api key}' \
-H 'Content-Type: application/json' \
-d '{
"fieldName": "PhoneNumber",
"fieldDescription": "Signer Contact details",
"fieldOrder": 1,
"brandId": "{your brand Id}",
"sharedField": true,
"formField": {
"fieldType": "TextBox",
"width": 60,
"height": 40,
"isRequired": true,
"validationType": "NumbersOnly"
}
}'
var client = new HttpClient();
var apiClient = new ApiClient("https://api.boldsign.com", "API-KEY");
var customFieldClient = new CustomFieldClient(apiClient);
var newCustomField = new CreateCustomField()
{
FieldName = "PhoneNumber",
FieldDescription = "Signer Contact details",
FieldOrder = 1,
BrandId = "{your brandId}",
SharedField = true,
FormField = new FormField()
{
FieldType = "TextBox",
Width = 60,
Height = 40,
IsRequired = true,
ValidationType = "NumbersOnly"
}
};
var response = await customFieldClient.CreateAsync(newCustomField);
Console.WriteLine(response);
import boldsign
configuration = boldsign.Configuration(host = "https://api.boldsign.com", api_key = "YOUR_API_KEY")
with boldsign.ApiClient(configuration) as api_client:
custom_field_api = boldsign.CustomFieldApi(api_client)
custom_form_field = boldsign.CustomFormField(
fieldType = "Signature",
font = "Courier",
width = 60,
height = 60,
)
brand_custom_field_details = boldsign.BrandCustomFieldDetails(
fieldName = "Signature",
fieldDescription = "Test custon field creation",
fieldOrder = 1,
brandId = "YOUR_BRAND_ID",
formField = custom_form_field
)
custom_field_created = custom_field_api.create_custom_field(
brand_custom_field_details = brand_custom_field_details
)
<?php require_once "vendor/autoload.php";
use BoldSign\Configuration;
use BoldSign\Api\CustomFieldApi;
use BoldSign\Model\{CustomFormField, BrandCustomFieldDetails};
$config = new Configuration();
$config->setHost("https://api.boldsign.com");
$config->setApiKey('YOUR_API_KEY');
$custom_field_api = new CustomFieldApi($config);
$custom_form_field = new CustomFormField();
$custom_form_field->setFieldType('Signature');
$custom_form_field->setWidth(60);
$custom_form_field->setHeight(60);
$custom_form_field->setFont('Courier');
$brand_custom_field_details = new BrandCustomFieldDetails();
$brand_custom_field_details->setFieldName('Signature');
$brand_custom_field_details->setFieldDescription('Test custom field creation');
$brand_custom_field_details->setFieldOrder(1);
$brand_custom_field_details->setBrandId('YOUR_BRAND_ID');
$brand_custom_field_details->setSharedField(true);
$brand_custom_field_details->setFormField($custom_form_field);
$custom_field_created = $custom_field_api->createCustomField($brand_custom_field_details);
ApiClient client = Configuration.getDefaultApiClient();
client.setBasePath("https://api.boldsign.com");
client.setApiKey("YOUR_API_KEY");
CustomFieldApi customFieldApi = new CustomFieldApi();
CustomFormField customFormField = new CustomFormField();
customFormField.setFieldType(CustomFormField.FieldTypeEnum.SIGNATURE);
customFormField.setFont(CustomFormField.FontEnum.HELVETICA);
customFormField.setWidth(60f);
customFormField.setHeight(60f);
BrandCustomFieldDetails brandCustomFieldDetails = new BrandCustomFieldDetails();
brandCustomFieldDetails.setFieldName("Signature");
brandCustomFieldDetails.setFieldDescription("Test custon field creation");
brandCustomFieldDetails.setFieldOrder(1);
brandCustomFieldDetails.setBrandId("YOUR_BRAND_ID");
brandCustomFieldDetails.setSharedField(true);
brandCustomFieldDetails.setFormField(customFormField);
CustomFieldMessage customFieldCreated = customFieldApi.createCustomField(brandCustomFieldDetails);
import { CustomFieldApi, BrandCustomFieldDetails, CustomFormField } from "boldsign";
const customFieldApi = new CustomFieldApi("https://api.boldsign.com");
customFieldApi.setApiKey("YOUR_API_KEY");
const customFormField = new CustomFormField();
customFormField.fieldType = CustomFormField.FieldTypeEnum.Signature;
customFormField.font = CustomFormField.FontEnum.Courier;
customFormField.width = 60;
customFormField.height = 60;
const brandCustomFieldDetails = new BrandCustomFieldDetails();
brandCustomFieldDetails.fieldName = "string";
brandCustomFieldDetails.fieldDescription = "Test custom field creation";
brandCustomFieldDetails.fieldOrder = 1;
brandCustomFieldDetails.brandId = "YOUR_BRAND_ID";
brandCustomFieldDetails.sharedField = true;
brandCustomFieldDetails.formField = customFormField;
const customFieldCreated = customFieldApi.createCustomField(brandCustomFieldDetails);
In the provided code example, replace values for fieldName with the custom name of the field you want to create, fieldOrder with the order of the field, brandId with the id of the brand the custom field is associated with and the fieldType with the original field that the custom field is being created from. Once the above codes are excuted, a custom field is created and saved successfully in the brand.