eSign Using Doc Signer API
Introducing the "eSign Using Doc Signer API" – a cutting-edge solution that revolutionizes the way documents are electronically signed, combining the advanced capabilities of Document Signer Certificates Class 2 and Class 3. This API empowers you to seamlessly incorporate digital signatures into your document workflows, leveraging the enhanced security of Class 2 and Class 3 certificates. What sets this API apart is its remarkable ability to provide complete customization of the signing process. With the freedom to precisely tailor the position of the signature within the document, you can ensure a seamless alignment with your unique requirements. By utilizing this innovative API, you not only elevate the efficiency and convenience of document signing, but you also unlock the potential for enhanced security and compliance. Experience a new era of electronic signatures, where every document is effortlessly signed, sealed, and delivered with precision.
API authentication is a crucial security process that ensures authorized access to an application programming interface (API). It involves validating the identity of users or systems seeking to interact with the API. Please use the access token shared with you by your assigned Signzy's CSM. Please set the value of the key Authorization in the headers to the access token, while making an API call. In this way, Signzy's system will be able to authenticate you and you will be able to make a successful API call.
Parameter Name | Type | Mandatory/Optional | Description |
String | Mandatory | Pass the document to be signed in below formats -
| |
signatureOptions | String | Mandatory | Pass either of the below 2 supported signature options -
|
certificateId | String | Mandatory | Pass the certificate ID of docSignerClass2 or docSignerClass3whichever you want to use to sign the document. CertificateID can be generated by using UploadDocSignConfig API. |
signatures | Array of Objects | Mandatory | An array of signature objects where the signatures will be placed |
signatures.pageNo | Array | Mandatory | Array of page numbers to specify where the signature(s) should be placed. Note - In case where signature needs to be placed on all pages, pass the value ALL In case where signature needs to be placed on all pages, pass the value LAST |
signatures.signaturePosition | String | Mandatory | Position for the signature on the specified page. It will accept the following values -
In case of passing the value "CUSTOMIZE", the xCoordinate, yCoordinate, height and width must be passed |
signatures.xCoordinate | Array of Numbers | Conditionally Mandatory | X-coordinate for the specified signature placement. |
signatures.yCoordinate | Array of Numbers | Conditionally Mandatory | Y-coordinate for the specified signature placement. |
signatures.height | Number | Conditionally Mandatory | Height of the signature box for the specified page. The minimum value is 70(pixels). If no value is provided or a value less than 70 is passed, it will be set to the default height of 70. |
signatures.width | Number | Conditionally Mandatory | Width of the signature box for the specified page. The minimum value is 130(pixels). If no value is provided or a value less than 130 is passed, it will be set to the default width of 130. |
logoUrl | String | Mandatory | URL of the logo of the client which will be used in the sign that will appear on the signed pdf file. It can have 3 allowed formats -
|
fileTtl | String | Mandatory | The time to live for the signed PDF file. Post this TTL, the file will be deleted. It should be in days. For example, 2 days. |
reason | String | Optional | Only applicale in cases of Doc Signer Class 3. You can pass a reason for the signing You can remove this from the request body if you are using Doc Signer Class 2. |
location | String | Optional | Only applicale in cases of Doc Signer Class 3. You can pass a location for the signing. For example, Bangalore. You can remove this from the request body if you are using Doc Signer Class 2. |
Parameters | Description | Type | Mandatory/Optional |
type | You want to use estamp or eChallan. Please pass "eStamp" if you want to use eStamping | String | Mandatory |
stampDetails | Details of the stamp papers which needs to be stamped on the document | Array Of Objects | Mandatory |
stampDetails.stateCode | State code of the states where estamps are valid. Possible values : ["KA", "MH", "GJ", "AP", "AN", "AS", "BR", "CT", "CH", "DN", "DD", "DL", "HP", "JK", "JH", "LA", "OR", "PY", "RJ", "TN", "TR", "UP", "UT", "PB", "WB", "GA", "HR", "KL", "MN", "ML", "MZ", "NL", "LD", "SK", "AR", "TG", "MP"] | String | Mandatory |
firstPartyName | Name of first party involved in the transaction | String | Mandatory |
secondPartyName | Name of second party involved in the transactiton | String | Mandatory |
stampDetails.stampDutyValue | Amount of the stamp duty | String | Mandatory in cases when type is eStamp |
stampDetails.purposeOfStampDuty | Purpose of stamp duty | String | Mandatory |
considerationPrice | Amount of fund involved in the transaction | string | Mandatory in cases when type is eStamp |
stampDetails.articleCode | Article Code for E-stamping | String | Mandatory |
stampDutyPaidBy | Name of the party who paid the stamp duty(first party or second party) | String | Mandatory |
stampDetails.count | Count of the stamp papers that needs to be used | String | Mandatory |
Parameters | Description | Type | Mandatory/Optional |
type | You want to use estamp or eChallan. Please pass "eChallan", if you want to use eChallan. | String | Mandatory |
stateCode | State code of the states where echallans are valid. Possible values : ["KA", "MH", "GJ", "AP", "AN", "AS", "BR", "CT", "CH", "DN", "DD", "DL", "HP", "JK", "JH", "LA", "OR", "PY", "RJ", "TN", "TR", "UP", "UT", "PB", "WB", "GA", "HR", "KL", "MN", "ML", "MZ", "NL", "LD", "SK", "AR", "TG", "MP"] | String | Mandatory |
firstPartyName | Name of first party involved in the transaction | String | Mandatory |
secondPartyName | Name of second party involved in the transactiton | String | Mandatory |
purposeOfStampDuty | Purpose of stamp duty/challan | String | Mandatory |
articleCode | Article Code | String | Mandatory |
location | Location of defacement Available Option : topLeft, topCenter, middleLeft, middleCenter, bottomLeft, bottomCenter Right not included as there can be space issue. | String | Optional (By default bottomLeft) |
amount | amount of the eChallan duty | String | Mandatory |
pageNo | Page no on which defacement is needed. | Array | optional(By default first page) |
custmonDefacement | custmDefacement is required or not | boolean | Optional(By default false) |
message | text for custom defacement, It can contain variables. the variable should be enclosed in {{}} and can be one from the given {{challanNo}},{{challanDate}},{{stateCode}},{{firstParty}},{{articleCode}},{{amount}},{{secondPartyName}},{{purposeOfStampDuty}},{{stampDutyPaidBy}} | String | Mandatory when custmonDefacement is true |
Parameter Name | Type | Description |
String | The input PDF document to be signed | |
signatureOptions | String | 2 supported signature options -
Either of the 2 was used to sign the document. |
signedPdf | String | The signed PDF document after signing using the supported class 2 or class 3 document signer certificates.
|
Parameter | Type | Description |
name | String | In case of error, the name will come as "error" |
message | String | Error Message |
reason | String | Reason for the Error |
type | String | Type of Error |
statusCode | String | Status code of the Error |
Error Code | Error Message | Explanation |
400 | Bad Request | Input parameter has a missing required parameter or invalid inputs |
401 | Authorization Failed | Authorization token is invalid |
409 | Upstream Error | Error from the upstream while doing the signing |
500 | Internal Server Error | Internal error at Signzy, Please reach out to [email protected] |