# Get legislation

One piece of legislation: sponsors, AI summary, roll call with every vote, timeline, documents.

`GET https://www.chicagopolitics.org/api/v1/legislation/{idOrRecord}`

## Authorizations

| Header | Value |
| --- | --- |
| `Authorization` | `Bearer <key>`. [Get a key](https://www.chicagopolitics.org/account); see [authentication](https://www.chicagopolitics.org/developers/authentication). |

## Path parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `idOrRecord` | string | yes | Matter id (GUID) or record number, e.g. O2026-0027236 |

## Response

200 Legislation

| Field | Type | Description |
| --- | --- | --- |
| `id` | string |  |
| `record` | string |  |
| `title` | string |  |
| `nickname` | string \| null |  |
| `type` | string |  |
| `category` | string \| null |  |
| `status` | string \| null |  |
| `introduced` | string \| null |  |
| `finalAction` | string \| null |  |
| `committee` | string \| null |  |
| `sponsor` | object |  |
| `key` | boolean |  |
| `routine` | boolean |  |
| `links` | object |  |
| `sponsors` | object[] |  |
| `aiSummary` | object \| null | AI-written from the ordinance text; includes sourceDocument. |
| `impactReport` | object \| null | Community impact report, AI-written from the legislation text; includes sourceDocument. |
| `rollCall` | object \| null |  |
| `timeline` | object[] |  |
| `documents` | object[] |  |

## Example request

```bash
curl "https://www.chicagopolitics.org/api/v1/legislation/{idOrRecord}" \
  -H "Authorization: Bearer $CHICAGO_POLITICS_KEY"
```

Errors: `400`, `401`, `404`, `429` (see [errors](https://www.chicagopolitics.org/developers/errors)).

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