Officeholder
Who holds a seat now: a governor, a member of Congress or a state legislator.
- Returned by
GET /v1/officeholders,GET /v1/officeholders/{id}- Shapes
- The full record is in GET /v1/officeholders/{id}. The shorter forms in GET /v1/officeholders leave some fields out; a field that isn’t in every form says where it is.
How it connects
district_idis theidof the contest district for the same seat, so a contest’sdistrict.idfinds who holds it now.
Good to know
person_idcomes from Open States and stays the same across terms and offices.
Fields
| Field | Type | Meaning | Example |
|---|---|---|---|
person_id | stringUUID | Open States person id; stays the same across terms and offices. | 6c2a35d5-c04c-44d0-8bd9-92a625e2b525 |
name | string | Full name. | Akilah Weber Pierson |
given_name | stringor null | Given name. | Akilah |
family_name | stringor null | Family name. | Weber Pierson |
office | string | The office held, normalized across states.13 values: meanings | state_senator |
office_title | string | Title the state uses: “Assemblymember”, “Delegate”. | State Senator |
level | string | Level of government.federal, state, city meanings | state |
state | stringTwo capital letters (USPS code) | USPS state code. | CA |
district | stringor null | District as the legislature names it: "12", "1A", "21st Middlesex". | 39 |
district_ocd_id | string | OCD division id of the seat. | ocd-division/country:us/state:ca/sldu:39 |
district_id | integeror null | The matching contest district id, where there is one. | 245 |
party | stringor null | Party as published: “Democratic”, “Republican/Conservative”. | Democratic |
party_abbreviation | stringor null | Party abbreviation. | DEM |
term_start | stringor nullYYYY-MM-DD | Start of the current term. | 2024-12-02 |
term_end | stringor nullYYYY-MM-DD | End of the current term. | — |
email | stringor nullEmail address | Official office email. | senator.weber@senate.ca.gov |
phone | stringor null | Office phone (capitol office first). | 916-651-4039 |
website_url | stringor nullURL | Their official web page. | https://sd39.senate.ca.gov/ |
image_url | stringor nullURL | Their official photo. | https://sd39.senate.ca.gov/sites/sd39.senate.ca.gov/files/website/sd39_bio_portrait.jpg |
offices | array of object | Offices with their addresses and phones. | — |
offices[].classification | stringoptional | Which office: capitol, district, home or primary.capitol, district, home, capitol-mail, district-mail, primary, … meanings | capitol |
offices[].address | stringoptional | The office’s mailing address. | 1021 O St. Suite 7310, Sacramento, CA 95814 |
offices[].voice | stringoptional | The office’s phone number. | 916-651-4039 |
offices[].fax | stringoptional | The office’s fax number. | — |
social | object | Social accounts, where known. Only keys we have are present. | — |
social.twitter | stringoptional | X (Twitter) handle, without the @. | — |
social.facebook | stringoptional | Facebook handle. | — |
social.instagram | stringoptional | Instagram handle. | — |
social.youtube | stringoptional | YouTube handle or channel id. | — |
source_urls | array of stringURL | Where the data came from. | ["https://a79.asmdc.org","https://a79.asmdc.org/","https://ballotpedia.org/Akilah_Weber",… |
updated_at | stringISO 8601 date and time with time zone | When we last refreshed this record. | 2026-11-13T03:04:14.637025+00:00 |
seats | array of Officeholder | Every seat they hold (rarely more than one).Only in GET /v1/officeholders/{id}. | — |