Tuesday, September 15, 2026
Constructel NYCBeta

New York Construction & Development Intelligence

CONSTRUCTEL NYC TRACKS NYC DEPARTMENT OF BUILDINGS FILINGS, PERMITS & SKYSCRAPER PROJECTS CITYWIDECONSTRUCTEL NYC TRACKS NYC DEPARTMENT OF BUILDINGS FILINGS, PERMITS & SKYSCRAPER PROJECTS CITYWIDE
v1 · No Key Required

Public API for Developers

Every real dataset this site is built on, as JSON or CSV, at GET https://constructelnyc.com/api/v1 — reading the exact same live query (or nightly ranking cache) the site's own pages do. Nine resources covering filings, permits, contractors, developers, neighborhoods, monthly trends, contract awards, solicitations, and wages.

Methodology

Not authenticated: everything served here is already public municipal data this site publishes on its own pages, so a key would only imply an exclusivity that doesn't exist. Requests are rate-limited at the edge instead — 20 requests per 60 seconds per IP at launch (see netlify.toml; raised over time as real usage patterns become clear). CORS is open on every resource. Add &format=csv to any request for a flat CSV instead of JSON — useful for pulling a range straight into Excel, pandas, or a spreadsheet without writing a parser.

Resources

DOB Job Application Filings

resource=filings

Recent real DOB job filings — new buildings, alterations, demolitions.

Params
limit (max 100), borough
Array field
filings
Cache
120s
curl "https://constructelnyc.com/api/v1?resource=filings&limit=25&borough=BROOKLYN"
curl "https://constructelnyc.com/api/v1?resource=filings&limit=25&borough=BROOKLYN&format=csv"

DOB Permit Issuance

resource=permits

Recently issued real DOB permits.

Params
limit (max 100), borough
Array field
permits
Cache
120s
curl "https://constructelnyc.com/api/v1?resource=permits&limit=25"
curl "https://constructelnyc.com/api/v1?resource=permits&limit=25&format=csv"

Contractor Rankings

resource=contractors

Top contractors citywide, ranked by total DOB permit volume on file.

Params
limit (max 100)
Array field
contractors
Cache
900s
curl "https://constructelnyc.com/api/v1?resource=contractors&limit=25"
curl "https://constructelnyc.com/api/v1?resource=contractors&limit=25&format=csv"

Developer / Property-Owner Rankings

resource=developers

Top property owners and developers, ranked by DOB filing count and filed cost.

Params
limit (max 100), borough
Array field
developers
Cache
900s
curl "https://constructelnyc.com/api/v1?resource=developers&limit=25"
curl "https://constructelnyc.com/api/v1?resource=developers&limit=25&format=csv"

Neighborhood Leaderboard

resource=neighborhoods

The busiest NYC Neighborhood Tabulation Areas citywide, by DOB filing count year-to-date.

Params
limit (max 100)
Array field
neighborhoods
Cache
900s
curl "https://constructelnyc.com/api/v1?resource=neighborhoods&limit=10"
curl "https://constructelnyc.com/api/v1?resource=neighborhoods&limit=10&format=csv"

Monthly Trends & Activity Index

resource=trends

Real monthly filing/permit counts and the derived NYC Construction Activity Index — the only time-series resource in this API.

Params
months (max 36, default 12)
Array field
index
Cache
900s
curl "https://constructelnyc.com/api/v1?resource=trends&months=24"
curl "https://constructelnyc.com/api/v1?resource=trends&months=24&format=csv"

Contract Awards

resource=awards

Registered NYC construction contract awards — real money already committed.

Params
limit (max 100)
Array field
awards
Cache
900s
curl "https://constructelnyc.com/api/v1?resource=awards&limit=25"
curl "https://constructelnyc.com/api/v1?resource=awards&limit=25&format=csv"

Open Solicitations

resource=solicitations

Open construction bidding opportunities with live deadlines.

Params
limit (max 100)
Array field
solicitations
Cache
900s
curl "https://constructelnyc.com/api/v1?resource=solicitations&limit=25"
curl "https://constructelnyc.com/api/v1?resource=solicitations&limit=25&format=csv"

Construction Wages

resource=wages

BLS OEWS annual mean wages by construction trade, NY metro area. Static, refreshed roughly annually.

Params
(none)
Array field
wages
Cache
86400s
curl "https://constructelnyc.com/api/v1?resource=wages"
curl "https://constructelnyc.com/api/v1?resource=wages&format=csv"

Response Shape

Every JSON response shares this envelope — the array field name varies by resource (see the card above), butresource, generatedAt, and source are always present, so a caller can tell what it got and when without guessing.

{
  "resource": "filings",
  "count": 25,
  "query": { "limit": 25, "borough": null },
  "filings": [ { "jobNumber": "...", "address": "...", ... } ],
  "generatedAt": "2026-08-31T12:00:00.000Z",
  "source": "NYC Constructel — real DOB Job Application Filings ..."
}

Errors

An unknown resource or an invalid limit returns HTTP 400 with an error message naming the valid values — never a bare "invalid request." A temporary upstream (NYC Open Data) outage returns HTTP 503 rather than a 500, so a client can tell "retry shortly" from "this endpoint is broken."

Stability & Versioning

This is v1. New resources and fields get added without notice (additive changes are always safe to build against); an existing field is never silently renamed or removed without a version bump to v2 living alongside v1 at a new path, not replacing it. Real changes are logged below.

  • 2026-08-31Added developers, neighborhoods, and trends resources; added format=csv on every resource.
  • 2026-08-05Expanded from 2 resources (awards, solicitations) to 6, adding filings, permits, contractors, wages.