Feel free to reach techsupport@surepass.io for any technical support or guidance.
Authorization header as Bearer YOUR_JWT_TOKEN.https://sandbox.surepass.apphttps://kyc-api.surepass.app| Header | Required | Description |
|---|---|---|
| Authorization | Yes | Bearer token for authentication (format: Bearer YOUR_JWT_TOKEN) |
| Content-Type | Yes | Must be application/json |
| Parameter | Type | Required | Description |
|---|---|---|---|
| sign_type | string | Yes | Type of signature. Must be set to "pfx" for PFX certificate signing |
| file_id | string | Yes | Unique identifier of the PDF file to be signed (Obtained from the eSign Upload API) |
| pfx_id | string | Yes | Unique identifier of the PFX certificate file (Obtained from the eSign Upload API) |
| config | object | No | Configuration object for signature customization |
| config.reason | string | No | Reason for signing the document |
| config.positions | object | No | Object defining signature positions on specific pages. Keys are page numbers (as strings), values are arrays of position objects |
| config.positions.{page}.x | number | No | X-coordinate for signature placement on the specified page |
| config.positions.{page}.y | number | No | Y-coordinate for signature placement on the specified page |
| prefill_options | object | No | Pre-filled user information for the signing process |
| prefill_options.full_name | string | No | Full name of the signer |
| prefill_options.mobile_number | string | No | Mobile number of the signer |
| prefill_options.user_email | string | No | Email address of the signer |
{
"sign_type": "pfx",
"file_id": "files_koKsXuqleqLxsBRvQxffe",
"pfx_id": "files_SbhOGrbgOsgjsDepfyod",
"config": {
"reason": "Test Sign",
"positions": {
"1": [
{
"x": 40,
"y": 20
}
],
"2": [
{
"x": 100,
"y": 50
}
]
}
},
"prefill_options": {
"full_name": "Rahul",
"mobile_number": "9876541271",
"user_email": "rahul@gmail.com"
}
}| Parameter | Type | Description |
|---|---|---|
| success | boolean | Indicates whether the signing operation was successful |
| status_code | number | HTTP status code of the response (200 for success) |
| message | string | Human-readable message describing the result |
| message_code | string | Machine-readable code for the message (e.g., "success") |
| data | object | Container object for response data |
| data.client_id | string | Unique identifier for the signing session (e.g., "esign_aaorqRheIkmypzpubRCi") |
| data.file_id | string | Identifier of the original file that was signed |
| data.url | string | Pre-signed S3 URL for downloading the signed PDF document (valid for limited time) |
{
"data": {
"client_id": "esign_aaorqRheIkmypzpubRCi",
"file_id": "files_koKsXuqleqLxsBRvQxffe",
"url": "https://surepass-esign.s3.amazonaws.com/esign_aaorqRheIkmypzpubRCi_signed_1761635359214251.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY5K3QRM5KKKE%2F20251028%2Fap-south-1%2Fs3%2Faws4_request&X-Amz-Date=20251028T070919Z&X-Amz-Expires=600&X-Amz-SignedHeaders=host&X-Amz-Signature=da7829915d5b83c19ad00c9accfad5f91526b49a23fced5be72943"
},
"status_code": 200,
"success": true,
"message": "Success",
"message_code": "success"
}{
"success": false,
"status_code": 401,
"message": "Unauthorized - Invalid or expired token",
"message_code": "unauthorized"
}curl --location --request POST 'https://kyc-api.surepass.app/api/v1/esign/pfx-sign' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
"sign_type": "pfx",
"file_id": "{{pfx_file_client_id}}",
"pfx_id": "{{pfx_client_id}}",
"config": {
"reason": "Test Sign",
"positions": {
"1": [
{
"x": 40,
"y": 20
}
],
"2": [
{
"x": 100,
"y": 50
}
]
}
},
"prefill_options": {
"full_name": "Rahul",
"mobile_number": "9876541231",
"user_email": "rahul@gmail.com"
}
}'{
"data": {
"client_id": "esign_aaorqRheIkmypzpubRCi",
"file_id": "files_koKsXuqleqLxsBRvQxoA",
"url": "https://surepass-esign.s3.amazonaws.com/esign_aaorqRheIkmypzpubRCi_signed_1761635359214251.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY5K3QRM5KVPBYKKE%2F20251028%2Fap-south-1%2Fs3%2Faws4_request&X-Amz-Date=20251028T070919Z&X-Amz-Expires=600&X-Amz-SignedHeaders=host&X-Amz-Signature=da782"
},
"status_code": 200,
"success": true,
"message": "Success",
"message_code": "success"
}