Rajasthan search
Municipal Property Tax LIVE
The municipal tax account for a property in Jaipur, Udaipur or Kota — the only three Nagar Nigams this portal covers, out of the state’s many municipalities.
This search reads a register published for an area, not a per-property answer. found: false means no per-property match was computed. The documents are the deliverable, so read them.
What you get
Matching property rows, and — with details fetched — each property’s assessment and floor-wise breakdown, plus a PDF.
Request parameters
These are the keys of params in the request body. A value shown as from lookup is a code you get by searching for the item by name first, not text you type.
owner_name, service_no, acknowledgement_no, mobile_no: Give at least one of owner name, service number, acknowledgement number or mobile number.
| Name | Type | Required | Example | Comes from |
|---|---|---|---|---|
ulb_code | string | Required | from lookup “ulb” | rj_ulb lookup, option meta “ulb_code” |
include_details | boolean | Optional | false | field "include_details" |
owner_name | string | One of | Substring match | field "owner_name" |
service_no | string | One of | 12345 | field "service_no" |
acknowledgement_no | string | One of | <acknowledgement_no> | field "acknowledgement_no" |
mobile_no | string | One of | <mobile_no> | field "mobile_no" |
Field details
| Field | Type | Notes |
|---|---|---|
ulbMunicipal Corporation | lookup | |
owner_nameOwner Name | text | |
service_noService Number | text | |
acknowledgement_noAcknowledgement Number | text | |
mobile_noMobile Number | text | |
include_detailsFetch Full Details | select | Optional. Each detail page is one extra request per property matched, capped at 10. Values: (No — listing rows only), true (Yes — read each property’s detail page (up to 10)). |
Resolve names to codes
Search for each item by name, take the code from the match and pass it in params. A lookup needs a query of at least 2 characters and returns at most 10 matches (details).
| Field | Lookup | Needs first | Example call |
|---|---|---|---|
ulb | rj_ulb | - | GET /api/v1/search/lookups?state=rajasthan&dim=rj_ulb&q=<name> |
Example request
Replace each <...> with the value from its lookup match, and the sample values with your own.
curl -X POST "https://legiscore.in/api/v1/search" \
-H "Authorization: Bearer lsk_your_api_key" \
-H "Idempotency-Key: los-case-8841" \
-H "Content-Type: application/json" \
-d '{
"state": "rajasthan",
"search_type": "property_tax",
"params": {
"ulb_code": "<ulb.ulb_code>",
"include_details": false,
"owner_name": "Substring match",
"service_no": "12345",
"acknowledgement_no": "<acknowledgement_no>",
"mobile_no": "<mobile_no>"
},
"label": "Municipal Property Tax - case 8841"
}'import requests
resp = requests.post(
"https://legiscore.in/api/v1/search",
headers={"Authorization": "Bearer lsk_your_api_key", "Idempotency-Key": "los-case-8841"},
json={
"state": "rajasthan",
"search_type": "property_tax",
"params": {
"ulb_code": "<ulb.ulb_code>",
"include_details": false,
"owner_name": "Substring match",
"service_no": "12345",
"acknowledgement_no": "<acknowledgement_no>",
"mobile_no": "<mobile_no>"
},
"label": "Municipal Property Tax - case 8841"
},
)
resp.raise_for_status()
print(resp.json())const resp = await fetch("https://legiscore.in/api/v1/search", {
method: "POST",
headers: { Authorization: "Bearer lsk_your_api_key", "Idempotency-Key": "los-case-8841", "Content-Type": "application/json" },
body: JSON.stringify({
"state": "rajasthan",
"search_type": "property_tax",
"params": {
"ulb_code": "<ulb.ulb_code>",
"include_details": false,
"owner_name": "Substring match",
"service_no": "12345",
"acknowledgement_no": "<acknowledgement_no>",
"mobile_no": "<mobile_no>"
},
"label": "Municipal Property Tax - case 8841"
}),
});
if (!resp.ok) throw new Error(await resp.text());
console.log(await resp.json());Sample responses
202 Accepted, at submit
{
"data": {
"searches": [
{
"id": "SRCH-2026-A1B2C3D4",
"state": "rajasthan",
"search_type": "property_tax",
"label": "Municipal Property Tax - case 8841",
"status": "queued",
"progress": 0,
"note": null,
"found": null,
"records": null,
"record_count": null,
"documents": [],
"error": null,
"refunded": false,
"replayed": false,
"batch_id": null,
"recovery_of": null,
"source": "api",
"created_at": "2026-10-05T10:00:00Z",
"completed_at": null
}
],
"rejected": [],
"replayed": {
"free": 0,
"billed": 0,
"idempotent": 0
},
"batch_id": null
}
}200 OK, GET /api/v1/search/{id} once finished
{
"data": {
"id": "SRCH-2026-A1B2C3D4",
"state": "rajasthan",
"search_type": "property_tax",
"label": "Municipal Property Tax - case 8841",
"status": "succeeded",
"progress": 100,
"note": null,
"found": true,
"records": [
{
"...": "one object per row the source returned; shape varies by search"
}
],
"record_count": 1,
"documents": [
{
"filename": "result.pdf",
"content_type": "application/pdf",
"bytes": 184233,
"withheld": false
}
],
"error": null,
"refunded": false,
"replayed": false,
"batch_id": null,
"recovery_of": null,
"source": "api",
"created_at": "2026-10-05T10:00:00Z",
"completed_at": "2026-10-05T10:03:12Z"
}
}records holds one object per row the source returned. Its shape is specific to this search. Documents are fetched with GET /api/v1/search/{id}/documents/{filename}.