API reference · Topics
List business topic tags
The business topics given to agenda items, motions, documents and recordings (data centres, short-term rentals, solar and storage, telecom siting, zoning, procurement, …). A record with no tag is not yet tagged. Billed as one records request a page. Filters: jurisdiction, topic, kind, from, to, since, meeting.
bearerAuthAuthorizationBearer <token>htd_test_ (sandbox, free, fictional towns) or htd_live_ (live, billed) key.
jurisdiction?stringA jurisdiction id.
^[a-z0-9][a-z0-9-]{0,63}$topic?stringA business topic id (GET /v1/topics lists the tags given).
^[a-z][a-z0-9_]{0,60}$kind?stringThe subject kind: meeting_item, motion, meeting_document, recording.
^[a-z][a-z0-9_]{0,60}$from?stringOn or after this date (YYYY-MM-DD).
to?stringOn or before this date (YYYY-MM-DD).
since?stringRecords read at or after this instant: what is new since your last read.
meeting?stringA meeting id.
^[0-9]{1,18}$limit?integerResults a page, 1 to 100. Default 25.
cursor?stringnext_cursor from the previous page.
A page.
application/json- response
query*The filters as the API read them, defaults included.
as_of*stringISO 8601 instant, UTC.
results*array<>next_cursor*|Pass as cursor for the next page; null on the last.
environment*stringsandbox answers carry fictional towns.
"sandbox""live"curl -X GET 'https://data.heytownhall.com/v1/topics'{ "query": { "property1": null, "property2": null }, "as_of": "string", "results": [ { "id": "string", "subject_kind": "string", "subject_id": "string", "meeting_id": "string", "jurisdiction_id": "string", "topic": "string", "taxonomy_version": "string", "confidence": 0, "source_url": "string", "read_at": "string" } ], "next_cursor": "string", "environment": "sandbox"}