caps.manager.templates and caps.manager.flows in your session payload to determine which operations are available to your account before calling these routes.
Templates
List templates
Returns templates for the locations in your scope. Managers can optionally filter by location. Admins receive all templates globally (capped at 500). Results are ordered byid ascending.
templates at "read" or above, or admin.
Numeric location ID to filter results. Managers specifying a location outside their scope receive
403.Response
Array of
signing.templates rows."managed" for managers scoped to their accessible locations, or "global" for admins.Error responses
| Status | Condition |
|---|---|
400 | locationId is not a valid numeric string. |
403 | templates tier is "none", or the specified locationId is outside your scope. |
Get one template
Returns a singlesigning.templates row. The template’s location must be in your scope.
templates at "read" or above, or admin.
Numeric template ID.
Response
Thesigning.templates row for the requested template.
Error responses
| Status | Condition |
|---|---|
400 | templateId is not a valid numeric string. |
403 | Insufficient tier, or the template’s location is outside your scope. |
404 | Template not found. |
Update a template
Partially updates a template’sname and/or active flag. You must supply at least one field. The template’s location must be in your scope.
templates at "write" or above, or admin.
Numeric template ID.
New display name for the template. Minimum 1 character, maximum 500 characters.
Set to
false to deactivate the template (prevents it from being selected when creating new signing packages) or true to re-activate it.Response
The updated
signing.templates row.Error responses
| Status | Condition |
|---|---|
400 | Invalid templateId, malformed body, or neither name nor active was provided. |
403 | Insufficient tier, or the template’s location is outside your scope. |
404 | Template not found. |
Duplicate a template
Creates a copy of an existing template at the same location. The new template receives aname of "Copy of <original name>" and is otherwise an exact clone of the source row (pages count, signer numbers, explanation IDs, processing flags, tag, etc.). The completedSigningsCount on the copy is reset to 0.
templates at "write" or above, or admin.
Numeric ID of the template to clone.
Response
The newly created
signing.templates row representing the copy. Its id and createdAt/updatedAt are new; its locationId matches the source.Error responses
| Status | Condition |
|---|---|
400 | templateId is not a valid numeric string. |
403 | Insufficient tier, or the template’s location is outside your scope. |
404 | Template not found. |
Flows
Flows define the guided signing walkthrough sequence for a package—the order of explanation steps, the signer prompts, and any location-specific configuration. When you create a signing package with aflowId, the flow at that location determines the signer experience.
List flows
Returns flows for the locations in your scope, optionally filtered by location. Admins receive all flows globally (capped at 500). Results are ordered byid ascending.
flows at "read" or above, or admin.
Numeric location ID to filter results. Managers specifying a location outside their scope receive
403.Response
Array of
signing.flows rows in your scope."managed" for scoped manager access, or "global" for admin access.Error responses
| Status | Condition |
|---|---|
400 | locationId is not a valid numeric string. |
403 | flows tier is "none", or the specified locationId is outside your scope. |
Get one flow
Returns a singlesigning.flows row. The flow’s location must be in your scope.
flows at "read" or above, or admin.
Numeric flow ID.
Response
Thesigning.flows row for the requested flow.
Error responses
| Status | Condition |
|---|---|
400 | flowId is not a valid numeric string. |
403 | Insufficient tier, or the flow’s location is outside your scope. |
404 | Flow not found. |
Using templates and flows together
When creating a signing package viaPOST /v1/signing/manager/signings, you can supply a flowId to associate a specific walkthrough flow with the package. The flowId must reference a flow at the same location as the locationId you specify—a mismatch returns 400.
Templates are not directly referenced when creating a package via API. They are used by the platform to populate a package’s documents. Refer to your integration documentation for how templates are applied during package setup.
Neither templates nor flows can currently be created or deleted through the API. Use the Safeclose manager UI to create new templates and flows, then reference them by ID in API calls.
