Skip to content

Signable API (1.0.0)

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.

Download OpenAPI description
Languages
Servers
Mock server

https://developers.signable.app/_mock/openapi/

Production server

https://api.signable.co.uk/v1/

Partners

Manage partner integrations.

Operations

Envelopes

Send, track, and manage documents for e-signature.

Operations

Templates

Create and reuse predefined document templates.

Operations

Contacts

Manage contact details for signers and stakeholders.

Operations

Request

Retrieves a paginated list of all contacts. Use offset and limit query parameters to control pagination.

Security
basicAuth
Query
offsetinteger

The index of the first envelope to retrieve.

Default 0
Example: offset=0
limitinteger[ 1 .. 50 ]

The maximum number of envelopes to return. If more than 50 is requested, 10 will be returned instead.

Default 10
curl -i -X GET \
  -u <username>:<password> \
  'https://developers.signable.app/_mock/openapi/contacts?offset=0&limit=10'

Responses

Contact list returned successfully

Bodyapplication/json
httpinteger
Example: 200
offsetinteger
Example: 0
limitinteger
Example: 50
total_contactsstring
Example: "3"
contactsArray of objects(Contact)
Response
application/json
{ "http": 200, "offset": 0, "limit": 50, "total_contacts": "3", "contacts": [ { … }, { … }, { … } ] }

Request

Adds a new contact to your contact list.

Security
basicAuth
Bodyapplication/jsonrequired
contact_namestringrequired
Example: "Hanz Zimmer"
contact_emailstring(email)required
Example: "hanz.zimmer@music.com"
curl -i -X POST \
  -u <username>:<password> \
  https://developers.signable.app/_mock/openapi/contacts \
  -H 'Content-Type: application/json' \
  -d '{
    "contact_name": "Hanz Zimmer",
    "contact_email": "hanz.zimmer@music.com"
  }'

Responses

Contact created successfully

Bodyapplication/json
httpinteger
Example: 200
messagestring
Example: "Hanz Zimmer has been added to your contact list."
hrefstring(uri)
Example: "https://api.signable.co.uk/v1/contacts/17224150"
contact_idstring
Example: "17224150"
contact_namestring
Example: "Hanz Zimmer"
contact_emailstring(email)
Example: "hanz.zimmer@music.com"
contact_createdstring(date-time)
Example: "2025-07-07T09:57:39+0000"
Response
application/json
{ "http": 200, "message": "Hanz Zimmer has been added to your contact list.", "href": "https://api.signable.co.uk/v1/contacts/17224150", "contact_id": "17224150", "contact_name": "Hanz Zimmer", "contact_email": "hanz.zimmer@music.com", "contact_created": "2025-07-07T09:57:39+0000" }

Request

Retrieves details of a single contact by contact_id.

Security
basicAuth
Path
contact_idintegerrequired

The unique ID of the contact

Example: 17224150
curl -i -X GET \
  -u <username>:<password> \
  https://developers.signable.app/_mock/openapi/contacts/17224150

Responses

Contact details returned successfully

Bodyapplication/json
httpinteger
Example: 200
contact_idinteger
Example: 17224150
contact_namestring
Example: "Hanz Zimmer"
contact_emailstring(email)
Example: "hanz.zimmer@music.com"
contact_outstanding_documentsstring
Example: "0"
contact_createdstring(date-time)
Example: "2025-07-07T09:57:39+0000"
Response
application/json
{ "http": 200, "contact_id": 17224150, "contact_name": "Hanz Zimmer", "contact_email": "hanz.zimmer@music.com", "contact_outstanding_documents": "0", "contact_created": "2025-07-07T09:57:39+0000" }

Request

Updates a contact's name or email address.

Security
basicAuth
Path
contact_idintegerrequired
Example: 17224150
Bodyapplication/jsonrequired
contact_namestringrequired
Example: "Nemo"
contact_emailstring(email)required
Example: "nemo@coralreef.com"
curl -i -X PUT \
  -u <username>:<password> \
  https://developers.signable.app/_mock/openapi/contacts/17224150 \
  -H 'Content-Type: application/json' \
  -d '{
    "contact_name": "Nemo",
    "contact_email": "nemo@coralreef.com"
  }'

Responses

Contact updated successfully

Bodyapplication/json
httpinteger
Example: 200
messagestring
Example: "Nemo has been updated in your contact list."
hrefstring(uri)
Example: "https://api.signable.co.uk/v1/contacts/17224150"
contact_idinteger
Example: 17224150
contact_namestring
Example: "Nemo"
contact_emailstring(email)
Example: "nemo@coralreef.com"
contact_updatedstring(date-time)
Example: "2025-07-07T09:59:25+0000"
Response
application/json
{ "http": 200, "message": "Nemo has been updated in your contact list.", "href": "https://api.signable.co.uk/v1/contacts/17224150", "contact_id": 17224150, "contact_name": "Nemo", "contact_email": "nemo@coralreef.com", "contact_updated": "2025-07-07T09:59:25+0000" }

Request

Deletes a contact by their contact_id.

Security
basicAuth
Path
contact_idintegerrequired
Example: 17224150
curl -i -X DELETE \
  -u <username>:<password> \
  https://developers.signable.app/_mock/openapi/contacts/17224150

Responses

Contact deleted successfully

Bodyapplication/json
httpinteger
Example: 200
messagestring
Example: "Nemo has been removed from your contact list."
contact_idinteger
Example: 17224150
contact_namestring
Example: "Nemo"
contact_emailstring(email)
Example: "nemo@coralreef.com"
Response
application/json
{ "http": 200, "message": "Nemo has been removed from your contact list.", "contact_id": 17224150, "contact_name": "Nemo", "contact_email": "nemo@coralreef.com" }

Request

Returns a paginated list of all envelopes that the contact is a recipient of. Each envelope includes basic metadata such as its current status, timestamps, and optional signed PDF link.

Security
basicAuth
Path
contact_idintegerrequired

The unique ID of the contact

Example: 17225983
Query
offsetinteger

The index of the first envelope to retrieve.

Default 0
Example: offset=0
limitinteger[ 1 .. 50 ]

The maximum number of envelopes to return. If more than 50 is requested, 10 will be returned instead.

Default 10
curl -i -X GET \
  -u <username>:<password> \
  'https://developers.signable.app/_mock/openapi/contacts/17225983/envelopes?offset=0&limit=10'

Responses

List of envelopes the contact is associated with

Bodyapplication/json
httpinteger
Example: 200
offsetinteger
Example: 0
limitinteger
Example: 10
total_envelopesstring
Example: "3"
envelopesArray of objects(ContactEnvelopeSummary)
Response
application/json
{ "http": 200, "offset": 0, "limit": 10, "total_envelopes": "3", "envelopes": [ { … }, { … }, { … } ] }

Users

Control user accounts and roles.

Operations

Branding

Customize visual and branding settings for emails.

Operations

Settings

Configure account-wide preferences and defaults.

Operations

Webhooks

Receive real-time notifications about document events.

OperationsWebhooks