Feel free to reach techsupport@surepass.io for any technical support or guidance.
Authorization header as Bearer TOKEN.https://sandbox.surepass.apphttps://kyc-api.surepass.app| Header | Required | Description |
|---|---|---|
Authorization | Yes | JWT Bearer token for the target environment. Format: Bearer <token> |
Content-Type | Yes | Must be set to application/json |
| Parameter | Type | Required | Description |
|---|---|---|---|
client_id | String | Yes | The unique client identifier for the ITR record. This is generated when the ITR data is initially fetched or stored via Surepass. Follows the format itr_<alphanumeric>. |
{
"client_id": "itr_qKctszfxrMshYrznYuRP"
}| Parameter | Type | Description |
|---|---|---|
data | Object | Top-level wrapper containing the ITR filing data. |
data.client_id | String | The unique client identifier associated with the request, in the format itr_<alphanumeric>. |
data.pan_no | String | The Permanent Account Number (PAN) of the taxpayer. |
data.filed_itr_form | Array | List of all filed ITR records associated with the PAN. Each element represents one filed return. |
data.filed_itr_form[].download_link | String | A time-limited, pre-signed AWS S3 URL to download the ITR form as a PDF. This URL expires after a short duration (typically 600 seconds). |
data.filed_itr_form[].pan_no | String | The PAN number associated with this specific ITR filing. |
data.filed_itr_form[].filing_year | String | The assessment year for which the ITR was filed, in the format YYYY-YYYY (e.g., 2025-2026). |
data.filed_itr_form[].acknowledgement_no | String | The unique acknowledgement number issued by the Income Tax Department upon successful filing. |
data.filed_itr_form[].filing_type | String | Indicates whether the return is an Original filing or a Revised filing. |
data.filed_itr_form[].filing_section | String | The section of the Income Tax Act under which the return was filed (e.g., 139(1) for returns filed before the due date). |
data.filed_itr_form[].filled_by | String | Indicates who filed the return — Self if filed by the taxpayer, or the name/type of the intermediary (e.g., tax professional). |
data.filed_itr_form[].itr_form | String | The specific ITR form variant used for filing (e.g., ITR-1, ITR-2, ITR-4). |
data.filed_itr_form[].filing_date | String | The date on which the return was filed, in YYYY-MM-DD format. |
data.filed_itr_form[].status | String | Processing status of the download for this record. success indicates the download link was generated successfully. |
data.skip_failure | Boolean | If true, records that failed to process are skipped and the rest are returned. If false, any failure will affect the overall response. |
status_code | Integer | HTTP-equivalent status code for the API operation. 200 indicates success. |
success | Boolean | true if the API call was processed successfully; false otherwise. |
message | String / null | A human-readable message describing the result. null on success. |
message_code | String | A machine-readable response code (e.g., success, error). |
{
"data": {
"client_id": "itr_rsRgMyiDkbyuPFoxorTA",
"pan_no": "ABCPD1234A",
"filed_itr_form": [
{
"download_link": "https://aadhaar-kyc-docs.s3.amazonaws.com/itr/itr_rsRgMyiDkbyuPFoxorTA/ARJPV5762A/933762040110925_itr_form-2026-05-27-053642007309.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY5K3QRM5KVPBYKKE%2F20260527%2Fap-south-1%2Fs3%2Faws4_request&X-Amz-Date=20260527T053703Z&X-Amz-Expires=600&X-Amz-SignedHeaders=host&X-Amz-Signature=9c60d3a32d2d1d5591c50a6cd2a89615ac73b3eac26f3fc5c9d4859f0090a3d4",
"pan_no": "ABCPD1234A",
"filing_year": "2025-2026",
"acknowledgement_no": "261315954613480",
"filing_type": "Original",
"filing_section": "139(1)",
"filled_by": "Self",
"itr_form": "ITR-2",
"filing_date": "2025-09-11",
"status": "success"
}
],
"skip_failure": false
},
"status_code": 200,
"success": true,
"message": null,
"message_code": "success"
}{
"data": null,
"status_code": 401,
"success": false,
"message": "Authentication credentials were not provided or are invalid.",
"message_code": "unauthorized"
}Authorization header is missing, malformed, or contains an expired/invalid JWT token. Ensure you are using the correct Bearer token for the target environment (sandbox or production).download_link returned in each filed_itr_form record is a time-limited pre-signed S3 URL (valid for ~600 seconds). Download and store the PDF securely before the URL expires. Never expose these URLs in client-side code or logs.client_id over unencrypted connections.download_link URLs expire in approximately 600 seconds, initiate the PDF download immediately after receiving the response. If expiry is detected (e.g., HTTP 403 on download), re-call this endpoint to obtain a fresh link.filing_year, itr_form, filing_date, and acknowledgement_no fields to give users clear context about which ITR document they are viewing or downloading.filed_itr_form. Present these as a list ordered by filing_year and filing_date descending, so the most recent filing is most prominent.skip_failure outcomes: If skip_failure is true and some records are missing, inform users that partial results are shown and advise them to retry or contact support for the missing filings.client_id.client_id, timestamp, and the initiating user or system, to support compliance audits.curl --location 'https://kyc-api.surepass.app/api/v1/itr/download-itr-form' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"client_id": "itr_qKctszfxrMshYrznYuRP"
}'{
"data": {
"client_id": "itr_rsRgMyiDkbyuPFoxorTA",
"pan_no": "ABCPD1234A",
"filed_itr_form": [
{
"download_link": "https://aadhaar-kyc-docs.s3.amazonaws.com/itr/itr_rsRgMyiDkbyuPFoxorTA/ARJPV5762A/933762040110925_itr_form-2026-05-27-053642007309.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY5K3QRM5KVPBYKKE%2F20260527%2Fap-south-1%2Fs3%2Faws4_request&X-Amz-Date=20260527T053703Z&X-Amz-Expires=600&X-Amz-SignedHeaders=host&X-Amz-Signature=9c60d3a32d2d1d5591c50a6cd2a89615ac73b3eac26f3fc5c9d4859f0090a3d4",
"pan_no": "ABCPD1234A",
"filing_year": "2025-2026",
"acknowledgement_no": "261315954613480",
"filing_type": "Original",
"filing_section": "139(1)",
"filled_by": "Self",
"itr_form": "ITR-2",
"filing_date": "2025-09-11",
"status": "success"
}
],
"skip_failure": false
},
"status_code": 200,
"success": true,
"message": null,
"message_code": "success"
}