# Send document using multiple templates

{% post /%}
{% path text="/v1/template/mergeAndSend" /%}

Templates play a pivotal role in enhancing your document management workflow. Users can merge one or more templates into a single document. This merge template process takes an array of template IDs as input and performs a series of checks and operations to seamlessly merge the templates into a finalized document.

## Code snippet

{% codetab %}

cURL

```shell
curl -X 'POST' \ 'https://api.boldsign.com/v1/template/mergeAndSend' \
     -H 'accept: application/json' \
     -H 'X-API-KEY: {your API key}' \
     -H 'Content-Type: application/json;odata.metadata=minimal;odata.streaming=true' \
     -d '{
       "TemplateIds": [
          "1a62a39c-xxxx-xxxx-xxxx-c0a09ee3fc82", "01c19aef-xxxx-xxxx-xxxx-7178ef2e1036"
        ],
       "Title": "Invitation form",
       "Message": "Kindly review and sign this.",
       "Roles": [
    {
      "RoleIndex": 50,
      "SignerName": "Richard",
      "SignerOrder": 1,
      "SignerEmail": "richard@cubeflakes.com",
      "PrivateMessage": "Please check and sign the document.",
      "AuthenticationCode": "281028",
      "EnableEmailOTP": false,
      "SignerType": "Signer",
      "SignerRole": "Manager",
     "FormFields": [
    {
      "Id": "SignField",
      "FieldType": "Signature",
      "PageNumber": 1,
      "Bounds": {
        "X": 100,
        "Y": 100,
        "Width": 100,
        "Height": 50
      },
      "IsRequired": true
    }
  ],
      "Locale": "EN"
    }
  ],
  "BrandId": "8208b6d3-xxxx-xxxx-xxxx-1bbe41018107",
  "Labels": [
    "Invitation"
  ],
  "DisableEmails": false,
  "DisableSMS": false,
  "HideDocumentId": true,
  "ReminderSettings": {
    "EnableAutoReminder": true,
    "ReminderDays": 3,
    "ReminderCount": 10
  },
  "CC": [
    {
      "EmailAddress": "alexgayle@cubeflakes.com"
    }
  ],
  "ExpiryDays": 180,
  "ExpiryDateType": "Days",
  "ExpiryValue": 60,
  "DisableExpiryAlert": true,
  "EnablePrintAndSign": true,
  "EnableReassign": true,
  "EnableSigningOrder": true,
  "RoleRemovalIndices": [1, 2],
  "DownloadFileName": "Test-document-from-{sendername}",
  "useTextTags": false
  }'
```
C#
```csharp
var apiClient = new ApiClient("https://api.boldsign.com", "Your_API_Key");

var templateClient = new TemplateClient(apiClient);

var mergeAndSendForSign = new MergeAndSendForSign
{
    TemplateIds = new string[] {"YOUR_TEMPLATE_ID", "YOUR_TEMPLATE_ID"},
    Roles =
    [
        new Roles()
        {
            RoleIndex = 1,
            SignerName = "David",
            SignerEmail = "david@cubeflakes.com",
            SignerRole = "NewRole"
        }
    ]
};

var documentCreated = templateClient.MergeAndSend(mergeAndSendForSign);
```
Python
```python
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)

    role = boldsign.Role(
        signerRole="NewRole",
        roleIndex=1,
        signerName="David",
        signerEmail="david@cubeflakes.com")

    merge_and_send_for_sign_form = boldsign.MergeAndSendForSignForm(
        templateIds=["YOUR_TEMPLATE_ID", "YOUR_TEMPLATE_ID"],
        roles=[role])

    document_created = template_api.merge_and_send(merge_and_send_for_sign_form)
```

PHP

```php
<?php require_once "vendor/autoload.php";

use BoldSign\Configuration;
use BoldSign\Api\TemplateApi;
use BoldSign\Model\{Role, MergeAndSendForSignForm};

$config = new Configuration();
$config->setHost('https://api.boldsign.com');
$config->setApiKey('YOUR_API_KEY');

$template_api = new TemplateApi($config);

$role = new Role();
$role->setRoleIndex(1);
$role->setSignerName('David');
$role->setSignerEmail('david@cubeflakes.com');
$role->setSignerRole('NewRole');

$merge_and_send_for_sign_form = new MergeAndSendForSignForm();
$merge_and_send_for_sign_form->setTemplateIds(['YOUR_TEMPLATE_ID', 'YOUR_TEMPLATE_ID']);
$merge_and_send_for_sign_form->setRoles([$role]);

$document_created = $template_api->mergeAndSend($merge_and_send_for_sign_form);
```

Java

```java
ApiClient client = Configuration.getDefaultApiClient();
client.setBasePath("https://api.boldsign.com");
client.setApiKey("YOUR_API_KEY");
			
TemplateApi templateApi = new TemplateApi(client);

Role role = new Role();
role.setRoleIndex(1);
role.setSignerName("David");
role.setSignerEmail("david@cubeflakes.com");
role.setSignerRole("HR");

MergeAndSendForSignForm mergeAndSendForSignForm = new MergeAndSendForSignForm();
mergeAndSendForSignForm.setTemplateIds(Arrays.asList("YOUR_TEMPLATE_ID", "YOUR_TEMPLATE_ID"));
mergeAndSendForSignForm.setRoles(Arrays.asList(role));

templateApi.mergeAndSend(mergeAndSendForSignForm);
```
NodeJS
```js
import { TemplateApi, FormField, MergeAndSendForSignForm, Rectangle, Role } from "boldsign";

const templateApi = new TemplateApi("https://api.boldsign.com");
templateApi.setApiKey("YOUR_API_KEY");

const role = new Role();
role.roleIndex = 1;
role.signerName = "David";
role.signerEmail = "david@cubeflakes.com";
role.signerRole = "Manager";

const mergeAndSendForsign = new MergeAndSendForSignForm();
mergeAndSendForsign.roles = [role];
mergeAndSendForsign.templateIds = ["YOUR_TEMPLATE_ID", "YOUR_TEMPLATE_ID"];

const documentCreated = templateApi.mergeAndSend(mergeAndSendForsign);
```

{% /codetab %}
## Request body
{% nestedtable %}
- {% arguments name="TemplateIds" /%}{% batch datatype="array" /%}
- This is the templateIds of the existing templates to be used for sending the document. One or more values can be specified.
---
- {% arguments name="Title" /%}{% batch datatype="string" /%}
- This is the title of the document that will be displayed in the BoldSign user interface as well as in the signature request email.
---
- {% arguments name="Message" /%}{% batch datatype="string" /%}
- A message for all the recipients. You can include the instructions that the signer should know before signing the document.
---
- {% arguments name="Roles" /%}{% batch datatype="array" /%}
- A role is simply a placeholder for a real person. For example, if we have a purchase order that will always be signed by two people, one from the company and one from the customer, we can create a template with two roles, `Customer` and `Representative.`
  {% nestedtable %}
  - {% arguments name="RoleIndex" /%}{% batch datatype="integer" /%}{% required /%}
  - The `roleIndex` represents the position of a role in a sequence. The role index should be in linear increments for each role (1, 2, 3, and so on). The index value must be between 1 and 50.

    {% arguments name="Example:" /%}

    When merging templates, the role index follows a linear progression. In the first template, the role index starts naturally. In the second template, the role index begins from the next value after the sum of the roles used in the first template. For the third template, the role index starts from the next value after the sum of the roles used in the first and second templates, and so on.
  ---
  - {% arguments name="SignerName" /%}{% batch datatype="string" /%}
  - Name of the signer. This name will appear on all the emails, notifications, and audit files.
  ---
  - {% arguments name="SignerOrder" /%}{% batch datatype="integer" /%}
  - Signing order of the signer. This is applicable when the signing order option is enabled.
  ---
  - {% arguments name="SignerEmail" /%}{% batch datatype="string" /%}
  - Mail ID of the signer. This ID will appear on all the emails, notifications, and audit files.
  ---
  - {% arguments name="HostEmail" /%}{% batch datatype="string" /%}
  - Mail ID of the host. It is applicable when the signerType is set to `InPersonSigner.`
  ---
  - {% arguments name="PrivateMessage" /%}{% batch datatype="string" /%}
  - Displays a message to the specified signer when he proceeds to sign the document. You can include the instructions that the signer should know before signing the document.
  ---
  - {% arguments name="AuthenticationType" /%}{% batch datatype="string" /%}
  - This is used to allow authentication for a specific signer. We have three types of authentication. They are `AccessCode`, `EmailOTP`, `SMSOTP` and `IdVerification`. The default value is `None.`

  ---
  - {% arguments name="AuthenticationCode" /%}{% batch datatype="string" /%}
  - The authentication access code that the signer must enter to access the document. This should be shared with the signer.
  ---
  - {% arguments name="EnableEmailOTP" /%}{% batch datatype="boolean" /%}
  - Enables the email OTP authentication. when this feature is enabled, the signer must enter the OTP received via email, to access the document.
  ---
  - {% arguments name="PhoneNumber" /%}{% batch datatype="object" /%}
  - When you set the authentication type to `SMSOTP` or select the delivery mode as `SMS` or `EmailAndSMS`, you can provide the phone number with the country code.
    {% nestedtable %}

     - {% arguments name="CountryCode" /%}{% batch datatype="string" /%}
     - This property represents the country code associated with the phone number.
    ---
    - {% arguments name="Number" /%}{% batch datatype="string" /%}
    - This property represents the actual phone number.
    {% /nestedtable %}
  ---

  - {% arguments name="IdentityVerificationSettings" /%}{% batch datatype="object" /%}
  - Settings for identity verification when `IdVerification` authentication type is enabled for the signer.
    {% nestedtable %}

    - {% arguments name="Type" /%}{% batch datatype="string" /%}
    - Customize the frequency of identity verification for signers accessing documents.
      - **EveryAccess**: Signers must undergo identity verification each time they access the document, even after completing their signature.
      - **UntilSignCompleted**: Identity verification is required until the signer completes their signature. After which, they will not need to undergo identity verification again.
      - **OncePerDocument**: Signers authenticate their identity only once, even if accessing the document multiple times.

    ---

    - {% arguments name="MaximumRetryCount" /%}{% batch datatype="integer" /%}
    - Specify the maximum number of verification attempts allowed for signers. Exceeding this limit restricts access to the document. Senders have the option to reset failed signers for additional attempts and manually review failed document uploads for approval or rejection. Maximum number of retries is 10.

    ---

    - {% arguments name="RequireLiveCapture" /%}{% batch datatype="boolean" /%}
    - Mandate signers to capture a live image of their identification document using their device camera. This verifies the document's authenticity and originality, preventing the use of photos or photocopies.

    ---

    - {% arguments name="RequireMatchingSelfie" /%}{% batch datatype="boolean" /%}
    - Uses advanced machine learning algorithms to ensure facial recognition accuracy, preventing the use of stolen identity documents by comparing the photo on the ID and the selfie image.

    ---

    - {% arguments name="NameMatcher" /%}{% batch datatype="string" /%}
    - Define the tolerance level for matching the signer's name with the name on the uploaded identification document. Options include:
      - **Strict**: Minimal variations are permitted, adhering to strict matching rules.
      - **Moderate**: Moderate matching rules allow for variations in the middle, prefix, and suffix parts of the name.
      - **Lenient**: Relaxed matching rules accommodate minor spelling mistakes for increased flexibility.

    ---

    - {% arguments name="HoldForPrefill" /%}{% batch datatype="boolean" /%}
    - Enable this option to hold the signer from signing the document, giving you the opportunity to prefill the signer's details. Once the prefill is completed, the signer can proceed with the signing process. The maximum hold time is 30 seconds; if you exceed this time limit, the signer will be redirected to the signing page.

    ---

    - {% arguments name="AllowedDocumentTypes" /%}{% batch datatype="array" /%}
    - Defines the list of document types from which the signer can upload any one as an identification document. The allowed types are `Passport`, `IDCard`, and `DriverLicense`.

    {% /nestedtable %}

  ---

  - {% arguments name="AuthenticationRetryCount" /%}{% batch datatype="Nullable int" /%}
  - Specifies the maximum number of allowed authentication attempts for the signer during the signing process. This applies to the following authentication methods:

    - `AccessCode`
    - `EmailOTP`
    - `SMSOTP`

    The retry count must be an integer between `1` and `10`. If this property is not specified, the value configured in the business profile will be used automatically. You can learn how to set it [here](https://support.boldsign.com/kb/article/19693/how-to-set-authentication-retry-attempts-in-boldsign). This property is optional.

  ---
  - {% arguments name="DeliveryMode" /%}{% batch datatype="string" /%}
  - This property allows you to specify the desired delivery mode for sending notifications. We have three types of delivery modes. They are `Email` , `SMS` and `EmailAndSMS`. The default value is `Email`.
  ---
  - {% arguments name="SignerType" /%}{% batch datatype="SignerType" /%}
  - Type of the signer. The values are `Signer,` `Reviewer,` and `InPersonSigner.`

  ---

  - {% arguments name="SignType" /%}{% batch datatype="enum" /%}
  - Specifies whether the recipient is an individual signer (`Single`) or a contact group signer (`Group`). If not specified, it defaults to `Single`.

  ---

  - {% arguments name="GroupId" /%}{% batch datatype="string" /%}
  - The identifier of the contact group to be used as the signer. You can obtain it from the Contact Groups API.

  ---
  - {% arguments name="SignerRole" /%}{% batch datatype="string" /%}
  - The role of the signer, which was specified while creating the template.
  ---
  - {% arguments name="AllowFieldConfiguration" /%}{% batch datatype="boolean" /%}
  - This option enables the signer to add fields at their end while signing the document. If this option is set to `false`, the signer cannot add fields, and they must complete the assigned ones. By default, it is set to false.

  ---

  - {% arguments name="FormFields" /%}{% batch datatype="array" /%}
  - List of form fields associated with the signer.
    {% nestedtable %}
    - {% arguments name="Id" /%}{% batch datatype="string" /%}
    - The id of the form field. ID must start with a letter or an underscore and can only contain letters, digits, and underscores.
    ---
    - {% arguments name="Name" /%}{% batch datatype="string" /%}
    - Name of the form field.
    ---
    - {% arguments name="Type" /%}{% batch datatype="string" /%}
    - Type of the form field. The available values are `Signature`, `Initial`, `CheckBox`, `TextBox`, `Label`, `DateSigned`, `Image`, `Attachment`, `EditableDate`, `Hyperlink`, `Formula`, `Dropdown` and `Drawing`. The `Formula` field is only available in the beta version.

      **Note:**
      To add `Email`, `Name`, `Title`, and `Company` fields via API, use `TextBox` fields with the validation type set to `Regex` .
    ---
    - {% arguments name="PageNumber" /%}{% batch datatype="integer" /%}
    - Page number in the document in which the form field has to be placed. The page number must be greater than zero.
    ---
    - {% arguments name="Bounds" /%}{% batch datatype="Rectangle" /%}
    - Position and size values of the form field to be placed.
      {% nestedtable %}

      - {% arguments name="X" /%}{% batch datatype="float" /%}
      - X-coordinate value to place the form field.
      ---
      - {% arguments name="Y" /%}{% batch datatype="float" /%}
      - Y-coordinate value to place the form field.
      ---
      - {% arguments name="Width" /%}{% batch datatype="float" /%}
      - Width of the form field. The width must be greater than zero.
      ---
      - {% arguments name="Height" /%}{% batch datatype="float" /%}
      - Height of the form field. The default line height is **15.0** .
      {% /nestedtable %}
    ---
    - {% arguments name="IsRequired" /%}{% batch datatype="boolean" /%}
    - Decides whether this form field is required to be filled or not.
    ---
    - {% arguments name="IsMasked" /%}{% batch datatype="Nullable boolean" /%}
    - Decides whether this form field should be masked so that its value is hidden from other signers present in the document.
    ---
    - {% arguments name="TabIndex" /%}{% batch datatype="Nullable int" /%}
    - Assign tab index to control the flow of field focus while using `TAB` key navigation. Default to `null`, which denotes it will follow regular flow. The accepted range starts from `-1` to a valid `integer`.
    ---
    - {% arguments name="Label" /%}{% batch datatype="string" /%}
    - The label used to represent the value for a radio button. Also, can be used to prefill a radio button.
    ---
    - {% arguments name="Value" /%}{% batch datatype="string" /%}
    - Value to be displayed on the label form field.
    ---
    - {% arguments name="FontSize" /%}{% batch datatype="float" /%}
    - Size of the font.
    ---
    - {% arguments name="Font" /%}{% batch datatype="string" /%}
    - Font family. The values are `Courier`, `Helvetica`, ` TimesNewRoman` and `NotoSans`. The default font family is `Helvetica`.
    ---
    - {% arguments name="FontHexColor" /%}{% batch datatype="string" /%}
    - Color of the font. The value should be hex color code. Example - `#035efc`.
    ---
    - {% arguments name="IsBoldFont" /%}{% batch datatype="boolean" /%}
    - Decides whether the font should be in bold or not.
    ---
    - {% arguments name="IsItalicFont" /%}{% batch datatype="boolean" /%}
    - Decides whether the font should be in italic or not.
    ---
    - {% arguments name="IsUnderLineFont" /%}{% batch datatype="boolean" /%}
    - Decides whether the font should be underlined or not.
    ---
    - {% arguments name="LineHeight" /%}{% batch datatype="integer" /%}
    - Height of a line in the text. The default line height is **15.0** .
    ---
    - {% arguments name="CharacterLimit" /%}{% batch datatype="integer" /%}
    - Limits the number of characters in the text. The character limit value must be greater than zero.
    ---
    - {% arguments name="GroupName" /%}{% batch datatype="string" /%}
    - The group name of the form field. This field is required when the type is set to `RadioButton.`
    ---
    - {% arguments name="PlaceHolder" /%}{% batch datatype="string" /%}
    - A hint text is to be displayed on the text form field by default.
    ---
    - {% arguments name="ValidationType" /%}{% batch datatype="ValidationType" /%}
    - Type of validation for the textbox form field. The values are `Only Numbers,` `Regex,` `Currency,` `Email,` and `None.`. The default validation type is `None` .
    ---
    - {% arguments name="ValidationCustomRegex" /%}{% batch datatype="string" /%}
    - Value for regex validation. This is applicable when the validationType is set to `Regex.`
    ---
    - {% arguments name="ValidationCustomRegexMessage" /%}{% batch datatype="string" /%}
    - Description for regex validation. This message is displayed when the signer enters an invalid regex format value in the textbox form field.
    ---
    - {% arguments name="DateFormat" /%}{% batch datatype="string" /%}
    - Format of the date to be displayed on the date signed form field. The default value is `MM/dd/yyyy`. When `null` is provided, the value is inherited from the business profile settings of your account. 
    Accepted formats are 
      - `MM/dd/yyyy` (02/08/2024)
      - `dd/MM/yyyy` (08/02/2024)
      - `dd-MMM-yyyy` (08-Feb-2024)
      - `MMM-dd-yyyy` (Feb-08-2024)
      - `MMM dd, yyyy` (Feb 08, 2024)
      - `dd MMM, yyyy` (08 Feb, 2024)
      - `yyyy, MMM dd` (2024, Feb 08)
      - `yyyy/MM/dd` (2024/02/08)
      - `dd-MM-yyyy` (08-02-2024)
      - `MM-dd-yyyy` (02-08-2024)
      - `yyyy-MM-dd` (2024-02-08)

    ---

    - {% arguments name="TimeFormat" /%}{% batch datatype="string" /%}
    - Format of the time to be displayed on the date signed form field. When `null` is provided, the value is inherited from the business profile settings of your account. 
    Accepted formats are 
      - `hh:mm tt` (12:30 PM)
      - `h:mm tt` (2:45 PM)
      - `HH:mm` (14:30)
      - `H:mm` (9:15)
      - `hh:mm:ss tt` (12:30:15 PM)
      - `h:mm:ss tt` (2:45:30 PM)
      - `HH:mm:ss` (14:30:10)
      - `H:mm:ss` (9:15:40)
      - `None` (Disabled, no time will be displayed)

    ---
    - {% arguments name="ImageInfo" /%}{% batch datatype="object" /%}
    - Options to customize the image form field.

      {% nestedtable %}
      - {% arguments name="Title" /%}{% batch datatype="string" /%}
      - Title of the image form field.
      ---
      - {% arguments name="Description" /%}{% batch datatype="string" /%}
      - Description of the image form field.
      ---
      - {% arguments name="AllowedFileExtensions" /%}{% batch datatype="string" /%}
      - Controls the image formats that can be uploaded to the image form field. The values are `.jpg` or `.jpeg,` `.svg,` `.png,` and `.bmp.`
      {% /nestedtable %}
    ---
    - {% arguments name="AttachmentInfo" /%}{% batch datatype="object" /%}
    - Options to customize the attachment form field.

      {% nestedtable %}
      - {% arguments name="Title" /%}{% batch datatype="string" /%}
      - Title of the attachment form field.
      ---
      - {% arguments name="Description" /%}{% batch datatype="string" /%}
      - Description of the attachment form field.
      ---
      - {% arguments name="AllowedFileTypes" /%}{% batch datatype="string" /%}
      - Controls the file formats that can be uploaded to the attachment form field. The values are `PDF,` `Document,` and `Image.`
      {% /nestedtable %}
    ---
    - {% arguments name="EditableDateFieldSettings" /%}{% batch datatype="object" /%}

    - Options to customize the editable date form field.
      {% nestedtable %}
      - {% arguments name="DateFormat" /%}{% batch datatype="string" /%}
      - BoldSign API supports a variety of date-time formats, including:

          - `MM/dd/yyyy`
          - `dd/MM/yyyy`
          - `dd-MMM-yyyy`
          - `MMM-dd-yyyy`
          - `MMM dd,yyyy`
          - `dd MMM,yyyy`
          - `yyyy,MMM dd`
          - `yyyy/MM/dd`
          - `dd-MM-yyyy`
          - `MM-dd-yyyy`
          - `yyyy-MM-dd`

          Format of the date to be displayed on the date signed form field. The default value is `MM/dd/yyyy`.
      ---
      - {% arguments name="MinDate" /%}{% batch datatype="string" /%}
      - The minimum date that can be selected. The string should be in date-time format.
        The default ISO standard `YYYY-MM-DDTHH:MM:SSZ`.
        ##### Example Format 
        minDate : `2024-01-01T00:00:00Z`

        The date-time should be passed in UTC timezone using Z (e.g., `2024-01-01T00:00:00Z`).

        If using a specific timezone, provide the UTC offset:
          - IST (UTC+5:30): `2024-01-01T00:00:00+05:30`
          - PST (UTC-8:00): `2024-01-01T00:00:00-08:00`

      ---
      - {% arguments name="MaxDate" /%}{% batch datatype="string" /%}
      - The maximum date that can be selected. The string should be in date-time format.
        The default ISO 8601 standard `YYYY-MM-DDTHH:MM:SSZ`.
        ##### Example Format 
        maxDate : `2025-12-31T23:59:59Z`

        Pass the date-time in UTC timezone using Z (e.g., `2025-12-31T23:59:59Z`).

        For specific timezones, provide the UTC offset:
          - EST (UTC-5:00): `2025-12-31T23:59:59-05:00`
          - CET (UTC+1:00): `2025-12-31T23:59:59+01:00`

      ---
      - {% arguments name="TimeFormat" /%}{% batch datatype="string" /%}
      - Format of the time to be displayed on the editable date form field. When `null` is provided, the value is set to `none`.
        Accepted formats are
        - `hh:mm tt` (12:30 PM)
        - `h:mm tt` (2:45 PM)
        - `HH:mm` (14:30)
        - `H:mm` (9:15)
        - `hh:mm:ss tt` (12:30:10 PM)
        - `h:mm:ss tt` (2:45:20 PM)
        - `HH:mm:ss` (14:30:20)
        - `H:mm:ss` (9:15:10)
        - `None` (Disabled, no time will be displayed)

      {% /nestedtable %}
    ---
    - {% arguments name="HyperLinkText" /%}{% batch datatype="string" /%}
    - Text to be displayed for the hyperlink.
    ---
    - {% arguments name="DataSyncTag" /%}{% batch datatype="string" /%}
    - The value that can be specified on two or more textbox form fields to sync them.
    ---
    - {% arguments name="DropDownOptions" /%}{% batch datatype="array" /%}
    - The values which have to be displayed on the dropdown form field. One or more values can be specified.
     ---
    - {% arguments name="TextAlign" /%}{% batch datatype="string" /%}
    - Determines the horizontal alignment of text for the textbox and label form fields and can be set to `Left`, `Center` or `Right`. The default of alignment of text is `Left`.
    ---
    - {% arguments name="TextDirection" /%}{% batch datatype="string" /%}
    - Determines the text direction of text for the textbox and label form fields and can be set to `LTR` or `RTL`. The default text direction is `LTR`.
     ---
    - {% arguments name="CharacterSpacing" /%}{% batch datatype="float" /%}
    - Determines the character spacing of text for the textbox and label form fields. It can be set as a floating-point value.

    ---

    - {% arguments name="FormulaFieldSettings" /%}{% batch datatype="object" /%}
    - Options to configure formula field.
      {% nestedtable %}

      - {% arguments name="FormulaExpression" /%}{% batch datatype="string" /%}
      - This property is used to specify the formula as a string define the calculation or expression for the formula field.

      ---

      - {% arguments name="DecimalPrecision" /%}{% batch datatype="integer" /%}
      - This property is used to determines the decimal rounding precision for the computed result.

      {% /nestedtable %}

    ---

    - {% arguments name="CollaborationSettings" /%}{% batch datatype="object" /%}
    - Options to configure collaboration settings for form field.
      {% nestedtable %}

      - {% arguments name="IsRequired" /%}{% batch datatype="Nullable boolean" /%}
      - This property is used to specify whether collaborative fields are mandatory for signers collaborating on the document.

      ---

      - {% arguments name="RequireSignerApproval" /%}{% batch datatype="Nullable boolean" /%}
      - This property is used to specify whether signers need to verify and approve the document after collaborators have made changes to the collaborative fields.

      ---

      - {% arguments name="RequireInitial" /%}{% batch datatype="Nullable boolean" /%}
      - This property is used to specify whether the collaborators must fill in their initials when editing collaborative fields.

      ---

      - {% arguments name="AllowedSigners" /%}{% batch datatype="String array" /%}
      - This property is used to specify the list of role indexes who are allowed to collaborate on editing this field.

      {% /nestedtable %} 

     ---

      - {% arguments name="ResizeOption" /%}{% batch datatype="enum" /%}
      - Defines how the Textbox form field resizes based on the entered text. The available values are `GrowHorizontally`, `GrowVertically`, `GrowBoth`, `FixedSize`, and `AutoResizeFont`.

    {% /nestedtable %}

  ---
  - {% arguments name="ExistingFormFields" /%}{% batch datatype="array" /%}
  - List of existing form fields in the document.
    {% nestedtable %}
    - {% arguments name="Index" /%}{% batch datatype="integer" /%}
    - Index of the existing form field.
    ---
    - {% arguments name="Id" /%}{% batch datatype="string" /%}
    - The ID of the existing form field.
    ---
    - {% arguments name="Value" /%}{% batch datatype="string" /%}
    - Value of the existing form field.

    ---

    - {% arguments name="IsReadOnly" /%}{% batch datatype="boolean" /%}
    - Decides whether this form field is readOnly or not.
    {% /nestedtable %}
  ---
  - {% arguments name="Language" /%}{% batch datatype="integer" /%}
  - Index of the language in which the document signing pages and emails for the signer should be rendered. The supported languages are `1-English,` `2-Spanish,` `3-German,` `4-French,` and `5-Romanian.` Note that 'locale' should now be used instead of 'language' as it has replaced the deprecated term. The default language is `1-English` .

  ---
  - {% arguments name="Locale" /%}{% batch datatype="string" /%}
  - Specify the language index for rendering document signing pages and emails for the signer, choosing from the supported locales such as `EN-English`, `NO-Norwegian`, `FR-French`, `DE-German`,`ES-Spanish`, `BG-Bulgarian`, `CS-Czech`, `DA-Danish`,`IT-Italian`, `NL-Dutch`, `PL-Polish`, `PT-Portuguese`,`RO-Romanian`, `RU-Russian`, `JA-Japanese`, `TH-Thai`, `ZH_CN-Simplified Chinese`, `Zh_TW-Traditional Chinese`, `Korean`, and `SV-Swedish`. The default locale language is `EN-English` .

  ---

  - {% arguments name="RecipientNotificationSettings" /%}{% batch datatype="object" /%}
  - Control email notifications to recipients by configuring the properties within `recipientNotificationSettings`.
    {% nestedtable %}

    - {% arguments name="signatureRequest" /%}{% batch datatype="boolean" /%}
    - Indicates whether the recipient should be notified when a document is sent.

    ---

    - {% arguments name="Declined" /%}{% batch datatype="boolean" /%}
    - Indicates whether the recipient should be notified when a document is declined.

    ---

    - {% arguments name="Revoked" /%}{% batch datatype="boolean" /%}
    - Indicates whether the recipient should be notified when a document is revoked.

    ---

    - {% arguments name="Signed" /%}{% batch datatype="boolean" /%}
    - Indicates whether the recipient should be notified when a document is signed by other recipient.

    ---

    - {% arguments name="Completed" /%}{% batch datatype="boolean" /%}
    - Indicates whether the recipient should be notified when the document is completed.

    ---

    - {% arguments name="Expired" /%}{% batch datatype="boolean" /%}
    - Indicates whether the recipient should be notified when a document expires.

    ---

    - {% arguments name="Reassigned" /%}{% batch datatype="boolean" /%}
    - Indicates whether the recipient should be notified when the document is reassigned.

    ---

    - {% arguments name="Deleted" /%}{% batch datatype="boolean" /%}
    - Indicates whether the recipient should be notified when a document is deleted.

    ---

    - {% arguments name="Reminders" /%}{% batch datatype="boolean" /%}
    - Indicates whether the recipient should receive reminders for pending signature requests.

    ---

    - {% arguments name="EditRecipient" /%}{% batch datatype="boolean" /%}
    - Indicates whether the recipient should be notified when there is a change in the recipient.

    ---

    - {% arguments name="EditDocument" /%}{% batch datatype="boolean" /%}
    - Indicates whether the recipient should be notified when a document is edited.

    {% /nestedtable %}

  ---

  - {% arguments name="EnableQes" /%}{% batch datatype="Nullable boolean" /%}
  - When set to true, the signer will be allowed to sign the document with a qualified electronic signature (QES). It can only be assigned to a single signer. When there are multiple signers in a document, the signer order option should be enabled to ensure only the last person in the document is enabled with QES, and the last signer order also should not have multiple signers.

  ---

  - {% arguments name="AuthenticationSettings" /%}{% batch datatype="object" /%}
  - Configure additional options for signers who are authenticated using Email OTP, SMS OTP, or Access Code. These settings allow you to control how often the signer must authenticate when accessing the document. And it applies only when the signer's `AuthenticationType` is set to `EmailOTP`, `SMSOTP`, or `AccessCode`. For `IdVerification`, use the `IdentityVerificationSettings` property instead.
    {% nestedtable %}

    - {% arguments name="AuthenticationFrequency" /%}{% batch datatype="string" /%}
    - Specifies how frequently the signer must complete authentication:
      - **EveryAccess**: The signer must authenticate every time they access the document, even after signing.
      - **UntilSignCompleted**: Authentication is required until the signer completes their signature. After signing, further authentication is not required.
      - **OncePerDocument**: The signer authenticates only once per document, regardless of how many times they access it.

    {% /nestedtable %}

  ---

  {% /nestedtable %}

---
- {% arguments name="BrandId" /%}{% batch datatype="string" /%}
- You can customize the logo, colors, and other elements of the signature request emails and document signing pages to match your company branding. The ID of the existing brand can be obtained from the branding API and from the web app.
---
- {% arguments name="Labels" /%}{% batch datatype="array" /%}
- Labels (tags) are added to the documents to categorize and filter them. One or more labels can be added.  Labels cannot contain whitespaces and must not exceed 255 characters.
---
- {% arguments name="DisableEmails" /%}{% batch datatype="boolean" /%}
- Disables the sending of document related emails to all the recipients. The default value is `false.`
---
- {% arguments name="DisableSMS" /%}{% batch datatype="boolean" /%}
- Disables the sending of document related SMS to all the recipients. The default value is `false`.
---
- {% arguments name="HideDocumentId" /%}{% batch datatype="boolean" /%}
- Decides whether the document ID should be hidden or not.
---
- {% arguments name="ReminderSettings" /%}{% batch datatype="boolean" /%}
- Options to customize the auto reminder settings.
  {% nestedtable %}
  - {% arguments name="EnableAutoReminder" /%}{% batch datatype="boolean" /%}
  - Enables or disables the auto reminder.
  ---
  - {% arguments name="ReminderDays" /%}{% batch datatype="integer" /%}
  - The number of days between each automatic reminder.
  ---
  - {% arguments name="ReminderCount" /%}{% batch datatype="integer" /%}
  - The number of times the auto reminder should be sent.
  {% /nestedtable %}
---
- {% arguments name="CC" /%}{% batch datatype="array" /%}
- Mail ID of the CC recipients. One or more CC recipients can be specified.
  {% nestedtable %}
  - {% arguments name="EmailAddress" /%}{% batch datatype="string" /%}
  - Mail ID of the CC recipients.
  {% /nestedtable %}
---
- {% arguments name="ExpiryDays" /%}{% batch datatype="integer" /%}
- The number of days after which the document expires. The default value is `60` days.
---
- {% arguments name="EnablePrintAndSign" /%}{% batch datatype="boolean" /%}
- Allows the signer to print the document, sign, and upload it. The default value is `false.`
---
- {% arguments name="EnableReassign" /%}{% batch datatype="boolean" /%}
- Allows the signer to reassign the signature request to another person. The default value is `true.`
---
- {% arguments name="EnableSigningOrder" /%}{% batch datatype="boolean" /%}
- Enables or disables the signing order. If this option is enabled, then the signers can only sign the document in the specified order and cannot sign in parallel. The default value is `false.`
---
- {% arguments name="DisableExpiryAlert" /%}{% batch datatype="boolean" /%}
- Disables the alert, which was shown one day before the expiry of the document.
---
- {% arguments name="DocumentInfo" /%}{% batch datatype="array" /%}
- Options to customize the information like title and description of the document for a particular signer.
  {% nestedtable %}
  - {% arguments name="Language" /%}{% batch datatype="integer" /%}
  - Language in which the document signing pages and emails for the signer should be rendered. The supported languages are `1-English,` `2-Spanish,` `3-German,` `4-French,` and `5-Romanian.` Note that 'locale' should now be used instead of 'language' as it has replaced the deprecated term. The default language is `1-English` .
  ---
  - {% arguments name="Title" /%}{% batch datatype="string" /%}
  - Title of the document.
  ---
  - {% arguments name="Description" /%}{% batch datatype="string" /%}
  - A message for the signer. You can include the instructions that the signer should know before signing the document.
  ---
  - {% arguments name="Locale" /%}{% batch datatype="string" /%}
  - Specify the language index for rendering document signing pages and emails for the signer, choosing from the supported locales such as `EN-English`, `NO-Norwegian`, `FR-French`, `DE-German`,`ES-Spanish`, `BG-Bulgarian`, `CS-Czech`, `DA-Danish`,`IT-Italian`, `NL-Dutch`, `PL-Polish`, `PT-Portuguese`,`RO-Romanian`, `RU-Russian`, `JA-Japanese`, `TH-Thai`, `ZH_CN-Simplified Chinese`, `Zh_TW-Traditional Chinese`, `Korean`, and `SV-Swedish`. The default locale language is `EN-English` .
  {% /nestedtable %}
---
- {% arguments name="OnBehalfOf" /%}{% batch datatype="string" /%}
- The email address of the user to create the templates on their behalf.
---
- {% arguments name="RoleRemovalIndices" /%}{% batch datatype="array" /%}
- Removes the roles present in the template with their indices given in this property.
---

- {% arguments name="DocumentDownloadOption" /%}{% batch datatype="enum" /%}
- This option allows you to configure how the uploaded files, especially multiple files, should be downloaded: either as a single combined document or as separate documents. The values are `Combined` and `Individually`. The default value is `Combined`. If the value is `null`, the setting configured in the business profile settings will be considered.

---

- {% arguments name="MetaData" /%}{% batch datatype="Dictionary" /%}
- Additional information about the document in the form of key-value pairs. Up to 50 key-value pairs can be added. The key is limited to 50 characters, and the value is limited to 500 characters.

---

- {% arguments name="RecipientNotificationSettings" /%}{% batch datatype="object" /%}
- Control email notifications to recipients or CC collectively by configuring properties within `recipientNotificationSettings`.
  {% nestedtable %}

  - {% arguments name="SignatureRequest" /%}{% batch datatype="boolean" /%}
  - Indicates whether the recipient or CC should be notified when a document is sent.

  ---

  - {% arguments name="Declined" /%}{% batch datatype="boolean" /%}
  - Indicates whether the recipient or CC should be notified when a document is declined.

  ---

  - {% arguments name="Revoked" /%}{% batch datatype="boolean" /%}
  - Indicates whether the recipient or CC should be notified when a document is revoked.

  ---

  - {% arguments name="Signed" /%}{% batch datatype="boolean" /%}
  - Indicates whether the recipient or CC should be notified when a document is signed by other recipient.

  ---

  - {% arguments name="Completed" /%}{% batch datatype="boolean" /%}
  - Indicates whether the recipient or CC should be notified when the document is completed.

  ---

  - {% arguments name="Expired" /%}{% batch datatype="boolean" /%}
  - Indicates whether the recipient or CC should be notified when a document expires.

  ---

  - {% arguments name="Reassigned" /%}{% batch datatype="boolean" /%}
  - Indicates whether the recipient or CC should be notified when the document is reassigned.

  ---

  - {% arguments name="Deleted" /%}{% batch datatype="boolean" /%}
  - Indicates whether the recipient or CC should be notified when a document is deleted.

  ---

  - {% arguments name="Reminders" /%}{% batch datatype="boolean" /%}
  - Indicates whether the recipient should receive reminders for pending signature requests.

  ---

  - {% arguments name="EditRecipient" /%}{% batch datatype="boolean" /%}
  - Indicates whether the recipient should be notified when there is a change in the recipient.

  ---

  - {% arguments name="EditDocument" /%}{% batch datatype="boolean" /%}
  - Indicates whether the recipient or CC should be notified when the document is edited.

  ---

  - {% arguments name="Viewed" /%}{% batch datatype="boolean" /%}
  - Indicates whether the CC should be notified when the document is viewed.

  {% /nestedtable %}
---

- {% arguments name="RemoveFormFields" /%}{% batch datatype="array" /%}
- The removeFormFields property in API allows you to exclude specific form fields from a document before sending it. You provide a string array with the IDs of the existing form fields you want to remove. One or more values can be specified.

---

- {% arguments name="EnableAuditTrailLocalization" /%}{% batch datatype="boolean" /%}
- Enable localization for audit trail based on the signer's language. If `null` is provided, the value will be inherited from the Business Profile settings. Only one additional language can be specified in the signer's languages besides English.

---

- {% arguments name="Files" /%}{% batch datatype="base64" /%}
- The files to be uploaded for sending signature request. `.pdf,` `.png,` `.jpg,` `.docx`, `.xlsx` and `.pptx` are supported file formats. The preferred file format is `.pdf`. You can upload up to 25 files. Each document may have a maximum of 1000 pages and must be no larger than 25 MB in size.

  For a single file with file name, the Base64 format should be: `[{ "base64": "data:application/{{fileType}};base64,{{content}}", "fileName": "{{fileName}}" }]`.

  For multiple files with file name, the format should be: `[{ "base64": "data:application/{{fileType}};base64,{{content1}}", "fileName": "{{fileName}}" }, {...}]`.

---

- {% arguments name="FileUrls" /%}{% batch datatype="array" /%}
- The URL of the file must be publicly accessible. `.pdf`, `.png`, `.jpg`, `.docx`, `.xlsx` and `.pptx` are supported file formats.The preferred file format is `.pdf`. You can upload up to 25 files. Each document may have a maximum of 1000 pages and must be no larger than 25 MB in size.

---

- {% arguments name="DownloadFileName" /%}{% batch datatype="string" /%}
- Defines the custom format for the file name of downloaded document files. You can combine your own file name elements with the following predefined dynamic variables:
  - `title`
  - `documentId`  
  - `signername`  
  - `signername_last`  
  - `signername_order#1`  
  - `sendername`  
  - `completeddate`  
  - `status` 

  The `#1` in `signername_order#1` serves as a placeholder and should be replaced with an actual value, such as `signername_order#3`, to represent a 3rd signer's name. 

  The maximum file name length is 250 characters. If the generated name exceeds this limit, it will be truncated to fit within the limit. This property is optional; if not provided, the default format configured in the business profile will be used.

---

- {% arguments name="AllowedSignatureTypes" /%}{% batch datatype="array" /%}
- Defines the signature input options available to the signer during the signing process. This property customizes the signature and initial field dialog by controlling which signature input methods are shown to the signer. The available signature types are: `Text`, `Draw`, and `Image`.

---

- {% arguments name="ScheduledSendTime" /%}{% batch datatype="long" /%}
- This property allows you to specify the date and time in Unix Timestamp format to schedule a document for sending at a future time. The scheduled time must be at least 30 minutes from the current time and must not exceed the document’s expiry date.

---
- {% arguments name="UseTextTags" /%}{% batch datatype="Boolean" /%}
- When enabled, it will convert all the tags defined in the document to BoldSign form fields. The default value is `false`.

---
- {% arguments name="TextTagDefinitions" /%}{% batch datatype="array" /%}
- This can be used for long text tag handling.
  {% nestedtable %}
  - {% arguments name="DefinitionId" /%}{% batch datatype="string" /%}
  - The definition id of the text tag.
  ---
  - {% arguments name="Type" /%}{% batch datatype="Type" /%}
  - The type of the form field.
  ---
  - {% arguments name="SignerIndex" /%}{% batch datatype="integer" /%}
  - The signer index of the form field.
  ---
  - {% arguments name="IsRequired" /%}{% batch datatype="boolean" /%}
  - When disabled, the signer is not required to fill out the specific form field. The default value is `true`.
  ---
  - {% arguments name="IsMasked" /%}{% batch datatype="Nullable boolean" /%}
  - Decides whether this form field should be masked so that its value is hidden from other signers present in the document.
  ---
  - {% arguments name="PlaceHolder" /%}{% batch datatype="string" /%}
  - The placeholder of the form field.
  ---
  - {% arguments name="TabIndex" /%}{% batch datatype="Nullable int" /%}
  - Assign tab index to control the flow of field focus while using `TAB` key navigation. Default to `null`, which denotes it will follow regular flow. The accepted range starts from `-1` to a valid `integer`.
  ---
  - {% arguments name="FieldId" /%}{% batch datatype="string" /%}
  - The field id of the form field.
  ---
  - {% arguments name="Font" /%}{% batch datatype="object" /%}
  - The font of the form field.
    {% nestedtable %}
    - {% arguments name="Name" /%}{% batch datatype="FontFamily" /%}
    - Font family. The values are `Courier`, ` Helvetica`, and ` TimesNewRoman`.
    ---
    - {% arguments name="Color" /%}{% batch datatype="string" /%}
    - Color of the font. The value should be hex color code. Example - `#035efc`.
    ---
    - {% arguments name="Size" /%}{% batch datatype="Nullable float" /%}
    - Size of the font.
    ---
    - {% arguments name="Style" /%}{% batch datatype="FontStyle" /%}
    - Style of the font. The values are `Regular`, `Bold`, `Italic`, and `Underline`.
    ---
    - {% arguments name="LineHeight" /%}{% batch datatype="Nullable int" /%}
    - Height of a line in the text.

    ---

    - {% arguments name="IsBoldFont" /%}{% batch datatype="boolean" /%}
    - Decides whether the font should be in bold or not.

    ---

    - {% arguments name="IsItalicFont" /%}{% batch datatype="boolean" /%}
    - Decides whether the font should be in italic or not.

    ---

    - {% arguments name="IsUnderLineFont" /%}{% batch datatype="boolean" /%}
    - Decides whether the font should be underlined or not.
    {% /nestedtable %}
  ---
  - {% arguments name="Validation" /%}{% batch datatype="object" /%}
  - When we select the type as `TextBox`, the validation of the form field is required.
    {% nestedtable %}
    - {% arguments name="Type" /%}{% batch datatype="string" /%}
    - The validation type of the text box form field. The available values are `None`, `NumbersOnly`, `EmailAddress`, `Currency`, and `CustomRegex`. The default value is `None`.
    ---
    - {% arguments name="Regex" /%}{% batch datatype="string" /%}
    - The custom regex of the text box form filed. When we set the ValidationType to `CustomRegex`, it will be required.

    ---

    - {% arguments name="RegexMessage" /%}{% batch datatype="string" /%}
    - Description for regex validation. This message is displayed when the signer enters an invalid regex format value in the text box field.
    {% /nestedtable %}
  ---
  - {% arguments name="Size" /%}{% batch datatype="object" /%}
  - This can be used to specify the form field's height and width.
    {% nestedtable %}

    - {% arguments name="Width" /%}{% batch datatype="float" /%}
    - The width of the form field.

    ---

    - {% arguments name="Height" /%}{% batch datatype="float" /%}
    - The height of the form field.

    {% /nestedtable %}

  ---

  - {% arguments name="DateFormat" /%}{% batch datatype="string" /%}
  - Format of the date to be displayed on the date signed form field. The default value is `MM/dd/yyyy`. When `null` is provided, the value is inherited from the business profile settings of your account. Accepted formats are `MM/dd/yyyy` (02/08/2024), `dd/MM/yyyy` (08/02/2024), `dd-MMM-yyyy` (08-Feb-2024), `MMM-dd-yyyy` (Feb-08-2024), `MMM dd, yyyy` (Feb 08, 2024), `dd MMM, yyyy` (08 Feb, 2024), `yyyy, MMM dd` (2024, Feb 08), `yyyy/MM/dd` (2024/02/08), `dd-MM-yyyy` (08-02-2024), `MM-dd-yyyy` (02-08-2024), `yyyy-MM-dd` (2024-02-08).

  ---

  - {% arguments name="TimeFormat" /%}{% batch datatype="string" /%}
  - Format of the time to be displayed on the date signed form field. When `null` is provided, the value is inherited from the business profile settings of your account. Accepted formats are `hh:mm tt` (12:30 PM), `h:mm tt` (2:45 PM), `HH:mm` (14:30), `H:mm` (9:15), `hh:mm:ss tt` (12:30:15 PM), `h:mm:ss tt` (2:45:30 PM), `HH:mm:ss` (14:30:10), `H:mm:ss` (9:15:40), `None` (Disabled, no time will be displayed).

  ---

  - {% arguments name="RadioGroupName" /%}{% batch datatype="string" /%}
  - The form field's group name, which is required when we set the type as `RadioButton`.
  ---
  - {% arguments name="Value" /%}{% batch datatype="string" /%}
  - The value of the form field.
  ---
  - {% arguments name="DropDownOptions" /%}{% batch datatype="array" /%}
  - The options of the dropdown form field.
  ---
  - {% arguments name="OffSet" /%}{% batch datatype="object" /%}
  - Specifies the offset positioning for the text tag, allowing adjustments to its location relative to the computed position. The computed value after value must remain within the page dimensions.
    {% nestedtable %}
    - {% arguments name="OffSetX" /%}{% batch datatype="double" /%}
    -  Adjusts the text tag's position horizontally (left or right).

    ---

    - {% arguments name="OffSetY" /%}{% batch datatype="double" /%}
    - Adjusts the text tag's position vertically (top or bottom).
   
    {% /nestedtable %}
    ---
    - {% arguments name="FormulaFieldSettings" /%}{% batch datatype="object" /%}
    - Options to configure formula field.
      {% nestedtable %}
      - {% arguments name="FormulaExpression" /%}{% batch datatype="string" /%}
      - This property is used to specify the formula as a string define the calculation or expression for the formula field.
      ---
      - {% arguments name="DecimalPrecision" /%}{% batch datatype="integer" /%}
      - This property is used to determines the decimal rounding precision for the computed result.
      {% /nestedtable %}
  ---
  - {% arguments name="Label " /%}{% batch datatype="string" /%} 
  - The label used to represent the value for a radio button. Also, can be used to prefill a radio button.
  ---
  - {% arguments name="ResizeOption" /%}{% batch datatype="enum" /%}
  - Defines how the Textbox form field resizes based on the entered text. The available values are `GrowHorizontally`, `GrowVertically`, `GrowBoth`, `FixedSize`, and `AutoResizeFont`.

  ---

  - {% arguments name="DataSyncTag" /%}{% batch datatype="string" /%} 
  - The value that can be specified on two or more textbox fields to sync them.

  ---

  - {% arguments name="TextAlign" /%}{% batch datatype="string" /%} 
  - Determines the horizontal alignment of text for the textbox and label form fields, and can be set to `Left`, `Center` or `Right`. The default of alignment of text is `Left`.

  ---

  - {% arguments name="TextDirection" /%}{% batch datatype="string" /%} 
  - Determines the text direction of text for the textbox and label form fields, and can be set to `LTR` or `RTL`. The default text direction is `LTR`.

  ---

  - {% arguments name="CharacterSpacing" /%}{% batch datatype="float" /%} 
  - Determines the character spacing of text for the textbox and label form fields. It can be set as a floating-point value.

  ---

  - {% arguments name="CharacterLimit" /%}{% batch datatype="integer" /%} 
  - Limits the number of characters in the text. The character limit value must be greater than zero.
  {% /nestedtable %}

---

- {% arguments name="EnableAllowSignEverywhere" /%}{% batch datatype="Nullable boolean" /%}
- This property allows you to define whether all signature form fields on the signing page should use the same signature value applied by the signer. If this property is not specified, the signature values will be inherited from the business profile configuration.

---

- {% arguments name="GroupSignerSettings" /%}{% batch datatype="object" /%}
- Configures whether contact groups can be used as signers for this document, and restricts which contact groups are allowed.
  {% nestedtable %}

  - {% arguments name="Enabled" /%}{% batch datatype="boolean" /%}
  - When set to `true`, contact groups can be used as signers.

  ---

  - {% arguments name="AllowedDirectories" /%}{% batch datatype="array" /%}
  - The list of allowed directory values. Only contact groups assigned to one of these directories can be used as signers.

  {% /nestedtable %}

{% /nestedtable %}

**Notes:**

- When merging multiple templates without enabling a signing order, templates with the same role, email, and name are combined into a single role, and the signing document is then sent to that consolidated role.

- When merging multiple templates with a signing order enabled, templates with the same role, email, name, and order are merged into a single role, and the signing document is sent accordingly.

- When merging multiple templates and encountering fields with identical names and data types in both templates, if these fields are assigned to the same signer, updating the value of one of these fields using the `existingFormFields` property will automatically reflect the change in both corresponding fields.

- Please note that you must use either the `fileUrls` or `files` parameter in a request, both cannot be used together.
  
- For more details on OTP behavior, validity, and resend limits when using Email or SMS OTP for signing, please refer to this article: [OTP limitation and Restriction](https://support.boldsign.com/kb/article/19836/otp-limitations-and-restrictions-in-boldsign)

## Example response
***200 Success***
```json
{
  "documentId": "755195d8-xxxx-xxxx-xxxx-88ff77d35419"
}
```
