Send documents for signature, embed signing in your own app and get a webhook the moment it's signed. No developer plan, no envelope allowance to outgrow — you pay when a document goes out, and nothing when it doesn't.
Free to sign up. Build against drafts and pay nothing until you send.
The whole integration
Build a template once in the designer, then send it from your code with the signers' names and emails. GoodSign emails the signers, chases the slow ones, and posts to your webhook when it's done.
Request
curl --request POST \
--url https://goodsign.io/api/usetemplate \
--header 'Authorization: Bearer YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"uuid": "YOUR_TEMPLATE_UUID",
"doc_name": "Services Agreement - Acme",
"webhook": "https://example.com/hooks/goodsign",
"metadata": {"deal_id": 4821},
"signers": [
{"key": "signer1", "name": "Jane Smith",
"email": "jane@acme.com", "reminder_days": 1}
]
}'
Response
{
"success": true,
"doc": {
"uuid": "1f0c9a52-...",
"name": "Services Agreement - Acme",
"status": "sent",
"webhook": "https://example.com/hooks/goodsign"
},
"warnings": [],
"credit": 49
}
The API docs generate this request for each of your templates, with your real signer keys and field names filled in.
What you can build
Design the document once, then send it with a signer list and pre-filled field values. Sequential signing with send_in_order, a CC address, and your own email subject and message.
Generate the PDF yourself and post it to /api/uploadpdf. Text tags such as [sign|Client] and [date|Client] in the document become real signature and date fields, wherever they land on the page.
Pass email_external and GoodSign stays silent: you get a signing link per signer to open in an iframe, a webview or your own branded email. How embedding works.
Nine events, from signer_opened to document_complete, posted to a URL you set per document. No polling. Webhook guide.
Turn on SMS verification per document with smsverify, set reminder intervals per signer, and nudge or void a document with one call each.
Download the completed PDF with its audit certificate attached: signer emails, IP addresses and timestamps. Attach your own metadata JSON and it comes back with the document.
API pricing
Most eSignature APIs sit behind a developer plan with a yearly commitment and a monthly envelope allowance. That suits steady high volume. It's a poor fit for a client portal that sends ten contracts in a busy month and none in a quiet one.
| API | Cheapest way in | Minimum spend | Allowance |
|---|---|---|---|
| GoodSign | Any account. No plan to pick. | $0 | No cap. $1.50 per envelope, credits never expire. |
| DocuSign | Developer Starter plan | US$600 / year | 40 envelopes a month |
| Dropbox Sign | API Essentials 50 | US$900 / year | 50 requests a month |
| Adobe Acrobat Sign | Enterprise and developer tiers only | Sales quote | Not published |
Competitor prices in USD as published on each vendor's own pricing page, September 2026, billed annually. An envelope on GoodSign covers one document pack with unlimited signers and unlimited users on your account. If you send thousands of documents a month, a flat-rate API can work out cheaper per document — the full numbers, with break-even points, are in our eSignature API pricing comparison.
The reference
JSON over HTTPS, authenticated with a bearer token you create and revoke at /apikeys.
| POST | /api/usetemplate | Send a document from a template, or create it as a draft |
| POST | /api/uploadpdf | Upload a PDF; text tags become fields and signers |
| GET | /api/templates | List your templates with their signer keys |
| GET | /api/document/{uuid} | Status, signer progress and your metadata |
| POST | /api/documents | List documents by status |
| POST | /api/document/{uuid}/remind | Remind one signer, or /remindall for everyone outstanding |
| POST | /api/document/{uuid}/void | Cancel a sent document |
| GET | /api/download/{uuid} | The signed PDF with its audit certificate |
| GET | /api/test | Check your token works |
Add "draft": true to any send and the document is created but not sent. Check it in your dashboard, fix your payload, and spend nothing while you build.
Explore every endpoint from the Postman collection linked in the API docs.
For AI agents
GoodSign runs an MCP server, listed on the official MCP Registry, with the same API key. Claude Code, Codex or any MCP client can list your templates, send a document, chase signers and fetch the signed PDF — no glue code. Same price: one credit per envelope.
claude mcp add --transport http goodsign https://goodsign.io/mcp \ --header "Authorization: Bearer YOUR_API_KEY"
Questions
The API costs $1.50 per envelope sent, the same price as sending from the dashboard. There is no monthly fee, no developer plan and no per-user charge. Credits never expire, and a month where you send nothing costs $0. SMS verification uses one extra credit, and purchases of 1,000 or more credits get a 20% discount.
Yes. GoodSign has no plans to choose between, so there is nothing to upgrade. Every account can create an API key and use every endpoint, including webhooks and embedded signing, from the first document.
Creating an account and an API key is free, and you can build your whole integration without paying: pass "draft": true and the document is created but not sent, so no credit is used. You only pay when a document actually goes out for signature.
Yes. Send with "email_external": true and GoodSign sends no emails at all. The response includes a signing_links array with one URL per signer, which you can open in an iframe, a webview or your own email. Use "notifyonly" instead if you still want GoodSign to email everyone the finished document.
Nine: document_sent, document_complete, document_voided, signer_opened, signer_complete, signer_rejected, signer_bounced, signer_reported and signer_attachments_complete. Set a webhook URL per document in the send request. Each call posts the document uuid and its new status.
Yes. A document sent by API goes through exactly the same signing flow as one sent from the dashboard, and the signed PDF carries the same audit certificate: signer emails, IP addresses and timestamps. Electronic signatures are recognised under the US ESIGN Act and UETA, eIDAS in Europe, and equivalent laws in Australia and New Zealand.
Create an account, grab a key, build against drafts for free. $1.50 an envelope when you go live, and new accounts get 50% off their first credit top up.
Also built by us
It’s how we answer every GoodSign customer — live chat, email and the AI you already pay for, all in one inbox. One line of HTML and it’s on your site too.
All rights reserved © GoodSign Limited 2026
2 Stuart St, Ponsonby, Auckland 1011, New Zealand..