DocuSeal Templates API

Templates represent reusable document signing forms with fields and signatures to be collected. It's possible to create unique template forms with fields and signatures using HTML or with tagged PDFs.

OpenAPI Specification

docuseal-templates-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: 1.0.0
  title: DocuSeal Submissions Templates API
  description: DocuSeal API specs
  contact:
    name: DocuSeal
    email: admin@docuseal.com
    url: https://www.docuseal.com
servers:
- url: https://api.docuseal.com
  description: Global Server
- url: https://api.docuseal.eu
  description: EU Server
tags:
- name: Templates
  description: Templates represent reusable document signing forms with fields and signatures to be collected. It's possible to create unique template forms with fields and signatures using HTML or with tagged PDFs.
paths:
  /templates:
    get:
      security:
      - AuthToken: []
      tags:
      - Templates
      summary: List all templates
      description: The API endpoint provides the ability to retrieve a list of available document templates.
      operationId: getTemplates
      parameters:
      - name: q
        in: query
        required: false
        schema:
          type: string
        description: Filter templates based on the name partial match.
      - name: slug
        in: query
        required: false
        schema:
          type: string
        description: Filter templates by unique slug.
        example: opaKWh8WWTAcVG
      - name: external_id
        in: query
        required: false
        schema:
          type: string
        description: The unique application-specific identifier provided for the template via API or Embedded template form builder. It allows you to receive only templates with your specified external ID.
      - name: folder
        in: query
        required: false
        schema:
          type: string
        description: Filter templates by folder name.
      - name: archived
        in: query
        required: false
        schema:
          type: boolean
        description: Get only archived templates instead of active ones.
      - name: limit
        in: query
        required: false
        schema:
          type: integer
        description: The number of templates to return. Default value is 10. Maximum value is 100.
      - name: after
        in: query
        required: false
        schema:
          type: integer
        description: The unique identifier of the template to start the list from. It allows you to receive only templates with an ID greater than the specified value. Pass ID value from the `pagination.next` response to load the next batch of templates.
      - name: before
        in: query
        required: false
        schema:
          type: integer
        description: The unique identifier of the template to end the list with. It allows you to receive only templates with an ID less than the specified value.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                - pagination
                properties:
                  data:
                    type: array
                    description: List of templates.
                    items:
                      type: object
                      required:
                      - id
                      - slug
                      - name
                      - preferences
                      - schema
                      - fields
                      - submitters
                      - author_id
                      - created_at
                      - updated_at
                      - source
                      - external_id
                      - folder_id
                      - folder_name
                      - author
                      - documents
                      properties:
                        id:
                          type: integer
                          description: Unique identifier of the document template.
                        slug:
                          type: string
                          description: Unique slug of the document template.
                        name:
                          type: string
                          description: The name of the template.
                        preferences:
                          type: object
                          description: Template preferences.
                        schema:
                          type: array
                          description: List of documents attached to the template.
                          items:
                            type: object
                            required:
                            - attachment_uuid
                            - name
                            properties:
                              attachment_uuid:
                                type: string
                                description: Unique identifier of attached document to the template.
                              name:
                                type: string
                                description: Name of the attached document to the template.
                        fields:
                          type: array
                          description: List of fields to be filled in the template.
                          items:
                            type: object
                            required:
                            - uuid
                            - submitter_uuid
                            - name
                            - type
                            - required
                            - areas
                            properties:
                              uuid:
                                type: string
                                description: Unique identifier of the field.
                              submitter_uuid:
                                type: string
                                description: Unique identifier of the submitter that filled the field.
                              name:
                                type: string
                                description: Field name.
                              type:
                                type: string
                                description: Type of the field (e.g., text, signature, date, initials).
                                enum:
                                - heading
                                - text
                                - signature
                                - initials
                                - date
                                - number
                                - image
                                - checkbox
                                - multiple
                                - file
                                - radio
                                - select
                                - cells
                                - stamp
                                - payment
                                - phone
                                - verification
                                - kba
                                - strikethrough
                              required:
                                type: boolean
                                description: Indicates if the field is required.
                              preferences:
                                type: object
                                description: Field display preferences.
                                properties:
                                  font_size:
                                    type: integer
                                    description: Font size of the field value in pixels.
                                  font_type:
                                    type: string
                                    description: Font type of the field value.
                                  font:
                                    type: string
                                    description: Font family of the field value.
                                  color:
                                    type: string
                                    description: Font color of the field value.
                                  background:
                                    type: string
                                    description: Field box background color.
                                  align:
                                    type: string
                                    description: Horizontal alignment of the field text value.
                                  valign:
                                    type: string
                                    description: Vertical alignment of the field text value.
                                  format:
                                    type: string
                                    description: The data format for different field types.
                                  price:
                                    type: number
                                    description: Price value of the payment field. Only for payment fields.
                                  currency:
                                    type: string
                                    description: Currency value of the payment field. Only for payment fields.
                                  mask:
                                    type: boolean
                                    description: Indicates if the field is masked on the document.
                                  reasons:
                                    description: An array of signature reasons to choose from.
                                    type: array
                                    items:
                                      type: string
                              areas:
                                type: array
                                description: List of areas where the field is located in the document.
                                items:
                                  type: object
                                  required:
                                  - x
                                  - y
                                  - w
                                  - h
                                  - attachment_uuid
                                  - page
                                  properties:
                                    x:
                                      type: number
                                      description: X coordinate of the area where the field is located in the document.
                                    y:
                                      type: number
                                      description: Y coordinate of the area where the field is located in the document.
                                    w:
                                      type: number
                                      description: Width of the area where the field is located in the document.
                                    h:
                                      type: number
                                      description: Height of the area where the field is located in the document.
                                    attachment_uuid:
                                      type: string
                                      description: Unique identifier of the attached document where the field is located.
                                    page:
                                      type: integer
                                      description: Page number of the attached document where the field is located.
                        submitters:
                          type: array
                          description: The list of submitters for the template.
                          items:
                            type: object
                            required:
                            - name
                            - uuid
                            properties:
                              name:
                                type: string
                                description: The name of the submitter.
                              uuid:
                                type: string
                                description: Unique identifier of the submitter.
                        author_id:
                          type: integer
                          description: Unique identifier of the author of the template.
                        archived_at:
                          type: string
                          nullable: true
                          description: Date and time when the template was archived.
                        created_at:
                          type: string
                          description: The date and time when the template was created.
                        updated_at:
                          type: string
                          description: The date and time when the template was last updated.
                        source:
                          type: string
                          description: Source of the template.
                          enum:
                          - native
                          - api
                          - embed
                        external_id:
                          type: string
                          nullable: true
                          description: Your application-specific unique string key to identify this template within your app.
                        folder_id:
                          type: integer
                          description: Unique identifier of the folder where the template is located.
                        folder_name:
                          type: string
                          description: Folder name where the template is located.
                        shared_link:
                          type: boolean
                          description: Indicates if the template is accessible by link.
                        author:
                          type: object
                          required:
                          - id
                          - first_name
                          - last_name
                          - email
                          properties:
                            id:
                              type: integer
                              description: Unique identifier of the author.
                            first_name:
                              type: string
                              description: First name of the author.
                            last_name:
                              type: string
                              description: Last name of the author.
                            email:
                              type: string
                              description: Author email.
                        documents:
                          type: array
                          description: List of documents attached to the template.
                          items:
                            type: object
                            required:
                            - id
                            - uuid
                            - url
                            - preview_image_url
                            - filename
                            properties:
                              id:
                                type: integer
                                description: Unique identifier of the document.
                              uuid:
                                type: string
                                description: Unique identifier of the document.
                              url:
                                type: string
                                description: URL of the document.
                              preview_image_url:
                                type: string
                                description: Document preview image URL.
                              filename:
                                type: string
                                description: Document filename.
                  pagination:
                    type: object
                    required:
                    - count
                    - next
                    - prev
                    properties:
                      count:
                        type: integer
                        description: Templates count.
                      next:
                        type: integer
                        nullable: true
                        description: The ID of the template after which the next page starts.
                      prev:
                        type: integer
                        nullable: true
                        description: The ID of the template before which the previous page ends.
              example:
                data:
                - id: 1
                  slug: iRgjDX7WDK6BRo
                  name: Example Template
                  preferences: {}
                  schema:
                  - attachment_uuid: d94e615f-76e3-46d5-8f98-36bdacb8664a
                    name: example-document
                  fields:
                  - uuid: 594bdf04-d941-4ca6-aa73-93e61d625c02
                    submitter_uuid: 0954d146-db8c-4772-aafe-2effc7c0e0c0
                    name: Full Name
                    type: text
                    required: true
                    preferences: {}
                    areas:
                    - x: 0.2638888888888889
                      y: 0.168958742632613
                      w: 0.325
                      h: 0.04616895874263263
                      attachment_uuid: d94e615f-76e3-46d5-8f98-36bdacb8664a
                      page: 0
                  submitters:
                  - name: First Party
                    uuid: 0954d146-db8c-4772-aafe-2effc7c0e0c0
                  author_id: 1
                  archived_at: null
                  created_at: '2023-12-14T15:21:57.375Z'
                  updated_at: '2023-12-14T15:22:55.094Z'
                  source: native
                  folder_id: 1
                  folder_name: Default
                  external_id: c248ffba-ef81-48b7-8e17-e3cecda1c1c5
                  shared_link: true
                  author:
                    id: 1
                    first_name: John
                    last_name: Doe
                    email: john.doe@example.com
                  documents:
                  - id: 5
                    uuid: d94e615f-76e3-46d5-8f98-36bdacb8664a
                    url: https://docuseal.com/file/hash/sample-document.pdf
                    preview_image_url: https://docuseal.com/file/hash/0.jpg
                    filename: example-document.pdf
                pagination:
                  count: 1
                  next: 1
                  prev: 2
  /templates/{id}:
    get:
      security:
      - AuthToken: []
      tags:
      - Templates
      summary: Get a template
      description: The API endpoint provides the functionality to retrieve information about a document template.
      operationId: getTemplate
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
        description: The unique identifier of the document template.
        example: 1000001
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                - id
                - slug
                - name
                - preferences
                - schema
                - fields
                - submitters
                - author_id
                - archived_at
                - created_at
                - updated_at
                - source
                - external_id
                - folder_id
                - folder_name
                - author
                - documents
                properties:
                  id:
                    type: integer
                    description: Unique identifier of the document template.
                  slug:
                    type: string
                    description: Unique slug of the document template.
                  name:
                    type: string
                    description: The name of the template.
                  preferences:
                    type: object
                    description: Template preferences.
                  schema:
                    type: array
                    description: List of documents attached to the template.
                    items:
                      type: object
                      required:
                      - attachment_uuid
                      - name
                      properties:
                        attachment_uuid:
                          type: string
                          description: Unique identifier of attached document to the template.
                        name:
                          type: string
                          description: Name of the attached document to the template.
                  fields:
                    type: array
                    description: List of fields to be filled in the template.
                    items:
                      type: object
                      required:
                      - uuid
                      - submitter_uuid
                      - name
                      - type
                      - required
                      - areas
                      properties:
                        uuid:
                          type: string
                          description: Unique identifier of the field.
                        submitter_uuid:
                          type: string
                          description: Unique identifier of the submitter that filled the field.
                        name:
                          type: string
                          description: Field name.
                        type:
                          type: string
                          description: Type of the field (e.g., text, signature, date, initials).
                          enum:
                          - heading
                          - text
                          - signature
                          - initials
                          - date
                          - number
                          - image
                          - checkbox
                          - multiple
                          - file
                          - radio
                          - select
                          - cells
                          - stamp
                          - payment
                          - phone
                          - verification
                          - kba
                          - strikethrough
                        required:
                          type: boolean
                          description: Indicates if the field is required.
                        preferences:
                          type: object
                          description: Field display preferences.
                          properties:
                            font_size:
                              type: integer
                              description: Font size of the field value in pixels.
                            font_type:
                              type: string
                              description: Font type of the field value.
                            font:
                              type: string
                              description: Font family of the field value.
                            color:
                              type: string
                              description: Font color of the field value.
                            background:
                              type: string
                              description: Field box background color.
                            align:
                              type: string
                              description: Horizontal alignment of the field text value.
                            valign:
                              type: string
                              description: Vertical alignment of the field text value.
                            format:
                              type: string
                              description: The data format for different field types.
                            price:
                              type: number
                              description: Price value of the payment field. Only for payment fields.
                            currency:
                              type: string
                              description: Currency value of the payment field. Only for payment fields.
                            mask:
                              type: boolean
                              description: Indicates if the field is masked on the document.
                            reasons:
                              description: An array of signature reasons to choose from.
                              type: array
                              items:
                                type: string
                        areas:
                          type: array
                          description: List of areas where the field is located in the document.
                          items:
                            type: object
                            required:
                            - x
                            - y
                            - w
                            - h
                            - attachment_uuid
                            - page
                            properties:
                              x:
                                type: number
                                description: X coordinate of the area where the field is located in the document.
                              y:
                                type: number
                                description: Y coordinate of the area where the field is located in the document.
                              w:
                                type: number
                                description: Width of the area where the field is located in the document.
                              h:
                                type: number
                                description: Height of the area where the field is located in the document.
                              attachment_uuid:
                                type: string
                                description: Unique identifier of the attached document where the field is located.
                              page:
                                type: integer
                                description: Page number of the attached document where the field is located.
                  submitters:
                    type: array
                    description: The list of submitters for the template.
                    items:
                      type: object
                      required:
                      - name
                      - uuid
                      properties:
                        name:
                          type: string
                          description: The name of the submitter.
                        uuid:
                          type: string
                          description: Unique identifier of the submitter.
                  author_id:
                    type: integer
                    description: Unique identifier of the author of the template.
                  archived_at:
                    type: string
                    nullable: true
                    description: Date and time when the template was archived.
                  created_at:
                    type: string
                    description: The date and time when the template was created.
                  updated_at:
                    type: string
                    description: The date and time when the template was last updated.
                  source:
                    type: string
                    description: Source of the template.
                    enum:
                    - native
                    - api
                    - embed
                  external_id:
                    type: string
                    nullable: true
                    description: Your application-specific unique string key to identify this template within your app.
                  folder_id:
                    type: integer
                    description: Unique identifier of the folder where the template is located.
                  folder_name:
                    type: string
                    description: Folder name where the template is located.
                  shared_link:
                    type: boolean
                    description: Indicates if the template is accessible by link.
                  author:
                    type: object
                    required:
                    - id
                    - first_name
                    - last_name
                    - email
                    properties:
                      id:
                        type: integer
                        description: Unique identifier of the author.
                      first_name:
                        type: string
                        description: First name of the author.
                      last_name:
                        type: string
                        description: Last name of the author.
                      email:
                        type: string
                        description: Author email.
                  documents:
                    type: array
                    description: List of documents attached to the template.
                    items:
                      type: object
                      required:
                      - id
                      - uuid
                      - url
                      - preview_image_url
                      - filename
                      properties:
                        id:
                          type: integer
                          description: Unique identifier of the document.
                        uuid:
                          type: string
                          description: Unique identifier of the document.
                        url:
                          type: string
                          description: URL of the document.
                        preview_image_url:
                          type: string
                          description: Document preview image URL.
                        filename:
                          type: string
                          description: Document filename.
              example:
                id: 1
                slug: iRgjDX7WDK6BRo
                name: Example Template
                preferences: {}
                schema:
                - attachment_uuid: d94e615f-76e3-46d5-8f98-36bdacb8664a
                  name: example-document
                fields:
                - uuid: 594bdf04-d941-4ca6-aa73-93e61d625c02
                  submitter_uuid: 0954d146-db8c-4772-aafe-2effc7c0e0c0
                  name: Full Name
                  type: text
                  required: true
                  preferences: {}
                  areas:
                  - x: 0.2638888888888889
                    y: 0.168958742632613
                    w: 0.325
                    h: 0.04616895874263263
                    attachment_uuid: d94e615f-76e3-46d5-8f98-36bdacb8664a
                    page: 0
                submitters:
                - name: First Party
                  uuid: 0954d146-db8c-4772-aafe-2effc7c0e0c0
                author_id: 1
                archived_at: null
                created_at: '2023-12-14T15:21:57.375Z'
                updated_at: '2023-12-14T15:22:55.094Z'
                source: native
                folder_id: 1
                folder_name: Default
                external_id: c248ffba-ef81-48b7-8e17-e3cecda1c1c5
                shared_link: true
                author:
                  id: 1
                  first_name: John
                  last_name: Doe
                  email: john.doe@example.com
                documents:
                - id: 5
                  uuid: d94e615f-76e3-46d5-8f98-36bdacb8664a
                  url: https://docuseal.com/file/hash/sample-document.pdf
               

# --- truncated at 32 KB (147 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/docuseal/refs/heads/main/openapi/docuseal-templates-api-openapi.yml