Documentation

Integrate document
workflows directly
into your systems

Use the WoltSign REST API to create envelopes from templates, manage signers and documents, and receive webhook events from your applications.

  • REST APIs

  • Real-time webhooks

  • Workspace API keys

  • Workflow automation

GET/workflows/list
RequestResponseCode samples

Headers

x-api-key: YOUR_API_KEY
Accept: application/json

Query: workspace_uuid, kind=envelope

Response JSON

{
  "s": 1,
  "m": "Success",
  "r": { "items": [] }
}
200 OK124msRequest successful

Introduction

The WoltSign API allows you to automate envelope workflows, manage documents and signers, and retrieve workspace data programmatically. All API requests should be made over HTTPS. Your API base URL is available in the WoltSign app under Integrations.

Authentication

WoltSign uses API keys to authenticate requests. Include your API key in the x-api-key header of every request. Create keys from Integrations in the WoltSign app.

Code

x-api-key: YOUR_API_KEY

Keep your API keys secure and do not share them publicly.

Making your first request

List envelopes (workflows) in your workspace. Replace YOUR_WORKSPACE_UUID with your workspace ID.

cURL

curl -X GET "YOUR_API_BASE_URL/workflows/list?workspace_uuid=YOUR_WORKSPACE_UUID&kind=envelope&page=1&limit=25" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Accept: application/json"

Retrieve full details for a single envelope, including documents, signer roles, and field values:

cURL

curl -X GET "YOUR_API_BASE_URL/workflows/by-uuid?uuid=WORKFLOW_UUID" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Accept: application/json"

Most teams start from a template: create an envelope, then send it.

cURL

curl -X POST "YOUR_API_BASE_URL/workflows/from-template" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "workspace_uuid": "YOUR_WORKSPACE_UUID",
    "template_uuid": "TEMPLATE_UUID",
    "title": "Offer letter",
    "folder_uuid": "YOUR_FOLDER_UUID",
    "roles": [
      {
        "role_name": "Employee",
        "recipient_name": "Jane Doe",
        "recipient_email": "jane@example.com"
      }
    ]
  }'

cURL

curl -X POST "YOUR_API_BASE_URL/workflows/send" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "uuid": "ENVELOPE_UUID_FROM_CREATE"
  }'

Response format

All responses use the WoltSign envelope format. A successful request returns s: 1 with the payload in r. Errors return s: 0 with a message in m.

JSON

{
  "s": 1,
  "m": "Success",
  "r": {
    "workspace_uuid": "your-workspace-uuid",
    "items": []
  }
}

A workflow detail response includes nested workflow, documents, roles, and fields arrays:

JSON

{
  "s": 1,
  "m": "Success",
  "r": {
    "workflow": {
      "uuid": "workflow-uuid",
      "title": "Contract",
      "progress_status": "completed",
      "status_label": "Active"
    },
    "documents": [
      {
        "uuid": "document-uuid",
        "label": "Agreement.pdf",
        "signed_at": "2026-06-13T11:44:00Z",
        "is_signed": 1
      }
    ],
    "roles": [
      {
        "uuid": "role-uuid",
        "recipient_name": "Jane Doe",
        "recipient_email": "jane@example.com",
        "status_label": "Completed"
      }
    ],
    "fields": [
      {
        "uuid": "field-uuid",
        "role_uuid": "role-uuid",
        "document_uuid": "document-uuid",
        "label": "Signature",
        "field_type": "signature",
        "is_signed": 1,
        "created_at": "2026-06-13T11:42:00Z",
        "client_ip": "103.21.244.10"
      }
    ]
  }
}

Next steps

  • Create an API key from Integrations in the WoltSign app to authenticate requests.
  • Set up webhooks to receive real-time event notifications.
  • Browse the API reference sections in the sidebar for endpoint details.

API reference

Workflows

Create and manage envelopes and templates. A workflow contains documents, signer roles, fields, and signing progress. Use kind=envelope for sent envelopes or kind=template for reusable templates.

MethodEndpointDescription
GET/workflows/listList workflows in a workspace
POST/workflows/createCreate a new workflow
POST/workflows/from-templateCreate an envelope from a template
GET/workflows/by-uuidGet workflow details (documents, roles, fields)
POST/workflows/detailsUpdate workflow title, space, and settings
POST/workflows/documents-metaUpdate document title and signer message
POST/workflows/documents/uploadUpload a document to a workflow
DELETE/workflows/documents/deleteRemove a document from a workflow
POST/workflows/rolesUpdate signer roles and signing order
POST/workflows/fieldsUpdate fields placed on documents
POST/workflows/finalizeFinalize a workflow before sending
POST/workflows/sendSend envelope to signers
POST/workflows/send-reminderSend a reminder to pending signers
GET/workflows/signersList signers and signing progress
GET/workflows/audit-trailDownload audit trail PDF
POST/workflows/audit-trail/generateGenerate audit trail for a completed envelope
DELETE/workflows/deleteDelete a workflow
GET/workflows/coordinatesGet signing fields for a signer (public signing)
POST/workflows/coordinates/signSubmit a signed field value (public signing)

Spaces

Organize envelopes into spaces within a workspace.

MethodEndpointDescription
GET/folders/listList spaces
POST/folders/createCreate a space
POST/folders/updateRename a space
DELETE/folders/deleteDelete a space

Webhooks

Subscribe to envelope events and receive HTTP callbacks when something happens in your workspace.

MethodEndpointDescription
GET/workspaces/webhooks/listList webhooks
POST/workspaces/webhooks/createCreate a webhook
DELETE/workspaces/webhooks/deleteDelete a webhook
GET/workspaces/webhooks/deliveriesList delivery attempts for a webhook

API keys

Create and revoke API keys used to authenticate REST requests.

MethodEndpointDescription
GET/workspaces/api-keys/listList API keys
POST/workspaces/api-keys/createCreate an API key
POST/workspaces/api-keys/revokeRevoke an API key

Activity logs

Retrieve a timeline of actions for a workflow or other entity.

MethodEndpointDescription
GET/activity-logs/listList activity logs (entity_type, entity_uuid, workspace_uuid)

Analytics

Workspace-level analytics used by the dashboard and reporting views.

MethodEndpointDescription
GET/workspaces/analytics/envelopesEnvelope stat cards and sparklines
GET/workspaces/analytics/distributionEnvelope status distribution
GET/workspaces/analytics/trendEnvelope trend over time
GET/workspaces/analytics/performancePerformance metrics
GET/workspaces/analytics/usersUser analytics
GET/workspaces/analytics/templatesTemplate analytics
GET/workspaces/analytics/templates/topTop templates

Webhook event types

When creating a webhook, subscribe to one or more of these event types. WoltSign sends a POST request to your URL when the event occurs.

EventDescription
envelope.sentEnvelope sent
signer.viewedSigner viewed
envelope.signedEnvelope signed
envelope.completedEnvelope completed
envelope.declinedEnvelope declined
envelope.voidedEnvelope voided

Error codes

The API uses standard HTTP status codes. 4xx codes indicate client errors (invalid request, authentication failure), and 5xx codes indicate server errors.

CodeDescription
400Bad Request. Invalid parameters.
401Unauthorized. Invalid or missing API key.
404Not Found. Resource does not exist.
429Too Many Requests. Rate limit exceeded.
500Internal Server Error.

Rate limits

API requests are rate limited to ensure fair usage. When you exceed a limit, the API returns a 429 status code.

120

Requests per minute

10,000

Requests per day

200

Burst limit

Build document workflows directly into your product

Create API keys, configure webhooks, and start sending envelopes from your backend with the WoltSign REST API.

Each template in the app includes a prefilled cURL example for your workspace.