Zimmo Property Search API Search Zimmo homes, plots, garages and commercial property for sale or for rent in Belgium. Filter by place, category, price, bedrooms, bathrooms, living area, plot area, construction year, EPC, energy label, condition and new construction. Sort by date, price, ranking or energy label and page through the results.
Each listing has flat fields (id, code, url, title, price, bedrooms, bathrooms, area_m2, lat, lon, main_image, agency) and the full estate record with layout, utilities, energy certificate, flooding and planning data, images in all sizes, documents and price history.
total_count is exact and has_more tells if another page exists. Every row obeys the filters you send. With new_construction=projects a row has kind set to project and a units list instead of an estate. One request is one lookup. Failed requests are not billed.
Run this endpoint
Endpoint
Parameters
Start with the required fields, then add optional filters only when your use case needs them.
Runnable path
1 required parameter needed before sending a request.
27 optional filters available.
string
Required
buy or rent.
example
integer
Optional
Place id from the locations endpoint: a municipality, province or region. Without it the search covers Belgium.
1234567890
string
Optional
One or more, comma separated: house, apartment, commercial, garage, plot, room.
example
string
Optional
One or more, comma separated, e.g. villa, duplex, loft, penthouse, townhouse, building_plot, office, garage_box.
example
integer
Optional
Minimum price in EUR. For rent this is the monthly rent.
10
integer
Optional
Maximum price in EUR. For rent this is the monthly rent.
10
integer
Optional
Minimum number of bedrooms.
10
integer
Optional
Maximum number of bedrooms.
10
integer
Optional
Minimum number of bathrooms.
10
integer
Optional
Maximum number of bathrooms.
10
integer
Optional
Minimum living area in m2.
10
integer
Optional
Maximum living area in m2.
10
integer
Optional
Minimum plot area in m2.
10
integer
Optional
Maximum plot area in m2.
10
integer
Optional
Earliest construction year, e.g. 2020.
10
integer
Optional
Latest construction year.
10
integer
Optional
Minimum EPC value in kWh/m2.
10
integer
Optional
Maximum EPC value in kWh/m2. A low value means an efficient home.
10
string
Optional
One or more, comma separated: a_plus_plus, a_plus, a, a_minus, b_plus, b, b_minus, c_plus, c, c_minus, d_plus, d, d_minus, e_plus, e, e_minus, f, g, x.
example
string
Optional
One or more, comma separated: open, half_open, closed.
example
string
Optional
One or more, comma separated: to_renovate, to_freshen_up, good_condition, excellent_condition, renewed, new.
example
string
Optional
none (no new builds), properties (single new properties), projects (new-build projects, each with its units) or all. A project is returned when at least one unit fits the filters.
example
string
Optional
Only listings of this agency. Use an id from the agencies endpoint.
1234567890
string
Optional
date, price, ranking or energy_label. Default date.
relevance
string
Optional
asc or desc. Default asc for price and energy_label, desc for date and ranking.
example
integer
Optional
Page number, 1 or more. Default 1. Zimmo returns results up to position 5000, so a deep page gives a 422 with the last page for your size.
1
integer
Optional
Rows per page, 1 to 30. Default 10. A Zimmo row is large (about 60 KB), so keep the size small.
10
string
Optional
Language of the flat text fields (title, description, url, city): nl, fr, en or de. Default nl. The full text maps keep all languages.
en-US
Response Schema
Example response fields are illustrative; inspect the JSON before integrating.
Example response fields
Scan these fields before integrating.
data
meta
success
{
"data": {
"page": 1,
"size": 10,
"count": 1,
"service": "buy",
"has_more": true,
"listings": [
{
"id": "c1f57e0f-12d1-403d-afbc-e67f4fb7c40a",
"lat": 51.0611833,
"lon": 3.7286453,
"url": "https://www.zimmo.be/nl/gent-9000/te-koop/huis/LSOXI",
"code": "LSOXI",
"kind": "property",
"urls": {
"fr": "https://www.zimmo.be/fr/gent-9000/a-vendre/maison/LSOXI",
"nl": "https://www.zimmo.be/nl/gent-9000/te-koop/huis/LSOXI"
},
"price": 675000,
"title": "Lichtrijke en instapklare woning met charmante gevel en stadstuin nabij het Baudelopark.",
"agency": {
"id": "75d5bb79-4273-4a50-8085-0cbc093e5d57",
"lat": 51.0492834,
"lon": 3.7271016,
"url": "https://www.zimmo.be/nl/vastgoedkantoor/gent-9000/carlo-eggermont-37045",
"logo": "https://files.zimmo.be/backend-api/YlO2SpeTAmR9kZXbPVaiNdqohUo=/filters:image-fo...",
"name": "Carlo Eggermont",
"slug": "carlo-eggermont-37045",
"phone": "+32492087047",
"address": {
"box": null,
"city": "Gent",
"number": "1-102",
"street": "Grote Huidevettershoek",
"country": "Belgium",
"postal_code": "9000",
"country_code": "BE"
},
"reviews": {
"combined": {
"max": 10,
"count": 65,
"score": 8.4
},
"external": {
"max": 5,
"count": 63,
"score": 4.3
},
"housematch": {
"max": 10,
"count": 2,
"score": 5.5
}
},
"website": "www.carloeggermont.be",
"category": "broker",
"mobile_phone": "+32492087047"
},
"estate": {
"note": "The full estate object follows the upstream record: layout, floors, utilities, flooding, planning and more. Shortened here.",
"type": "HOUSE",
"price": {
"unit": "EUR",
"value": 675000
},
"status": "FOR_SALE",
"subType": "HOUSE",
"condition": "GOOD_CONDITION",
"certificate": {
"asBuilt": {
"certificateStatus": "NOT_OBTAINED"
},
"epcCertificate": {
"epcValue": {
"unit": "kWh/m\u00b2",
"value": 118
},
"energyLabel": "B",
"certificateStatus": "OBTAINED",
"epcCertificateNumber": "3950907",
"renovationObligation": "UNKNOWN"
},
"electricityCertificate": {
"certificateStatus": "OBTAINED",
"electricityConformity": "VALID"
}
},
"constructionYear": 1850,
"floorspaceSurface": {
"unit": "m\u00b2",
"value": 209
}
},
"images": [
{
"url": "https://files.zimmo.be/backend-api/TlmcSYRp00h_h9_lry7-wj2kq8w=/1300x650/filters:image-format(pjpg)/-/real-estate/customers/b4fa4d68-4bae-11e9-922b-005056b768a1/dealers/75d5bb79-4273-4a50-8085-0cbc093e5d57/listings/c1f57e0f-12d1-403d-afbc-e67f4fb7c40a/images/01a1726f-2138-7b8b-8d2e-b2b53fc54fa3",
"order": 1,
"thumbnails": {
"z-detail-328": "https://files.zimmo.be/backend-api/iW9n6W5mT-3HAhqYtTItXVfMpwE=/328x164/filters:image-format(pjpg)/-/real-estate/customers/b4fa4d68-4bae-11e9-922b-005056b768a1/dealers/75d5bb79-4273-4a50-8085-0cbc093e5d57/listings/c1f57e0f-12d1-403d-afbc-e67f4fb7c40a/images/01a1726f-2138-7b8b-8d2e-b2b53fc54fa3",
"z-detail-672": "https://files.zimmo.be/backend-api/DqsYfTErdKbg3gnpTH0d7cmlGeg=/672x336/filters:image-format(pjpg)/-/real-estate/customers/b4fa4d68-4bae-11e9-922b-005056b768a1/dealers/75d5bb79-4273-4a50-8085-0cbc093e5d57/listings/c1f57e0f-12d1-403d-afbc-e67f4fb7c40a/images/01a1726f-2138-7b8b-8d2e-b2b53fc54fa3"
}
}
],
"status": "FOR_SALE",
"address": {
"box": null,
"city": "Gent",
"number": "6",
"street": "Jakob Van Caeneghemstraat",
"country": "Belgium",
"postal_code": "9000",
"country_code": "BE"
},
"area_m2": 209,
"service": "buy",
"bedrooms": 2,
"category": "house",
"currency": "EUR",
"stickers": [
{
"type": "NEW",
"until": "2026-11-01T09:40:47Z"
}
],
"sub_type": "house",
"bathrooms": 1,
"documents": [
{
"id": "01a1726f-3b3e-7f81-bbf3-01009be97c1c",
"url": "https://files.zimmo.be/backend-api/-/real-estate/customers/b4fa4d68-4bae-11e9-922b-005056b768a1/dealers/75d5bb79-4273-4a50-8085-0cbc093e5d57/listings/c1f57e0f-12d1-403d-afbc-e67f4fb7c40a/documents/01a1726f-3b3e-7f81-bbf3-01009be97c1c/2_MVO_Jakob Van Caeneghemstraat 6.pdf",
"name": "2_MVO_Jakob Van Caeneghemstraat 6.pdf"
}
],
"epc_value": 118,
"place_ids": [
1506,
3,
4,
580
],
"created_at": "2026-10-25T09:40:46Z",
"main_image": "https://files.zimmo.be/main-image/c1f57e0f-12d1-403d-afbc-e67f4fb7c40a",
"updated_at": "2026-10-25T09:40:47Z",
"description": "Lichtrijke en instapklare woning met charmante gevel en stadstuin nabij het Baudelopark.\n\nOp een aantrekkelijke locatie nabij het Industriemuseum en het Baudelopark bevindt zich deze woning, die in 2016 werd gerenoveerd met oog voor hedendaags wooncomfort. Ook Dok Noord, met zijn winkels, restaurant...",
"energy_label": "B",
"plot_area_m2": 135,
"price_period": null,
"project_link": null,
"price_history": null,
"cadastral_income": 642,
"new_construction": false,
"construction_year": 1850,
"publication_start": "2026-10-25T09:40:47Z",
"external_reference": "4493699",
"coordinate_precision": "ROOFTOP"
}
],
"total_count": 307,
"filters_applied": {
"sort": "date",
"order": "desc",
"service": "buy",
"place_id": 1506,
"categories": [
"HOUSE"
]
}
},
"meta": {
"billable": true,
"endpoint_family": "search",
"duplicates_removed": 0,
"rows_removed_by_guard": 0
},
"success": true
}
Errors
Handle these documented responses before retrying or showing customer-facing failures.
Validation Error
A required parameter is missing or invalid. This response is not billable.
{
"errors": {
"service": [
"The service is required: buy or rent."
]
},
"message": "The request validation failed"
}Validation Error
A required parameter is missing or invalid. This response is not billable.
{
"errors": {
"page": [
"Zimmo does not return results past position 5000. With size=10 the last page is 500. Narrow the search with more filters."
]
},
"message": "The request validation failed"
}Temporarily Unavailable
Zimmo did not answer or refused the request after several attempts. This response is not billable. Retry after a short pause.
{
"meta": {
"attempts": 3,
"billable": false,
"retryable": true
},
"error": {
"message": "Zimmo data is temporarily unavailable. Please retry.",
"failure_type": "upstream_unavailable"
},
"success": false
}Generate Code with AI
Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.
Try It Live
Test this endpoint in our interactive playground with real data.