Brookline MA 311

Public data

Ready to useNo account needed

Brookline MA 311 data, published as Brookline MA 311 publishes it. Ingest delivers this data to a data warehouse you own as 2 tables, and updates it on the schedule you choose. There is no code to write and nothing to install.

What you get

TableEach row is
service_requests
service_requests
Public 311 service requests for the Town of Brookline, read in creation-day windows of requested_datetime. By default the previous 7 completed UTC days are in scope and the current UTC day becomes eligible once it completes; deeper history is selected with the lookback_days knob and completes across subsequent runs. Each day is read as a completed UTC day through 23:59:59: the end bound is inclusive and the next midnight (00:00:00 of the following day) is excluded, so a request created at the stroke of midnight belongs only to that following day's window. start_date/end_date filter on requested_datetime (creation time); the feed is not ordered by creation. Each day is paged at up to 200 requests per page and paging stops on the first short page, because asking for a page past the end of a day's data returns an empty list (an otherwise empty day window also returns an empty list). Completed days inside the horizon are re-read one day after their last successful read, so requests updated after creation day are refreshed; edits to requests older than the horizon are not revisited, and requests deleted from the feed are not propagated as deletions. The default horizon deliberately keeps a single run small: this keyless feed throttles sustained scans with HTTP 403, so a small rolling horizon is the safe operating scope and 403 aborts the run rather than hammering the vendor. Records are keyed by service_request_id (IDs like SR-139665, older ones plain numbers, hence text). Older completed days wait longer between reads, becoming eligible again only after the longer of the refresh interval and a twentieth of their age at their last read (with the default interval, a day read at 40 days old waits 2 days).
services
services
Current public service-type catalog (22 types) exposed by the Town of Brookline Open311 feed. It is a live reference, not a complete historical dimension: request rows carry service codes, including retired types this catalog no longer lists, so it is never used to filter request rows. Re-read when its last successful read is more than one day old, so codes added or changed by the town appear; codes that leave the catalog keep their last loaded values.

How it works

  1. Choose Brookline MA 311. The data is public, so there is nothing to sign in to.
  2. Pick where it goes. BigQuery, Snowflake, Databricks, Redshift and 10 more, in an account you own.
  3. Pick a schedule. Daily is the default, and weekly and monthly are there too.
  4. Ingest runs it from then on. If a run fails, your dashboard shows which table and why.

Questions

Do I need an account with Brookline MA 311?
No. The data is public, so there is nothing to sign up for and nothing to paste in.
Which warehouses can Brookline MA 311 data go to?
Amazon S3, Google Cloud Storage, Azure Blob Storage, Apache Iceberg, Ingest Managed Lakehouse, MotherDuck, Postgres, Amazon Athena, Databricks, Redshift, BigQuery, ClickHouse, MySQL / generic SQL and Snowflake, in an account you own.
How fresh is the data?
As fresh as your schedule: daily by default, or weekly or monthly. Schedules as often as every 15 minutes are on the Enterprise plan.
Will running it again create duplicate rows?
No. Each row is stored once, by its key: when a run reads a row that is already there, it replaces that copy instead of adding a second one.
Do I need to write code?
No. Ingest builds, runs and maintains the connector. Someone with access to your warehouse connects it once, following a short guide.
For your data team: technical reference

Connector brookline_311, version 0.1.0, a REST source, status beta, authentication none.

Vendor documentation: https://spot.brooklinema.gov/open311/discovery.json

Configuration

No configuration required.

Resources

ResourceStatusPlanWritePrimary keyOverrides
service_requests
Public 311 service requests for the Town of Brookline, read in creation-day windows of requested_datetime. By default the previous 7 completed UTC days are in scope and the current UTC day becomes eligible once it completes; deeper history is selected with the lookback_days knob and completes across subsequent runs. Each day is read as a completed UTC day through 23:59:59: the end bound is inclusive and the next midnight (00:00:00 of the following day) is excluded, so a request created at the stroke of midnight belongs only to that following day's window. start_date/end_date filter on requested_datetime (creation time); the feed is not ordered by creation. Each day is paged at up to 200 requests per page and paging stops on the first short page, because asking for a page past the end of a day's data returns an empty list (an otherwise empty day window also returns an empty list). Completed days inside the horizon are re-read one day after their last successful read, so requests updated after creation day are refreshed; edits to requests older than the horizon are not revisited, and requests deleted from the feed are not propagated as deletions. The default horizon deliberately keeps a single run small: this keyless feed throttles sustained scans with HTTP 403, so a small rolling horizon is the safe operating scope and 403 aborts the run rather than hammering the vendor. Records are keyed by service_request_id (IDs like SR-139665, older ones plain numbers, hence text). Older completed days wait longer between reads, becoming eligible again only after the longer of the refresh interval and a twentieth of their age at their last read (with the default interval, a day read at 40 days old waits 2 days).
betawindowmergeservice_request_idlookback_days
services
Current public service-type catalog (22 types) exposed by the Town of Brookline Open311 feed. It is a live reference, not a complete historical dimension: request rows carry service codes, including retired types this catalog no longer lists, so it is never used to filter request rows. Re-read when its last successful read is more than one day old, so codes added or changed by the town appear; codes that leave the catalog keep their last loaded values.
betastalenessmergeservice_code-

Setting up the destination is its own short guide, one per warehouse or lake: Amazon S3, Google Cloud Storage, Azure Blob Storage, Apache Iceberg, Ingest Managed Lakehouse, MotherDuck, Postgres, Amazon Athena, Databricks, Redshift, BigQuery, ClickHouse, MySQL / generic SQL, Snowflake.

Other sources Ingest connects for government teams: Abilene TX 311, Albany NY 311, Ann Arbor MI 311, Anne Arundel County MD 311, Auburn WA 311, Aurora IL 311.

Get Brookline MA 311 data into your warehouse

Last updated .