# Texas special districts API

**The Texas special districts API tells you which municipal utility districts (MUDs), water control and improvement districts (WCIDs), fresh water supply, levee and management districts, and public improvement districts (PIDs) contain a point**, with each district's self-reported tax rate, outstanding debt, website, and the statute that governs the purchaser's notice. It is included with the [Growth plan and up](https://pinsharing.com/pricing); each lookup counts 1 address lookup. A statewide data licence is on [Texas district data](https://pinsharing.com/data/texas-special-districts).

Not a legal determination.

Boundaries come from TCEQ and city records: they are approximate and not a survey. Tax rates and debt are self-reported by each district to the Texas Comptroller. PinSharing doesn't decide whether a notice is required for a sale; confirm with the district's own notice form (Water Code §49.453 requires districts to post it) or the appraisal district.

## Districts at a point

```bash
curl "https://api.pinsharing.com/v1/districts?lat=29.7604&lon=-95.3698&key=YOUR_KEY"
```

Geocode the address first ([/v1/geocode](https://pinsharing.com/docs#geocode)); a point inside the parcel ([/v1/parcels](https://pinsharing.com/docs/parcels)) is best. Add `geometry=simplified` or `full` for boundaries, and `status=all` to include inactive and dissolved districts.

```
{
  "result": "districts_found",
  "query": { "lat": 29.9876, "lon": -95.5512, "include_inactive": false },
  "coverage": { "state": "TX", "supported": true, "water_districts": "statewide", "pids": "not_published_here", "pid_sources": [] },
  "districts": [
    {
      "id": "tx-wd-1234567", "name": "Harris County MUD 157", "type": "mud", "type_label": "Municipal Utility District",
      "status": "active", "counties": ["Harris"], "county_fips": ["48201"],
      "position": "inside", "distance_to_boundary_m": 212.4, "near_boundary": false,
      "tax": { "year": 2025, "total_rate": 0.62, "maintenance_rate": 0.15, "debt_service_rate": 0.47, "per": "$100 of taxable value" },
      "debt": { "year": 2026, "outstanding_principal": 18450000.0, "currency": "USD" },
      "website": "http://www.hcmud157.example",
      "disclosure": { "statute": "Texas Water Code §49.452", "notice": "Notice to purchasers of property in a water district (wording in §49.4521)", "note": "…" },
      "comptroller": { "id": "103226411", "name": "Harris County Municipal Utility District No. 157", "match": "exact_key", "score": 1.0 },
      "warnings": ["rates_not_yet_reported"], "mapped_acres": 612.3, "as_of": "2026-11-07", "keep_forever": true, "geometry": null
    }
  ],
  "nearby": [],
  "warnings": ["Public improvement district (PID) boundaries are not published for this area yet, so PIDs here are not included."],
  "attribution": ["Water districts: Texas Commission on Environmental Quality", "Tax rates and debt: Texas Comptroller SPDPID (self-reported by each district)"],
  "license": "You may store these results (as of data_version) indefinitely; the source is open-licensed.",
  "notice": "…", "data_version": "20261107"
}
```

## Reading the answer

- `result` is `districts_found`, `none_found` or `outside_coverage`. **`none_found` is not proof that no district applies**: boundaries are approximate, new districts can be missing, and PIDs are only published for the areas in `coverage.pid_sources`.
- `districts` lists every district containing the point, smallest first (a MUD before the river authority around it). `near_boundary` is true within 30 m of an edge; `distance_to_boundary_m` gives the distance.
- `nearby` lists districts within 150 m that don't contain the point. Lots on a boundary are the ones to check by hand.
- `tax` and `debt` come from the district's own report to the Texas Comptroller, with their year. They are `null` when we couldn't match the district to a Comptroller record with confidence; we never fill in a 0. `rates_not_yet_reported` means the newest report has no rate yet, so the last reported one is shown; `reported_zero_rate` means the district reported 0.
- `disclosure.statute` names the law for the purchaser's notice: Texas Water Code §49.452 for water districts, Property Code §5.014 for PIDs. We don't say whether a notice is required for a sale.
- `keep_forever`: on paid plans you may store each result, as of `data_version`, indefinitely. Rates and boundaries change every year, so refresh before relying on an old answer.

## A district by id

```bash
curl "https://api.pinsharing.com/v1/districts/tx-wd-5363501?geometry=simplified&key=YOUR_KEY"
```

Ids are `tx-wd-` plus the TCEQ district number, or `tx-pid-fortworth-` plus the city's PID number. They don't change between releases. A district that leaves the data answers `410 district_retired`. 1 address lookup.

## With reverse geocoding

```bash
curl "https://api.pinsharing.com/v1/reverse?lat=29.9876&lon=-95.5512&include=districts,parcel&key=YOUR_KEY"
```

`include=districts` adds a compact `districts` object to a reverse lookup (1 more address lookup); combine it with `include=parcel`.

## AI assistants

The [MCP server](https://pinsharing.com/docs/mcp) has a `district_lookup` tool with the same answer. Its description tells the assistant to report missing figures as unknown and never to say whether a notice is required.

## Coverage and accuracy (Nov 7, 2026)

- **2,805 districts**, 2,020 active: every water district TCEQ maps statewide (1,908 MUDs), plus Fort Worth PIDs. `GET /v1/districts/coverage` (no key) shows what is live.
- **Boundary agreement:** in Fort Bend County, 90.46% of points inside the appraisal district's parcel-based MUD boundaries fall inside our boundary for the same district (234 districts compared). That gap is why answers flag points near a boundary.
- **Tax and debt:** 1,388 of 1,921 active taxing water districts (72.3%) are matched to a Comptroller record. The rest have no report on file or no confident match, and show `null`.
- **PIDs:** Fort Worth today. We add city and county PID layers as their publishers allow redistribution.

## Bulk files (data licence)

Licensees download the whole state each month as GeoJSON lines, GeoPackage or CSV, with the Comptroller match table. Every feature has the fields above plus `source`. [Download a free sample (Travis County)](https://api.pinsharing.com/v1/districts/sample) · [Licence and prices](https://pinsharing.com/data/texas-special-districts).

## Attribution and limits

- Show the `attribution` lines from the response near the data (Fort Worth PIDs are CC BY 4.0).
- Don't sweep the API to rebuild the dataset; the [data licence](https://pinsharing.com/data/texas-special-districts) is for that. See [Terms, section 4](https://pinsharing.com/terms#districts).

---
Source: https://pinsharing.com/docs/districts · Map data © OpenStreetMap contributors · Index: https://pinsharing.com/llms.txt
