Maharashtra search
Plot Map (Mahabhunakasha) LIVE
The plot on the state land map for a survey or gat number: its area, its outline and where it is.
The map does not show this number for this village. The map can differ from the 7/12, so check the number on the 7/12 before you rely on this.
What you get
The map area in square metres and hectares, the plot outline with its latitude and longitude, and the khata entries the map shows, as a page you can open. The map is for viewing only: a certified map copy comes from the taluka land records office.
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.
| Name | Type | Required | Example | Comes from |
|---|---|---|---|---|
district_code | string | Required | from lookup “district” | mh_bhulekh_district lookup, option meta “district_code” |
taluka_code | string | Required | from lookup “taluka” | mh_bhulekh_taluka lookup, option meta “taluka_code” |
village_code | string | Required | from lookup “village” | mh_bhulekh_village lookup, option meta “village_code” |
survey_no | string | Required | 20/1 | field "survey_no" |
Field details
| Field | Type | Notes |
|---|---|---|
districtDistrict | lookup | |
talukaTaluka | lookup | |
villageVillage | lookup | |
survey_noSurvey / Gat Number | text | One number, as the 7/12 writes it. No ranges or lists. Max 20 characters. |
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 |
|---|---|---|---|
district | mh_bhulekh_district | - | GET /api/v1/search/lookups?state=maharashtra&dim=mh_bhulekh_district&q=<name> |
taluka | mh_bhulekh_taluka | district | GET /api/v1/search/lookups?state=maharashtra&dim=mh_bhulekh_taluka&q=<name>&district=<code> |
village | mh_bhulekh_village | district, taluka | GET /api/v1/search/lookups?state=maharashtra&dim=mh_bhulekh_village&q=<name>&district=<code>&taluka=<code> |
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": "maharashtra",
"search_type": "bhunaksha",
"params": {
"district_code": "<district.district_code>",
"taluka_code": "<taluka.taluka_code>",
"village_code": "<village.village_code>",
"survey_no": "20/1"
},
"label": "Plot Map (Mahabhunakasha) - 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": "maharashtra",
"search_type": "bhunaksha",
"params": {
"district_code": "<district.district_code>",
"taluka_code": "<taluka.taluka_code>",
"village_code": "<village.village_code>",
"survey_no": "20/1"
},
"label": "Plot Map (Mahabhunakasha) - 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": "maharashtra",
"search_type": "bhunaksha",
"params": {
"district_code": "<district.district_code>",
"taluka_code": "<taluka.taluka_code>",
"village_code": "<village.village_code>",
"survey_no": "20/1"
},
"label": "Plot Map (Mahabhunakasha) - 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": "maharashtra",
"search_type": "bhunaksha",
"label": "Plot Map (Mahabhunakasha) - 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": "maharashtra",
"search_type": "bhunaksha",
"label": "Plot Map (Mahabhunakasha) - 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}.