TemplatesApi
All URIs are relative to https://api.esignlaunchpad.com
| Method | HTTP request | Description |
|---|---|---|
| abortTemplateUpload | DELETE /api/v1/templates//uploads/ | Abort a template upload session |
| addTemplateRole | POST /api/v1/templates//roles | Add a role to a template |
| bulkAddTemplateAnnotations | POST /api/v1/templates//documents//annotations/bulk | Bulk add annotations |
| bulkDeleteTemplates | POST /api/v1/templates/bulk-delete | Bulk delete templates |
| commitTemplateUpload | POST /api/v1/templates//uploads//commit | Commit upload |
| createPackageFromTemplate | POST /api/v1/templates//use | Create a package from a template |
| createTemplate | POST /api/v1/templates | Create a new template |
| deleteTemplate | DELETE /api/v1/templates/ | Delete a template |
| detectTemplateDocumentTags | POST /api/v1/templates//documents//detect-tags | Detect document tags |
| getTemplate | GET /api/v1/templates/ | Get a template by ID |
| getTemplateDetectedTags | GET /api/v1/templates//documents//detected-tags | Get stored detected tags |
| getTemplateDocumentRemovalImpact | GET /api/v1/templates//documents//removal-impact | Preview document removal impact |
| getTemplateUploadStatus | GET /api/v1/templates//uploads/ | Get upload status |
| initiateTemplateUpload | POST /api/v1/templates//uploads | Initiate document upload |
| listTemplateAnnotations | GET /api/v1/templates//annotations | List template annotations |
| listTemplateDocuments | GET /api/v1/templates//documents | List documents in a template |
| listTemplateRoles | GET /api/v1/templates//roles | List roles in a template |
| listTemplates | GET /api/v1/templates | List templates |
| removeTemplateAnnotation | DELETE /api/v1/templates//annotations/ | Remove an annotation from a template |
| removeTemplateDocument | DELETE /api/v1/templates//documents/ | Remove a document from a template |
| removeTemplateRole | DELETE /api/v1/templates//roles/ | Remove a role from a template |
| reorderTemplateRoles | PUT /api/v1/templates//roles/reorder | Reorder template roles |
| resetTemplateConfiguration | POST /api/v1/templates//reset | Reset template configuration |
| retryTemplateDocumentProcessing | POST /api/v1/templates//documents//retry | Retry document processing |
| stageTemplateBlock | PUT /api/v1/templates//uploads//blocks/ | Stage upload block |
| updateTemplate | PUT /api/v1/templates/ | Update a template |
| updateTemplateAnnotation | PUT /api/v1/templates//annotations/ | Update an annotation |
| updateTemplateRole | PUT /api/v1/templates//roles/ | Update a template role |
abortTemplateUpload
abortTemplateUpload(id, sessionGuid)
Abort a template upload session
Cancels an in-progress upload session and cleans up any staged blocks from storage.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| sessionGuid | UUID | The upload session GUID. | [default to null] |
Return type
null (empty response body)
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
addTemplateRole
TemplateRoleApiResponse addTemplateRole(id, AddTemplateRoleApiRequest)
Add a role to a template
Adds a named role (signer slot) to the template. Roles define abstract participants such as \"Buyer\" or \"Witness\" and specify signer type, routing order, default authentication method, required authentication methods, payment amount, and KBA attempt limits. When the template is used to create a package, each role is mapped to a concrete signer. Annotations are then placed on roles rather than on specific signers, so the same template can be reused with different people each time. Role names must be unique within a template.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| AddTemplateRoleApiRequest | AddTemplateRoleApiRequest | Cancellation token. |
Return type
Authorization
HTTP request headers
- Content-Type: application/json, text/json, application/*+json
- Accept: application/json
bulkAddTemplateAnnotations
List bulkAddTemplateAnnotations(id, documentId, BulkAddAnnotationsApiRequest)
Bulk add annotations
Adds multiple annotations to a template document in a single request. Maximum 500 per request. Position (X, Y) and dimensions (Width, Height) are in PDF points (1pt = 1/72 inch). A US Letter page is 612 wide x 792 tall; A4 is 595 x 842. Origin is the top-left of the page: X grows right, Y grows down. See the AddAnnotationApiItem schema for typical Width/Height ranges per annotation type.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| documentId | UUID | The document GUID. | [default to null] |
| BulkAddAnnotationsApiRequest | BulkAddAnnotationsApiRequest | Cancellation token. |
Return type
Authorization
HTTP request headers
- Content-Type: application/json, text/json, application/*+json
- Accept: application/json
bulkDeleteTemplates
BulkDeleteApiResponse bulkDeleteTemplates(BulkDeleteApiRequest)
Bulk delete templates
Deletes multiple templates in a single operation. Maximum 50 items per request.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| BulkDeleteApiRequest | BulkDeleteApiRequest | Cancellation token. |
Return type
Authorization
HTTP request headers
- Content-Type: application/json, text/json, application/*+json
- Accept: application/json
commitTemplateUpload
UploadCommitApiResponse commitTemplateUpload(id, sessionGuid, CommitUploadApiRequest)
Commit upload
Finalizes a chunked upload session by committing all staged blocks into a template document.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| sessionGuid | UUID | The upload session GUID. | [default to null] |
| CommitUploadApiRequest | CommitUploadApiRequest | Cancellation token. | [optional] |
Return type
Authorization
HTTP request headers
- Content-Type: application/json, text/json, application/*+json
- Accept: application/json
createPackageFromTemplate
PackageFromTemplateApiResponse createPackageFromTemplate(id, CreatePackageFromTemplateApiRequest)
Create a package from a template
Instantiates a new signing package from this template by mapping each template role to a concrete signer. The template's documents are cloned into the new package, and all annotations placed on roles are transferred to the corresponding signers. The `RoleMappings` array must include an entry for every role defined in the template, providing the signer's name, email, and optionally phone, access code, and client user ID (for embedded signing). If any mapping includes a `ClientUserId`, the embedded signing feature must be available on the tenant's subscription. The returned `PackageId` can be used with the packages API to send, track, and manage the signing ceremony.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| CreatePackageFromTemplateApiRequest | CreatePackageFromTemplateApiRequest | Cancellation token. |
Return type
PackageFromTemplateApiResponse
Authorization
HTTP request headers
- Content-Type: application/json, text/json, application/*+json
- Accept: application/json
createTemplate
TemplateApiResponse createTemplate(CreateTemplateApiRequest)
Create a new template
Creates a new, empty template with the specified name and optional email/payment defaults. The template starts in an inactive state with no documents or roles. After creation, add documents via the chunked upload endpoints, define roles via `POST /templates/{id}/roles`, and place annotations via the bulk annotation endpoint before activating the template.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| CreateTemplateApiRequest | CreateTemplateApiRequest | Cancellation token. |
Return type
Authorization
HTTP request headers
- Content-Type: application/json, text/json, application/*+json
- Accept: application/json
deleteTemplate
deleteTemplate(id)
Delete a template
Permanently deletes a template and all its associated roles, documents, and annotations. This action cannot be undone. Any packages previously created from this template are not affected.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
Return type
null (empty response body)
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
detectTemplateDocumentTags
DetectedTagsApiResponse detectTemplateDocumentTags(id, documentId, DetectTagsApiRequest)
Detect document tags
Scans a template document for text tags and returns their positions, types, and signer assignments.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| documentId | UUID | The document GUID. | [default to null] |
| DetectTagsApiRequest | DetectTagsApiRequest | Cancellation token. | [optional] |
Return type
Authorization
HTTP request headers
- Content-Type: application/json, text/json, application/*+json
- Accept: application/json
getTemplate
TemplateApiResponse getTemplate(id)
Get a template by ID
Returns the full metadata for a single template, including document count, role count, usage statistics, and payment defaults. Does not include the nested roles, documents, or annotations; use the respective sub-resource endpoints to retrieve those.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
Return type
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
getTemplateDetectedTags
DetectedTagsApiResponse getTemplateDetectedTags(id, documentId)
Get stored detected tags
Returns previously detected tags for a template document that were stored during async processing.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| documentId | UUID | The document GUID. | [default to null] |
Return type
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
getTemplateDocumentRemovalImpact
TemplateDocumentRemovalImpactApiResponse getTemplateDocumentRemovalImpact(id, documentId)
Preview document removal impact
Returns roles that would become orphaned if the specified document were removed from the template.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| documentId | UUID | The document GUID. | [default to null] |
Return type
TemplateDocumentRemovalImpactApiResponse
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
getTemplateUploadStatus
UploadStatusApiResponse getTemplateUploadStatus(id, sessionGuid)
Get upload status
Returns the current status of a template upload session, including blocks committed and completion state.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| sessionGuid | UUID | The upload session GUID. | [default to null] |
Return type
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
initiateTemplateUpload
UploadSessionApiResponse initiateTemplateUpload(id, InitiateUploadApiRequest)
Initiate document upload
Creates a chunked upload session for adding a document to a template.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| InitiateUploadApiRequest | InitiateUploadApiRequest | Cancellation token. |
Return type
Authorization
HTTP request headers
- Content-Type: application/json, text/json, application/*+json
- Accept: application/json
listTemplateAnnotations
List listTemplateAnnotations(id, documentId)
List template annotations
Returns all annotations in a template, optionally filtered by document.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| documentId | UUID | Optional document GUID to filter annotations. | [optional] [default to null] |
Return type
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
listTemplateDocuments
List listTemplateDocuments(id)
List documents in a template
Returns all documents attached to the template, including processing status, page count, display order, file size, and the number of annotations placed on each document.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
Return type
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
listTemplateRoles
List listTemplateRoles(id)
List roles in a template
Returns all roles defined in the template, including each role's signer type, routing order, authentication settings, payment configuration, and the number of annotations assigned to it.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
Return type
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
listTemplates
TemplateListApiResponse listTemplates(page, pageSize, activeOnly, search, createdByUserId, includeShared, sortBy, descending, externalReferenceId, updatedSince)
List templates
Returns a paginated list of templates belonging to the tenant. Results can be filtered by active status and searched by name. Page size is clamped to a maximum of 100 items per page.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| page | Integer | Page number for pagination. | [optional] [default to null] |
| pageSize | Integer | Number of items per page. | [optional] [default to null] |
| activeOnly | Boolean | If true, returns only active templates. | [optional] [default to null] |
| search | String | Optional search term to filter templates. | [optional] [default to null] |
| createdByUserId | Long | Optional filter to return only templates created by this user. | [optional] [default to null] |
| includeShared | Boolean | When true and createdByUserId is set, also includes shared templates. | [optional] [default to null] |
| sortBy | String | [optional] [default to null] | |
| descending | Boolean | [optional] [default to null] | |
| externalReferenceId | String | [optional] [default to null] | |
| updatedSince | Date | [optional] [default to null] |
Return type
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
removeTemplateAnnotation
removeTemplateAnnotation(id, annotationId)
Remove an annotation from a template
Permanently deletes a single annotation from the template. The annotation is identified by its GUID and is removed regardless of which document or role it belongs to.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| annotationId | UUID | The annotation GUID. | [default to null] |
Return type
null (empty response body)
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
removeTemplateDocument
removeTemplateDocument(id, documentId)
Remove a document from a template
Permanently removes a document and all annotations placed on it from the template. Use the removal-impact endpoint first to check whether any roles would become orphaned (i.e., have no remaining annotations on any document).
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| documentId | UUID | The document GUID. | [default to null] |
Return type
null (empty response body)
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
removeTemplateRole
removeTemplateRole(id, roleName)
Remove a role from a template
Deletes a role and all annotations assigned to it from the template. This operation is irreversible. Any annotations placed on the role's signer slot across all template documents are also removed.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| roleName | String | The name of the role to remove. | [default to null] |
Return type
null (empty response body)
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
reorderTemplateRoles
ReorderRolesApiResponse reorderTemplateRoles(id, ReorderRolesApiRequest)
Reorder template roles
Batch update of routing orders for roles in a template.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| ReorderRolesApiRequest | ReorderRolesApiRequest | Cancellation token. |
Return type
Authorization
HTTP request headers
- Content-Type: application/json, text/json, application/*+json
- Accept: application/json
resetTemplateConfiguration
TemplateApiResponse resetTemplateConfiguration(id)
Reset template configuration
Removes all roles and annotations and sets IsActive to false.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
Return type
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
retryTemplateDocumentProcessing
TemplateDocumentApiResponse retryTemplateDocumentProcessing(id, documentId)
Retry document processing
Resets a failed document to Pending status and re-publishes it to Service Bus for reprocessing.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| documentId | UUID | The document GUID. | [default to null] |
Return type
Authorization
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
stageTemplateBlock
UploadBlockApiResponse stageTemplateBlock(id, sessionGuid, blockIndex, body)
Stage upload block
Uploads a single block (chunk) of data to an active template upload session.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| sessionGuid | UUID | The upload session GUID. | [default to null] |
| blockIndex | Integer | Zero-based index of the block being staged. | [default to null] |
| body | File | Raw binary payload for the upload block. |
Return type
Authorization
HTTP request headers
- Content-Type: application/octet-stream
- Accept: application/json
updateTemplate
TemplateApiResponse updateTemplate(id, UpdateTemplateApiRequest)
Update a template
Updates top-level template properties such as name, description, email defaults, signing order enforcement, active status, and payment defaults. Only the fields provided in the request body are modified; omitted fields retain their current values.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| UpdateTemplateApiRequest | UpdateTemplateApiRequest | Cancellation token. |
Return type
Authorization
HTTP request headers
- Content-Type: application/json, text/json, application/*+json
- Accept: application/json
updateTemplateAnnotation
TemplateAnnotationApiResponse updateTemplateAnnotation(id, annotationId, UpdateAnnotationApiItem)
Update an annotation
Updates an annotation's position, size, role assignment, and other properties.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| annotationId | UUID | The annotation GUID. | [default to null] |
| UpdateAnnotationApiItem | UpdateAnnotationApiItem | Cancellation token. |
Return type
Authorization
HTTP request headers
- Content-Type: application/json, text/json, application/*+json
- Accept: application/json
updateTemplateRole
TemplateRoleApiResponse updateTemplateRole(id, roleName, UpdateTemplateRoleApiRequest)
Update a template role
Updates a role's signer type, authentication settings, payment configuration, and KBA limits. The role name itself cannot be changed (it is the role's identity). Annotations already assigned to this role are not modified. Only the fields provided in the request body are updated; omitted fields retain their current values.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | UUID | The template GUID. | [default to null] |
| roleName | String | The name of the role to update. | [default to null] |
| UpdateTemplateRoleApiRequest | UpdateTemplateRoleApiRequest | Cancellation token. |
Return type
Authorization
HTTP request headers
- Content-Type: application/json, text/json, application/*+json
- Accept: application/json