PATCH /public/v1/templates/{id}

Update a template. Currently supports updating template variables (tokens) and managing template roles.

🚧 Template status

You can only update a template in the PROCESSED status (template.PROCESSED).

After creating a new template, it usually retains a template.uploaded status for 3-5 seconds while the template syncs across PandaDoc servers. When the template is available for further API calls, the template moves to the template.PROCESSED state. Use Template Status or Webhooks to check template status.

Managing template roles

Pass a roles array to replace the full set of template roles in a single request:

Role names must be unique within a template. Preassigned contacts and contact groups attached to roles in the template editor are preserved on updates and removed together with their role on deletion — they are not managed by this endpoint.

Servers

Path parameters

Name Type Required Description
id String Yes

Template ID

Request headers

Name Type Required Description
Content-Type String Yes The media type of the request body.

Default value: "application/json"

Request body fields

Name Type Required Description
roles[] Array No

Replace the full set of template roles. Items with an existing id are updated, items without an id are created as new roles, and existing roles whose id is not present in the list are deleted.

roles[].id String No

Existing role identifier. Omit to create a new role.

roles[].name String Yes

Role name. Must be unique within the template.

roles[].signing_order Integer No

Signing order for the role. Set on every role as a contiguous sequence starting from 1 (duplicates allowed for parallel groups, e.g. [1, 1, 2]), or use null on every role for fully parallel signing.

tokens[] Array No

Create or initialize multiple CUSTOM variables with their values using tokens/values list. Template's predefined variables are read-only. Any attempts to do so will be ignored.

tokens[].name String Yes
tokens[].value String Yes

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.