Edit template
put/v1/template/editThe Edit Template API allows users to modify the properties of an existing template and draft template. This API facilitates updates to various properties such as the title, description, document message, document title, roles, and form fields associated with the template. Notably, it does not permit alterations to the files linked to the template.
Partial update
Users can execute partial updates to a template by specifying only the fields they intend to modify. The API will solely modify the provided fields, leaving the remainder unchanged. However, it is limited to top-level properties. When dealing with nested properties within top-level objects, users must provide the complete object for modification.
When you need to update a nested property, you will need to use the template properties API which will retrieve all the properties of the given template. Now, you can modify the required properties within the nested object and send the updated template object to the edit template API.
Read more about template properties APICode snippet
In the below example request, we are updating the title of the template and a role associated with the template along with the form fields.
curl --location --request PUT 'https://api.boldsign.com/v1/template/edit?templateId=5c305ebe-xxx-xxxx-xxxx-5e285a4f8b0a' \ --header 'Content-Type: application/json' \ --header 'X-API-KEY: {API-KEY}' \ --data-raw '{ "title": "A new title for template", "EnableSigningOrder": false, "roles": [ { "name": "Manager", "index": 1, "defaultSignerName": "Alex", "defaultSignerEmail": "alexgayle@cubeflakes.com", "signerOrder": 1, "signerType": "Signer", "formFields": [ { "id": "Signature1", "type": "Signature", "isRequired": true, "bounds": { "x": 625.0, "y": 293.0, "width": 124.0, "height": 32.0 }, "pageNumber": 1 } ], "enableEditRecipients": true, "enableDeleteRecipients": true } ] }'
var apiClient = new ApiClient("https://api.boldsign.com", "{API-KEY}"); var templateClient = new TemplateClient(apiClient); var formFields = new List<FormField> { new FormField( id: "Sign", type: FieldType.Signature, pageNumber: 1, isRequired: true, bounds: new Rectangle(x: 150, y: 150, width: 200, height: 30)), }; var templateRoles = new List<TemplateRole> { new TemplateRole() { Name = "Manager", Index = 1, DefaultSignerName = "Alex", DefaultSignerEmail = "alexgayle@cubeflakes.com", SignerOrder = 1, SignerType = SignerType.Signer, FormFields = formFields, AllowRoleEdit = true, AllowRoleDelete = true, }, }; var editTemplateRequest = new EditTemplateRequest("5c305ebe-xxx-xxxx-xxxx-5e285a4f8b0a") { Title = "A new title for template", EnableSigningOrder = false, Roles = templateRoles, }; await templateClient.EditTemplateAsync(editTemplateRequest);
import boldsign configuration = boldsign.Configuration( api_key = "YOUR_API_KEY" ) with boldsign.ApiClient(configuration) as api_client: template_api = boldsign.TemplateApi(api_client) form_fields = [ boldsign.FormField( fieldType="Signature", page_number=1, bounds=boldsign.Rectangle( x=50, y=100, width=100, height=60 ) ) ] role = boldsign.TemplateRole( index=1, name="Manager", defaultSignerName="Alex Gayle", defaultSignerEmail="alexgayle@boldsign.dev", signerOrder=1, signerType="Signer", formFields=form_fields ) template_id = "YOUR_TEMPLATE_ID" edit_template_request = boldsign.EditTemplateRequest( title="A new title for template", enableSigningOrder=False, roles=role ) edit_template_response = template_api.edit_template(template_id, edit_template_request)
const axios = require('axios'); const url = 'https://api.boldsign.com/v1/template/edit?templateId=5c305ebe-xxx-xxxx-xxxx-5e285a4f8b0a'; const headers = { 'Content-Type': 'application/json', 'X-API-KEY': '{API-KEY}' // Replace {API-KEY} with your actual API key }; const data = { "title": "A new title for template", "EnableSigningOrder": false, "roles": [ { "name": "Manager", "index": 1, "defaultSignerName": "Alex", "defaultSignerEmail": "alexgayle@cubeflakes.com", "signerOrder": 1, "signerType": "Signer", "formFields": [ { "id": "Signature1", "type": "Signature", "isRequired": true, "bounds": { "x": 625.0, "y": 293.0, "width": 124.0, "height": 32.0 }, "pageNumber": 1 } ], "enableEditRecipients": true, "enableDeleteRecipients": true } ] }; axios.put(url, data, { headers: headers }) .then(response => { console.log(response.status); console.log(response.data); }) .catch(error => { console.error(error); });
<?php require 'vendor/autoload.php'; // Include Guzzle HTTP library use GuzzleHttp\Client; $url = 'https://api.boldsign.com/v1/template/edit?templateId=5c305ebe-xxx-xxxx-xxxx-5e285a4f8b0a'; $headers = [ 'Content-Type' => 'application/json', 'X-API-KEY' => '{API-KEY}' // Replace {API-KEY} with your actual API key ]; $data = [ "title" => "A new title for template", "EnableSigningOrder" => false, "roles" => [ [ "name" => "Manager", "index" => 1, "defaultSignerName" => "Alex", "defaultSignerEmail" => "alexgayle@cubeflakes.com", "signerOrder" => 1, "signerType" => "Signer", "formFields" => [ [ "id" => "Signature1", "type" => "Signature", "isRequired" => true, "bounds" => [ "x" => 625.0, "y" => 293.0, "width" => 124.0, "height" => 32.0 ], "pageNumber" => 1 ] ], "enableEditRecipients" => true, "enableDeleteRecipients" => true ] ] ]; $client = new Client(); try { $response = $client->request('PUT', $url, [ 'headers' => $headers, 'json' => $data ]); $statusCode = $response->getStatusCode(); $responseData = $response->getBody()->getContents(); echo 'HTTP Status: ' . $statusCode . "\n"; echo 'Response: ' . $responseData . "\n"; } catch (Exception $e) { echo 'Error: ' . $e->getMessage() . "\n"; } ?>
Query Parameters
templateIdstringRequired | The unique identifier of the template to update. |
Request body
Titlestring | The title of the template. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Descriptionstring | The description of the template. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DocumentTitlestring | This is the name of the document that will be displayed in the BoldSign user interface as well as in the signature request email. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DocumentMessagestring | The message that will be seen by all recipients. You can include any instructions related to this document that the signer should be aware of before signing. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Rolesarray | 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,
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AllowNewFilesboolean | When set to true, the sender can add new files while using this template to send signature requests. If set to false, the sender will not be able to add new files. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AllowModifyFilesboolean | When set to true, the sender can replace or delete existing files while using this template to send signature requests. If set to false, the sender will not have the ability to replace or delete files. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CCarray | You can add anyone who needs to receive a copy of the signed document by adding their email address. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BrandIdstring | You can customize the branding of signature request emails and document signing pages with your own colors, logos, and other elements. The brand id can be obtained from both the branding API and the web app branding page. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AllowMessageEditingboolean | When disabled, you cannot change the message while creating a document with this template. The default value is true . | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AllowNewRolesboolean | When disabled, you cannot add additional signers to the document. The default value is true . | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EnableReassignboolean | When disabled, the reassign option is not available after sending the document out of signature. The default value is true . | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EnablePrintAndSignboolean | When enabled, the document can be printed and signed offline. The default value is false . | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EnableSigningOrderboolean | When enabled, signers can only sign the document in the order specified. Furthermore, the next signer will be notified when the previous signer has signed the document. The default value is false . | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DocumentInfoarray | This is used to specify the title and description of the document in the various supported languages.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
UseTextTagsboolean | When enabled, it will convert all the tags defined in the document to BoldSign form fields. The default value is false . | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
TextTagDefinitionsarray | This can be used for the long text tag handling.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
autoDetectFieldsboolean | When enabled, it will convert all the fillable form fields in the document to BoldSign form fields. BoldSign supports Textbox, Checkbox, Radio button, and Signature form fields. Other fields will not be detected as of now. The default value is false . | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
labelsstring[ ] | The labels (Tags) that will be assigned to the document when a document is created using this template which can be used to categorize and filter the documents. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
formGroupsarray | Manages the rules and configuration of grouped form fields.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
templateLabelsstring[ ] | The template labels (Tags) are added to the template to categorize and filter the documents. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
onBehalfOfstring | The email address of the user that was used to create the template on their behalf. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
recipientNotificationSettingsobject | Control email notifications to recipients or CC collectively by configuring properties within
|
Example response
204 No Content