Property Records API

Property Records Enformion API

Look up the public property records for one US address: current and previous owners, parcel number (APN), last sale, assessed and market values, property tax, beds, baths, living area, lot size, year built, land use, and zoning. One address can match several parcels, and every match is returned. Billed only when a record is found.

$153.60/1k req, pay per request, no subscription.

What the API returnedrecords[0]
{
"street": "4510 Secure LN",
"city": "Austin",
"state": "TX",
"zip": "78725",
"county": "Travis",
"latitude": 30.2361,
"longitude": -97.6015,
"apn": "02-1543-0210-0000",
... 27 more fields
}
Uptime
100.00%
30d · 19 calls
Requests
19
30d · weekly, last 12 wks
Response
2.2s
median · 30d

Pricing

Property Records Enformion API pricing

You pay
$1,536.00
$153.60/1k req, only for what you use. No monthly plan.

Call it

Get Property Records enformion in one request

import os, requests

res = requests.post(
    "https://api.getanyapi.com/v1/run/property_records.enformion",
    headers={"Authorization": f"Bearer {os.environ['ANYAPI_KEY']}"},
    json={
        "city": "",
        "state": "",
        "street": ""
    },
)
print(res.json())
Open in
Get a free key
Sample response

This sample shows 42 of 44 fields. See every field

{
  "found": true,
  "data": {
    "records": [
      {
        "street": "4510 Secure LN",
        "city": "Austin",
        "state": "TX",
        "zip": "78725",
        "county": "Travis",
        "latitude": 30.2361,
        "longitude": -97.6015,
        "apn": "02-1543-0210-0000",
        "fipsCode": "48453",
        "taxAccountNumber": "0214530210",
        "currentOwners": [
          {
            "name": "Harold and Bettina Voss",
            "isBusiness": false,
            "recordedUtc": 1700006400
          }
        ],
        "previousOwners": [
          {
            "name": "Meridian Rental Holdings LLC",
            "recordedUtc": 1620000000
          },
          {
            "name": "Carla J. Dunmore",
            "recordedUtc": 1500000000
          }
        ],
        "ownerMailingAddress": "4510 Secure LN, Austin, TX 78725",
        "ownerOccupied": true,
        "lastSalePrice": 412500,
        "lastSaleUtc": 1700006400,
        "assessedValue": 398000,
        "assessedLandValue": 110000,
        "assessedImprovementValue": 288000,
        "assessedYear": 2025,
        "marketValue": 431000,
        "marketLandValue": 118000,
        "marketImprovementValue": 313000,
        "appraisedValue": 431000,
        "taxAmount": 8940,
        "taxYear": 2025,
        "propertyType": "SINGLE FAMILY RESIDENCE",
        "beds": 3,
        "baths": 2,
        "livingAreaSqft": 1820,
        "lotSize": 7405,
        "yearBuilt": 1998,
        "landUse": "SINGLE FAMILY RESIDENTIAL",
        "zoning": "SF-3"
      }
    ]
  }
}

Full parameter and response reference - every field, type, and example for this endpoint.

Reference

One request, one response shape.

Every field you send and every field you get back, each with a real example.

Last verified 2026-11-01 · uptime and latency measured over 30d

Request body

JSON, posted to this endpoint.

  • citystring

    Austin

    City of the property, e.g. Austin.

  • statestring

    TX

    US state of the property, as its two-letter code, e.g. TX.

  • streetstring

    4510 Secure Ln

    Street line of one US property address, e.g. 4510 Secure Ln. Include a unit number when there is one.

  • zipstring

    78725

    Five-digit ZIP code, optionally with its four-digit extension, e.g. 78725.

You send. A small JSON body. The values shown are examples to replace with your own.

Response

JSON, one example value per field.

each recorddata.records[]

Every parcel on record at the address. A campus or multi-parcel address returns several.

  • apnstring

    02-1543-0210-0000

    Assessor's parcel number (APN) the county files this parcel under.

  • appraisedValuenumber

    431000

    Total appraised value, in US dollars.

  • assessedImprovementValuenumber

    288000

    Assessed value of the buildings and other improvements, in US dollars.

  • assessedLandValuenumber

    110000

    Assessed value of the land alone, in US dollars.

  • assessedValuenumber

    398000

    Total assessed value for property tax, in US dollars.

  • assessedYearinteger

    2025

    Year of the assessment.

  • bathsnumber

    2

    Number of bathrooms. Absent when the county records none.

  • bedsinteger

    3

    Number of bedrooms. Absent when the county records none.

  • citystring

    Austin

    City of the property.

  • countystring

    Travis

    County the parcel is recorded in.

  • fipsCodestring

    48453

    Five-digit FIPS code of the county. Pair it with apn to identify the parcel nationally.

  • foreclosureStagestring

    Foreclosure stage code, when the parcel is in foreclosure.

  • landUsestring

    SINGLE FAMILY RESIDENTIAL

    Land use as the county describes it, e.g. CONDOMINIUM or LABORATORY.

  • lastSalePricenumber

    412500

    Price of the most recent recorded sale, in US dollars.

  • lastSaleUtcnumber

    1700006400

    Date of the most recent recorded sale, as a UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds.

  • latitudenumber

    30.2361

    Latitude of the parcel.

  • livingAreaSqftinteger

    1820

    Living area in square feet. Absent when the county records none.

  • longitudenumber

    -97.6015

    Longitude of the parcel.

  • lotSizenumber

    7405

    Lot size as the county records it, usually in square feet.

  • marketImprovementValuenumber

    313000

    Market value of the buildings and other improvements, in US dollars.

  • marketLandValuenumber

    118000

    Market value of the land alone, in US dollars.

  • marketValuenumber

    431000

    Total market value the county records, in US dollars.

  • ownerMailingAddressstring

    4510 Secure LN, Austin, TX 78725

    Where the current owner receives mail, when the county records it.

  • ownerOccupiedboolean

    true

    True when the owner lives at the property.

  • propertyTypestring

    SINGLE FAMILY RESIDENCE

    Property type, e.g. SINGLE FAMILY RESIDENCE, INDUSTRIAL, or EXEMPT.

  • statestring

    TX

    Two-letter US state code.

  • streetstring

    4510 Secure LN

    Street line of the property address, e.g. 4510 Secure LN.

  • taxAccountNumberstring

    0214530210

    The county tax account number for the parcel.

  • taxAmountnumber

    8940

    Annual property tax billed, in US dollars.

  • taxYearinteger

    2025

    Year the tax amount was billed for.

  • yearBuiltinteger

    1998

    Year the main building was built.

  • zipstring

    78725

    Five-digit ZIP code.

  • zoningstring

    SF-3

    Zoning code or zoning description on the county record.

each currentOwnerdata.records[].currentOwners[]

Owners on the current county record.

  • isBusinessboolean

    false

    True when the owner is a company or other organization rather than a person.

  • namestring

    Harold and Bettina Voss

    Owner name, a person or a business.

  • recordedUtcnumber

    1700006400

    Date the ownership record was captured, as a UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds. It is not necessarily the purchase date; see lastSaleUtc.

each previousOwnerdata.records[].previousOwners[]

Earlier owners of the parcel, most recent first.

  • namestring

    Meridian Rental Holdings LLC

    Owner name, a person or a business.

  • recordedUtcnumber

    1620000000

    Date the ownership record was captured, as a UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds.

top level
  • foundboolean

    true

    False when no property record matched the address.

  • reason"not_found"

    Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.

You get back. Named, typed fields in the same shape whichever source answers.

FAQ

About the Property Records Enformion API

The AnyAPI Property Records Enformion API returns Property Records enformion data as normalized JSON from one POST call to /v1/run/property_records.enformion. Look up the public property records for one US address: current and previous owners, parcel number (APN), last sale, assessed and market values, property tax, beds, baths, living area, lot size, year built, land use, and zoning. One address can match several parcels, and every match is returned. Billed only when a record is found. AnyAPI returns one normalized schema whichever source serves it. It costs from $153.60 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 100.0% of Property Records enformion calls through AnyAPI succeeded, with a median response time of 2.2 seconds across 19 measured calls.

It costs from $153.60 per 1,000 requests, in US dollars with no subscription and no monthly minimum. You fund one USD wallet and each call draws it down. Some failed wallet-funded requests incur processing charges that we pass through at cost, with no markup; the error response shows the amount charged.

Look up the public property records for one US address: current and previous owners, parcel number (APN), last sale, assessed and market values, property tax, beds, baths, living area, lot size, year built, land use, and zoning. One address can match several parcels, and every match is returned. Billed only when a record is found. The response is normalized JSON with the same envelope every AnyAPI endpoint returns, so parsing a second endpoint is a change of URL and nothing else.

Over the last 30 days, 100.0% of Property Records enformion calls through AnyAPI succeeded, with a median response time of 2.2 seconds across 19 measured calls. These are AnyAPI's own measurements of traffic through the gateway, recomputed continuously, not a published service-level target.

Yes. A new AnyAPI account starts with $0.10 of free balance and no card required.

Send a POST request to https://api.getanyapi.com/v1/run/property_records.enformion with your AnyAPI key in an "Authorization: Bearer" header and the input as a JSON body. The same key and the same wallet work on every AnyAPI endpoint.

No. You add US dollars to one prepaid AnyAPI balance and each request draws it down. There is no monthly plan and no minimum, and the same balance pays for every AnyAPI endpoint.

Yes. Install @getanyapi/sdk from npm for TypeScript or getanyapi from pip for Python. Both call every AnyAPI endpoint with the same key, and any HTTP client works too.

Yes. An agent can connect to the AnyAPI MCP server at https://api.getanyapi.com/mcp, or create its own free-trial key with one unauthenticated POST to https://api.getanyapi.com/agent/signup and call this endpoint over HTTP.