LLegiScoreSearch API
Get an API key
Get started
IntroductionAuthenticationQuickstartSearch lifecycleErrorsWebhooksCreditsGet an API key
API reference
Credit balancegetCataloggetLookupsgetSearchespost
States
All states
All Goa searchesRecord of Rights, Form I & XIV (Goa Online)Survey Plan (Goa Bhunaksha)Public Mutation Notices (Goa)
View as Markdownllms-full.txt
States / Goa / Survey Plan (Goa Bhunaksha)

Goa search

Survey Plan (Goa Bhunaksha) LIVE

The land records department’s survey plan for a survey and subdivision.

Typical time
up to 3 min
Source status
No recent runs
search_type
bhunaksha

What you get

The department’s own Survey Plan 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.

NameTypeRequiredExampleComes from
talukastringRequiredfrom lookup “taluka”goa_taluka lookup, option meta “value”
villagestringRequiredfrom lookup “village”goa_village lookup, option meta “value”
survey_nostringRequired380field "survey_no"
subdiv_nostringOptional2 or 2-Afield "subdiv_no"

Field details

FieldTypeNotes
taluka
Taluka
lookup
village
Village
lookup
survey_no
Survey Number
textMax 20 characters.
subdiv_no
Subdivision Number
textOptional when the survey has only one subdivision. 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).

FieldLookupNeeds firstExample call
talukagoa_taluka-GET /api/v1/search/lookups?state=goa&dim=goa_taluka&q=<name>
villagegoa_villagetalukaGET /api/v1/search/lookups?state=goa&dim=goa_village&q=<name>&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": "goa",
  "search_type": "bhunaksha",
  "params": {
    "taluka": "<taluka.value>",
    "village": "<village.value>",
    "survey_no": "380",
    "subdiv_no": "2 or 2-A"
  },
  "label": "Survey Plan (Goa Bhunaksha) - 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": "goa",
      "search_type": "bhunaksha",
      "params": {
        "taluka": "<taluka.value>",
        "village": "<village.value>",
        "survey_no": "380",
        "subdiv_no": "2 or 2-A"
      },
      "label": "Survey Plan (Goa Bhunaksha) - 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": "goa",
    "search_type": "bhunaksha",
    "params": {
      "taluka": "<taluka.value>",
      "village": "<village.value>",
      "survey_no": "380",
      "subdiv_no": "2 or 2-A"
    },
    "label": "Survey Plan (Goa Bhunaksha) - 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": "goa",
        "search_type": "bhunaksha",
        "label": "Survey Plan (Goa Bhunaksha) - 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": "goa",
    "search_type": "bhunaksha",
    "label": "Survey Plan (Goa Bhunaksha) - 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}.

PreviousRecord of Rights, Form I & XIV (Goa Online)NextPublic Mutation Notices (Goa)