Developer API

API Documentation

Integrate digital signatures into your application with our REST API. Get started in minutes.

Quick Start

Three steps to send your first document for signature.

1

Get Your API Key

Sign in and open the API Keys page from your dashboard to create a new key.

2

Upload a Document

POST your PDF to /documents with your API key in the header.

3

Send for Signature

Call /documents/:id/send with signer emails. They get a signing link.

Authentication

Include your API key in the X-API-Key header with every request. Base URL: https://shocksign.com/api. API access is included on every plan; webhooks and embedded signing (/embed/sign/<token>) are available from the Professional plan.

Example
curl -X GET "https://shocksign.com/api/documents" \
  -H "X-API-Key: sk_your_api_key"

Documents

POST/documents
Upload Document
GET/documents
List Documents
GET/documents/:id
Get Document
POST/documents/:id/send
Send for Signature
GET/documents/:id/download
Download Document
DELETE/documents/:id
Delete Document

Signers & Status

GET/documents/:id
Signer Status
POST/documents/:id/resend/:requestId
Resend Invite
POST/documents/:id/void
Void Document
GET/documents/:id/audit
Audit Trail

Webhooks

POST/webhooks
Create Webhook
GET/webhooks
List Webhooks
PUT/webhooks/:id
Update Webhook
DELETE/webhooks/:id
Delete Webhook
POST/webhooks/:id/test
Test Webhook

Templates

GET/templates
List Templates
GET/templates/:id
Get Template
POST/templates/:id/use
Create from Template

Example: Upload and Send a Document

POST /documents, then POST /documents/:id/send
curl -X POST "https://shocksign.com/api/documents" \
  -H "X-API-Key: sk_your_api_key" \
  -F "file=@contract.pdf" \
  -F "title=Service Agreement"

# Response (201):
# {
#   "message": "Document created successfully",
#   "document": {
#     "id": "6f1c2a9e-3b4d-4e5f-8a90-1b2c3d4e5f60",
#     "title": "Service Agreement",
#     "status": "draft",
#     "fileHash": "sha256...",
#     "createdAt": "2026-01-15T10:30:00Z"
#   }
# }

# Then send it:
curl -X POST "https://shocksign.com/api/documents/6f1c2a9e-3b4d-4e5f-8a90-1b2c3d4e5f60/send" \
  -H "X-API-Key: sk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{ "signers": [{ "email": "jane@example.com", "name": "Jane Smith", "order": 1 }], "message": "Please sign." }'

Ready to integrate?

Create your free account and get your API key in seconds.

Get Started Free