District matching API made easy

Smart District is a district matching API. You provide us address information, we give you back their corresponding districts. It's that simple. 


districtMatch: {
  districtCode: 321,
  districtName: "8",
  districtTypeId: 3,
  districtTypeKey: "cd",
  districtTypeLabel: 
    "Congressional District",
  state: "MD"
}

How does it work?

Smart District is a GraphQL API with four types of queries for district matching. Each one will return the corresponding districts to a given input. Whether the inputs are latitude and longitude coordinates, street addresses, or zip codes, Smart District will provide the corresponding voting districts.

All of these queries return a list of districts with information about them including a district ID, district type, district name, district code and the state of the district.


districtMatch: coordinates => locationDistricts[]

addressDistrictMatch: address => locationDistricts[]

zipcodeDistrictMatch: zipCode => locationDistricts[]

districtMatchBulk: bulkAddresses[] => locations[locationDistricts[]]

All of these queries return a list of districts with information about them:

  • District ID
  • District type
  • District name
  • District code
  • State

Why Smart District?

Our district data is updated during election cycles, while most of our competitors only update at the end of each cycle. We also include smaller districts such as school districts that other services tend to ignore. Our API supports addresses one by one or in bulk as an array of addresses. Addresses can be supplied in coordinates or as written addresses.

Legislative districts:
(We update these between census file updates)

  • Congressional District
  • State Legislative Upper District
  • State Legislative Lower District

Census Boundaries/School Districts:
(Updated yearly where applicable with Tiger files)

  • Census Block Group
  • Census Tract
  • Census Block
  • Secondary School District
  • Unified School District
  • Elementary School District
  • County
  • Township/City

Use cases

Voter data enrichment

You can use Smart District to enrich your contact data set. Integrate it with your CMS of choice to backfill all your contact data with their corresponding districts.

Voter targeting

Use the district information provided by our API to better target voters for your campaigns.

Record updates

Get the latest updates when district boundaries are redrawn and the end or during election cycles.