Step-1: Create Signature Request
Option-1: Multipart type request
|
{BASE_URL}/v2/client/document/upload
|
Headers:
authorization: “Basic Base64encodedValueOf(client_id:client_secret)”
content-type : “multipart/form-data”
|
TIP: Construct multipart data as standard processes in the language of your choice to make the post call. In some languages like Java “boundary” parameter has to be calculated explicitly for multipart type of calls.
Option 1 is Multipart and takes pdf & images in input. Option 2 given below is completely json based and takes only Base64 pdf as input.
Body:
Param 1: file, type - file (Pass right content-type eg. application/pdf)
Param 2 : request, type - text (content-type text/plain). Request parameter should be in below format
|
|
{
"signers": [{
"identifier": "signer email/mobile",
"name": "signer name",
"sign_type": "sign_type",
"reason": "Reason for signing"
}],
"expire_in_days": 10,
"generate_access_token": true,
"display_on_page": "all"
}
|
Option-2: (Use this if you do not want to use Multipart type of request required with option 1)
|
{BASE_URL}/v2/client/document/uploadpdf
|
Headers:
authorization: “Basic Base64encodedValueOf(client_id:client_secret)”
content-type : “application/json”
|
|
{
"signers": [
{
"identifier": "signer1 email/mobile",
"name": "Signer Name",
"sign_type": "aadhaar",
"reason": "Reason for signing"
}
],
"expire_in_days": 10,
"display_on_page": "custom",
"notify_signers": true,
"send_sign_link": true, "generate_access_token": true,
"file_name": "Test.pdf",
"file_data": "base64 of pdf document",
"sign_coordinates": {
"signer1 email/mobile": {
"1": [
{
"llx": 376.55510204081634,
"lly": 67.89677419354838,
"urx": 535.8943577430973,
"ury": 129.36122241086588
}
]
}
},
"estamp_request": {
"tags": {
"estamp_tag": quantity
},
"sign_on_page": "ALL",
"note_content": "This is dummy content",
"note_on_page": "ALL"
}
}
|
Request Attributes :
Attributes common for Option 1 & Option 2 mentioned above :
|
|
|
|
|
|
|
|
|
|
Valid email id or 10 digit mobile
|
Mandatory. Email address or mobile of user from whom signature is requested
|
|
|
|
Optional. Signing reason for user from whom signature is requested
|
|
|
|
Optional. Name of signer. Refer here for more details
|
|
|
|
Optional. “aadhaar” : sign using aadhaar. [ default ] “dsc” : sign using DSC
“electronic” : Screen pad based signature (slate signature)
|
|
|
|
|
|
|
|
Optional. Email address of authorized signatory of business
|
|
|
|
Optional. Unique ID to be passed by you for the document (for idempotency).
Note: Please use this with Unique Callback Id per document. If same callback Id is passed in the request, it’ll be considered duplicate request and information about previous document will be returned.
|
|
|
|
Optional. Message/Notes to be sent to the signing parties
|
|
|
|
Optional. Set validity for expiry. Eg: Sign before X days, default 10 and max 90
|
|
|
|
Optional. In case of multiparty signing follow the sequence.
|
|
|
|
Default false, if you need an access token then pass this. If allowed for other input details, will receive an access_token object in response.
|
|
|
|
|
|
|
|
Optional. Send direct signing link over email or sms. Default False.
|
|
|
|
Optional. Signature display on page - first/last/all/custom (default is first). Pass “custom” if you are using sign_coordinates.
TIP: Refer sample request(s) below for example
|
|
|
|
Optional. Customized placing of signature.
Sample input :
"sign_coordinates":{ "xyz@abc.com":{ "1":[{ "llx":315,"lly":20, "urx":455,"ury":60}]}}
TIP: Please refer to “How to find coordinates on a document section”
Map of signer identifiers. Each identifier points to a map of page no. Each page no. points to array of signature coordinates
TIP: Refer sample request(s) above for example
|
|
|
|
Optional. Sends an email to signers once document uploaded & signature request is created for signers
|
|
|
|
Optional. Details of Estamps, Quantities to be consumed and other merge details like
|
|
|
|
Map of tag names and quantities to be attached. Tag names should be without spaces
Note : Do not pass any special character or space in E-stamp tag name.
|
|
|
|
|
|
|
|
|
|
|
|
|
Attributes only applicable on Option 2 :
|
|
|
|
|
|
|
Mandatory. Base64 encoded pdf file content
|
|
|
|
Optional. File Name for response.
Note : Do not pass any Special character except underscore (_) in filename.
|
HTTP Status Codes
|
|
|
Invalid request. Some field missing/invalid
|
|
Authentication Error. Check client_id and/or client_secret
|
|
Authorization Error. Operation/Action is not allowed
|
|
Entity/Resource not found or does not exist
|
|
Conflicting/Duplicate action
|
|
Request rejected by rate limiter on too many frequent requests
|
|
Gateway error. Internal error of Digio
|
|
|
|
|
|
{
"id": "DID**********",
"is_agreement": true,
"agreement_type": "outbound",
"agreement_status": "requested",
"file_name": "Test.pdf",
"created_at": "2023-03-14 18:05:12",
"self_signed": false,
"self_sign_type": "aadhaar",
"no_of_pages": 2,
"signing_parties": [
{
"name": "Signer Name",
"status": "requested",
"type": "self",
"signature_type": "aadhaar",
"identifier": "signer1 email/mobile",
"reason": "Reason for signing",
"expire_on": "2023-03-24 23:59:59"
}
],
"sign_request_details": {
"name": "Digio",
"requested_on": "2023-03-14 18:05:12",
"expire_on": "2023-03-24 23:59:59",
"identifier": "org account email_id",
"requester_type": "org"
},
"channel": "api",
"other_doc_details": {},
"access_token": {
"created_at": "2023-03-14 18:05:12",
"id": "GWT*******",
"entity_id": "DID**********",
"valid_till": "2023-03-14 19:05:12"
},
"attached_estamp_details": {
"estamp_tag": [
"certificate_id"
]
}
}
|
Response Attributes
|
|
|
|
|
Unique ID to identify documents provided by Digio.
This has to be passed for directly landing on this document within the website
|
|
|
|
|
|
“outbound”: Sent request to sign
“inbound”: Received request to sign
|
|
|
“requested”: pending signature from at least one signing party
“completed”: all signing parties have signed
“expired”: at least one signing party didn’t sign prior to request expiry
(Note: Documents that “expired” without any signature, and hasn’t been accessed in a month will be archived.
Documents successfully signed archived after an year audit trail is available for downloading)
|
|
|
Name of the file as provided by you
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of Document upload in IST
|
|
|
|
|
|
“Aadhaar”
“Electronic”
“DSC”
|
|
|
Number of pages in document
|
|
|
|
|
|
Name of the signing party
|
|
|
"requested": pending signature from user
"signed": signed by user
"expired": user didn’t sign prior to request expiry
|
|
|
"self": Requested from self
"org": Requested from an Organization and signatory not assigned
"signatory": Requested from an Organization and signatory has been assigned
|
|
|
"aadhaar": signed/ to be signed using aadhaar
"dsc": signed/ to be signed using dsc “Electronic” : signed using slate
|
|
|
Email or mobile of the signing party
|
|
|
Reason to sign the document
|
|
|
“Slate”
“OTP” (can be viewed for electronic signature only)
|
“signing_request_details”
|
|
|
|
|
Organization name registered with Digio account
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of Sign Request origination in IST
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of Sign Request expiry in IST, if set. Default: 10 days from requested_on
|
|
|
Organization email address registered with Digio account
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of generation of access token.
|
|
|
Unique identifier referencing an access token.
|
|
|
Unique identifier of the parent entity the access token belongs to.
|
|
|
DateTime at which the access token expires. New token can be generated when expired with the access token generation API mentioned in the document.
|
“attached_estamp_details”
|
|
E Stamp Certificate ID consumed during document creation
|
Note: Documents that “expired” without any signature, and hasn’t been accessed in a month will be archived.
Templates
Templates allow you to save and reuse a standard document that only needs certain information customized to the recipients by simply putting relevant placeholder variables. This way, all you have to do to share a document is to pass the values for the placeholder variables and just send it.
Templates on dashboard user guide
A user guide on how to create and use templates through Digio dashboard is available here- https://ivy-cirrus-4aa.notion.site/Templates-User-guide-d9c1d88e09bd4656aa67c0486a1f4447
API to generate (merge) documents from multiple templates
|
{BASE_URL}/v2/client/template/multi_templates/generate_doc_and_merge
|
Please note: template_key is the Template ID (Refer to User Manual)
Sample URL from dashboard - https://ext-enterprise.digio.in/#/templates/custom/preview/TMP210528120531193ONE19SNWFEMO3L
Headers:
authorization: “Basic Base64encodedValueOf(client_id:client_secret)”
content-type : “application/json”
|
Sample Request
[
{
"template_key": "Template ID value from digio dashboard ",
"template_values": {
"sub_end_dt": "31/12/1899",
"sys_year": "2018",
"sys_month": "9",
"sys_date": "20/9/2018",
"sc_ltla": "NA",
"subv_flag": "N"
},
"images": {
"customer_photo": {
"content": "BASE64 of input image",
"length": 100000,
"width": 100000,
"type": "JPEG/PNG" //mention one
}
}
},
{
"template_key": "Template ID value from digio dashboard",
"template_values": {
"user_name": "test 2",
"user_add": "2 M.G. Road, Bangalore 560001"
}
},
{
"template_key": "Template ID value from digio dashboard",
"template_values": {
"duration": "2 years",
"interest": "10%"
}
}
]
|
Denotes: Variable set on your document template
Output is a merged PDF file
API to create sign request from templates
|
{BASE_URL}/v2/client/template/multi_templates/create_sign_request
|
Please note: template_key is the Template ID (Refer to User Manual)
Sample URL from dashboard - https://ext-enterprise.digio.in/#/templates/custom/preview/TMP210528120531193ONE19SNWFEMO3L
Headers:
authorization: “Basic Base64encodedValueOf(client_id:client_secret)”
content-type : “application/json”
|
Sample Request
{
"signers": [
{
"identifier": "signer1_identifier",
"name": "signer1_name",
"sign_type": "electronic",
"signer_tag": "Generic name of signer1"
},
{
"identifier": "signer2_identifier",
"name": "signer2_name",
"sign_type": "electronic",
"signer_tag": "Generic name of signer2"
},
{
"identifier": "signer3_identifier",
"name": "signer3_name",
"sign_type": "aadhaar",
"signer_tag": "Generic name of signer3"
}
],
"expire_in_days": 10,
"generate_access_token": True,
"send_sign_link": true,
"notify_signers": true,
"display_on_page": "custom",
"file_name": "test.pdf",
"estamp_request": {
"tags": {
"estamp_tag": quantity
},
"sign_on_page": "LAST",
"note_content": "This is dummy content",
"note_on_page": "ALL"
},
"templates": [
{
"template_key": "TMP************",
"template_values": {
"variable_name": "variable value"
},
"images": {
"image_variable_name": {
"content": "base64 of image"
"type": "JPEG"
}
}
},
{
"template_key": "TMP*****",
"template_values": {}
}
]
}
|
Denotes: Variable set on your document template
Request Attributes :
Attributes common for Option 1 mentioned above :
|
|
|
|
|
|
|
|
|
|
Valid email id or 10 digit mobile
|
Mandatory. Email address or mobile of user from whom signature is requested
|
|
|
|
|
|
|
|
Optional. Signing reason for user from whom signature is requested
|
|
|
|
Optional. Name of signer. Refer here for more details
|
|
|
|
Optional. “aadhaar” : sign using aadhaar. [ default ] “dsc” : sign using dsc
“electronic” : Screen pad based signature (slate signature)
|
|
|
|
Pass signer tag defined in template in dashboard
|
|
|
|
|
|
|
|
Optional. Email address of authorized signatory of business
|
|
|
|
Optional. Unique ID to be passed by you for the document (for idempotency).
Note: Please use this with Unique Callback Id per document. If the same callback Id is passed in the request, it’ll be considered a duplicate request and information about the previous document will be returned.
|
|
|
|
Optional. Message/Notes to be sent to the signing parties
|
|
|
|
Optional. Set validity for expiry. Eg: Sign before X days
Default: 10 days
Minimum: 1 day
Maximum value: 90 days
|
|
|
|
Optional. In case of multiparty signing follow the sequence.
|
|
|
|
Optional. Send a direct signing link over email or sms. Default False.
|
|
|
|
Optional. Signature display on page - first/last/all/custom (default is first). Pass “custom” if you are using sign_coordinates.
TIP: Refer sample request(s) below for example
|
|
|
|
Optional. Customized placing of signature.
Sample input :
"sign_coordinates":{ "xyz@abc.com":{ "1":[{ "llx":315,"lly":20, "urx":455,"ury":60}]}}
TIP: Please refer to “How to determine coordinates on a document section”
Map of signer identifiers. Each identifier points to a map of page no.Each page no. points to array of signature coordinates
TIP: Refer sample request(s) below for example
|
|
|
|
Optional. Sends an email to signers once document uploaded & signature request is created for signers
|
|
|
|
Optional. Details of Estamps, Quantities to be consumed and other merge details like
|
|
|
|
Map of tag names and quantities to be attached. Tag names should be without spaces
|
|
|
|
|
|
|
|
Same as above sign_coordinates for normal documents
|
|
|
|
|
|
|
|
|
|
|
|
|
Sample Response
{
"id": "DID****",
"is_agreement": true,
"agreement_type": "outbound",
"agreement_status": "requested",
"file_name": "test.pdf",
"created_at": "2023-01-06 15:24:14",
"self_signed": false,
"self_sign_type": "aadhaar",
"no_of_pages": 4,
"signing_parties": [
{
"name": "Signer1_name",
"status": "requested",
"type": "self",
"signature_type": "electronic",
"signature_mode": "slate",
"identifier": "signer1_identifier",
"expire_on": "2023-01-16 23:59:59"
},
{
"name": "Signer2_name",
"status": "requested",
"type": "self",
"signature_type": "electronic",
"signature_mode": "slate",
"identifier": "signer_2_identifier",
"expire_on": "2023-01-16 23:59:59"
},
{
"name": "Signer3_name",
"status": "requested",
"type": "self",
"signature_type": "aadhaar",
"identifier": "Signer_3_identifier",
"expire_on": "2023-01-16 23:59:59"
}
],
"sign_request_details": {
"name": "Digio",
"requested_on": "2023-01-06 15:24:15",
"expire_on": "2023-01-16 23:59:59",
"identifier": "org_identifier",
"requester_type": "org"
},
"channel": "api",
"other_doc_details": {
"web_hook_available": true
},
"access_token": {
"created_at": "2023-01-06 15:24:15",
"id": "GWT********",
"entity_id": "DID*********",
"valid_till": "2023-01-06 16:24:15"
},
"template_meta_data_details": [
{
"signer_details": {
"0": {
"sign_type": "aadhaar",
"optional": false,
"sign_tag": "Generic name of signer1"
},
"1": {
"sign_type": "electronic",
"optional": true,
"sign_tag": "Generic name of signer2"
},
"2": {
"optional": false,
"sign_tag": "Generic name of signer3"
}
}
},
{
"signer_details": {
"0": {
"optional": false,
"sign_tag": "Generic name of signer1"
},
"1": {
"optional": false,
"sign_tag": "Generic name of signer3"
},
"2": {
"optional": false,
"sign_tag": "Generic name of signer3"
}
}
}
],
"attached_estamp_details": {
"estamp_tag": [
"certificate_id"
]
}
}
|
Response Attributes
|
|
|
|
|
Unique ID to identify documents provided by Digio.
This has to be passed for directly landing on this document within the website
|
|
|
|
|
|
“outbound”: Sent request to sign
“inbound”: Received request to sign
|
|
|
“requested”: pending signature from at least one signing party
“completed”: all signing parties have signed
“expired”: at least one signing party didn’t sign prior to request expiry
|
|
|
"requested": pending signature from requestor
"signed": signed by requestor
"expired": requestor didn’t sign prior to request expiry
|
|
|
Name of the file as provided by you
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of Document upload in IST
|
|
|
|
|
|
“Aadhaar”
“Electronic”
“DSC”
|
|
|
Number of pages in document
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of last action (signature) on Document in IST
|
|
|
|
|
|
Name of the signing party
|
|
|
"requested": pending signature from user
"signed": signed by user
"expired": user didn’t sign prior to request expiry
|
|
|
"self": Requested from self
"org": Requested from an Organization and signatory not assigned
"signatory": Requested from an Organization and signatory has been assigned
|
|
|
"aadhaar": signed/ to be signed using aadhaar
"dsc": signed/ to be signed using dsc
|
|
|
“Slate”
“OTP” (can be viewed for electronic signature only)
|
|
|
Email or mobile of the signing party
|
|
|
Reason to sign the document
|
“signing_request_details”
|
|
|
|
|
Organization name registered with Digio account
|
|
|
Organization email address registered with Digio account
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of Sign Request origination in IST
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of Sign Request expiry in IST, if set. Default: 10 days from requested_on
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of generation of access token.
|
|
|
Unique identifier referencing an access token.
|
|
|
Unique identifier of the parent entity the access token belongs to.
|
|
|
DateTime at which the access token expires. New token can be generated when expired with the access token generation API mentioned in the document.
|
"template_meta_data_details"
|
|
|
|
|
|
|
|
Optional.
“aadhaar” : sign using aadhaar. [ default ]
“dsc” : sign using DSC
“electronic” : Screen pad based signature (slate signature)
|
|
|
|
|
|
|
“attached_estamp_details”
|
|
|
|
|
E Stamp Certificate ID consumed during document creation
|
Step-2: Integrate with Digio SDK (Front end user journey)
States, Error Codes & Error Messages
Please refer Digio Gateway State document for various States, Error Codes and Error Messages
CA-ESP apk file for Mobile app based eSign in FP mode
- Click to download NSDL apk
- CDAC is yet to release its apk for Biometric authentication
- (n)Code is yet to share its apk for Biometric authentication
Additional APIs
Call Download Document API
|
{BASE_URL}/v2/client/document/download?document_id={documentId}
|
Response : is a pdf file which the corporate can fetch and store locally
NOTE - Use this API only for successfully signed documents
Get Document Details API
|
{{BASE_URL}}/v2/client/document/{documentId}?name_validation=true
|
Sample response:
Possible statuses - completed, requested, expired
{
"id": "DID******",
"is_agreement": true,
"agreement_type": "outbound",
"agreement_status": "completed",
"file_name": "Test.pdf",
"updated_at": "2023-03-10 17:44:16",
"created_at": "2023-03-10 17:44:16",
"self_signed": false,
"self_sign_type": "aadhaar",
"no_of_pages": 4,
"signing_parties": [
{
"name": "Signer Name",
"status": "signed",
"updated_at": "2022-12-20 15:59:10",
"type": "self",
"signature_type": "aadhaar",
"identifier": "customer_identifier",
"expire_on": "2023-03-20 17:44:16",
"pki_signature_details": {
"name": "Name as per aadhaar",
"aadhaar_suffix": "last 4 digits of aadhaar",
"hash_of_photograph": "hash of aadhaar card holder image",
"gender": "gender as per aadhaar",
"year_of_birth": "year of birth",
"postal_code": "postal code as aadhaar",
"display_name": "Name passed in API"
}
}
],
"sign_request_details": {
"name": "Digio",
"requested_on": "2023-03-10 17:44:16",
"expire_on": "2023-03-20 17:44:16",
"identifier": "org admin account",
"requester_type": "org"
},
"channel": "web",
"other_doc_details": {
"web_hook_available": true
},
"attached_estamp_details": {
"Tag_name": [
"certificate_id"
]
}
}
|
Response Attributes
|
|
|
|
|
Unique ID to identify documents provided by Digio.
This has to be passed for directly landing on this document within the website
|
|
|
|
|
|
“outbound”: Sent request to sign
“inbound”: Received request to sign
|
|
|
“requested”: pending signature from at least one signing party
“completed”: all signing parties have signed
“expired”: at least one signing party didn’t sign prior to request expiry
|
|
|
Name of the file as provided by you
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of last action (signature) on Document in IST
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of Document upload in IST
|
|
|
|
|
|
“Aadhaar”
“Electronic”
“DSC”
|
|
|
Number of pages in document
|
|
|
|
|
|
Name of the signing party
|
|
|
"requested": pending signature from user
"signed": signed by user
"expired": user didn’t sign prior to request expiry
|
|
|
"self": Requested from self
"org": Requested from an Organization and signatory not assigned
"signatory": Requested from an Organization and signatory has been assigned
|
|
|
"aadhaar": signed/ to be signed using aadhaar
"dsc": signed/ to be signed using dsc
|
|
|
Email or mobile of the signing party
|
|
|
Reason to sign the document
|
|
|
"requested": pending signature from requestor
"signed": signed by requestor
"expired": requestor didn’t sign prior to request expiry
|
|
|
|
|
|
|
|
|
Last four digits of signer’s aadhaar
|
|
|
Hash of signer’s photo associated with aadhaar
|
|
|
Gender of signer. Possible values are -
M
F
T
|
|
|
Year of signer’s birth in format: YYYY
|
|
|
|
|
|
Name passed on the API call
|
“signing_request_details”
|
|
|
|
|
Organization name registered with Digio account
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of Sign Request origination in IST
|
|
|
"yyyy-mm-dd hh:mm:ss": Timestamp of Sign Request expiry in IST, if set. Default: 10 days from requested_on
|
|
|
Organization email address registered with Digio account
|
|
|
|
|
|
|
|
|
|
|
|
|
“attached_estamp_details”
|
|
|
|
|
E Stamp Certificate ID consumed during document creation
|
Cancel Signature Request API
|
{BASE_URL}/v2/client/document/{documentId}/cancel
|
Note: Document signing request can be canceled only if the status is “Requested”.
|
{
"id": "DID*******",
"is_agreement": true,
"agreement_type": "outbound",
"agreement_status": "expired",
"file_name": "Test.pdf",
"updated_at": "2023-03-10 17:44:16",
"created_at": "2023-03-10 17:44:16",
"self_signed": false,
"self_sign_type": "aadhaar",
"no_of_pages": number of pages in document,
"signing_parties": [
{
"name": "Signer Name",
"status": "expired",
"updated_at": "2023-04-10 17:44:16",
"type": "self",
"signature_type": "signature_type",
"identifier": "signer_identifier",
"reason": "Reason for signing",
"expire_on": "2023-03-21 00:00:00"
}
],
"sign_request_details": {
"name": "Richa",
"requested_on": "2023-03-10 17:44:16",
"expire_on": "2023-03-21 00:00:00",
"identifier": "org admin account",
"requester_type": "org"
},
"channel": "api",
"other_doc_details": {
"web_hook_available": true
},
"attached_estamp_details": {}
}
|
Regenerate Access Token
Note: Use this if your access token has expired and you want to avoid first factor authentication through email/mobile otp
|
{BASE_URL}/user/auth/generate_token
|
Headers:
authorization: “Basic Base64encodedValueOf(client_id:client_secret)”
content-type : “application/json”
|
|
{
"entity_id":"DID*********"
}
|
|
|
|
|
|
The unique identifier referencing a KYC request object.
|
|
{
"response": {
"created_at": "2023-01-06 11:47:33",
"updated_at": "2023-01-06 11:47:33",
"id": "GWT********I",
"entity_id": "DID***********",
"valid_till": "2023-01-07 11:47:33"
},
"session": {
"sid": "SID********",
"is_logged_in": true
}
}
|
|
|
|
|
|
DateTime of request creation.
|
|
|
Unique identifier referencing an access token.
|
|
|
Unique identifier of the parent entity the access token belongs to.
|
|
|
DateTime at which the access token expires.
|
How to find coordinates on a document
- Login to https://ext-enterprise.digio.in (sandbox) or https://enterprise.digio.in (production) (login credentials will be shared separately)
- Upload sample .pdf document on which coordinates need to be mapped out
- Select "View coordinates" from dropdown Options
- Add "Signature Box"
- Drag to reposition and Stretch to resize
- Add as many signatures per page as required
- Scroll down to the respective page where you want to add a signature box
- Click "View Coordinates"
- Copy the sample code along with coordinates
- Refer to the below example and edit accordingly.
{
"0": { --> <replace it with signer 1 email/mobile>
"1": [ --> Position of sign on page 1 for signer 1
{
"llx": 90.12,
"lly": 236,
"urx": 259.71,
"ury": 298
}
],
"2": [ --> Position of sign on page 2 for signer 1
{
"llx": 40.59,
"lly": 780.87,
"urx": 200.9,
"ury": 821.44
}
]
},
"1": { --> <replace it with signer 2 email/mobile>
"1": [ --> Position of sign on page 1 for signer 2
{
"llx": 339.17,
"lly": 238,
"urx": 501,
"ury": 301
}
],
"2": [ --> Position of sign on page 2 for signer 2
{
"llx": 205.98,
"lly": 735.24,
"urx": 366.29,
"ury": 775.8
}
]
}
}
|
Webhooks
Webhook event required for post signing notification is doc.signed.
Refer to the sample payload for your reference.
Additional Links:
- SignServer - Documentation
- Webhook FAQ - Document
- Webhook Sample Payload - Document
- Postman Collection- Link
- Blacklisted domains - https://docs.google.com/document/d/1CsLaijCIrjtiQVlfa27Hg-tXiMKQ7O9JTPQw_PpBpSw/edit