hemnet.se APIhemnet.se ↗
Access Swedish real estate listings from Hemnet.se via API. Search properties with pagination and fetch detailed specs, coordinates, pricing, and images.
curl -X GET 'https://api.parse.bot/scraper/18fbb397-f067-4333-a9ff-a0b83df48638/search?page=1&max_pages=1' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for real estate listings on Hemnet.se with pagination support. Returns listing summaries including price, address, area, image URLs, and basic specs.
| Param | Type | Description |
|---|---|---|
| page | integer | Starting page number for pagination. |
| max_pages | integer | Maximum number of pages to scrape sequentially. |
{
"type": "object",
"fields": {
"listings": "array of listing summary objects with id, address, city_area, price, url, image_urls, living_area, rooms, plot_size, monthly_fee, description, broker_agency, days_on_hemnet, housing_form",
"pages_scraped": "integer, number of pages successfully scraped",
"total_results": "integer, total number of listings returned"
},
"sample": {
"data": {
"listings": [
{
"id": "21636727",
"url": "https://www.hemnet.se/bostad/lagenhet-1rum-centrum-karlshamns-kommun-regeringsgatan-122-21636727",
"price": "375 000 kr",
"rooms": "1 rum",
"address": "Regeringsgatan 122",
"city_area": "Centrum, Karlshamns kommun",
"plot_size": null,
"image_urls": [
"https://bilder.hemnet.se/images/itemgallery_cut/1f/41/1f41184ee9a5607179d9144142c019dd.jpg"
],
"description": "Centralt, lugnt belägen 1:a...",
"living_area": "41,5 m²",
"monthly_fee": "2 295 kr/mån",
"housing_form": "Lägenhet",
"broker_agency": "Fastighetsbyrån Karlshamn",
"days_on_hemnet": 0
}
],
"pages_scraped": 1,
"total_results": 50
},
"status": "success"
}
}About the hemnet.se API
The Hemnet API exposes 2 endpoints for accessing real estate listings from Sweden's largest property marketplace. The search endpoint returns paginated listing summaries covering price, address, living area, rooms, and image URLs, while get_details retrieves full property records including coordinates, tenure type, operating costs, and the complete image gallery for any active or sold listing.
Search Listings
The search endpoint returns an array of listing summary objects from Hemnet. Each object includes fields such as id, address, city_area, price, url, image_urls, living_area, rooms, plot_size, and monthly_fee. The page parameter sets the starting page, and max_pages controls how many pages are fetched sequentially in a single call. The response also includes pages_scraped and total_results integers so you can track pagination state across requests.
Listing Details
The get_details endpoint accepts a slug string derived from a Hemnet listing URL — formatted as <property-type>-<rooms>-<area>-<municipality>-<street>-<id>. It returns the full detail record for that listing: price, rooms, tenure (e.g. Bostadsrätt or Äganderätt), address, city_area, plot_size, image_urls, and a coordinates object with numeric latitude and longitude fields. The endpoint works for both currently active listings and sold or deactivated ones, which makes it useful for historical price lookups when you already hold a slug.
Data Coverage and Scope
All data is scoped to Hemnet.se, which covers residential property listings across Sweden. Slugs needed by get_details can be extracted from the url field returned by search, making the two endpoints composable. Fields such as plot_size, monthly_fee, and coordinates are nullable — not every listing type carries all fields, so your integration should handle null values gracefully.
- Aggregate Swedish property prices by city area using the
city_areaandpricefields from search results. - Build a map-based property browser using
coordinateslatitude/longitude fromget_details. - Track sold listing prices over time by querying
get_detailswith slugs from historical Hemnet URLs. - Compare monthly fees and living area across apartments in a neighbourhood using
monthly_feeandliving_area. - Feed listing images into a property recommendation UI using the
image_urlsgallery fromget_details. - Identify freehold vs. leasehold properties in a region by filtering on the
tenurefield. - Monitor new listings with sequential pagination using the
pageandmax_pagesparameters insearch.
| 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 Hemnet offer an official developer API?+
What does the `get_details` endpoint return that `search` does not?+
get_details endpoint adds tenure, coordinates (latitude and longitude), a full image_urls gallery, and the complete listing description. The search endpoint returns summary fields only — enough to display a list but not a full property page.Can I filter search results by property type, price range, or number of rooms?+
search endpoint does not currently expose filter parameters for property type, price range, or room count. It returns paginated listings and exposes those fields in the response for client-side filtering. You can fork the API on Parse and revise it to add filter parameters targeting specific listing categories.Are sold or deactivated listings accessible?+
get_details endpoint works for both active and sold or deactivated listings as long as you supply a valid slug. The search endpoint returns currently active listings; it does not expose a sold-listings archive endpoint. You can fork the API on Parse and revise it to add a dedicated sold-listings search endpoint.How reliable are the `coordinates` and `plot_size` fields?+
plot_size is only present for property types that include land, such as houses and land plots. Your code should check for null before using either field.