Challanwala logo
Challanwala
Challanwala API Docs
Endpoints

Challan Search

Search challans by RC number for the authenticated organization.

POST/api/v1/staging/challans/search

Search challans by RC number. If the vehicle is already associated with your organization, the search can run with only the RC number. If it is new to your organization, you must also provide rcType and cityId.

Base URL
https://cms-staging.challanwala.com
Authentication
Bearer YOUR_API_SECRET
Access gate
Requires the Challan Search service to be enabled for your organization.

Request rules

  • rcNumber is always required.
  • rcType and cityId are required when the searched vehicle is not already known to your organization.
  • cityId must belong to your organization.
  • bypassCache forces a fresh lookup path at a product level and should only be used when you explicitly want a refresh.
Request body
FieldTypeRequiredDescription
rcNumberstringRequiredVehicle registration number. Spacing and separator variations are normalized by the API.
rcTypestringOptionalRequired for first-time search of a vehicle that is not already associated with your organization.
cityIduuidOptionalRequired for first-time search of a vehicle that is not already associated with your organization.
bypassCachebooleanOptionalOptional refresh hint. Defaults to false.
cURL request
curl --request POST 'https://cms-staging.challanwala.com/api/v1/staging/challans/search' \  --header 'Authorization: Bearer YOUR_API_SECRET' \  --header 'Content-Type: application/json' \  --data '{"rcNumber": "DL01AB1234","rcType": "PRIVATE_CAR","cityId": "98bb2b02-6474-4d6d-a45c-0d37efae792d","bypassCache": false}'
JavaScript request
const response = await fetch('https://cms-staging.challanwala.com/api/v1/staging/challans/search', {  method: 'POST',  headers: {    Authorization: 'Bearer YOUR_API_SECRET',    'Content-Type': 'application/json',  },  body: JSON.stringify({rcNumber: 'DL01AB1234',rcType: 'PRIVATE_CAR',cityId: '98bb2b02-6474-4d6d-a45c-0d37efae792d',bypassCache: false,}),});const data = await response.json();console.log(data);
Example response
{"success": true,"data": {  "rcNumber": "DL01AB1234",  "carId": "df8dbf2f-1f34-49fa-b8cb-5786ccf642cf",  "newChallansCount": 2,  "challans": [    {      "id": "8cb4fb9a-88eb-4d5c-b484-e857a90a8b71",      "challanNo": "DL-TRF-101299",      "status": "PENDING",      "challanAmount": 500,      "totalAmount": null,      "challanDate": "2026-05-11T10:12:00.000Z",      "state": "Delhi",      "challanType": "ONLINE",      "challanPlace": "ITO Circle, New Delhi",      "offenseDetails": "Signal jump detected at monitored junction",      "paymentLinkId": null,      "paymentLink": null,      "prepaid": false    },    {      "id": "b2ef5129-cdf8-48b9-afd0-b6ca0fe9ddad",      "challanNo": "DL-TRF-101300",      "status": "TO_BE_ASSIGNED",      "challanAmount": 1000,      "totalAmount": null,      "challanDate": "2026-05-11T10:18:00.000Z",      "state": "Delhi",      "challanType": "ONLINE",      "challanPlace": "Ring Road, New Delhi",      "offenseDetails": "Wrong parking in restricted zone",      "paymentLinkId": "17de2557-58d6-4f8d-aa2b-fb60074c6a6d",      "paymentLink": {        "id": "17de2557-58d6-4f8d-aa2b-fb60074c6a6d",        "status": "ACTIVE",        "externalPaymentUrl": null,        "totalAmount": 1180      },      "prepaid": true    }  ]}}
Stable response fields
FieldTypeRequiredDescription
data.rcNumberstringRequiredNormalized RC number used for the search.
data.carIduuidRequiredVehicle identifier for the organization-scoped result.
data.newChallansCountnumberRequiredCount of newly discovered challans during the search.
data.challans[].iduuidRequiredChallan identifier.
data.challans[].challanNostringRequiredChallan reference number.
data.challans[].statusstringRequiredCurrent challan status relevant to follow-up actions.
data.challans[].challanAmountnumber | nullOptionalBase challan amount, when available.
data.challans[].totalAmountnumber | nullOptionalCalculated payable total, when available.
data.challans[].challanDatedatetime | nullOptionalChallan issue timestamp, when available.
data.challans[].statestring | nullOptionalState label returned for the challan.
data.challans[].challanTypestring | nullOptionalChallan type label returned for the challan.
data.challans[].challanPlacestring | nullOptionalHuman-readable location of the challan event, when available.
data.challans[].offenseDetailsstring | nullOptionalViolation or offense description returned for the challan, when available.
data.challans[].paymentLinkIduuid | nullOptionalPresent when the challan is already attached to a payment link.
data.challans[].prepaidbooleanRequiredTrue when the challan already belongs to a payment-link workflow.
400
Invalid request body

The request is missing required fields, contains an invalid UUID, or does not satisfy first-search requirements.

400
Vehicle not yet known without required metadata

If the vehicle is not already associated with your organization, provide both rcType and cityId.

400
City does not belong to this organization

The provided cityId is not available to the authenticated organization.

409
Vehicle belongs to another organization or is deleted

The requested vehicle cannot be searched under the current organization in its current state.

502
Unable to fetch challans

The platform could not complete the challan fetch at this time. Retry according to your normal backoff policy.

On this page