# Qwady Docs > Documentation for Qwady products: Borough API - [Qwady Docs](https://qwady.wiki/index.md): API documentation, guides, and references for Qwady products - [Borough](https://qwady.wiki/borough/index.md): Structured NYC real estate data, REST endpoints, streaming, watchers, and MCP access. - [Introduction](https://qwady.wiki/borough/introduction.md): Structured NYC real estate data via REST API - [Quickstart](https://qwady.wiki/borough/quickstart.md): Make your first API request in under 2 minutes, no API key needed - [Authentication](https://qwady.wiki/borough/authentication.md): API key and OAuth 2.1 authentication methods - [Pricing](https://qwady.wiki/borough/tiers-and-pricing.md): Choose a plan and get your API key - [Search Filters](https://qwady.wiki/borough/guides/filtering.md): All available search parameters for rental and sale listings - [Pagination](https://qwady.wiki/borough/guides/pagination.md): Page-based pagination with navigation links - [Rate Limits](https://qwady.wiki/borough/guides/rate-limits.md): Per-tier rate limits and quota enforcement - [Errors](https://qwady.wiki/borough/guides/error-handling.md): Error codes and response format - [Webhooks](https://qwady.wiki/borough/guides/webhooks.md): Push notifications for listing changes, delivered within minutes of detection - [Streaming and Live Lookups](https://qwady.wiki/borough/guides/streaming.md): Live listing lookups over SSE, plus watchers that monitor on a schedule - [Data Freshness](https://qwady.wiki/borough/guides/data-freshness.md): How Borough keeps data fresh and what staleness means for your tier - [Areas & Neighborhoods](https://qwady.wiki/borough/reference/areas-and-neighborhoods.md): Area IDs, hierarchy levels, and borough mapping across NYC and Northern New Jersey - [Building & Listing Types](https://qwady.wiki/borough/reference/building-types.md): Enums for building types, listing statuses, and sale types - [Amenities](https://qwady.wiki/borough/reference/amenities.md): All amenity filter values and building-level amenity data - [Transit Lines](https://qwady.wiki/borough/reference/transit-lines.md): Transit line filtering is not currently available - [Photo URLs](https://qwady.wiki/borough/reference/photo-urls.md): Constructing image URLs from photo keys - [Enums](https://qwady.wiki/borough/enums.md): All enumerated values used in the API - [Building Scores](https://qwady.wiki/borough/enrichment.md): Quality scores derived from NYC and New York State open data - [API Reference](https://qwady.wiki/borough/api-reference/overview.md): Complete reference for all Borough API endpoints - [Search Rentals](https://qwady.wiki/borough/api-reference/search/search-rentals.md): Search active NYC rental listings with comprehensive filters. Returns summary-level fields per listing. Use `/property/{id}` for full detail. - [Search Sales](https://qwady.wiki/borough/api-reference/search/search-sales.md): Search active NYC sale listings. Supports the rental filters except `noFee` (rental-only; it returns `400` on sales), plus `saleType` (resale, sponsor, foreclosure). `maxMonthlyCost` compares monthly carrying costs (maintenance, common charges and taxes), not the purchase price. - [Get Property](https://qwady.wiki/borough/api-reference/property/get-property.md): Full listing detail including pricing, availability, sale and rental flags, building linkage, and freshness metadata. Related fees, price history, and open houses are available via dedicated subresource endpoints. - [Get Property by URL](https://qwady.wiki/borough/api-reference/property/get-property-by-url.md): Find a listing using its URL path (e.g., `/building/one57-condominium/48b`). Returns the same detail and freshness metadata as `GET /property/{id}`, including the Business and Internal live fetch and its fallback to the stored record when a live fetch is unavailable. - [Batch Lookup](https://qwady.wiki/borough/api-reference/property/batch-lookup.md): Resolve many listing IDs in a single request (up to your tier's `perPage` cap, and at most 500 IDs; large batches are looked up in chunks server-side). Serves cached data only (it never triggers a live fetch) and is billed at one request unit per requested (deduped) ID, including IDs that are not fo… - [Comparables](https://qwady.wiki/borough/api-reference/property/comparables.md): Active listings comparable to the reference listing: same listing type and neighborhood, matching bedroom count, within ±25% of its price, ranked by price proximity. Cached data only, billed as one request. - [Get Price History](https://qwady.wiki/borough/api-reference/property/get-price-history.md): Price-change timeline for a listing: the first observed price (`LISTED`) plus every subsequent decrease (`PRICE_DROP`) and increase (`PRICE_INCREASE`). Returns the 100 most recent events, newest first. An entry whose price is unchanged from the one before it is also reported as `LISTED` (with `pctCh… - [Get Fees](https://qwady.wiki/borough/api-reference/property/get-fees.md): Fee breakdown for a listing including broker fees, application fees, and other move-in costs. - [Get Open Houses](https://qwady.wiki/borough/api-reference/property/get-open-houses.md): Scheduled open houses for a listing. Only returns future events. - [Get Building](https://qwady.wiki/borough/api-reference/building/get-building.md): Comprehensive building data including amenities, policies, developer, architect, NYC regulatory data (community district, police precinct, building class), and tax/management details. - [Get Building Listings](https://qwady.wiki/borough/api-reference/building/get-building-listings.md): Listings linked to a building, off-market ones included, unless you pass `status`; use `status=ACTIVE` for current availability. Sorted by price ascending. A listing is linked to its building only once it has been detail-scraped, so units that are not detail-scraped yet are missing: this is not a co… - [Get Building Scores](https://qwady.wiki/borough/api-reference/building/get-building-scores.md): Composite quality scores (0-100) derived from NYC Open Data: - **healthScore**: Based on HPD violation count and severity - **noiseScore**: Based on 311 noise complaints within 200m - **safetyScore**: Based on NYPD crime data within 400m - **transitScore**: Multi-modal: proximity and density of subw… - [Get Building Violations](https://qwady.wiki/borough/api-reference/building/get-building-violations.md): HPD (Housing Preservation & Development) violations for a building: the 50 most recent, of any status, ordered by date descending. Includes violation class (A/B/C), status, and description. - [Get Market Snapshot](https://qwady.wiki/borough/api-reference/market/get-snapshot.md): Pre-computed market statistics for a specific area: active inventory, median rent, average days on market, and concession rate. Optionally filter by bedroom count and listing type. - [Get Market Trends](https://qwady.wiki/borough/api-reference/market/get-trends.md): Price event time series for an area, grouped by date and event type. Returns up to 365 rows of price history within the last 365 days, one per date and event type, most recent first (with three event types that covers roughly the latest four months), with obvious listing-type price outliers removed.… - [Get Market History](https://qwady.wiki/borough/api-reference/market/get-history.md): Daily time series of the market-snapshot aggregates (median rent/price, inventory, average days-on-market, concession rate) for an area. The series accrues forward from when archiving began, so it is sparse until enough days accumulate. Pass `bedrooms` to scope to one unit size, or omit it to get ev… - [Compare Markets](https://qwady.wiki/borough/api-reference/market/compare.md): Side-by-side market snapshots for up to 5 areas. Returns snapshot data grouped by area ID, with each area containing snapshots broken down by bedroom count. - [List Areas](https://qwady.wiki/borough/api-reference/areas/list-areas.md): Returns the area hierarchy: 349 areas across NYC and Northern New Jersey, of which 316 are NYC neighborhoods and sub-areas and 5 are boroughs. Optionally filter by level or parent area. - [Stream Listing Updates](https://qwady.wiki/borough/api-reference/streaming/stream-listing.md): Server-Sent Events stream that delivers cached data immediately, then attempts a live fetch. Events arrive in this order: `cached`, then `live` or `error`, then `done`. A listing with no stored URL gets neither `live` nor `error`. - [Create Watcher](https://qwady.wiki/borough/api-reference/watchers/create-watcher.md): Create a persistent watcher that monitors a listing, building, or search for changes. The watcher polls at the configured interval. Each poll counts as one API request against your active quota window, whether or not it finds a change. - [List Watchers](https://qwady.wiki/borough/api-reference/watchers/list-watchers.md): List all watcher subscriptions (active and paused) for the authenticated customer. - [Get Watcher](https://qwady.wiki/borough/api-reference/watchers/get-watcher.md): Returns full detail for a single watcher subscription. - [Update Watcher](https://qwady.wiki/borough/api-reference/watchers/update-watcher.md): Update the poll interval or active status of a watcher. Setting `active: false` pauses the watcher without deleting it. - [Delete Watcher](https://qwady.wiki/borough/api-reference/watchers/delete-watcher.md): Permanently deletes a watcher and stops its scheduled polls. Never counts against your quota. - [Stream Watcher Changes](https://qwady.wiki/borough/api-reference/watchers/stream-watcher.md): Opens a Server-Sent Events stream that delivers a watcher's change events as its scheduled polls detect them. The stream emits exactly these events: `connected`, `change`, `heartbeat`, `reconnect`, and `stopped`. - [Create Webhook](https://qwady.wiki/borough/api-reference/webhooks/create-webhook.md): Register a URL to receive listing change events — created, price moved, status changed, or expired. Returns a signing secret for payload verification. - [List Webhooks](https://qwady.wiki/borough/api-reference/webhooks/list-webhooks.md): List all webhook subscriptions (active and paused) for the authenticated account, newest first; check each item's `active` flag. Subscriptions paused because the account dropped below Business are listed too. - [Update Webhook](https://qwady.wiki/borough/api-reference/webhooks/update-webhook.md): Update the URL, subscribed events, or active state of an existing webhook subscription. There are no per-listing or per-area filters to update — see `POST /v1/webhooks` for the delivery scope. - [Delete Webhook](https://qwady.wiki/borough/api-reference/webhooks/delete-webhook.md): Remove a webhook subscription. The subscription is re-checked at delivery time, so the deletion takes effect on the next delivery attempt rather than on a fixed schedule. During a database incident that check cannot be made, and a delivery already queued for this subscription may still be attempted… - [Get Usage](https://qwady.wiki/borough/api-reference/usage.md): Returns the caller's current billing-period quota usage. Authenticated and rate-limited, but does NOT count against your monthly quota. Without an API key it returns anonymous free-tier (IP-bucketed) usage. With a key it returns the usage of the subscription the key belongs to: all keys (and OAuth t… - [MCP Server](https://qwady.wiki/borough/mcp/overview.md): Connect AI agents to NYC real estate data via the Model Context Protocol - [Quick Start](https://qwady.wiki/borough/mcp/quickstart.md): Connect your AI agent to Borough in 2 minutes - [Add Borough to Claude](https://qwady.wiki/borough/mcp/add-to-claude.md): Exact steps for adding Borough as a custom connector in Claude and Claude Desktop - [Tools Reference](https://qwady.wiki/borough/mcp/tools-reference.md): Complete reference for all Borough MCP tools - [Troubleshooting](https://qwady.wiki/borough/mcp/troubleshooting.md): Common issues and solutions for Borough MCP - [SDK Quickstart](https://qwady.wiki/borough/sdk/index.md): Install and use the Borough TypeScript/JavaScript SDK - [Auto-Pagination](https://qwady.wiki/borough/sdk/pagination.md): Iterate through all result pages automatically - [Webhook Verification](https://qwady.wiki/borough/sdk/webhooks.md): Verify Borough webhook signatures in Express and Next.js ## OpenAPI Specs - [openapi](/borough/openapi.yaml) This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.