Brookline MA 311
Public data
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
| Table | Each row is |
|---|---|
service_requestsservice_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). |
servicesservices | 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
- Choose Brookline MA 311. The data is public, so there is nothing to sign in to.
- Pick where it goes. BigQuery, Snowflake, Databricks, Redshift and 10 more, in an account you own.
- Pick a schedule. Daily is the default, and weekly and monthly are there too.
- 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
| Resource | Status | Plan | Write | Primary key | Overrides |
|---|---|---|---|---|---|
service_requestsPublic 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). | beta | window | merge | service_request_id | lookback_days |
servicesCurrent 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. | beta | staleness | merge | service_code | - |
Where this lands, and what else connects
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.
- How Ingest reads a REST source
- Ingest for government teams
- The tables Ingest creates
- Every source Ingest connects
Get Brookline MA 311 data into your warehouse
Last updated .