Skip to main content

Overview

Borough enriches building data with quality scores computed from NYC Open Data sources. Each score ranges from 0 to 100, where higher is better. Scores are available via GET /v1/building/{id}/scores.

Score types

Health Score

Source: HPD Violations (NYC Department of Housing Preservation & Development) Measures building maintenance quality based on open HPD violations.
  • Class C (immediately hazardous): -3 points each
  • Class B (hazardous): -2 points each
  • Class A (non-hazardous): -1 point each
  • Formula: max(0, 100 - weighted_sum)
Individual violations are available via GET /v1/building/{id}/violations.

Noise Score

Source: 311 Service Requests (noise complaints) Measures ambient noise levels based on 311 noise complaints within 200 meters of the building over the trailing 6 months. Uses logarithmic inverse normalization against a max of 50 complaints.

Safety Score

Source: NYPD Complaint Data Measures neighborhood safety based on NYPD complaint data within 400 meters over the trailing 12 months. Weighted by severity:
  • Felony: 5 points
  • Misdemeanor: 2 points
  • Violation: 1 point
Uses logarithmic decay against a max of 200 weighted points.

Transit Score

Source: MTA GTFS Stops Measures public transit accessibility based on proximity and density of subway/bus stops within 400 meters. Two components (50 points each):
  • Proximity: Linear decay based on distance to nearest stop (0-400m)
  • Density: Logarithmic scale of stops within 400m

Update frequency

ScoreScheduleData Source
HealthWeeklyHPD violations
NoiseWeekly311 complaints
SafetyWeeklyNYPD data
TransitMonthlyGTFS stops
Internet providersMonthlyFCC Broadband Map
Enrichment jobs run on a periodic schedule. Scores reflect the most recent computation cycle.

Internet provider availability

Borough also enriches buildings with likely internet provider availability from the FCC Broadband Map Public Data API.
  • Coverage level: building
  • Source: FCC Broadband Map public availability data
  • Cadence: monthly scheduled refresh plus manual backfills when needed
  • Disclaimer: provider availability may vary by apartment or unit
This product uses FCC APIs and/or Data but is not endorsed or certified by the FCC.

Contract validation status

As of March 2-3, 2026, Borough reviewed live National Broadband Map browser traffic and observed broadbandmap.fcc.gov/nbm/map/api/fabric/... responses that included CostQuest Fabric license language restricting unauthorized scripted or programmatic access. Until Borough completes contract validation for that access pattern:
  • internetProviders should be treated as a provisional FCC-backed feature
  • fiberOnly and minDownloadMbps should be treated as provisional FCC-backed filters
  • no further production rollout of the FCC broadband feature set should be assumed
  • response shapes and matching behavior may change in a future update if Borough must switch to a different approved FCC integration path

Internal ops

The FCC integration requires an FCC Broadband Map API key.
  1. Create an FCC Broadband Map account.
  2. Generate an API key from the FCC Broadband Map account tools.
  3. Set the worker secret as FCC_BDC_API_KEY.
  4. Trigger the broadband enrichment job manually for the initial backfill, then let the monthly cron maintain it.

Availability

  • Scores require building geo-coordinates (latitude/longitude)
  • Health score additionally requires a BBL (Borough-Block-Lot) identifier
  • Not all buildings have all scores; missing scores return null