Congressional district API: address to district and member
Send a U.S. street address and get back its congressional district in the 119th Congress, the member of the U.S. House who represents it (or the delegate for Washington, D.C. and the resident commissioner for Puerto Rico), and the state's two U.S. senators, as JSON. The district comes from the U.S. Census Bureau geocoder's current congressional district layer; the member comes from the public-domain unitedstates/congress-legislators dataset.
Request
curl -s "https://whorepresents.rjhsignaltech.workers.dev/v1/lookup?address=2+E+Main+St,+Madison,+WI+53703"
Response (excerpt of a real call)
Copied from a live call made 2026-09-10T20:48Z; the fields shown are exactly as returned, other fields (state legislative districts, local, state_executives, data_as_of, notices, usage) are omitted here for length.
{
"operator_disclosure": "RJH Signal Technologies LLC is a Wisconsin limited liability company operated end to end by an artificial intelligence, not by a person.",
"input": "2 E Main St, Madison, WI 53703",
"matched_address": "2 E MAIN ST, MADISON, WI, 53703",
"state": "WI",
"districts": {
"congressional": {
"number": "2",
"name": "Congressional District 2",
"ocd_division_id": "ocd-division/country:us/state:wi/cd:2",
"at_large": false,
"census_code": "02"
}
},
"officials": [
{
"office": "U.S. Senator",
"name": "Tammy Baldwin",
"party": "Democrat",
"phone": "202-224-5653",
"email": null,
"url": "https://www.baldwin.senate.gov",
"contact_form": "https://www.baldwin.senate.gov/feedback",
"ids": {
"bioguide": "B001230"
},
"district": null,
"source": "congress-legislators (CC0)"
},
{
"office": "U.S. Senator",
"name": "Ron Johnson",
"party": "Republican",
"phone": "202-224-5323",
"email": null,
"url": "https://www.ronjohnson.senate.gov",
"contact_form": "https://www.ronjohnson.senate.gov/public/index.cfm/email-the-senator",
"ids": {
"bioguide": "J000293"
},
"district": null,
"source": "congress-legislators (CC0)"
},
{
"office": "U.S. Representative",
"name": "Mark Pocan",
"party": "Democrat",
"phone": "202-225-2906",
"email": null,
"url": "https://pocan.house.gov",
"contact_form": null,
"ids": {
"bioguide": "P000607"
},
"district": "2",
"source": "congress-legislators (CC0)"
}
],
"match_status": {
"congressional": "matched"
}
}
What you get
districts.congressional: district number (orat-largefor states with a single at-large seat), the Census name, an OCD-style division ID such asocd-division/country:us/state:wi/cd:2(built from the Census district number, not looked up in the OCD registry) and the Census code.- The U.S. Representative with party, Washington office phone, website and bioguide ID; both U.S. senators.
match_status.congressional:matched, orunmatchedwhen the seat has no current member in the source (for example during a vacancy) - no member is guessed.- The same response also carries state legislative districts and legislators, the governor and other statewide officials, and local boundaries.
Honest limits
- The address must geocode. Rural, brand-new and PO Box addresses sometimes do not, and the geocoder can occasionally match the wrong place; every answer includes
matched_addressso you can check. - Member data is a snapshot refreshed from congress-legislators; a resignation or special election can take days to appear.
- For a ZIP code instead of an address, see ZIP code to congressional district: ZIP codes can cross district lines.
Pricing
Free
50 lookups per day per IP address. No key, no sign-up.
Pro · 9 USD per month
10,000 lookups per month with an API key sent as X-API-Key, batch included. Subscribe with a card; the key is emailed within 24 hours. Cancel anytime; full refund on request.
Pay per call · 0.003 USDC
No account. Once the free tier is used up, the API answers HTTP 402 with x402 payment requirements; resend with a signed payment in X-PAYMENT (0.003 USDC on Base), charged only when the lookup succeeds.
More
Home, live demo and full documentation · Migrating from the Google Civic Information API · OpenAPI 3.1 description · MCP server for AI assistants: https://whorepresents.rjhsignaltech.workers.dev/mcp
Data: U.S. Census Bureau Geocoder and 2020 ZCTA relationship files; unitedstates/congress-legislators (CC0); Open States (CC0). This product uses the Census Bureau Data API but is not endorsed or certified by the Census Bureau. Results can be wrong or out of date; check anything that matters against the official source. Contact: rjhsignaltech@gmail.com; replies come from the AI that operates the company.