> ## Documentation Index
> Fetch the complete documentation index at: https://developers.luminpdf.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Send Signature Request

> Creates and sends a new signature request with the submitted documents.

<Accordion title="Required scopes (OAuth 2.0)" icon="key">
  This endpoint requires the following scope:

  `sign:requests`
</Accordion>

<Warning>
  The `verification` field on signers requires a **Digital Trust license** enabled at the Workspace level. If your Workspace is not licensed, the request will return a `403 verification_not_licensed` error. Contact your Lumin account manager to enable Digital Trust.
</Warning>


## OpenAPI

````yaml POST /signature_request/send
openapi: 3.1.0
info:
  version: 1.0.0
  title: Lumin API Reference
  description: >
    The Lumin API Reference provides a comprehensive set of tools to integrate
    document workflows — including editing, eSignatures, and automation — into
    your applications.


    Useful links:

    - [Document Repository](https://github.com/luminpdf/luminsign-docs)

    - [API
    Definition](https://github.com/luminpdf/luminsign-docs/blob/main/openapi.yaml)

    - [Authentication Guide](/tabs/guides/authentication/overview)
  termsOfService: https://www.luminpdf.com/terms-of-use/
  contact:
    name: API Support
    email: integration@luminpdf.com
    url: https://help.luminpdf.com
servers:
  - url: https://api.luminpdf.com/v1
    description: Production server
security: []
tags:
  - name: Signature Requests
    description: Everything about Signature Requests
  - name: Users
    description: Everything about Users
  - name: Templates
    description: Everything about Templates
  - name: Documents
    description: Everything about Documents
  - name: Workspaces
    description: Everything about Workspaces
  - name: Agreements
    description: Everything about Agreements
paths:
  /signature_request/send:
    post:
      tags:
        - Signature Requests
      summary: Send Signature Request
      description: Creates and sends a new signature request with the submitted documents.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SignatureRequestDTO'
      responses:
        '201':
          description: Returns the information of the created signature request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SignatureRequestCreateResponse'
        4XX:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - ApiKey: []
        - BearerAuth:
            - sign:requests
components:
  schemas:
    SignatureRequestDTO:
      type: object
      required:
        - signers
        - title
        - expires_at
      properties:
        file_url:
          type: string
          description: >-
            The URL of a single file to be downloaded and signed. This field is
            mutually exclusive with `file`, `files`, and `file_urls`. Only one
            of these fields should be provided in the request.
        file:
          type: string
          format: binary
          description: >-
            A single uploaded file to be sent for signature. This field is
            mutually exclusive with `file_url`, `files`, and `file_urls`. Only
            one of these fields should be provided in the request.
        file_urls:
          type: array
          description: >-
            An array of URLs of files to be downloaded and signed. This field is
            mutually exclusive with `file`, `files`, and `file_url`. Only one of
            these fields should be provided in the request.
          items:
            type: string
        files:
          type: array
          description: >-
            An array of uploaded files to be sent for signature. This field is
            mutually exclusive with `file`, `file_url`, and `file_urls`. Only
            one of these fields should be provided in the request.
          items:
            type: binary
        signers:
          type: array
          items:
            $ref: '#/components/schemas/Signer'
          description: Signers of the signature request.
        viewers:
          type: array
          items:
            $ref: '#/components/schemas/Viewer'
          description: Viewers of the signature request.
        title:
          type: string
          minLength: 1
          maxLength: 255
          description: The title of the signature request.
        expires_at:
          type: integer
          format: unix-epoch
          description: >-
            When the signature request will expire. This is a unix epoch
            timestamp (miliseconds). Should be later than today.
        use_text_tags:
          type: boolean
          description: >-
            Set to `true` to enable Text Tag parsing in your document. Your Text
            Tags will be converted into UI components for the user to interact
            with. Defaults to `false`.
        signing_type:
          type: string
          description: >-
            The signing order for the signature request. Defaults to
            `SAME_TIME`.
          enum:
            - SAME_TIME
            - ORDER
        custom_email:
          type: object
          description: Custom email content for the email sent to signers.
          properties:
            sender_email:
              type: string
              description: The email address of the sender.
            subject_name:
              type: string
              description: The subject of the email.
            title:
              type: string
              description: The title of the email.
      example:
        file_url: https://example.com/path/to/document.pdf
        title: Financial Year-End Report Authorization
        signers:
          - email_address: john.doe@example.com
            name: John Doe
            group: 1
            verification:
              method: vc
              payload:
                doc_type: driver_license
                claims:
                  - given_name
                  - family_name
          - email_address: jane.doe@example.com
            name: Jane Doe
            group: 2
        viewers:
          - email_address: jane.doe@example.com
            name: Jane Doe
        expires_at: 1927510980694
        use_text_tags: false
        signing_type: ORDER
    SignatureRequestCreateResponse:
      type: object
      required:
        - signature_request
      properties:
        signature_request:
          $ref: '#/components/schemas/SignatureRequestSummary'
          description: Contains information about a signature request.
    Error:
      type: object
      required:
        - error_code
        - error_message
      properties:
        error_code:
          type: string
          description: The system error code.
        error_message:
          type: string
          description: The human-readable error message.
    Signer:
      type: object
      required:
        - email_address
        - name
      properties:
        email_address:
          type: string
          description: Email address of the signer.
        name:
          type: string
          description: Name of the signer.
        group:
          type: string
          description: >
            The signing order of signer for signature request with
            `signing_type` is ORDER. Required if `signing_type` is ORDER. Group
            starts at 1. Only signers in first group will receive
            email/notification, signers in subsequent groups will receive
            email/notification when all signers in previous group has signed.
        verification:
          type: object
          description: >
            Defines the identity verification method for a signer before they
            can complete the signing process. This allows stronger assurance of
            signer authenticity.


            **Requires a Digital Trust license** enabled at the Workspace level.
            If your Workspace is not licensed, including this field will return
            a `403 verification_not_licensed` error. Contact your Lumin account
            manager to enable Digital Trust.
          properties:
            method:
              type: string
              enum:
                - vc
              description: >
                The verification method used. Required when the `verification`
                object is present.


                Possible values: `vc` – Verifiable Credential (via mDocs)
            payload:
              type: object
              description: >
                Payload parameters required by the verification method. Required
                when the `verification` object is present.
              properties:
                doc_type:
                  type: string
                  enum:
                    - driver_license
                    - photo_id
                    - nz_business_passport
                  description: >
                    The type of credential requested from the signer.

                    - If **defined** → VC verification is **required** for this
                    signer.

                    - If **omitted** → VC verification is **optional** for this
                    signer.


                    Must be in the Workspace's `enabled_doc_types` list.
                claims:
                  type: array
                  description: >
                    The specific attributes requested from the credential.
                    Required when the `verification` object is present.


                    **Required claims (always):**

                    - `given_name` – Signer's given name, validated against the
                    verified credential

                    - `family_name` – Signer's family name, validated against
                    the verified credential


                    **Optional claims:**

                    - `issuing_country` – Country where the credential was
                    issued

                    - `issuing_authority` – The issuing authority tied to the
                    root certificate

                    - `document_number` – The ID/number of the credential


                    The provided list must be a subset of the Workspace's
                    `required_claims`.
                  items:
                    type: string
                    enum:
                      - given_name
                      - family_name
                      - issuing_country
                      - issuing_authority
                      - document_number
    Viewer:
      type: object
      required:
        - email_address
        - name
      properties:
        email_address:
          type: string
          description: Email address of the viewer.
        name:
          type: string
          description: Name of the viewer.
    SignatureRequestSummary:
      type: object
      required:
        - signature_request_id
        - created_at
        - status
      properties:
        signature_request_id:
          type: string
          description: The unique identifier for the signature request.
        created_at:
          type: string
          description: The time the signature request was created.
        status:
          type: string
          description: The status of the signature request.
          enum:
            - WAITING_FOR_PROCESSING
            - FAILED
  securitySchemes:
    ApiKey:
      type: apiKey
      in: header
      name: X-API-Key
      description: >
        Provide your API key in the `X-API-Key` header, e.g., `X-API-Key:
        YOUR_API_KEY`.
    BearerAuth:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://auth.luminpdf.com/oauth2/auth
          tokenUrl: https://auth.luminpdf.com/oauth2/token
          scopes:
            openid: >-
              Retrieve basic identity details (username, email, profile
              picture).
            offline_access: Request a refresh token for long-lived access. Private apps only.
            profile.read: View basic user profile information.
            workspaces: View and manage Workspaces and Spaces.
            workspaces.read: View information about the authenticated user's Workspace.
            templates: View and manage templates in a Workspace.
            pdf:files: Create, edit, and delete PDF files in a Workspace.
            pdf:files.read: Retrieve PDF documents stored in a Workspace.
            sign:requests: Create, update, or view signature requests.
            sign:requests.read: Retrieve signature requests.
            agreements: Create, update, or delete AgreementGen documents.
      description: >
        OAuth 2.0 authorization code flow. Provide your access token in the
        `Authorization` header, e.g., `Authorization: Bearer <token>`. See the
        [OAuth 2.0 guide](/tabs/guides/authentication/oauth2) for details.

````