Authentication
All API requests require an API key. Create one in your
account settings (available when FairSign launches).
API keys require a payment method on file.
curl -X POST https://api.faircompany.ai/v1/sign/envelopes \
-H "Authorization: Bearer fsk_live_abc123..." \
-H "Content-Type: application/json"
Create Envelope
Create a new envelope and send it for signing. Charges $0.05 per
signature collected (not per envelope — if 3 people sign, it's
$0.15).
{
"name": "Series A Term Sheet",
"document": "base64_encoded_pdf...",
"signers": [
{
"email": "sarah@investor.com",
"name": "Sarah Chen",
"order": 1
},
{
"email": "alex@startup.com",
"name": "Alex Rivera",
"order": 2
}
],
"fields": [
{
"type": "signature",
"signer": 0,
"page": 3,
"x": 100,
"y": 600,
"width": 200,
"height": 50
}
]
}
{
"id": "env_abc123",
"status": "sent",
"name": "Series A Term Sheet",
"signers": [
{
"email": "sarah@investor.com",
"status": "pending"
}
],
"cost": {
"estimated": 0.10,
"currency": "USD",
"holdId": "hold_xyz789"
},
"createdAt": "2026-03-09T14:23:01Z"
}
Per-Endpoint Pricing
Every API call that costs money shows the price upfront. Free
endpoints are marked as such.
POST /v1/sign/envelopes
$0.05/signature
GET /v1/sign/envelopes/:id
Free
GET /v1/sign/envelopes
Free
POST /v1/sign/envelopes/:id/remind
Free
GET /v1/sign/envelopes/:id/download
Free
POST /v1/sign/envelopes/bulk
$0.04/signature
Webhook Events
Configure webhooks to receive real-time notifications when
envelopes are viewed, signed, or completed.
envelope.sent Envelope sent to signers
envelope.viewed Signer opened the document
envelope.signed Individual signer completed
envelope.completed All signatures collected
envelope.declined Signer declined to sign
envelope.expired Envelope expired (configurable)