One Touch Sign (OTS)
Initiate Contract API
14 min
introduction welcome to the initiate contract api, your gateway to effortlessly streamline and orchestrate the process of creating and managing contracts within your application this comprehensive guide will walk you through the seamless integration of this api, empowering you to initiate contracts, define signers, customize contract parameters, and efficiently manage callback urls with the power of this api at your fingertips, you can seamlessly orchestrate complex contract workflows while ensuring a smooth and user friendly experience for all parties involved by leveraging the initiate contract api, you can easily upload your contract files, specify signer details, define callback urls, and even customize various aspects of the contract to align with your specific requirements the api harnesses the capability to dynamically generate signing urls for each signer, providing a direct and secure path for individuals to engage with and sign the contract digitally whether you're a developer looking to enhance your application's contract management capabilities or a business seeking a sophisticated and streamlined way to engage signers, the initiate contract api offers a powerful solution that seamlessly integrates into your existing infrastructure join us as we delve into the details of how to leverage the initiate contract api to empower your application with the ability to effortlessly initiate, manage, and facilitate the signing of contracts, ensuring a frictionless and secure contract execution process for all stakeholders involved let's embark on this journey to revolutionize the way contracts are managed and executed within your ecosystem authentication 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 api details the details of the api can be found here sample curl pre production curl location 'https //api preproduction signzy app/api/v3/contract/initiate' \\ \ header 'authorization ' \\ \ header 'content type application/json' \\ \ data '{ "pdf" " ", "persistauthkey" " ", "contractname" "savings account opening form", "contractexecutername" "signzy", "successredirecturl" "https //signzy com", "failureredirecturl" "https //google com", "contractttl" 10000, "callbackurl" "", "callbackurlauthorizationheader" "test", "esignprovider" "emudhra", "emudhracustomization" { "logourl" "", "headercolour" "#ff0000", "buttoncolour" "#ff0000" }, "signerdetail" \[ { "signername" "mohit", "signergender" "male", "signaturetype" "aadhaaresign otp", "uidlastfourdigits" "", "signeryearofbirth" "", "signatures" \[ { "pageno" \[ "all" ], "signatureposition" \[ "bottomleft" ] } ] }, { "signername" "ashish", "signaturetype" "aadhaaresign otp", "uidlastfourdigits" "", "signeryearofbirth" "", "signatures" \[ { "pageno" \[ 11, 2, 5 ], "signatureposition" \[ "topleft", "customize" ], "xcoordinate" \[ 300, 5 ], "ycoordinate" \[ 400, 5 ] }, { "pageno" \[ 1, 2, 5 ], "signatureposition" \[ "topleft", "customize" ], "xcoordinate" \[ 300, 5 ], "ycoordinate" \[ 400, 5 ] } ] } ], "estamp" { "type" "echallan", "secondpartyname" "test", "firstpartyname" "signzy", "statecode" "ka", "articlecode" "ka001", "stampdutyvalue" "" "purposeofstampduty" "", "considerationprice" "", "stampdutypaidby" "", "amount" 1, "location" "middlecenter", "pageno" \[], "custmondefacement" "true", "message" "" }, "signercallbackurl" "", "signercallbackurlauthorizationheader" "test" "namematchthreshold" "0 90", "allowsigneryobmatch" true, "allowsignergendermatch" true }' production curl location 'https //api signzy app/api/v3/contract/initiate' \\ \ header 'authorization ' \\ \ header 'content type application/json' \\ \ data '{ "pdf" " ", "persistauthkey" " ", "contractname" "savings account opening form", "contractexecutername" "signzy", "successredirecturl" "https //signzy com", "failureredirecturl" "https //google com", "contractttl" 10000, "callbackurl" "", "callbackurlauthorizationheader" "test", "esignprovider" "emudhra", "emudhracustomization" { "logourl" "", "headercolour" "#ff0000", "buttoncolour" "#ff0000" }, "signerdetail" \[ { "signername" "mohit", "signergender" "male", "signaturetype" "aadhaaresign otp", "uidlastfourdigits" "", "signeryearofbirth" "", "signatures" \[ { "pageno" \[ "all" ], "signatureposition" \[ "bottomleft" ] } ] }, { "signername" "ashish", "signaturetype" "aadhaaresign otp", "uidlastfourdigits" "", "signeryearofbirth" "", "signatures" \[ { "pageno" \[ 11, 2, 5 ], "signatureposition" \[ "topleft", "customize" ], "xcoordinate" \[ 300, 5 ], "ycoordinate" \[ 400, 5 ] }, { "pageno" \[ 1, 2, 5 ], "signatureposition" \[ "topleft", "customize" ], "xcoordinate" \[ 300, 5 ], "ycoordinate" \[ 400, 5 ] } ] } ], "estamp" { "type" "echallan", "secondpartyname" "test", "firstpartyname" "signzy", "statecode" "ka", "articlecode" "ka001", "purposeofstampduty" "", "userreference" "", "amount" 1, "location" "middlecenter", "custmondefacement" "true", "message" "" }, "signercallbackurl" "", "signercallbackurlauthorizationheader" "test" "namematchthreshold" "0 90", "allowsigneryobmatch" true, "allowsignergendermatch" true }' input parameters 134,99,104 false true left unhandled content type false unhandled content type false unhandled content type left unhandled content type left false unhandled content type false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type false unhandled content type left false unhandled content type left false unhandled content type estamping details false true 177left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type left false unhandled content type sample response 200 { "emudhracustomization" { "buttoncolour" "#ff0000", "headercolour" "#ff0000", "logourl" "https //media trustradius com/vendor logos/th/nh/mvdwep9m89x5 180x180 jpeg" }, "customerid" "bc3024f6 b2de 493f 8b30 e132c3701ce7", "username" "adityasahu", "contractid" "e6b9bf89 5725 4331 9efd 0ff53b914764", "pdf" "https //staging persist signzy tech/api/files/4879875/download/11d297ab903e442784c6a847a2ce10f3970b314ed512437db9f6bdfc55f6b501 pdf", "initialcontracthash" "51acd08565171da3a2e1f50b600df06b444ff18204e53103d2ef590688a3a39a", "contractname" "dd", "contractexecutername" "dd", "successredirecturl" "https //signzy com", "failureredirecturl" "https //google com", "esignprovider" "emudhra", "contractttl" 10000, "signerdetail" \[ { "signerid" "3bd160a3 5e52 4ea8 9819 c1fc1e1bd838", "signername" "mohit", "signaturetype" "aadhaaresign otp", "uidlastfourdigits" "1345", "signeryearofbirth" "0101", "signergender" "male", "signatures" \[ { "pageno" \[ "all" ], "signatureposition" \[ "bottomleft" ], "xcoordinate" \[], "ycoordinate" \[] } ], "esignurl" "https //api preproduction signzy app/api/v3/contract/esign/3bd160a3 5e52 4ea8 9819 c1fc1e1bd838" }, { "signerid" "523af19d 762f 40e1 ae00 dbc46f7ed8b1", "signername" "cdcdc", "signaturetype" "aadhaaresign otp", "uidlastfourdigits" "1345", "signeryearofbirth" "0101", "signatures" \[ { "pageno" \[ 11, 2, 5 ], "signatureposition" \[ "topleft", "customize" ], "xcoordinate" \[ 300, 5 ], "ycoordinate" \[ 400, 5 ] }, { "pageno" \[ 1, 2, 5 ], "signatureposition" \[ "topleft", "customize" ], "xcoordinate" \[ 300, 5 ], "ycoordinate" \[ 400, 5 ] } ], "esignurl" "https //api preproduction signzy app/api/v3/contract/esign/523af19d 762f 40e1 ae00 dbc46f7ed8b1" } ], "callbackurl" "https //qa signzy xyz/callback/mohitposts", "callbackurlauthorizationheader" "test", "signercallbackurl" "https //qa signzy xyz/callback/mohitposts", "callbackextraparameter" \[], "filettl" "2 days", "estamp" { "type" "echallan", "secondpartyname" "test", "firstpartyname" "vmware", "statecode" "nl", "articlecode" "nl001", "purposeofstampduty" "sjs", "amount" 1, "location" "middlecenter", "custmondefacement" "true", "message" "stamp duty of rs 1 paid via stamp paper certificate no xdxdxcd dated 121212" } } output parameters true false 147false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type signerdetail true falsefalse unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type signature (within signerdetail) true falsefalse unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type estamp true falsefalse unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type sample errors 400 { "name" "error", "message" "invalid url extension", "reason" "validation error", "type" "bad request", "statuscode" 400 } 400 { "name" "error", "message" "successredirecturl is not allowed to be empty", "reason" "validation error", "type" "bad request", "statuscode" 400 } 400 { "name" "error", "message" "failureredirecturl is not allowed to be empty", "reason" "validation error", "type" "bad request", "statuscode" 400 } 400 { "name" "error", "message" "esignprovider must be one of \[nsdl, emudhra]", "reason" "validation error", "type" "bad request", "statuscode" 400 } 401 { "message" "invalid authentication credentials" } 500 { "error" { "name" "error", "message" "internal server error", "reason" "internal server error", "type" "internal server error", "statuscode" 500 } } error parameters true falsefalse unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type error codes true falsefalse unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type false unhandled content type