Initialize Esign
Start an Esign session for one or more signers on an uploaded document.
pageinside elements is zero-indexed:0is the first page.- Multiple elements can be added per signer on different pages.
email_template_overridescustomizes invite email branding; whencompany_nameis provided, default Surepass branding is hidden for white-label emails.stampoptionally reserves e-stamps into the flow — either by search (amount+state_code+article_id, optionally narrowed by party names) or by explicitstamp_instance_ids. Reserved stamp PDFs are prefixed to the uploaded PDF before signing starts.
Authorization
bearerAuth Bearer token authentication — paste your access token below.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
aadhaar — OTP-based Aadhaar Esign. suresign — auto-signing by
Surepass. pfx — PFX-certificate signing (requires pfx_id).
Value in
- "aadhaar"
- "suresign"
- "pfx"
Authentication mode for the signing session.
File ID returned by POST /api/v1/files/upload-pdf.
Folder name to organize the session under.
Session expiry. Min 3600 (1 hour), max 2592000 (30 days).
3600 <= value <= 2592000Optional invite email branding overrides. When company_name is
provided, the default Surepass logo and branding are hidden, allowing
white-label emails.
Optional e-stamping configuration. Use either the amount-based
reservation flow (amount + state_code + article_id, required
together) or pass pre-reserved stamp_instance_ids.
1 <= itemsResponse Body
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/esign/initialize-esign" \ -H "Content-Type: application/json" \ -d '{ "sign_type": "aadhaar", "auth_mode": 1, "file_id": "file_onwEUoMxnWhewUzodZeW", "folder": "lehddsun", "expiry_seconds": 7200, "email_template_overrides": { "company_name": "Acme Corp", "legal_name": "Acme Corporation Pvt Ltd.", "support_email": "support@acme.com" }, "signers": [ { "full_name": "Test1", "email": "test1@example.com", "reason": "Test1 Sign", "verify_email": false, "verify_mobile": false, "name_match": true, "face_ref_file_id": "file_faceReferenceImage", "face_match_threshold": 80, "face_max_attempts": 5, "notification": { "invite": true, "completion": true, "whatsapp": true }, "elements": [ { "x": 100, "y": 10, "page": 0, "type": "signature", "allow_wet_signature": false } ] }, { "full_name": "Test2", "email": "test2@example.com", "mobile": "2222222222", "reason": "Test2 Sign", "verify_email": true, "verify_mobile": false, "notification": { "invite": false, "completion": true, "whatsapp": false }, "elements": [ { "x": 100, "y": 10, "page": 0, "type": "signature" } ] } ] }'{ "data": { "client_id": "esign_lpHGXloMQwkNPPXvBHCH", "status": "pending", "file_id": "file_onwEUoMxnWhewUzodZeW", "signers": [] }, "status_code": 200, "message": "Success", "success": true}