REST API · Hash-chained audit trail · Multi-tenant

Embed signing
in your product.

A REST API designed to disappear into your product. Send documents, place fields, capture signatures, verify chains. The same audit trail that powers Vouch.ink, available to your users by default — at developer pricing.

Send a document
cURL · v1
# Send a document for signature
curl -X POST https://api.vouch.ink/v1/documents \
  -H "Authorization: Bearer vk_live_a3f87f2a..." \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Service Agreement",
    "file_url": "https://your-bucket/contract.pdf",
    "recipients": [
      { "email": "sarah@example.com", "name": "Sarah Mitchell", "role": "Tenant", "order": 1 }
    ],
    "expires_in_days": 7,
    "auto_remind": true,
    "webhook_url": "https://your-app.com/hooks/vouch"
  }'

// → 201 Created
{
  "id": "3f1c8a2b-6d0e-4b7a-9c21-5e8f0a7d4b19",
  "audit_id": "00472",
  "status": "sent",
  "recipients": [
    { "name": "Sarah Mitchell", "order": 1, "status": "invited",
      "sign_url": "https://vouch.ink/sign/a3f8..." }
  ],
  "auto_remind": { "next_at": "2026-05-08T14:24:18Z", "sent": 0 },
  "chain_root": "f1d2e8a4b9c0457e..."
}
$15/mo annual
Full API access
on Business Premium
3
Calls for a full signing
create · check · download
SHA-256
Audit chain on every
document, no upcharge
2.2 s
P95, key to sign URL
US-East · email included · Sept 2026
— 02 — Webhooks

React to every event in real time.

When something happens to a document — opened, signed, declined, sealed — Vouch posts a signed webhook to your endpoint. Same audit chain, delivered to your stack.

What you receive

Every webhook contains the full event payload, the previous hash, this event's hash, and an HMAC signature you can verify against your shared secret.

If your endpoint returns anything other than 2xx, Vouch retries with exponential backoff up to 24 hours. After that, the event waits in your replay queue until you fetch it.

  • Idempotent. Every event has a unique ID. Safe to retry, deduplicate by ID.
  • Ordered. A document's events arrive in chain order, never out of sequence.
  • Verifiable. HMAC-SHA256 of the timestamp and body with your secret, in the X-Vouch-Signature header.
  • Replayable. Pull missed events via /v1/events?since={timestamp}.
Webhook payload
POST your-app.com/hooks/vouch
// Headers
//   X-Vouch-Signature: t=1715028281,v1=a3f87f2a...
//   X-Vouch-Event-Id:  evt_9f3c2a1e8d4b
//   Content-Type:      application/json

{
  "id": "evt_9f3c2a1e8d4b",
  "type": "document.signed",
  "created_at": "2026-05-06T14:24:18Z",
  "document": {
    "id": "3f1c8a2b-6d0e-4b7a-9c21-5e8f0a7d4b19",
    "audit_id": "00472",
    "title": "Service Agreement"
  },
  "signer": {
    "email": "sarah@example.com",
    "name": "Sarah Mitchell",
    "ip": "72.182.144.21",
    "user_agent": "Mozilla/5.0..."
  },
  "chain": {
    "previous_hash": "2e7c1a4b8d0f3956...",
    "this_hash": "a3f87f2a9c1ad440..."
  }
}
— 03 — Verification

Verify any chain, from anywhere.

Anyone can verify a Vouch document's audit chain — no API key required, no Vouch login, no trust assumed. The math does the work.

GET chain
No auth required
curl https://api.vouch.ink/v1/verify/3f1c8a2b-6d0e-4b7a-9c21-5e8f0a7d4b19

// → 200 OK
{
  "audit_id": "3f1c8a2b-6d0e-4b7a-9c21-5e8f0a7d4b19",
  "status": "chain_intact",
  "chain_spec": 2,
  "canonicalization": "RFC 8785 (JCS)",
  "hash_formula": "sha256(prev_hash|event_type|recipient_id|actor_email|ip|user_agent|canonical_payload|created_at)",
  "event_count": 8,
  "events": [
    {
      "sequence": 1,
      "event_type": "document.created",
      "created_at": "2026-05-06T09:31:12.193916+00:00",
      "prev_hash": "GENESIS",
      "this_hash": "f1d2e8a4b9c0457e...",
      "payload": { "page_count": 3, "source_hash": "4023...582f" }
    },
    // ... 7 more events ...
  ],
  "chain": { "valid": true, "broken_at": null, "count": 8 }
}

You don't have to trust us

The public verify endpoint returns every hash in the chain, without the personal data (signer emails, IP addresses) those hashes cover. The document's owner downloads the full chain with GET /v1/documents/{id}/audit and can re-compute every hash with any SHA-256 implementation, then compare the final hash with the public one.

Canonicalization uses RFC 8785 (JSON Canonicalization Scheme), which means deterministic hashes across implementations. API customers get reference verifiers in Node, Go, Python, Ruby and Rust, standard library only, with the rules written out so you can write your own.

  • No API key needed. Public, read-only, rate-limited to 60 req/min per IP.
  • No Vouch dependency. If we disappear, you can still verify with your archived JSON.
  • Evidence, not promises. The chain and its written rules show the record wasn't changed after signing. What that means in court: Compliance.
— 04 — Multi-tenant

Built to embed.

Most e-signature APIs treat your customers as Vouch's customers. Ours treat them as yours. Your branding on emails, your domain on signing pages, your audit IDs in your records.

— 01

White-label everything.

Your logo on emails. Your wordmark on signing pages. Your sender name in the inbox. Vouch's brand only appears in the small print, where compliance requires it.

— 02

Per-tenant isolation.

Each of your customers gets their own audit chain. Their data never crosses tenant boundaries. Verifiable independence between accounts is a first-class feature, not a sales obstacle.

— 03

Sub-account billing.

Aggregate usage across all your tenants on one Vouch invoice, or pass through per-tenant charges via the metering API. Whichever fits your pricing model.

— 05 — Pricing reality

API access shouldn't require sales calls.

The big e-signature providers put embedding for your own customers behind enterprise plans, custom quotes or add-ons. Vouch ships it on Business Premium, public price, sign up online.

ProviderLowest tier with APIAudit trailMulti-tenantPublic verifier
DocuSignStandard / $25/user/moYesEnterprise onlyNo
PandaDocCustom / sales callYesCustom onlyNo
Adobe Acrobat SignCustom / annualYesEnterprise onlyNo
Dropbox SignPremium / $40/user/moYesLimitedNo
SignNowPremium / $15/user/moYesAdd-onNo
VouchBusiness Premium / $15/mo annualSHA-256 chainYes, includedYes, public

Data verified May 2026. Prices and tiers may have changed since. Don't take our word for it — check theirs.

Ship it this week.

Sign up, generate a key, send your first document via API in under ten minutes. No sales call, no contract minimum, no annual commit.