inberlinwohnen.de APIinberlinwohnen.de ↗
Access Berlin state-owned housing apartment listings, filter by district, rent, and rooms, and retrieve company profiles via the inberlinwohnen.de API.
curl -X GET 'https://api.parse.bot/scraper/c78d4e68-786f-4469-ac1d-081ddf0dfd61/get_all_listings?limit_pages=1' \ -H 'X-API-Key: $PARSE_API_KEY'
Extract all available apartment listings from the Wohnungsfinder. Returns paginated results with comprehensive details for each apartment including address, rent, rooms, area, and company information.
| Param | Type | Description |
|---|---|---|
| limit_pages | integer | Maximum number of pages to scrape. If omitted, scrapes all available pages. |
{
"type": "object",
"fields": {
"total": "integer total number of apartments returned",
"apartments": "array of apartment objects with id, title, object_id, rooms, area, rent_cold, rent_total, district, company_name, detail_url, and other fields"
},
"sample": {
"data": {
"total": 10,
"apartments": [
{
"id": 16422,
"area": "25,85",
"floor": 1,
"rooms": "1,0",
"title": "Wohn Aktiv! Seniorenwohnungen für Mieter ab 60 Jahren",
"street": "Eiserfelder Ring",
"district": "Spandau",
"zip_code": "13583",
"object_id": "7100/70806/0101/0033",
"rent_cold": "361,90",
"rent_total": 427.9,
"extra_costs": "66,00",
"company_name": "Gewobag",
"house_number": "9",
"available_from": "01.04.2026",
"construction_year": "1966"
}
]
},
"status": "success"
}
}About the inberlinwohnen.de API
The inberlinwohnen.de API exposes 5 endpoints covering apartment listings, detailed property records, and company information from Berlin's state-owned housing portal (Wohnungsfinder). The get_all_listings endpoint returns paginated results with fields including rent_cold, rent_total, district, area, rooms, and company_name for every currently available unit across Berlin's seven landeseigene Wohnungsbaugesellschaften.
Apartment Listings and Search
The get_all_listings endpoint retrieves all available apartments from the Wohnungsfinder, returning an array of objects with fields such as id, object_id, title, district, area, rooms, rent_cold, rent_total, company_name, and detail_url. An optional limit_pages parameter caps how many pages are fetched, which is useful when you only need a quick sample. The search_listings endpoint builds on this by accepting filter parameters: district (case-insensitive partial match), company (e.g. degewo, Gewobag), rent_max, area_min, rooms_min, and rooms_max. Results are narrowed to matching apartments and include a total count.
Apartment Detail Records
The get_listing_detail endpoint accepts either the internal numeric id (e.g. 16422) or the external object_id string (e.g. 7100/70806/0101/0033) and returns a single apartment object with all available fields. Note that area and rooms are returned as strings in German decimal format (comma as separator), and rent_cold is also a formatted string, while rent_total is a numeric value.
Company and Informational Content
The get_landeseigene_companies endpoint returns the seven state-owned housing companies with their name, description, and url. The get_gut_zu_wissen endpoint pulls article titles and URLs from the site's tenant information section, covering guides and resources published under the 'Gut zu wissen' navigation area. Neither endpoint requires any input parameters.
- Monitor newly available apartments across specific Berlin districts by polling
get_all_listingsand filtering ondistrict. - Build a rent comparison tool using
rent_coldandrent_totalfields across different companies and neighborhoods. - Alert renters when apartments matching a size and budget threshold appear, using
search_listingswitharea_min,rent_max, androoms_min. - Aggregate company profiles for Berlin's seven state-owned housing companies via
get_landeseigene_companies. - Index tenant guides and informational articles from the 'Gut zu wissen' section using
get_gut_zu_wissenarticle titles and URLs. - Enrich property datasets with per-listing details by resolving
object_idvalues throughget_listing_detail. - Analyze housing availability by district or company over time by storing and comparing
get_all_listingssnapshots.
| 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 | 250 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 inberlinwohnen.de provide an official developer API?+
How does filtering work in `search_listings`, and what fields can I filter on?+
search_listings endpoint accepts up to six optional parameters: company (partial, case-insensitive name match), district (partial, case-insensitive), rent_max (maximum cold rent in EUR), area_min (minimum sqm), rooms_min, and rooms_max. All filters are applied together; omitting a parameter means no constraint on that field. The response includes a total count and an apartments array of matching objects.Are historical or archived listings available through this API?+
Does the API return floor plans, photos, or energy certificates for apartments?+
area, rooms, rent_cold, rent_total, district, and detail_url, but does not include images, floor plan files, or energy performance data. You can fork the API on Parse and revise get_listing_detail to add extraction of those assets from the linked detail pages.Why are some numeric fields like `area` and `rooms` returned as strings?+
62,50 for area and 2,00 for rooms are returned as strings to preserve the original format. The field rent_total is an exception and is returned as a JavaScript number. Plan for locale-aware parsing if you need these as floats.