Package Information
Available Nodes
Documentation generating…
Documentation
n8n-nodes-borough
An n8n community node for the Borough NYC real estate API. Search
live rental & sale listings, pull building detail, and read neighborhood market stats
inside any n8n workflow, with no code.
Borough is a commercial REST API serving structured NYC real-estate data across all
five boroughs. No API key required to start: the free tier is keyless. See
https://qwady.wiki/borough/quickstart.
Installation
In n8n (self-hosted): Settings → Community Nodes → Install → n8n-nodes-borough.
Manually:
npm install n8n-nodes-borough
Credentials
The credential is optional. Borough's free tier is keyless; there is no free key to
sign up for, so attach no credential (or leave the API Key field blank) and the node
requests anonymously at the free tier: 100 requests/month, 10 results per page, Search +
Area + Market only.
To go beyond that, buy a plan at https://qwady.wiki/borough/tiers-and-pricing, then create
a Borough API credential in n8n and paste the key (BOROUGH-<uuid>). The node sends it
as Authorization: Bearer <key>; with no key it sends no Authorization header at all. The
credential test hits /search/rentals to confirm the key is valid.
Operations
| Resource | Operations |
|---|---|
| Search | Rentals, Sales: filter by area, price, beds/baths, building type, no-fee, sale type, listed-after date, sort |
| Property | Get (by listing ID), Get by URL |
| Building | Get (detail), Get Listings |
| Area | List (all NYC areas/neighborhoods; filter by level or parent; paginate with Page / Per Page) |
| Market | Snapshot, Trends, Compare (median rent, inventory, days-on-market, concession rate) |
Finding area IDs
Search and market operations take numeric area IDs, not names. Boroughs are fixed:
Manhattan 100, Bronx 200, Brooklyn 300, Queens 400, Staten Island 500. Run
the Area → List operation (e.g. with parentId=100) to discover neighborhood IDs,
then feed them into a Search or Market node.
There are 349 areas, but the API returns 10 per page by default. Use the Per Page
filter to pull more in one call (max 10 on free, 50 on Starter, 500 on Pro/Business; the
API clamps anything higher), or step through with Page and check meta.total.
Example workflow
Area: List (parentId=300) → filter for "Williamsburg" → Search: Rentals
(areas=<id>, Filters: Max Price 4000, Min Beds 2, No Fee Only) → Slack/email/Sheets.
Tiers
Search, Areas, and Market work on the free tier, with no credential at all. Full
Property and Building detail require a Borough Starter plan or higher; a call on
the free tier returns a tier-restricted error. The free tier is also capped at 100
requests/month and 10 results per page. See https://qwady.wiki/borough/tiers-and-pricing.
Development
npm install
npm run build # tsc → dist + copies the icon
npm run typecheck
Publish to npm as n8n-nodes-borough (the n8n field in package.json points n8n at
the compiled node + credential in dist/). For the n8n "verified" badge, addeslint-plugin-n8n-nodes-base and pass its ruleset before submitting.
Changelog
0.2.0
- The Borough API credential is now optional. It was
required: true, which made the
node unusable for free users; Borough's free tier is keyless and no free key exists, so
the credential could never be satisfied. With no key the node now sends no Authorization
header and runs at the free tier. - Added
PageandPer Pageto Area → List. The operation had no pagination controls,
so it silently returned only the first 10 of 349 areas with no way to reach the rest;
while the Search resource pointed users at it to look up neighborhood IDs.
0.1.0
- Initial release: Search, Property, Building, Area, and Market resources.
License
MIT © Qwady Solutions LLC