LandLens Home
Land Lens

Welcome Back

Sign in to continue to dashboard

By continuing, you agree to our Terms, Privacy Policy & Refund Policy

Revenue A-register and town survey register · no portal call

Plot Owner API: recorded holder of a Tamil Nadu survey number

Yes. plot_owner names the recorded holder of a Tamil Nadu survey number from the revenue A-register (village land) or the Town Survey Land Register (town land), with the patta number, the land type, the extent and whether the land is government land. It reads our copy of the registers, so it answers in a second or two and keeps answering when the government patta service is down. With all_subdivisions it lists every sub-division on the survey with its own holders. It costs 1 credit for one parcel, and nothing when the register holds no holder for it.

POSThttps://verified.realestate/api/v1/tools/plot_owner
Price
1 credit per answer
Source
Revenue A-register and town survey register
Coverage
Village and town survey land
Answers in
Usually 1 to 5 seconds

Example

Request
curl -X POST https://verified.realestate/api/v1/tools/plot_owner \
  -H "Authorization: Bearer $LANDLENS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"district_code":"03","taluk_code":"14","village_code":"196","survey_number":"145","sub_division":"1"}'
Responsereal answer
{
  "ok": true,
  "status": "ok",
  "data": {
    "found": true,
    "source": "revenue A-register",
    "rural_urban": "rural",
    "survey": "145/1",
    "is_govt": true,
    "land_type": "Poramboke",
    "patta_no": null,
    "extent_acres": 0.21,
    "owners": [],
    "note": "From the revenue A-register, which does not depend on the government portal, so it answers even when the patta portal is down. Confirm against the official live patta when the portal is available."
  },
  "credits_charged": 1
}

A real answer from the API (22 Oct 2026, Kavanoor village, Kundrathur taluk): a government poramboke parcel, so no holder is named.

What it returns

One parcel by default. found is false (status not_found) when the register holds no holder for it, or when the survey number is not in the village at all.

FieldWhat it holds
ownersThe recorded holders, each with name_en and name_ta. Empty for government land that names no holder.
is_govttrue when the register records the land as government land.
land_typeThe register's land type: Wet, Dry, Poramboke and so on.
patta_noThe patta number the holding is entered under.
extent_acresThe recorded extent in acres (village land).
survey, rural_urban, sourceThe survey read, the register, and the register named in words.
ward_code, block_code, street, door_number, extent_sqmTown survey land: where the parcel is filed, its street and door number where recorded, and its extent in square metres.
holdings, subdivision_count, distinct_owner_names, government_subdivisions, total_extent_acresWith all_subdivisions: every sub-division on the survey with its own holders, patta number and extent, and totals for the whole survey.
page, showing_from, showing_to, remaining, next_pageWith all_subdivisions: paging through a survey with many holdings.
noteWhere the answer came from, ready to show.

Ways to call it

Name the holder of one parcel, or list every holding on a survey.

One parcel

The revenue codes come free from resolve_parcel (a map point) or resolve_revenue_codes (names).

{"district_code": "03","taluk_code": "14","village_code": "196","survey_number": "145","sub_division": "1"}

Every sub-division on a survey

Lists each holding with its own holders. The first page has up to 200; the price scales with the number of holdings and the reply prices the next page.

{"district_code": "03","taluk_code": "14","village_code": "196","survey_number": "145","all_subdivisions": true}

Inputs

The JSON body of the POST is the arguments. The three revenue codes and the survey number are required.

ArgumentTypeWhat to send
district_coderequired string
taluk_coderequired string
village_coderequired string
survey_numberrequired string Survey number, e.g. "178" or "178/1C"
sub_division string Sub-division, if any (e.g. "1C")
register string: rural, urban "urban" for town survey land. The two registers number their villages and towns separately, so the same code is a different place in each.
ward_code string Town surveys only: the ward, e.g. "001". A town survey number repeats across wards and blocks, so pass the ward and block whenever they are known.
block_code string Town surveys only: the block, e.g. "0001".
all_subdivisions boolean List every holding on the survey instead of naming one holder. Costs more than one parcel, scaled to the number of holdings.
page integer With all_subdivisions, which page of holdings to return. Page 1 (the default) gives the first 200. Each later page gives 50 more and costs 1 credit, so only ask for one when the user has seen the reply and wants more. The previous reply's next_page tells you the number to pass.

Code

Set LANDLENS_KEY to your key. In an AI app, connect https://verified.realestate/mcp once and ask in plain words instead. In Postman, download this API's collection, import it (File, Import) and set apiKey.

curl -X POST https://verified.realestate/api/v1/tools/plot_owner \
  -H "Authorization: Bearer $LANDLENS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"district_code":"03","taluk_code":"14","village_code":"196","survey_number":"145","sub_division":"1"}'

Responses

Every answer has the same envelope. What status can say for this call:

statusWhat it means
okThe register names a holder, or records the land as government land. Charged 1 credit for one parcel.
not_foundThe register holds no holder for the parcel, the survey is not in the village, or the page asked for is past the end. Nothing is charged.
invalid_argsA revenue code or the survey number is missing.

Where the data comes from

Register

The Tamil Nadu revenue department's A-register for village land and its Town Survey Land Register for town survey land, as held in our copy of both.

Coverage

Village and town survey land across Tamil Nadu, as far as our copy of the registers reaches. Some villages are not yet in our copy of the village register.

How current

Our copy of the registers is refreshed in full about once a year. Holders change on every sale, so confirm against the live patta (fetch_land_record) before relying on a name.

How we read it

Read by revenue codes, survey number and sub-division. For town survey land, the ward and block pick the right parcel, since one town survey number repeats across wards and blocks.

Who uses it

Buyers and brokers

Check in a second whether a plot sits on government or poramboke land before a site visit.

Law firms

List every holding on a survey before a partition or a large purchase, with each sub-division's holder and patta number.

Property platforms

Name the recorded holder when the government patta service is down.

Limits and good practice

  • This is our copy of the register, not a live extract. Confirm the holder with fetch_land_record before relying on it.
  • Holder names in English are transliterated from the register's Tamil; the Tamil is given alongside.
  • A name here is the recorded holder of that sub-division, not of any spot on the map. With all_subdivisions, read each holder with its own sub-division.
  • all_subdivisions costs more than one parcel, scaled to the number of holdings on the survey.

Pricing

1 credit per answer

One parcel costs 1 credit; nothing when the register holds no holder for it. Listing every sub-division with all_subdivisions costs more, scaled to the number of holdings, and each later page is priced in the reply. Credits come from the same LandLens wallet as the chat and the minis. How billing works.

Calling at volume?

For thousands of calls a month, a portfolio sweep or a platform built on these registers, we quote a customised bulk price, with invoicing to match.

WhatsApp 99961 29996

Questions

Is there an API to find the owner of a Tamil Nadu survey number?

Yes. plot_owner names the recorded holder from the revenue A-register or the town survey register. fetch_land_record reads the live patta instead.

How much does it cost?

1 credit for one parcel. Nothing when the register holds no holder. Listing every sub-division costs more, scaled to the size of the survey.

Can it tell me if the land is government land?

Yes. is_govt is true when the register records the land as government land, and land_type says Poramboke where it is.

What is the difference between plot_owner and fetch_land_record?

plot_owner reads our copy of the register: fast, and it works when the government service is down. fetch_land_record reads the government register live and returns the official record.

Updated 22 Oct 2026 · OpenAPI description