# Laws

> Bylaws, the terms they define, and the documents governments publish: staff reports, plans and notices.

The bylaws a government adopts, and the documents it publishes on its own site. A document says whether its text is held.

## Bylaws

Filter by `subject` for a bylaw's core subject; subject `fees_charges` is a fees and charges bylaw.

### `GET /v1/bylaws`

**List bylaws.** Bylaws by number, title, kind and adoption date. Billed as one records request a page. Filters: jurisdiction, region, country, kind, subject, from, to, since.

[Reference and playground for list bylaws](https://data.heytownhall.com/docs/reference/documents/get-v1-bylaws)

| Parameter      | What it takes                                                                                                      |
| -------------- | ------------------------------------------------------------------------------------------------------------------ |
| `jurisdiction` | A jurisdiction id.                                                                                                 |
| `region`       | A two-letter province or state code.                                                                               |
| `country`      | CA or US.                                                                                                          |
| `kind`         | bylaw, amendment, consolidated, repeal.                                                                            |
| `subject`      | A bylaw's core subject, as the bylaw-subject model read its text. fees_charges is a body's fees and charges bylaw. |
| `from`         | On or after this date (YYYY-MM-DD).                                                                                |
| `to`           | On or before this date (YYYY-MM-DD).                                                                               |
| `since`        | Records read at or after this instant: what is new since your last read.                                           |

Pages with `limit` and `cursor` ([pagination](https://data.heytownhall.com/docs/pagination)).

| Field             | Type           | What it holds                                                                                                                                                                    |
| ----------------- | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`              | string         |                                                                                                                                                                                  |
| `jurisdiction_id` | string         |                                                                                                                                                                                  |
| `country`         | string or null |                                                                                                                                                                                  |
| `region`          | string or null |                                                                                                                                                                                  |
| `number`          | string or null |                                                                                                                                                                                  |
| `title`           | string or null |                                                                                                                                                                                  |
| `kind`            | string or null |                                                                                                                                                                                  |
| `adopted_on`      | string or null | YYYY-MM-DD.                                                                                                                                                                      |
| `text_available`  | boolean        |                                                                                                                                                                                  |
| `subject`         | string or null | The core subject its text regulates: zoning, building, animal_control, fire_burning, noise, trees, business_licence, fees_charges or other. Null: not yet read, or nothing says. |
| `first_seen_at`   | string or null | ISO 8601 instant, UTC.                                                                                                                                                           |
| `source_url`      | string or null | The page, document, video or platform the record was read from.                                                                                                                  |
| `read_at`         | string or null | When it was read.                                                                                                                                                                |

### `GET /v1/bylaws/{id}`

**Retrieve a bylaw.** One bylaw. Billed as one records request.

[Reference and playground for retrieve a bylaw](https://data.heytownhall.com/docs/reference/documents/get-v1-bylaws-id)

Path: `{id}` such as 123456.

## Defined terms

The terms a government's bylaws define, such as "accessory building", each with the start of its definition as printed. Read them to learn a place's own word for a thing before you search.

### `GET /v1/defined-terms`

**List defined terms.** The terms a body's bylaws define (an 'accessory building', a 'protected tree'), each with the start of its definition, as printed. Billed as one records request a page. Filters: jurisdiction, region, country, term, since.

[Reference and playground for list defined terms](https://data.heytownhall.com/docs/reference/documents/get-v1-defined-terms)

| Parameter      | What it takes                                                            |
| -------------- | ------------------------------------------------------------------------ |
| `jurisdiction` | A jurisdiction id.                                                       |
| `region`       | A two-letter province or state code.                                     |
| `country`      | CA or US.                                                                |
| `term`         | Words in the defined term.                                               |
| `since`        | Records read at or after this instant: what is new since your last read. |

Pages with `limit` and `cursor` ([pagination](https://data.heytownhall.com/docs/pagination)).

| Field             | Type           | What it holds                                                     |
| ----------------- | -------------- | ----------------------------------------------------------------- |
| `id`              | string         |                                                                   |
| `jurisdiction_id` | string         |                                                                   |
| `country`         | string or null |                                                                   |
| `region`          | string or null |                                                                   |
| `term`            | string         | As the bylaw prints it.                                           |
| `definition`      | string         | The definition's first words, at most 400 characters, as printed. |
| `source_url`      | string or null | The page, document, video or platform the record was read from.   |
| `read_at`         | string or null | When it was read.                                                 |

## Documents

For a meeting's agenda package, minutes and attachments, see [meeting documents](https://data.heytownhall.com/docs/records/meetings#meeting-documents).

### `GET /v1/documents`

**List documents.** The documents a government publishes on its own site, by kind (staff reports, budgets, plans, bylaws, notices), and whether their text is held. Billed as one records request a page. Filters: jurisdiction, region, country, kind, from, to, since.

[Reference and playground for list documents](https://data.heytownhall.com/docs/reference/documents/get-v1-documents)

| Parameter      | What it takes                                                                 |
| -------------- | ----------------------------------------------------------------------------- |
| `jurisdiction` | A jurisdiction id.                                                            |
| `region`       | A two-letter province or state code.                                          |
| `country`      | CA or US.                                                                     |
| `kind`         | staff_report, budget, plan, bylaw, agenda, minutes, notice, map, form, other. |
| `from`         | On or after this date (YYYY-MM-DD).                                           |
| `to`           | On or before this date (YYYY-MM-DD).                                          |
| `since`        | Records read at or after this instant: what is new since your last read.      |

Pages with `limit` and `cursor` ([pagination](https://data.heytownhall.com/docs/pagination)).

| Field             | Type           | What it holds                                                                 |
| ----------------- | -------------- | ----------------------------------------------------------------------------- |
| `id`              | string         |                                                                               |
| `jurisdiction_id` | string         |                                                                               |
| `country`         | string or null |                                                                               |
| `region`          | string or null |                                                                               |
| `kind`            | string or null | staff_report, budget, plan, bylaw, agenda, minutes, notice, map, form, other. |
| `title`           | string or null |                                                                               |
| `bylaw_number`    | string or null |                                                                               |
| `dated_on`        | string or null | YYYY-MM-DD.                                                                   |
| `text_available`  | boolean        |                                                                               |
| `last_changed_at` | string or null | ISO 8601 instant, UTC.                                                        |
| `source_url`      | string or null | The page, document, video or platform the record was read from.               |
| `read_at`         | string or null | When it was read.                                                             |
