Skip to main content
Send a signature request from a PDF file or a Lumin template, then track status and download the signed result.

Prerequisites

  • A valid API key or OAuth app with the sign:requests scope. Pass credentials as Authorization: API-key <your-key> or Bearer <token> on every request.
  • From file: a PDF accessible via a public URL, or a file you can upload directly.
  • From template: a Lumin template ID and the templates scope (OAuth) or API key access to templates. See List Templates to list available templates in your Workspace.

Integration steps

1

Choose how to send

Use one of two endpoints:See Send Signature Request and Send Signature Request from Template for full request schemas.
2

Prepare the document

Supply the document in one of four ways. Only one field is allowed per request.
Set use_text_tags: true if your PDF contains embedded text tags that define signing fields. See the Text Tags guide.
3

Configure signers

Each signer requires email_address and name. Set signing_type to control signing order:From file — assign group when using ORDER:
From template — include signer_role when the template defines roles:
Optionally add viewers for recipients who can view but not sign.
4

Send the request

Both endpoints return 201 with the new request ID:
WAITING_FOR_PROCESSING is the initial status. Processing is asynchronous, the request transitions to NEED_TO_SIGN or WAITING_FOR_OTHERS shortly after creation.
5

Check the status

Poll GET /signature_request/{id} to read the current state of the request and each signer:
6

Download the signed file

Once the status is APPROVED, retrieve the signed document:
The signed_url is a pre-signed HTTPS download link that expires in 30 minutes.

Webhooks

Instead of polling, listen for the signature_request_approved webhook event to be notified when all signers complete the request. See the Webhooks guide to configure an endpoint.