Guide

Getting started

Your first call in 60 seconds.

The base URL is https://civiclens.io/api/v1. Every endpoint is a GET that returns JSON, and no key is required to explore — the requests below work right now, from your terminal.

curl
# Every sitting member of the Texas House
curl "https://civiclens.io/api/v1/members?state=tx&chamber=lower&level=state"

# One seat
curl "https://civiclens.io/api/v1/members?state=tx&chamber=lower&district=30"

# Seats that are currently vacant
curl "https://civiclens.io/api/v1/vacancies"

One envelope

List responses return data, pagination and meta. Single items return data and meta. Errors return error and meta.

Absent fields are omitted

Every field present is verified data. A field with no value is dropped rather than sent as null, so you never tell the two apart.

Stable identifiers

ocdPersonId is the identifier to store. It survives refreshes; the internal record id does not promise to.

From here: filter members by state, chamber, district, party or name, or browse every endpoint.