← POLIAPI/MOCKUPS/THE KILLER ENDPOINT
api · mockup
// the killer endpoint

One address in.
Every ballot out.

90% of real-world civic API calls start with a voter's street address, not a jurisdiction name. This endpoint replaces a month of TIGER/Line GIS work with one HTTP call — the #1 reason teams stayed on Google Civic.

// try it

Address → resolved districts → upcoming ballot.

try it
Precinct28.1
U.S. HouseNC-11
NC SenateDistrict 49
NC HouseDistrict 114
County Comm.Buncombe · District 1
City CouncilAsheville · District 3
School BoardAsheville City Schools
Soil & WaterBuncombe SWCD
GET /v1/ballot?address=...
{
  "address": "200 College St, Asheville, NC 28801",
  "ocd_id": "ocd-division/country:us/state:nc/place:asheville",
  "districts": [
    { "type": "cd",       "ocd_id": "...cd:11" },
    { "type": "sldu",     "ocd_id": "...sldu:49" },
    { "type": "sldl",     "ocd_id": "...sldl:114" },
    { "type": "council",  "ocd_id": "...council_district:3" }
  ],
  "upcoming_elections": [
    { "date": "2026-05-05", "ballot_url": "/v1/ballots/blt_8fA2" }
  ]
}