The Signable API provides secure and efficient access to Signable's electronic signature platform. With this RESTful API, you can send documents for signature, manage templates, track envelope status, and automate your document workflows from within your own applications.
- Get a webhook
 
List webhooks
Create a webhook
Update a webhook
Delete a webhook
Envelope sent
Envelope signed
Envelope cancelled
Envelope signed & complete
Envelope rejected
Envelope opened
Envelope email bounced
Widget completed (Awaiting verification)
Widget signature verified
Template added
Contact added
User added
Get a webhook
Signable API (1.0.0)
Download OpenAPI description
Overview
Languages
Servers
Production server
https://api.signable.co.uk/v1/
Bodyapplication/jsonrequired
The callback URL where webhook events will be sent.
 Example: "https://example.com"
- Production server
https://api.signable.co.uk/v1/webhooks
 
- curl
 - JavaScript
 - Node.js
 - Python
 - Java
 - C#
 - PHP
 - Go
 - Ruby
 - R
 - Payload
 
curl -i -X POST \
  -u <username>:<password> \
  https://api.signable.co.uk/v1/webhooks \
  -H 'Content-Type: application/json' \
  -d '{
    "webhook_url": "https://example.com/webhook",
    "webhook_type": "send-envelope"
  }'Webhook successfully created
Confirmation message about the webhook creation
 Example: "The webhook (https://example.com) has been created"
API resource URL for the newly created webhook
 Example: "https://api.signable.co.uk/v1/webhooks/152691"
The callback URL registered for the webhook
 Example: "https://example.com"
The event type the webhook is subscribed to
 Enum"send-envelope""signed-envelope""cancelled-envelope""rejected-envelope""bounced-envelope""add-user""add-contact""opened-envelope""add-template""all"
 Example: "all"
Response
application/json
{ "http": 200, "message": "The webhook (https://example.com) has been created", "href": "https://api.signable.co.uk/v1/webhooks/152691", "webhook_id": "152691", "webhook_url": "https://example.com", "webhook_type": "all", "webhook_created": "2025-06-23T17:15:01+0000" }
- Production server
https://api.signable.co.uk/v1/webhooks/{webhook_id}
 
- curl
 - JavaScript
 - Node.js
 - Python
 - Java
 - C#
 - PHP
 - Go
 - Ruby
 - R
 - Payload
 
curl -i -X GET \
  -u <username>:<password> \
  https://api.signable.co.uk/v1/webhooks/152691Webhook details returned successfully
The URL to which webhook events are sent
 Example: "https://example.com"
Type of event the webhook listens for
 Enum"send-envelope""signed-envelope""cancelled-envelope""rejected-envelope""bounced-envelope""add-user""add-contact""opened-envelope""add-template""all"
 Example: "all"
Timestamp when the webhook was created
 Example: "2025-06-23T17:15:01+0000"
 Example: null
Any of:
Timestamp when the webhook was last updated
string(date-time)
Response
application/json
{ "http": 200, "webhook_id": 152691, "webhook_url": "https://example.com", "webhook_type": "all", "webhook_created": "2025-06-23T17:15:01+0000", "webhook_updated": null, "webhook_suspended": null }
Bodyapplication/jsonrequired
The callback URL where webhook events will be sent.
 Example: "https://example.com"
- Production server
https://api.signable.co.uk/v1/webhooks/{webhook_id}
 
- curl
 - JavaScript
 - Node.js
 - Python
 - Java
 - C#
 - PHP
 - Go
 - Ruby
 - R
 - Payload
 
curl -i -X PUT \
  -u <username>:<password> \
  https://api.signable.co.uk/v1/webhooks/152691 \
  -H 'Content-Type: application/json' \
  -d '{
    "webhook_url": "https://example.com/webhook",
    "webhook_type": "send-envelope"
  }'Response
application/json
{ "http": 200, "message": "The webhook with ID 152691 has been updated", "href": "https://api.signable.co.uk/v1/webhooks/152691", "webhook_id": 152691, "webhook_url": "https://abby-example.com", "webhook_type": "all", "webhook_updated": "2025-06-24T09:32:55+0000" }