nyc-dob-permits

star 206

Look up DOB permit and job filing history for any NYC building — new-building, alteration, and demolition filings with status and dates. Use when the user asks what work was filed or permitted at an address, or to gauge renovation history during due diligence. NYC only; for open violations use /nyc-dob-violations.

AlpacaLabsLLC By AlpacaLabsLLC schedule Updated 6/10/2026

name: nyc-dob-permits description: Look up DOB permit and job filing history for any NYC building — new-building, alteration, and demolition filings with status and dates. Use when the user asks what work was filed or permitted at an address, or to gauge renovation history during due diligence. NYC only; for open violations use /nyc-dob-violations. allowed-tools: - WebFetch - Write - Read - Bash

/nyc-dob-permits — DOB Permit & Filing History

Look up all DOB permits and job filings for any NYC building across both Legacy BIS and DOB NOW systems. No API key required.

Usage

/nyc-dob-permits 120 Broadway, Manhattan
/nyc-dob-permits 1000770001          (BBL)
/nyc-dob-permits 1001389             (BIN)

Step 1: Parse Input

Accept one of:

  • Address + Borough/Zip — "120 Broadway, Manhattan" or "120 Broadway 10271"
  • BBL — 10-digit number (boro 1 + block 5 + lot 4)
  • BIN — 7-digit Building Identification Number

Borough codes: Manhattan=1/MN, Bronx=2/BX, Brooklyn=3/BK, Queens=4/QN, Staten Island=5/SI

Step 2: Resolve via PLUTO

Query PLUTO to get BBL, BIN, and building metadata. No API key needed.

By BBL:

https://data.cityofnewyork.us/resource/64uk-42ks.json?bbl={BBL}

By address:

https://data.cityofnewyork.us/resource/64uk-42ks.json?$where=upper(address) LIKE '%{STREET}%'&borough='{BORO_CODE}'&$limit=5

Address normalization: Uppercase, strip unit/apt suffixes. Borough names to codes: Manhattan=MN, Bronx=BX, Brooklyn=BK, Queens=QN, Staten Island=SI. If multiple results, ask the user to pick. If zero, try variations or suggest providing a BBL.

Store from PLUTO: bbl, bin (or bldgbin), address, borough, bldgclass, zonedist1, yearbuilt, ownername, numfloors, lotarea, latitude, longitude.

Parse BBL into: boro (1 digit), block (5 digits zero-padded), lot (4 digits zero-padded).

Step 3: Query DOB Permits & Filings

Query all 4 datasets using BIN. IMPORTANT: Legacy datasets use bin__ (double underscore). DOB NOW datasets use bin.

Legacy Permit Issuance

https://data.cityofnewyork.us/resource/ipu4-2q9a.json?$where=bin__='{BIN}'&$order=issuance_date DESC&$limit=30

Key fields: permit_si_no, job__, job_type, issuance_date, expiration_date, permittee_s_first_name, permittee_s_last_name, owner_s_first_name, owner_s_last_name

Legacy Job Filings

https://data.cityofnewyork.us/resource/ic3t-wcy2.json?$where=bin__='{BIN}'&$order=latest_action_date DESC&$limit=30

Key fields: job__, doc__, job_type, job_status, latest_action_date, applicant_s_first_name, applicant_s_last_name

DOB NOW Approved Permits

https://data.cityofnewyork.us/resource/rbx6-tga4.json?$where=bin='{BIN}'&$order=approved_date DESC&$limit=30

Key fields: job_filing_number, permit_status, filing_date, approved_date, job_type

DOB NOW Job Filings

https://data.cityofnewyork.us/resource/w9ak-ipjd.json?$where=bin='{BIN}'&$order=filing_date DESC&$limit=30

Key fields: job_filing_number, filing_status, filing_date, job_type

Step 4: Print Results

Merge all results, sort by date descending. Group by job type:

  • NB = New Building
  • A1 = Alteration Type 1 (major — changes use/egress/occupancy)
  • A2 = Alteration Type 2 (multiple work types)
  • A3 = Alteration Type 3 (minor, one work type)
  • DM = Demolition
  • Other = Everything else
## DOB Permits & Filings — {Address}

**Total found:** {count} ({x} legacy, {y} DOB NOW)

### New Building (NB)
| Date | Job # | Permit # | Status | Applicant |
|------|-------|----------|--------|-----------|
| ... | ... | ... | ... | ... |

### Alteration Type 1 (A1)
| Date | Job # | Permit # | Work Type | Status | Applicant |
|------|-------|----------|-----------|--------|-----------|

### Alteration Type 2-3 (A2/A3)
{table}

### Demolition (DM)
{table if any}

### Other
{table if any}

**Note:** Pre-BIS records (before ~1989) are not digitized. If this building predates 1989 and few records appear, earlier permits exist only on paper.

Source: [DOB Permit Issuance](https://data.cityofnewyork.us/Housing-Development/DOB-Permit-Issuance/ipu4-2q9a) | [DOB Job Filings](https://data.cityofnewyork.us/Housing-Development/DOB-Job-Application-Filings/ic3t-wcy2) | [DOB NOW Permits](https://data.cityofnewyork.us/Housing-Development/DOB-NOW-Build-Approved-Permits/rbx6-tga4) | [DOB NOW Filings](https://data.cityofnewyork.us/Housing-Development/DOB-NOW-Build-Job-Application-Filings/w9ak-ipjd)

If no results from any dataset: "No DOB permits or filings found for this property."

Conventions

  • All dates: YYYY-MM-DD
  • If Socrata returns empty array: "No results found"
  • If HTTP error: note it and suggest checking the address
  • If the user requests, write results to a file
  • Check PLUTO yearbuilt — if before 1989, add the pre-BIS note
Install via CLI
npx skills add https://github.com/AlpacaLabsLLC/skills-for-architects --skill nyc-dob-permits
Repository Details
star Stars 206
call_split Forks 41
navigation Branch main
article Path SKILL.md
More from Creator
AlpacaLabsLLC
AlpacaLabsLLC Explore all skills →