# Versioning and changelog

The REST API is versioned in the path (`/api/v1`). Within v1 we add endpoints, parameters, and fields, but we don't remove or rename them or change what they mean. If a breaking change is ever needed it ships as a new version, announced here first while v1 keeps working. GraphQL fields are retired with `@deprecated` before they go away.

The older unversioned endpoints (`/api/alderpersons`, `/api/votes`, `/api/matters`, ...) still work with a key, but use `/api/v1` for new work.

## 2026-10-07

- [Track legislation by stage](https://www.chicagopolitics.org/developers/api/track-legislation): every matter this term by lifecycle stage, updated hourly.
- [Member history](https://www.chicagopolitics.org/developers/api/get-member-history): daily snapshots and quarterly campaign reports.
- [Timeline](https://www.chicagopolitics.org/developers/api/get-timeline), [entities](https://www.chicagopolitics.org/developers/api/search-entities), and the [relationship graph](https://www.chicagopolitics.org/developers/api/get-graph).
- New developer docs with an endpoint page and playground for every endpoint.

## 2026-10-06

- [GraphQL](https://www.chicagopolitics.org/developers/graphql) at `/api/graphql`, and the `graphql` MCP tool.
- [Campaign money and lobbying](https://www.chicagopolitics.org/developers/api/get-money) endpoints.
- API v1 with free accounts, API keys, OAuth 2.1, and agent registration; MCP server and A2A agent.

---
Source: https://www.chicagopolitics.org/developers/changelog · Chicago Politics, an independent, nonpartisan tracker of the Chicago City Council. Guide for agents: https://www.chicagopolitics.org/llms.txt
