Send a freeform or role-based invite

Freeform invite - an invitation to sign a document which doesn’t contain any fillable fields.

Signers can click anywhere on a document to add their signature.


Upload a document or Get the ID of the document you’d like to have signed

Send a freeform invite

Remember: freeform invites only work for documents with no fillable fields.

Endpoint Required Parameters Optional Parameters
GET /document Find the “document_id” for the documents to be merged in the response
or POST /document Get “document_id” from the response
POST /document/invite “document_id”
“from”: sender’s email address
“to”: signer’s email address
“cc” - email address(es) for carbon copies, can be an array of strings
“subject”: email subject
“message”: email body

▶ Send a freeform invite

curl -X POST \{{document_id}}/invite \
	-H 'Authorization: Bearer {{access_token}}' \
	-H 'Content-Type: application/json' \
	-d '{

Role-based invite - an invitation to sign a document which contains at least one fillable field assigned to one role.

Add fillable fields to a document. By default, all of them are assigned to the Signer 1 role. Add more roles either in signNow web app while editing the fields, or in the POST /document/invite while specifying parameters of the Signer object.

Each Signer object should contain the following properties:

Required properties for Signer Optional properties for Signer
“email”: signer’s email address “authentication_type”: “password”
“role”: the signer’s role (e.g. Signer 1, Signer 2). For a freeform invite this equals “Signer” “password”: will be required from signers when they open the document
“order”: (integer) the order of signing, or Signing step. When there are multiple signers, preset who signs the document first, who’s in the second group etc. Each group - one signing step. For a freeform invite this equals “1” “expiration_date”: (integer) in how many days this invite expires
“role_id”: leave empty state “” for a document with one role, or get all role IDs from GET /document/{document_id} and assign a signer to the specific role_id “reminder”: (integer) in how many days will another email be sent to remind of a signature invite

You can only use the email address associated with your signNow account (login email) as the “from” address

curl -X POST \{document_id}/invite \
  -H 'Authorization: Bearer {access_token}' \
  -H 'Content-Type: application/json' \
  -d '{
  "to": [
      "email": "",
      "role_id": "",
      "role": "Signer",
      "order": 1
  "from": "",
  "cc": [],
  "subject": "You’ve got a new signature request",
  "message": "Hi, this is an invitation email."