NomaSign for developers

NomaSign Integration API v1.2.3OAS 3.1.0

Send documents for electronic signature from your own system. Send reusable templates or your own generated PDFs, prefill fields, hand out signing links, and get webhooks the moment documents are signed.

Recommended

Send a template

Design a document pack once in the web app, then send it with a small, fast call. Lightest on your API allowance.

POST /api/templates/send
For generated documents

Send your own PDFs

Every document unique? Upload to your cloud drive and send by file id. Fields are placed automatically and you get a signing link per signer.

POST /api/sessions/send
Completion signal

Receive webhooks

HMAC-signed notifications when documents are signed, declined, or completed. No polling.

X-NomaSign-Signature
1

Authenticate

Exchange your refresh token for a short-lived access token at POST /connect/token, and store the new refresh token it returns in place of the old one.

2

Send

Call a send endpoint with a Bearer token; every request and response schema is documented below.

3

Track

Receive webhooks, or cancel outstanding links with POST /api/sessions/cancel.

Webhook events

Register an HTTPS endpoint for your integration and NomaSign posts a JSON payload when any of these happen. Failed deliveries are retried automatically with increasing delays.

signing_participant.signedOne signer has signed. Fires once per signer, so you can show progress on documents with several signers.
signing_session.completedEveryone has signed and the document is final.
signing_session.declinedA signer declined to sign, with the reason they gave.
signing_session.cancelledThe request was cancelled, in the web app or through the API.

Verify every delivery

Each request carries X-NomaSign-Signature: t=<timestamp>,v1=<signature>. Compute an HMAC-SHA256 of <timestamp>.<raw body> with your webhook secret and compare it with v1. Reject old timestamps to block replays, and use X-NomaSign-Event-Id to skip a delivery you have already processed.

Credentials

API access runs through an Integrator account in your NomaSign organisation, so automated sends are kept apart from your team's own logins. You generate a refresh token and a webhook secret for it once, in the web app. Your system exchanges the refresh token for a short-lived access token whenever it needs one. Every exchange returns a new refresh token: store it in place of the old one.

New to the API?

The setup tutorial takes you from no account to your first signed document:

  1. Create your NomaSign account
  2. Create your Integration account
  3. Create a signing template
  4. Generate your token and webhook secret
  5. Clone the example app
  6. Receive webhook notifications
API reference
EndpointWhat it does
POST /connect/tokenExchange your refresh token for an access token (OAuth2)
POST /api/templates/sendSend documents for signature using a reusable template, to one or many recipients at once
POST /api/sessions/sendSend your own PDF documents for signature and get a signing link for each signer
POST /api/sessions/cancelCancel a signing request and revoke its signing links

Loading the interactive reference…