Docuseal

Manage DocuSeal e-signature workflows from the terminal via the DocuSeal CLI - create templates from PDF/DOCX/HTML, send documents for signing, track submissions, and update submit…

Alex Turchyn

@alexbturchyn

What This Skill Does

Command-line interface for DocuSeal e-signature workflows. Create templates from PDF/DOCX/HTML files, send documents for signing, track submission status, and update submitters — all from the terminal, scripts, or CI/CD pipelines. Requires a DocuSeal API key and server URL.

Replaces manual e-signature workflows through a web UI by enabling programmatic document signing, template management, and submission tracking via shell commands.

When to Use It

  • Create a signing template from a PDF contract and send it to a client for signature
  • Check the signing status of multiple submissions in a batch
  • Pre-fill submitter fields (e.g., company name, email) before sending a document for signature
  • Update a submitter's email and resend the signing invitation
  • Archive outdated templates or submissions to keep your workspace clean
  • Integrate document signing into a CI/CD pipeline or automated script

Install

$ openclaw skills install @alexbturchyn/docuseal

Agent Protocol

Rules for agents:

  • Supply ALL required flags — the CLI will not prompt for missing parameters.
  • Output is always JSON.
  • Use -d key=value (bracket notation) or -d '{"..": ".."}' (JSON) for body and array parameters.

Authentication

Set environment variables:

  • DOCUSEAL_API_KEY — API key (required). Get yours at https://console.docuseal.com/api
  • DOCUSEAL_SERVERglobal (default), europe, or full URL for self-hosted (e.g. https://docuseal.yourdomain.com)

Available Commands

Command GroupWhat it does
templateslist, retrieve, update, archive, create-pdf, create-docx, create-html, clone, merge, update-documents
submissionslist, retrieve, update, archive, create, send-emails, create-pdf, create-docx, create-html, documents
submitterslist, retrieve, update

Read the matching reference file for detailed flags and examples.

Common Mistakes

#MistakeFix
1Forgetting -d template_id=<id> on submissions create--template-id is a flag; submitters and other body params go via -d
2Passing a plain file path as a URL--file accepts a local path; for remote files use -d "documents[0][file]=https://..."
3Expecting array params as comma-separatedArrays use bracket notation: -d "template_ids[]=1" -d "template_ids[]=2"
4Using templates create-pdf without a Pro planCommands marked (Pro) require a DocuSeal Pro subscription
5Sending to multiple recipients with submissions createUse submissions send-emails --emails a@b.com,c@d.com for bulk; submissions create is per-submitter

Security

The CLI accepts user-provided file paths, remote URLs (documents[0][file]=https://...), and HTML content as template input. This is by design — all content originates from the authenticated user and is sent directly to the DocuSeal API over HTTPS. The CLI does not fetch, render, or execute remote content locally; it passes references to the server for processing. No user input is interpolated into shell commands.

Common Patterns

List templates:

docuseal templates list --q "NDA" --limit 20

Create a template from a PDF and send for signing:

docuseal templates create-pdf --file contract.pdf --name "NDA"
docuseal submissions send-emails --template-id 1001 --emails signer@example.com

Create a submission with pre-filled fields (bracket notation):

docuseal submissions create --template-id 1001 \
  -d "submitters[0][email]=john@acme.com" \
  -d "submitters[0][values][Company Name]=Acme Corp"

Create a submission with pre-filled fields (JSON):

docuseal submissions create --template-id 1001 \
  -d '{"submitters": [{"email": "john@acme.com", "values": {"Company Name": "Acme Corp"}}]}'

Check signing status:

docuseal submissions list --template-id 1001 --status pending

Update a submitter:

docuseal submitters update 201 --email new@acme.com --send-email

When to Load References

Top skills in this category