The short answer: to send your first signature request with the OpenSign™ API, get an API token, create a document (often from a template), add signers and field positions, send the request, then listen for a webhook to fetch the completed file. The API is free, open source and self-hostable.
Before you start
- A free OpenSign account (or a self-hosted instance).
- An API token from your account settings.
- A document or a saved template to send.
- Read the full reference in the API documentation.
Step 1 — Authenticate
Every request includes your API token in the headers. Keep the token server-side and never expose it in client code — treat it like a password.
Step 2 — Create a document from a template
Call the create-document endpoint with your template ID. This returns a document ID you'll use for the signature request. Building from a template keeps field positions consistent across sends.
Step 3 — Add signers and send
Provide each signer's name and email, and the fields assigned to them (signature, date, text). Send the request — OpenSign emails each signer a secure signing link and sets the document to "in progress".
Step 4 — Handle webhooks
Register a webhook URL to receive events such as viewed, signed and completed. When you receive the completed event, call the API to download the signed PDF and its certificate of completion.
Step 5 — Store the result
Save the signed document and audit data in your system. If you self-host OpenSign, everything stays inside your infrastructure — ideal for GDPR and HIPAA workflows.
What to build next
- Automated onboarding that sends an NDA on signup.
- In-app signing embedded in your product.
- Bulk generation of documents from one template.
For an overview of capabilities, see the eSignature API page.
Ready to try it? Create a free OpenSign account and start signing documents in minutes — no credit card required. Prefer to run it yourself? OpenSign is 100% open source on GitHub.