Housing APIhousing.com ↗
Search and retrieve property listings from Housing.com. Access buy, rent, plots, and commercial listings across major Indian cities via 5 structured endpoints.
What is the Housing API?
The Housing.com API exposes 5 endpoints for querying Indian real estate listings across sale, rental, and commercial categories. search_listings handles all service types — buy, rent, plots, commercial, and paying guest — while dedicated endpoints like search_buy_listings and get_property_detail return structured fields including listingId, price, builtUpArea, address, sellers, and geographic coordinates for properties across major Indian cities.
curl -X GET 'https://api.parse.bot/scraper/2f244511-21f6-4d0c-a18a-c51576e2ba8a/search_buy_listings?city=Mumbai&page=1&limit=30&locality=Kharadi' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace housing-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.housing.com_api import Housing, Listing, ServiceType, Category, Service
housing = Housing()
# Search for properties to buy in Pune
for listing in housing.listings.search_buy(city="Pune", locality="Kharadi", limit=5):
print(listing.title, listing.display_price.display_value, listing.address.address)
for seller in listing.sellers:
print(f" Seller: {seller.name} ({seller.type})")
# Search for rentals in Mumbai
for rental in housing.listings.search_rent(city="Mumbai", limit=3):
print(rental.title, rental.price, rental.built_up_area.value, rental.built_up_area.unit)
# Search for flats specifically
for flat in housing.listings.search_flats(city="Bengaluru", service=Service.BUY, limit=3):
print(flat.listing_id, flat.title, flat.property_type)
# Generic search with service type and category enums
for result in housing.listings.search(city="Delhi", service=ServiceType.RENT, category=Category.RESIDENTIAL, limit=2):
print(result.title, result.display_price.display_value)
for amenity_group in result.details.amenities:
print(f" {amenity_group.type}: {amenity_group.data}")
# Get property detail for a project
detail = housing.propertydetails.get(property_id="352300")
print(detail.name, detail.address, detail.developer_name)
Search for properties to buy on Housing.com. Returns paginated results including project and resale listings with price, area, address, and seller information. Results can be filtered by city and locality. Uses Housing.com's internal GraphQL search API, resolving city and locality to a search hash, then fetching paginated results.
| Param | Type | Description |
|---|---|---|
| city | string | City name to search in. Supported cities include Mumbai, Pune, Bengaluru, Hyderabad, Chennai, Delhi, Kolkata, Ahmedabad, Noida, Gurgaon, Navi Mumbai, Thane. |
| page | integer | Page number for pagination. |
| limit | integer | Number of results per page. |
| locality | string | Specific locality within the city to narrow results (e.g. 'Bandra', 'Andheri', 'Koramangala'). When provided, results are filtered to properties in that locality. |
{
"type": "object",
"fields": {
"config": "object containing pageInfo with totalCount, size, and page",
"properties": "array of property listings with listingId, title, subtitle, propertyType, price, displayPrice, address, url, builtUpArea, details, sellers, updatedAt, coverImageUrl"
},
"sample": {
"data": {
"config": {
"pageInfo": {
"page": 1,
"size": 30,
"totalCount": 53282
}
},
"properties": [
{
"url": "/in/buy/projects/page/352300-godrej-elaris-by-godrej-properties-ltd-in-mundhwa",
"price": 17100435,
"title": "Godrej Elaris",
"address": {
"url": null,
"address": "Mundhwa, Pune"
},
"details": {
"config": {
"propertyConfig": [
{
"label": "2 BHK Apartment",
"range": "1.71 Cr"
}
]
},
"amenities": [
{
"data": [
"Pool",
"Gym",
"Lift"
],
"type": "Society Amenities"
}
]
},
"sellers": [
{
"id": "34d59697-9875-417c-9c0e-657688f629e2",
"name": "Godrej Properties Ltd.",
"type": "Developer"
}
],
"subtitle": "2, 3, 4 BHK Flats",
"listingId": "352300",
"updatedAt": "2026-05-28T11:33:58.000Z",
"builtUpArea": {
"unit": "sq.ft",
"value": 915
},
"displayPrice": {
"unit": null,
"displayValue": "₹1.71 Cr - 3.65 Cr"
},
"propertyType": "project",
"coverImageUrl": null
}
]
},
"status": "success"
}
}About the Housing API
Endpoints and Filters
The API covers residential and commercial real estate data from Housing.com across five endpoints. search_buy_listings and search_rent_listings each accept city, locality, page, and limit parameters and return paginated arrays of property objects with fields including listingId, title, propertyType, price, displayPrice, address, url, builtUpArea, details, and sellers. The config object in each response carries pageInfo with totalCount, size, and page for pagination control.
Flat-Specific and Generic Search
get_flats_listings filters results specifically to flat and apartment types and accepts a service parameter to switch between buy and rent results. The generic search_listings endpoint is the most flexible: it accepts a service field covering buy, rent, plots, commercial, and paying_guest, a category field (residential or commercial), and a property_type string such as Flats, Villa, or Plot. This makes it suitable for cross-category queries without calling multiple endpoints.
Property Detail
get_property_detail takes a property_id — either a URL slug or a full Housing.com property URL — and returns a detailed record with fields including name, type, image, price, address, builder, sellers, latitude, faqs, and url. It handles both new project slugs and resale listing slugs, making it useful for enriching listing results retrieved from the search endpoints.
City and Locality Coverage
Supported cities include Mumbai, Pune, Bengaluru, Hyderabad, Chennai, Delhi, and Kolkata. The locality parameter narrows results to neighborhoods such as Bandra, Andheri, or Koramangala when provided alongside a city. Results are paginated and city/locality filtering works uniformly across search endpoints.
The Housing API is a managed, monitored endpoint for housing.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when housing.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official housing.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Aggregate buy and rent listings for a specific locality to compare price per square foot across neighborhoods
- Build a property alert system using
search_buy_listingspagination to detect new listings in a city - Enrich a property database with builder, seller, and coordinate data using
get_property_detail - Filter flat and apartment inventory by city and service type via
get_flats_listingsfor a residential search tool - Pull commercial and plot listings using
search_listingswithservice=commercialorservice=plots - Aggregate paying guest listings in metro cities for a co-living or student accommodation finder
- Map property listings using the
latitudefield returned byget_property_detailfor geo-visualization
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Housing.com have an official developer API?+
What does `get_property_detail` return that the search endpoints don't?+
get_property_detail returns fields not present in search results: latitude (geographic coordinates), builder (developer information), faqs (property-specific Q&A), and a full image array. Search endpoints return summary fields like displayPrice, builtUpArea, and sellers suitable for list views, while get_property_detail is intended for individual property pages.How does pagination work across search endpoints?+
config object containing pageInfo with totalCount, size, and page. Pass the page integer parameter to step through results and limit to control page size. totalCount lets you calculate how many pages are available for a given query.Are property valuations, price history, or market trend data available?+
Which cities and localities are supported?+
locality parameter accepts neighborhood-level strings such as Bandra, Andheri, or Koramangala. Cities outside this set may return empty results or reduced coverage — the API does not currently validate city names before querying.