Feel free to reach techsupport@surepass.io for any technical support or guidance.
cnr_number and the system queues the lookup job, immediately returning a server-generated client_id alongside a pending status — confirming the search has been registered and is being processed.client_id returned in the response must be used with the corresponding Fetch Result endpoint to retrieve case details once processing is complete.client_id session token to reliably track and retrieve search results at any pointAuthorization header as Bearer TOKEN.https://sandbox.surepass.apphttps://kyc-api.surepass.app| Header | Required | Description |
|---|---|---|
Authorization | Yes | JWT Bearer token. Format: Bearer <YOUR_JWT_TOKEN>. Use the sandbox token for sandbox and the production token for production. |
Content-Type | Yes | Must be set to application/json. |
| Parameter | Type | Required | Description |
|---|---|---|---|
cnr_number | string | Yes | The Case Number Register (CNR) identifier to look up in the Supreme Court of India's eCourts database. |
{
"cnr_number": "SCIN123412232025"
}| Parameter | Type | Description |
|---|---|---|
data | object | Contains the result payload for this request. |
data.client_id | string | A server-generated unique session identifier for this search job. Use this value to poll the fetch endpoint and retrieve the completed case details. |
data.status | string | Processing state of the search job. On successful initialization, always returns pending, indicating the query is queued. |
status_code | integer | HTTP-equivalent numeric status code. 200 indicates successful initialization. |
success | boolean | Top-level flag indicating whether the request was processed successfully. true on successful initialization. |
message | string | Human-readable status message. Returns "Success" on successful initialization. |
message_code | string | Machine-readable message identifier for programmatic response handling. Returns "success" on successful initialization. |
{
"data": {
"client_id": "ecourt_supreme_court_cnr_search_dummyClientId12345",
"status": "pending"
},
"status_code": 200,
"success": true,
"message": "Success",
"message_code": "success"
}{
"data": null,
"status_code": 401,
"success": false,
"message": "Unauthorized",
"message_code": "unauthorized"
}Authorization header is missing, malformed, or the JWT token is expired or invalid. Verify that a valid Bearer token for the correct environment is included in the request.client_id values for audit trails but avoid logging full request/response payloads in productionclient_id returned in the response (e.g., in a database) so result checks can resume after a page reloadcnr_number format on the client side before submitting to reduce unnecessary API callsclient_id returned by this endpoint to retrieve completed case details once status transitions from pending to completed
Key difference from the previous doc: request body now takes `cnr_number` (the actual case number the caller provides), and `client_id` is now a **server-generated** value returned in the response — flipped from the earlier spec.curl --location 'https://kyc-api.surepass.app/api/v1/ecourts/supreme-court/ecourt-cnr-search/initialize' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"cnr_number": "SCIN123412962025"
}'{
"data": {
"client_id": "ecourt_supreme_court_cnr_search_vohwotMqBxldeAktgbai",
"status": "pending"
},
"status_code": 200,
"success": true,
"message": "Success",
"message_code": "success"
}