Every endpoint is public, read-only and needs no key. Most are plain
GETs you can open in a browser or pipe through curl. Figures come from
the State of Texas — see where each number comes from.
| Method | Path | What it returns |
|---|---|---|
| GET | /anomaliesyear?, district_number?, flag_type?, limit? | Get Anomalies Get districts with anomaly flags |
| Method | Path | What it returns |
|---|---|---|
| GET | /benchmarks | Get Benchmarks Statewide per-year medians — the 'what's normal?' context that district numbers are meaningless without. |
| Method | Path | What it returns |
|---|---|---|
| GET | /district-geo | District Geo Simplified Texas school-district boundaries (Census TIGER/Line 2025, public domain) joined to TEA district numbers, with the headline measures merged in. Charter districts are absent — they have no geographic boundary. |
| GET | /district/{district_number}/bondsdistrict_number | Get District Bonds Every bond this district ever put on a ballot, and how the vote went. |
| GET | /district/{district_number}/breakdowndistrict_number | Get District Breakdown Function-level spending breakdown (MECE categories from TEA function codes) for every year — where the money actually goes. |
| GET | /district/{district_number}/campus-performancedistrict_number | Get District Campus Performance Every campus in one district with its own STAAR scores, by subject. |
| GET | /district/{district_number}/campusesdistrict_number | Get District Campuses Every rated campus in one district, worst first, against the district's own rating. |
| GET | /district/{district_number}/debtdistrict_number | Get District Debt What one district still owes, and the year it clears. |
| GET | /district/{district_number}/dollardistrict_number | Get District Dollar Where one dollar goes, as 100 pennies — for this district, for its structural peers, and for Texas as a whole, with the dollar amount at stake in each category if the district spent at the peer rate. |
| GET | /district/{district_number}/economicsdistrict_number | Get District Economics What you pay, where it goes, what it buys, and who does better. |
| GET | /district/{district_number}/equitydistrict_number | Get District Equity How this district does for the students it actually serves. |
| GET | /district/{district_number}/eratedistrict_number | Get District Erate One district's E-Rate history as its own applicant. |
| GET | /district/{district_number}/forensicsdistrict_number | Get District Forensics The four money questions Texas reports in four incompatible places. |
| GET | /district/{district_number}/insightsdistrict_number | Get District Insights Actionable intelligence: where this district materially differs from its similarity-graph peers, each finding quantified in dollars and ranked by magnitude. Peers come from the exogenous k-NN graph so the comparison is apples-to-apples. |
| GET | /district/{district_number}/lineage/{metric}district_number, metric | Get Metric Lineage Why is this number this number? |
| GET | /district/{district_number}/nationaldistrict_number | Get District National One district against every other district in the country. |
| GET | /district/{district_number}/outcomesdistrict_number | Get District Outcomes What the money buys: student population, teaching workforce, and results, each against this district's structural peers and the state. |
| GET | /district/{district_number}/peersdistrict_number | Get District Peers Peer comparison, plus this district's statewide percentile. The #1 demand in admin usage simulation (docs/UX_RESEARCH.md). |
| GET | /district/{district_number}/performancedistrict_number | Get District Performance One district's STAAR results by student group and by subject. |
| GET | /district/{district_number}/spendingdistrict_number | Get District Spending Breakdown One district's operating dollar, split sixteen ways, against the state. |
| GET | /district/{district_number}/spending-detaildistrict_number | Get District Spending Detail Two more spending dimensions the summarized data already carries: OBJECT (what was bought — payroll/contracted/supplies/other, sums to operating) and PROGRAM (who it served — regular/special-ed/bilingual/ career-tech/gifted/compensatory/athletics), every year. |
| GET | /district/{district_number}/summarydistrict_number, start_year?, end_year? | Get District Summary Get financial summary for a specific district |
| GET | /district/{district_number}/tax-historydistrict_number | Get District Tax History One district's rate since 2009, and why a bill moved. |
| GET | /district/{district_number}/trendsdistrict_number | Get District Trends Seventeen fiscal years of this district, against the state's own line. |
| GET | /district/{district_number}/turnaroundsdistrict_number | Get District Turnarounds Walk the similarity graph and find structural peers that reversed a sustained deficit (>=2 deficit years then >=2 surplus years) or a sustained enrollment decline (>=3 down years then >=2 up years). See docs/GRAPH_INSIGHTS.md. |
| GET | /districtssearch?, limit? | List Districts List all districts with optional search |
| GET | /map-data | Similarity Map Data Precomputed 2D similarity-map coordinates (PCA of the exogenous feature space; see scripts/graph_insights.py). |
| Method | Path | What it returns |
|---|---|---|
| GET | /api | Api Info API information and endpoint directory |
| GET | /dollar/texas | Get Texas Dollar The whole state's dollar, pooled: every category summed across every district and divided by total spending. Unlike the per-district peer bars this needs no rescaling — it is one real dollar made of real dollars. |
| GET | /fallback-index | Fallback Index The district picker and statewide figures, with no database involved. |
| GET | /health | Health Check Health check endpoint. |
| GET | /provenance | Get Provenance Where every number came from, and how to check it yourself. |
| GET | /stats | Get Stats Get database statistics |
| Method | Path | What it returns |
|---|---|---|
| GET | /api/cron/runsjob?, limit? | Get Cron Runs Has the scheduled work actually been running? |
| GET | /briefing | Get Briefing The most recent daily ISD intelligence briefing. |
| Method | Path | What it returns |
|---|---|---|
| POST | /query | Nlp Query Process natural language query about Texas school finances |
| GET | /sample-queries | Get Sample Queries Get sample natural language queries |
| Method | Path | What it returns |
|---|---|---|
| GET | /bonds/texas | Get Texas Bonds 66 years of Texas school bond elections, without the per-district detail. |
| GET | /campuses/texas | Get Texas Campuses What the district rating hides. |
| GET | /debt/texas | Get Texas Debt What Texas school districts still OWE — the stock, not the yearly payment. |
| GET | /economics/texas | Get Texas Economics The statewide series behind every district page. |
| GET | /equity/texas | Get Texas Equity Statewide results by student group, and who does best for poor students. |
| GET | /erate/texas | Get Texas Erate Federal E-Rate money for school connectivity — the dollars TEA's books never see. |
| GET | /forensics/quality | Get Forensic Quality Forensic-accounting tests on the filings themselves. |
| GET | /forensics/texas | Get Texas Forensics Statewide totals, the ranked tables, and one compact row per district. |
| GET | /lineage/texas/{metric}metric | Get Statewide Lineage The working behind the statewide headline itself. |
| GET | /national/texas | Get Texas National Texas against the other 49 states, on the federal government's ruler. |
| GET | /performance/texas | Get Texas Performance STAAR by student group, statewide, at the Meets bar. |
| GET | /spending/texas | Get Texas Spending Detail Where the operating dollar actually goes — all sixteen PEIMS functions. |
| GET | /takeover/houston | Get Houston Takeover Did the June 2023 state takeover of Houston ISD change results? |
| GET | /tax/texas | Get Texas Tax History What school tax rates have actually done since 2009. |
| GET | /trends/texas | Get Texas Trends The seventeen-year statewide series and the six findings in it. |