LLegiScoreSearch API
Get an API key
Get started
IntroductionAuthenticationQuickstartSearch lifecycleErrorsWebhooksCreditsGet an API key
API reference
Credit balancegetCataloggetLookupsgetSearchespost
States
All states
All Maharashtra searchesIndex-II (Suchi Kramank 2)Index-II by Property (survey / gat / CTS)7/12 Extract (Satbara)8A Holding ExtractProperty Card (urban, by CTS number)heldPlot Map (Mahabhunakasha)Mutation Notices (Aapli Chawdi)Mutation Status (Aapli Chawdi)Revenue Court Cases (e-QJCourts)District Court Cases by Party Name (eCourts)MahaRERA CheckRERA Project Record + Documents (MahaRERA)RERA Orders and Judgements (MahaRERA)RERA Complaints (MahaRERA)
View as Markdownllms-full.txt
States / Maharashtra / Mutation Status (Aapli Chawdi)

Maharashtra search

Mutation Status (Aapli Chawdi) LIVE

Where one mutation (ferfar) stands: certified, not certified or rejected, and each step it has passed.

Typical time
up to 2 min
Source status
No recent runs
search_type
mutation_status
Coverage note

The status page has no entry for this number. Check the number on the 7/12 or the receipt and search again.

What you get

For a 7/12 mutation: the status, the decision date and the dates of each step (entry, Form 9 notice, objection period), per survey number. For a Property Card application: its status and history. With a PDF of the page.

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.

NameTypeRequiredExampleComes from
boardstringRequiredsatbarafield "board"
district_codestringConditionalfrom lookup “district”mh_bhulekh_district lookup, option meta “district_code”
taluka_codestringConditionalfrom lookup “taluka”mh_bhulekh_taluka lookup, option meta “taluka_code”
village_codestringConditionalfrom lookup “village”mh_bhulekh_village lookup, option meta “village_code”
mutation_nostringConditional1900field "mutation_no"

Field details

FieldTypeNotes
board
Record
selectValues: satbara (7/12 mutation (village and mutation number)), property_card (Property Card application (inward number)).
district
District
lookupOnly when board is "satbara".
taluka
Taluka
lookupOnly when board is "satbara".
village
Village
lookupOnly when board is "satbara".
mutation_no
Mutation Number
textThe ferfar number, digits only, as the 7/12 writes it. Only when board is "satbara". Max 6 characters.
inward_no
Inward Number
textFrom the city survey office receipt: 15 digits, written with or without the slashes. Only when board is "property_card". Max 24 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).

FieldLookupNeeds firstExample call
districtmh_bhulekh_district-GET /api/v1/search/lookups?state=maharashtra&dim=mh_bhulekh_district&q=<name>
talukamh_bhulekh_talukadistrictGET /api/v1/search/lookups?state=maharashtra&dim=mh_bhulekh_taluka&q=<name>&district=<code>
villagemh_bhulekh_villagedistrict, talukaGET /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": "mutation_status",
  "params": {
    "board": "satbara",
    "district_code": "<district.district_code>",
    "taluka_code": "<taluka.taluka_code>",
    "village_code": "<village.village_code>",
    "mutation_no": "1900"
  },
  "label": "Mutation Status (Aapli Chawdi) - 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": "mutation_status",
      "params": {
        "board": "satbara",
        "district_code": "<district.district_code>",
        "taluka_code": "<taluka.taluka_code>",
        "village_code": "<village.village_code>",
        "mutation_no": "1900"
      },
      "label": "Mutation Status (Aapli Chawdi) - 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": "mutation_status",
    "params": {
      "board": "satbara",
      "district_code": "<district.district_code>",
      "taluka_code": "<taluka.taluka_code>",
      "village_code": "<village.village_code>",
      "mutation_no": "1900"
    },
    "label": "Mutation Status (Aapli Chawdi) - case 8841"
  }),
});
if (!resp.ok) throw new Error(await resp.text());
console.log(await resp.json());

Sample responses

202 Accepted, at submit

json
{
  "data": {
    "searches": [
      {
        "id": "SRCH-2026-A1B2C3D4",
        "state": "maharashtra",
        "search_type": "mutation_status",
        "label": "Mutation Status (Aapli Chawdi) - 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

json
{
  "data": {
    "id": "SRCH-2026-A1B2C3D4",
    "state": "maharashtra",
    "search_type": "mutation_status",
    "label": "Mutation Status (Aapli Chawdi) - 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}.

PreviousMutation Notices (Aapli Chawdi)NextRevenue Court Cases (e-QJCourts)