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"
Send Envelope
Create and configure the draft for free, then send it for $0.30.
The price is flat for one to ten signers; the first five envelopes are free.
{
"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.30,
"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/:id/send
$0.30/envelope
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/:id/bulk-send
$0.30/envelope
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)