Introduction
What the API does, how the domain fits together, and the conventions every response follows.
What is this?
The Texas Property Tax Data Service is a REST API over public Texas property tax records. It answers one question: given a parcel, which entities tax it, who collects that tax, and how do you submit to them?
Data is downloaded from public sources (Texas Comptroller directories, county appraisal district bulk files), normalized, and loaded into Postgres. Every field carries provenance. The API is read-only.
The domain in 60 seconds
Texas property tax splits across three organizations that are easy to conflate:
- Appraisal district (CAD) — determines value; owns parcels, values and exemptions. Sets no rates, touches no money. One per county (a few serve several).
- Taxing unit — levies the tax: county, city, school district, college, hospital district, MUD, ESD, and so on. A parcel typically sits in several at once. Identified by an 8-digit state code
CCC-UUU-TT. - Collector — bills, receives payment, processes refunds. Frequently not the taxing unit: it may be the county tax office, an adjacent county, the unit itself, or a contracted private firm.
The join path the whole product depends on: parcel → taxing units → collector → submission contact.
Base URL and versioning
All endpoints live under /v1. This build points at https://graywinston.modavi.me (override with NEXT_PUBLIC_API_BASE_URL at build time).
https://graywinston.modavi.me/v1/parcels/48201/1234560000004?taxing_units=trueResponse envelope
List endpoints return { data, meta }; single-resource endpoints return { data }. meta carries pagination (total, limit, offset).
{
"data": [ /* resources */ ],
"meta": { "total": 254, "limit": 100, "offset": 0 }
}Where to go next
- Authentication — API keys and tiers.
- Parcels — the main event: parcel → tax bill.
Not legal advice