Authentication

The SignNow REST API provides services using HTTPS. To ensure data privacy and keep your servers secure, unencrypted HTTP is not supported.

The SignNow API complies with digital standards for secure online communication and document management: SOC 2 Type II Certification, HIPAA, GDPR, PCI Data Security Standards for payment security, eIDAS, and 21 CFR Part 11 regulations.

The SignNow API relies on OAuth 2.0 protocol for authorization. During the authorization flow every user should obtain a token for each application. The token is generated from the CLIENT_ID:CLIENT_SECRET pair. In order to generate the token, users should first have the client ID and secret base-64 encoded.

All requests must include an access token in the Authorization Header (except when creating a user or requesting an access token). POST requests for creating a user or requesting an access token must include the client credentials in the Authorization Header as a base64 encoded string of client_id:client_secret.

Only integers are recognized as numeric values.

In the SignNow API Reference, try out the request. Here’s a quick example of a request for an access token and the correct response:

curl -X POST \
  https://api-eval.signnow.com/oauth2/token \
  -H 'Authorization: Basic {{encoded_client_credentials}}' \
  -H 'content-type: multipart/form-data;' \
  -F 'username=user@email.com' \
  -F 'password={{password}}' \
  -F 'grant_type=password' \
  -F 'scope=*'

For examples in Node, Ruby, JavaScript, and Python, visit the API Reference.

Request body parameters:

Parameter Definition Example
username user’s email address signnow.tutorial@signnow.com
password user’s password elvel348274nkjk
grant_type One of these: "authorization_code", "password", "refresh_token" "password"
scope A space delimited list of endpoints "user documents user/documentsv2",
or "*" for full access

Request headers:

Header Definition
Authorization Base64 encoded string of client credentials
content-type application/x-www-form-url encoded
curl -X POST \
  https://api-eval.signnow.com/oauth2/token \
  -H 'Authorization: Basic {{encoded_client_credentials}}' \
  -H 'content-type: multipart/form-data;' \
  -F 'username=user@email.com' \
  -F 'password={{password}}' \
  -F 'grant_type=password' \
  -F 'scope=*'