County Property Records API — Owner, Assessor & Tax Data avatar

County Property Records API — Owner, Assessor & Tax Data

Pricing

from $43.00 / 1,000 property records

Go to Apify Store
County Property Records API — Owner, Assessor & Tax Data

County Property Records API — Owner, Assessor & Tax Data

Search county property records by address, parcel or owner: owner, mailing address, assessed and appraised value, tax area. About USD 49 per 1,000 records.

Pricing

from $43.00 / 1,000 property records

Rating

0.0

(0)

Developer

Muhammad Afzal

Muhammad Afzal

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

a day ago

Last modified

Categories

Share

County Property Records API searches public county assessor parcel data by address, parcel number or owner name and returns one normalized record per parcel: owner and mailing address where the county publishes them, assessed and appraised values, tax area, exemptions, year built and building size. It covers Denton County, Texas and Los Angeles County, California out of the box, plus any public ArcGIS parcel layer you point it at, and it costs about USD 49 per 1,000 property records on the Free tier.

It is built for real-estate investors, appraisers, lenders, proptech developers and AI agents that need county property records with stable field names instead of county-specific column codes.

What county property records does it return?

Each dataset row is one unique parcel. The same field names are used for every county.

FieldWhat it contains
recordId, county, stateStable ID (source:parcel), county name and state
parcelNumber, alternateParcelNumberParcel or assessor number and the county's alternate format
propertyAddress, legalDescription, propertyUseSitus address, legal description and land-use class
ownerName, ownerMailingAddressOwner and mailing address when the source publishes them
yearBuilt, squareFeet, bedrooms, bathrooms, unitsBuilding facts when available
landAreaSqFt, landAreaAcresLot size; acres are computed from square feet when needed
assessedLandValue, assessedImprovementValue, assessedTotalValueAssessed values in USD
appraisedValue, taxableValue, taxAmountAppraised and net taxable value, and tax amount when published
taxArea, exemption, rollYearTaxing entities or tax-rate area, exemption code or amount, and roll year
latitude, longitudeParcel center point when published
sourceName, sourceUrl, retrievedAtPublic layer used and UTC retrieval time

What each county publishes differs:

SourceOwner name and mailing addressValuesOther
Denton County, TXYesAssessed land, improvement, total and appraised valueTax entities, exemption codes, lot size; no coordinates or roll year
Los Angeles County, CANoAssessed land, improvement, total and net taxable valueBedrooms, bathrooms, units, coordinates, roll year, exemption amount
Custom ArcGIS layerOnly if the layer has an owner fieldWhatever the layer exposesFields are matched by common names and aliases

Unavailable fields, and zero values, are returned as null, never guessed. An OUTPUT record in the run's key-value store reports DATA, a truthful EMPTY, a REJECTED input problem, or a BLOCKED/FAILED source error.

How do I search property records by address, parcel or owner?

Choose a source, a searchMode and a query. Address and owner searches match every word you type anywhere in the field, ignoring case. Parcel searches need an exact parcel or alternate parcel number.

InputDefaultBounds and notes
sourcedentonCountyTxdentonCountyTx, losAngelesCountyCa or customArcgis
searchModeaddressaddress, parcelNumber or ownerName (owner works only where the source has an owner field)
query5 WOODHAVEN CT2–160 characters; plain text, not SQL
customLayerUrlnoneRequired for customArcgis: public HTTPS layer URL ending in /FeatureServer/<n> or /MapServer/<n>
maxResults251–500 records per run

Owner-name search in Denton County:

{
"source": "dentonCountyTx",
"searchMode": "ownerName",
"query": "SMITH",
"maxResults": 25
}

Parcel lookup in Los Angeles County:

{
"source": "losAngelesCountyCa",
"searchMode": "parcelNumber",
"query": "2004013020",
"maxResults": 5
}

Any public ArcGIS parcel layer:

{
"source": "customArcgis",
"searchMode": "address",
"query": "MAIN ST",
"customLayerUrl": "https://example.gov/arcgis/rest/services/Parcels/FeatureServer/0",
"maxResults": 25
}

If the chosen source has no field for your search mode, for example owner search in Los Angeles County, the run stops with a REJECTED diagnostic and no record charges.

Output example

[
{
"recordId": "dentonCountyTx:R111625",
"county": "Denton County",
"state": "TX",
"parcelNumber": "R111625",
"alternateParcelNumber": "111625",
"propertyAddress": "5 WOODHAVEN CT",
"ownerName": "OWNER NAME",
"ownerMailingAddress": "5 WOODHAVEN CT, KRUGERVILLE, TX 76227",
"legalDescription": "TIMBER MESA BLK C LOT 5",
"propertyUse": "Real, Residential, Single Family",
"yearBuilt": 1986,
"squareFeet": 1547,
"landAreaAcres": 0.344536,
"assessedTotalValue": 131976,
"appraisedValue": 131976,
"taxArea": "C18, CAD, G01, S02",
"exemption": "HS",
"rollYear": null
},
{
"recordId": "losAngelesCountyCa:2004013020",
"county": "Los Angeles County",
"state": "CA",
"parcelNumber": "2004013020",
"alternateParcelNumber": "2004-013-020",
"propertyAddress": "8418 PONCE AVE LOS ANGELES CA 91304",
"ownerName": null,
"yearBuilt": 1959,
"squareFeet": 1594,
"bedrooms": 3,
"bathrooms": 3,
"assessedTotalValue": 302908,
"taxableValue": 295908,
"taxArea": "00016",
"exemption": "7000",
"rollYear": "2025",
"latitude": 34.22363245,
"longitude": -118.62113521
}
]

The Denton row is truncated from the default run on 2026-10-26 (run Fa7xKV7ZRUSAx4AF6, 2 records in about 5 seconds) with the owner name replaced by a placeholder. The Los Angeles row is built from the public source values for that parcel.

When should I use this county property records API?

Use it for:

  • Owner lookups and mailing lists for Denton County parcels.
  • Assessed-value and building-fact comparisons across a street or subdivision.
  • Enriching an address or parcel list in your app with normalized assessor data.
  • Querying another county's public ArcGIS parcel layer without writing a custom parser.

Do not use it for:

  • Nationwide coverage: only the two built-in counties and layers you supply are supported.
  • Title reports, liens, deeds, mortgages or sale history: these are not in assessor layers.
  • Official tax bills or payment status: taxAmount is usually null.
  • New Jersey assessments: use NJ Property Tax Assessment Lookup. For New York City sales: use NYC Property Sales Scraper.

How much does it cost?

You pay per property record delivered plus a start fee per run. Platform usage is included.

EventFreeBronzeSilverGold, Platinum, Diamond
Property record (per record)USD 0.049USD 0.049USD 0.049USD 0.043
Actor start (per run)USD 0.005USD 0.005USD 0.005USD 0.005

The start fee is charged once per started GB of allocated memory; the default 256 MB run pays one.

Worked totals on the Free tier:

  • The default 2-record search: USD 0.005 + 2 × USD 0.049 = USD 0.103.
  • 25 records: USD 0.005 + 25 × USD 0.049 = USD 1.23.

Records are charged only when saved. Duplicate parcels are merged before saving, and empty, rejected or blocked runs charge no record events.

What should I know about data freshness and limits?

Data comes straight from each county's public ArcGIS service, so it is as current as that service. Denton County's layer may lag the newest certified roll; confirm time-sensitive facts with the appraisal district.

Los Angeles County's layer keeps one row per roll year (2021 to 2025 at the time of writing). The Actor reads the newest roll first and returns one record per parcel with its latest roll year, so a parcel search with maxResults 1 returns the 2025 roll. Parcels missing from the newest roll come after current ones, so check rollYear. Because yearly rows are merged, a search that matches fewer parcels than maxResults returns fewer records.

Each request has a 30-second timeout and up to three attempts with backoff. Searches need a specific query; wildcard exports of a whole county are not offered.

Use it from an AI assistant

County Property Records API works from Claude, ChatGPT, Cursor or any MCP client through Apify's MCP server. Add https://mcp.apify.com/?tools=muhammadafzal/county-property-records-api to your client, then ask, for example: "Look up 5 Woodhaven Ct in Denton County, Texas and tell me the owner, year built and appraised value."

Run it with the Apify API

JavaScript (apify-client):

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('muhammadafzal/county-property-records-api').call({
source: 'dentonCountyTx',
searchMode: 'address',
query: '5 WOODHAVEN CT',
maxResults: 10,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python (apify-client 3.x):

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("muhammadafzal/county-property-records-api").call(run_input={
"source": "losAngelesCountyCa",
"searchMode": "parcelNumber",
"query": "2004013020",
"maxResults": 5,
})
items = client.dataset(run.default_dataset_id).list_items().items
print(items)

FAQ

Which counties are supported?

Denton County, Texas and Los Angeles County, California are built in. Any other county works if it publishes a public ArcGIS FeatureServer or MapServer parcel layer that allows anonymous queries; pass its URL in customLayerUrl.

Can I look up a property owner by address?

Yes, in Denton County and in custom layers that publish an owner field. Los Angeles County's public layer does not include owner names.

Can I search by owner name?

Yes, where the source has an owner field. Every word you type must appear in the owner name, so SMITH JOHN matches SMITH, JOHN A.

Is this the official tax bill?

No. These are assessor parcel records. taxAmount is filled only when a layer publishes it, and neither built-in county does.

How many records can one run return?

Up to 500. Each request is a targeted query, and typical runs finish in seconds.

How fresh is the data?

As fresh as the county's public layer. Check rollYear where present, and verify material facts with the assessor or appraisal district.

Property records can contain personal information that is public but sensitive in context. Use the data for a legitimate purpose and follow privacy, fair-housing, consumer-reporting and solicitation laws. Do not use it for credit, housing, employment or insurance decisions without legal review and authoritative verification. The Actor uses only public, anonymous county endpoints and does not bypass authentication or access controls.

Last verified: 2026-10-27