Open States website screenshot

Open States

Open States is a civic technology project that aggregates and publishes legislative data for all 50 US states, Washington DC, Puerto Rico, and select municipal governments. It provides a REST API (v3) and a deprecated GraphQL API (v2) for programmatic access to bill text, sponsors, votes, legislators, committee information, and legislative events. Data is also available via bulk downloads. The project is maintained by Plural Policy as open civic infrastructure.

Open States publishes 6 APIs on the APIs.io network, including bills API, committees API, events API, and 3 more. Tagged areas include Government, Legislative Data, Civic Technology, State Legislature, and Bills.

The Open States catalog on APIs.io includes 1 JSON-LD context and 1 Spectral governance ruleset.

Open States’ developer surface includes documentation, engineering blog, pricing, and 8 more developer resources.

37.5/100 thin ▬ flat Agent 29/100 agent aware Full breakdown ↓
scored 2026-07-28 · rubric v0.6
AccessFreemium
7 APIs
GovernmentLegislative DataCivic TechnologyState LegislatureBillsLegislatorsCommitteesOpen DataRESTGraphQL

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-07-28 · rubric v0.6
Composite quality — 37.5/100 · thin
Contract Quality 13.2 / 25
Developer Ergonomics 2.2 / 20
Commercial Clarity 10.0 / 20
Operational Transparency 0.7 / 13
Governance 7.0 / 12
Discoverability 7.4 / 10
Agent readiness — 29/100 · agent aware
Machine-Readable Contract 18 / 18
Agentic Access Contract 10 / 10
MCP Server 0 / 12
Machine-Readable Auth 0 / 10
Idempotency 0 / 9
Stable Error Semantics 8 / 8
Request/Response Examples 0 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 0 / 6
Agent Skills 0 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
A2A Agent Card 0 / 8
Dry-Run / Simulate Mode 0 / 4
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/openstates: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 7

Individual APIs this provider publishes, each with its own machine-readable definition.

Open States GraphQL API (v2 - Deprecated)

Legacy GraphQL API providing access to Open States legislative data. This API has been deprecated in favour of API v3. Existing integrations should migrate to the REST v3 API.

Open States bills API

The bills API from Open States — 3 operation(s) for bills.

Open States committees API

The committees API from Open States — 2 operation(s) for committees.

Open States events API

The events API from Open States — 2 operation(s) for events.

Open States jurisdictions API

The jurisdictions API from Open States — 2 operation(s) for jurisdictions.

Open States Metrics API

The Metrics API from Open States — 1 operation(s) for metrics.

Open States people API

The people API from Open States — 2 operation(s) for people.

Scroll for all 7

GraphQL 1

GraphQL schemas published by this provider.

Open States GraphQL API

The Open States GraphQL API (v2) provides programmatic access to US state legislative data through a flexible GraphQL interface. The API exposes data covering all 50 states, Was...

GRAPHQL

Pricing Plans 1

Published pricing tiers and plan structures.

Rate Limits 1

Documented rate limits and quota policies.

Openstates Rate Limits

0 limits

RATE LIMITS

FinOps 1

Cost, billing, and metering signals for API financial operations.

Semantic Vocabularies 1

JSON-LD contexts and semantic vocabularies used across these APIs.

Openstates Context

63 classes · 0 properties

JSON-LD

Spectral Rules 1

Spectral governance rulesets for linting and validating these APIs.

Open States API Rules

6 rules · 5 warnings 1 info

SPECTRAL

JSON Schema 3

Standalone JSON Schema definitions for this provider's data models.

Bill

22 properties

JSON SCHEMA

Jurisdiction

9 properties

JSON SCHEMA

Person

20 properties

JSON SCHEMA

Examples 3

Example request and response payloads for these APIs.

Bills Search

3 fields

EXAMPLE

Jurisdictions List

3 fields

EXAMPLE

People Geo

3 fields

EXAMPLE

Security Posture 1

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Openstates Domain Security

TLSv1.3 · HSTS · DMARC

SECURITY

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Openstates Agentic Access

12 operations

12 operations · 0 acting

AGENTIC

Resources

Documentation 1

Reference material describing how the API behaves

Agent Surfaces 1

MCP servers, agent skills, and machine-readable catalogs

Build 1

SDKs, sample code, and the tooling you integrate with

Access & Security 1

Authentication, authorization, and security posture

Operate 1

Status, limits, changes, and where to get help

Commercial 3

Pricing, plans, and the legal terms of use

Company 2

The organization behind the API

Other 1

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
aid: openstates
name: Open States
description: 'Open States is a civic technology project that aggregates and publishes legislative data for all 50 US states,
  Washington DC, Puerto Rico, and select municipal governments. It provides a REST API (v3) and a deprecated GraphQL API (v2)
  for programmatic access to bill text, sponsors, votes, legislators, committee information, and legislative events. Data
  is also available via bulk downloads. The project is maintained by Plural Policy as open civic infrastructure.

  '
type: Index
accessModel:
  pricing: freemium
  onboarding: unknown
  trial: false
  try_now: false
  public: false
  label: Freemium
  confidence: medium
  source:
  - plans
  generated: '2026-07-22'
  method: derived
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/openstates.png
url: https://raw.githubusercontent.com/api-evangelist/openstates/refs/heads/main/apis.yml
created: '2026-06-13'
modified: '2026-06-13'
specificationVersion: '0.19'
tags:
- Government
- Legislative Data
- Civic Technology
- State Legislature
- Bills
- Legislators
- Committees
- Open Data
- REST
- GraphQL
apis:
- aid: openstates:openstates-graphql-api
  name: Open States GraphQL API (v2 - Deprecated)
  description: 'Legacy GraphQL API providing access to Open States legislative data. This API has been deprecated in favour
    of API v3. Existing integrations should migrate to the REST v3 API.

    '
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  humanURL: https://docs.openstates.org/graphql/
  baseURL: https://openstates.org/graphql/
  tags:
  - GraphQL
  - Deprecated
  - Legislative Data
  properties:
  - type: Documentation
    url: https://docs.openstates.org/graphql/
  - url: graphql/openstates-graphql.md
    type: GraphQL
  - url: graphql/openstates-schema.graphql
    type: GraphQLSchema
  contact:
  - FN: Open States Support
    email: contact@openstates.org
- aid: openstates:openstates-bills-api
  name: Open States bills API
  description: The bills API from Open States — 3 operation(s) for bills.
  humanURL: https://docs.openstates.org/api-v3/
  baseURL: https://v3.openstates.org/
  tags:
  - bills
  properties:
  - type: OpenAPI
    url: openapi/openstates-bills-api-openapi.yml
  - type: Documentation
    url: https://docs.openstates.org/api-v3/
  - type: SwaggerUI
    url: https://v3.openstates.org/docs/
  - type: ReDoc
    url: https://v3.openstates.org/redoc/
  - type: GitHubRepository
    url: https://github.com/openstates/api-v3
- aid: openstates:openstates-committees-api
  name: Open States committees API
  description: The committees API from Open States — 2 operation(s) for committees.
  humanURL: https://docs.openstates.org/api-v3/
  baseURL: https://v3.openstates.org/
  tags:
  - committees
  properties:
  - type: OpenAPI
    url: openapi/openstates-committees-api-openapi.yml
  - type: Documentation
    url: https://docs.openstates.org/api-v3/
  - type: SwaggerUI
    url: https://v3.openstates.org/docs/
  - type: ReDoc
    url: https://v3.openstates.org/redoc/
  - type: GitHubRepository
    url: https://github.com/openstates/api-v3
- aid: openstates:openstates-events-api
  name: Open States events API
  description: The events API from Open States — 2 operation(s) for events.
  humanURL: https://docs.openstates.org/api-v3/
  baseURL: https://v3.openstates.org/
  tags:
  - events
  properties:
  - type: OpenAPI
    url: openapi/openstates-events-api-openapi.yml
  - type: Documentation
    url: https://docs.openstates.org/api-v3/
  - type: SwaggerUI
    url: https://v3.openstates.org/docs/
  - type: ReDoc
    url: https://v3.openstates.org/redoc/
  - type: GitHubRepository
    url: https://github.com/openstates/api-v3
- aid: openstates:openstates-jurisdictions-api
  name: Open States jurisdictions API
  description: The jurisdictions API from Open States — 2 operation(s) for jurisdictions.
  humanURL: https://docs.openstates.org/api-v3/
  baseURL: https://v3.openstates.org/
  tags:
  - jurisdictions
  properties:
  - type: OpenAPI
    url: openapi/openstates-jurisdictions-api-openapi.yml
  - type: Documentation
    url: https://docs.openstates.org/api-v3/
  - type: SwaggerUI
    url: https://v3.openstates.org/docs/
  - type: ReDoc
    url: https://v3.openstates.org/redoc/
  - type: GitHubRepository
    url: https://github.com/openstates/api-v3
- aid: openstates:openstates-metrics-api
  name: Open States Metrics API
  description: The Metrics API from Open States — 1 operation(s) for metrics.
  humanURL: https://docs.openstates.org/api-v3/
  baseURL: https://v3.openstates.org/
  tags:
  - Metrics
  properties:
  - type: OpenAPI
    url: openapi/openstates-metrics-api-openapi.yml
  - type: Documentation
    url: https://docs.openstates.org/api-v3/
  - type: SwaggerUI
    url: https://v3.openstates.org/docs/
  - type: ReDoc
    url: https://v3.openstates.org/redoc/
  - type: GitHubRepository
    url: https://github.com/openstates/api-v3
- aid: openstates:openstates-people-api
  name: Open States people API
  description: The people API from Open States — 2 operation(s) for people.
  humanURL: https://docs.openstates.org/api-v3/
  baseURL: https://v3.openstates.org/
  tags:
  - people
  properties:
  - type: OpenAPI
    url: openapi/openstates-people-api-openapi.yml
  - type: Documentation
    url: https://docs.openstates.org/api-v3/
  - type: SwaggerUI
    url: https://v3.openstates.org/docs/
  - type: ReDoc
    url: https://v3.openstates.org/redoc/
  - type: GitHubRepository
    url: https://github.com/openstates/api-v3
common:
- type: AgenticAccess
  url: agentic-access/openstates-agentic-access.yml
- type: DomainSecurity
  url: security/openstates-domain-security.yml
- type: Website
  url: https://pluralpolicy.com/open
- type: Documentation
  url: https://docs.openstates.org/
- type: GitHubOrg
  url: https://github.com/openstates
- type: Blog
  url: https://blog.openstates.org/
- type: Pricing
  url: https://open.pluralpolicy.com/accounts/profile/
- type: X
  url: https://twitter.com/openstates
- type: Plans
  url: plans/openstates-plans-pricing.yml
- type: RateLimits
  url: rate-limits/openstates-rate-limits.yml
- type: FinOps
  url: finops/openstates-finops.yml
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com