Build signing into your product
A versioned REST API with an OpenAPI description, signed webhooks, OAuth apps and an embeddable signing view. Live and test keys keep development separate from production.
Send an envelope
curl https://app.lystsign.com/api/v1/envelopes \
-H "Authorization: Bearer ls_live_…" \
-H "Idempotency-Key: 3a9e2c" \
-H "Content-Type: application/json" \
-d '{"subject":"Master services agreement"}'
# then: documents → recipients → fields → send- API keys (live and test) or OAuth 2.0 access tokens with scopes.
- Idempotency-Key on every write, kept for 24 hours.
- Errors as RFC 9457 problem details; per-plan rate limits.
- OpenAPI 3 at
/api/v1/openapi.json.
Webhooks
POST https://your-app.example/hooks/lystsign
Lystsign-Signature: t=1730281000,v1=5f0c…
{"type":"envelope.completed","data":{"envelope":{…}}}HMAC-signed with a per-endpoint secret you can rotate, retried with backoff, and replayable from the console.
- envelope.created
- envelope.sent
- envelope.reminded
- envelope.completed
- envelope.declined
- envelope.voided
- envelope.expired
Core endpoints
| POST | /api/v1/envelopes | Create a draft envelope |
| POST | /api/v1/envelopes/from-template | Create from a template |
| POST | /api/v1/envelopes/{id}/documents | Upload a document (PDF or Office) |
| POST | /api/v1/envelopes/{id}/recipients | Add signers, CCs and order |
| POST | /api/v1/envelopes/{id}/fields | Place fields |
| POST | /api/v1/envelopes/{id}/send | Send for signature |
| POST | /api/v1/envelopes/{id}/embedded-sessions | Open an embedded signing session |
| GET | /api/v1/envelopes/{id}/sealed | Download the sealed PDF |
| GET | /api/v1/envelopes/{id}/certificate | Download the certificate of completion |
| GET | /api/v1/usage | Envelopes used this period |
Embedded signing
<!-- embed.js: download link in the API reference -->
<script src="/vendor/lystsign-embed.js"></script>
<script>
LystsignEmbed.mount({ container: '#sign-here', url: session.url,
onComplete: () => showThanks() });
</script>API access is included on Starter and above. The Free plan uses the console only.