Real estate data API for proptech and property apps
A real estate data API for your product: find the parcel at an address, store its stable ID, and pay only for the records your users look up.
Proptech apps: the job to be done
Real estate apps, CRMs, underwriting tools and marketplaces need the record behind an address: parcel number, land use, building, values and the last sale, and sometimes the owner. They need it in a consistent shape across counties, keyed by an ID they can store.
Korzy normalizes parcel records from every U.S. county into one schema with a stable korzy_id, behind a REST API with an OpenAPI spec.
Questions Korzy answers for proptech apps
- Which parcel is at this address, and what is its parcel number and land use?
- What were the last sale date and price, and what are the assessed and market values?
- Who is the owner of record, and what is the mailing address (where the county publishes it)?
- Which parcels cover this map point, for example a pin a user dropped?
API routes and MCP tools for proptech apps
Each lookup is a REST route and, where named, a tool on the Korzy MCP server. Routes link to their section of the API reference; credits and rate limits covers what each request costs.
| MCP tool | REST route | What it returns |
|---|---|---|
search_parcels | /api/search | Exact address search; returns each parcel’s korzy_id and record. 1 credit. |
get_parcel | /api/parcel-record | One parcel by korzy_id. 1 credit, 2 with include_owner=true. |
| REST only | /api/query/point | Every parcel whose boundary covers a point. 1 credit per 10 records. |
get_state_summary | /api/summary | Parcel record counts and field coverage by state. Free. |
list_datasets | /api/query/catalog | Datasets, coverage and query limits. Free. |
Example requests and production responses
Real responses from the production API, captured November 5, 2026 and trimmed to the main fields. Every request needs an API key; see API authentication.
1. Find the parcel at an address
An exact search for 1600 Glenarm Pl, Denver, which returns the parcel records at that address; the first is shown. 1 credit.
curl --fail-with-body -sS --get \
-H "Authorization: Bearer $KORZY_API_KEY" \
--data-urlencode 'q=1600 Glenarm Pl, Denver, CO' \
https://api.korzy.co/api/searchResponse (trimmed)
{
"results": [
{
"korzy_id": "08031-38ea02a85c11fd253b1c",
"address": "1600 GLENARM PL",
"city": "DENVER",
"postcode": "80202-4311",
"county": "Denver",
"statefp": "08",
"longitude": -104.98947115039978,
"latitude": 39.744195649999995,
"match_type": "exact",
"countyname": "Denver",
"parceladdr": "1600 GLENARM PL",
"parcelcity": "DENVER",
"parcelid": "0234610035000",
"saleamt": 131000000,
"saledate": "2018-07-11",
"updated": "2026-04-21",
"usedesc": "COMMERCIAL-OFFICE",
"situs_zip": "80202-4311",
"zoning_code": "CBD",
"assessed_value_usd": 0,
"market_value_usd": 885700,
"geoid": "08031"
}
],
"truncated": false
}2. Fetch the record with owner fields
The same parcel by korzy_id with include_owner=true. Owner values are shown here as placeholders. 2 credits.
curl --fail-with-body -sS --get \
-H "Authorization: Bearer $KORZY_API_KEY" \
--data-urlencode 'korzy_id=08031-38ea02a85c11fd253b1c' \
--data-urlencode 'include_owner=true' \
https://api.korzy.co/api/parcel-recordResponse (trimmed)
{
"countyname": "Denver",
"latitude": 39.744195649999995,
"longitude": -104.98947115039978,
"korzy_id": "08031-38ea02a85c11fd253b1c",
"parceladdr": "1600 GLENARM PL",
"parcelcity": "DENVER",
"parcelid": "0234610035000",
"saleamt": 131000000,
"saledate": "2018-07-11",
"statefp": "08",
"updated": "2026-04-21",
"usedesc": "COMMERCIAL-OFFICE",
"situs_zip": "80202-4311",
"zoning_code": "CBD",
"assessed_value_usd": 0,
"market_value_usd": 885700,
"geoid": "08031",
"owner_name": "EXAMPLE HOLDINGS LLC",
"owner_mailing_address": "100 EXAMPLE ST, SAMPLE CITY, ST 00000"
}County parcel data for proptech apps
Parcel coverage, infrastructure counts and example requests for counties where this work is common. Korzy covers parcel data in every U.S. county.
How Korzy compares with other parcel data APIs
More Korzy use cases
Ship parcel data in your product
Search, record and point lookups work the same in every county, with monthly credits shared across all routes.