Documents

Create a new document

Creates a document from a template with recipients for signing. Reusable templates must already be published. One-off templates — the single-use containers behind the 'upload and send' flow — are published implicitly here, so their draft must pass rules-engine validation.

post/v1/documents

Request

  • Base URL: https://api.signvoy.com
  • URL: https://api.signvoy.com/v1/documents
  • Auth: one of:
    • API key in header X-Workspace-Id
    • HTTP bearer
    • HTTP bearer

Request body

templateIdstring uuid required

Template UUID to create document from

namestring

Custom name for the document

messagestring

Message to include with the signing request

emailSubjectstring

Replaces the generated subject line on the signing request, the awaiting-your-turn heads-up, and reminders (which stay prefixed with "Reminder: "). Completion, decline, void and expiry notices always use their standard wording. Leave unset for the generated subject.

routingMode'parallel' | 'sequential'

Signing-order mode. parallel (default): all recipients are invited at once. sequential: recipients are activated group-by-group by ascending order value — the next group is only activated once the current group has fully signed.

Example request

{
  "templateId": "550e8400-e29b-41d4-a716-446655440000",
  "name": "Q4 2025 Contract Agreement",
  "message": "Please review and sign this document at your earliest convenience.",
  "emailSubject": "Please sign: Acme MSA",
  "recipients": [
    {
      "roleKey": "buyer",
      "name": "John Doe",
      "email": "john.doe@example.com",
      "order": 2
    }
  ]
}

Response

Document created successfully

idstring uuid required
workspaceIdstring uuid required
templateIdstring uuid required
templateVersionIdstring uuid required
ownerIdstring required

Clerk user ID of the document owner

namestring required

Human-readable document name

status'draft' | 'sent' | 'in_progress' | 'completed' | 'declined' | 'voided' | 'expired' required

Current document lifecycle state

routingMode'parallel' | 'sequential' required

Signing-order mode

messagestring

Custom message sent with the signing request

emailSubjectstring

Sender's replacement subject for the signing request and reminders. Absent means the generated subject is used.

createdAtinteger required

Creation timestamp (Unix ms)

sentAtinteger

Unix ms when sent

completedAtinteger

Unix ms when all signed

voidedAtinteger

Unix ms when voided

expiresAtinteger

Unix ms when expires/expired

documentHashstring

SHA-256 fingerprint of the certified final PDF

certifiedAtinteger

Unix ms when certified

reminderEnabledboolean required

Whether automatic reminders are enabled

reminderIntervalDaysinteger required

Days between automatic reminders

reminderMaxCountinteger required

Max automatic reminders

reminderCountinteger required

Automatic reminders sent so far

lastReminderAtinteger

Unix ms of the most recent reminder (auto or manual)

Changes

No recorded changes to this operation across all 1 revision of this API.