Spitogatos Search API searches homes, offices, shops and land for sale or for rent in one or more areas. Filter by price, living area, rooms, construction year, property type, new development, price reductions and features. Sort by relevance or price and page through 30 listings at a time. Each listing has its price, size, rooms, bathrooms, floor, coordinates, photo ids, dates and agency. Every filter is checked: the response never holds a listing that breaks a requested filter, and page N is never page 1 labelled as page N. 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
2 required parameters needed before sending a request.
22 optional filters available.
string
Required
rent or sale.
example
array
Required
One to 10 area ids from the autocomplete route, as area_ids[]=100 or area_ids=100,101. Example: 100 is Athens Center.
["example"]
string
Optional
residential (default), commercial or land.
example
array
Optional
Property type names. Residential: apartment, studio, maisonette, detached, building, farm, houseboat, villa, loft, bungalow. Commercial: office, store, warehouse, hotel, showroom. Land: plot, parcel.
["example"]
integer
Optional
Minimum price in EUR (rent: per month).
10
integer
Optional
Maximum price in EUR.
10
integer
Optional
Minimum living area in square meters.
10
integer
Optional
Maximum living area in square meters.
10
integer
Optional
Minimum bedrooms. Not for land.
10
integer
Optional
Maximum bedrooms. Not for land.
10
integer
Optional
Built in or after this year. Not for land.
10
integer
Optional
Built in or before this year. Not for land.
10
boolean
Optional
true to return new developments only.
true
boolean
Optional
true to return listings with a reduced price only.
true
boolean
Optional
true to return furnished listings only. Not for land.
true
boolean
Optional
true to return listings with an elevator only. Not for land.
true
boolean
Optional
true to return listings with a balcony only. Not for land.
true
boolean
Optional
true to return listings with a garden only. Not for land.
true
boolean
Optional
true to return listings with air conditioning only. Not for land.
true
boolean
Optional
true to return listings with a storage room only. Not for land.
true
string
Optional
relevance (default) or price.
relevance
string
Optional
asc or desc. Default: asc for price, desc for relevance.
example
integer
Optional
One-based page number, 1 to 1000 (default 1). 30 listings per page.
1
string
Optional
Language of area names: el (default) or en.
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": {
"items": [
{
"id": 20717671,
"url": "https://www.spitogatos.gr/aggelia/2120717671",
"floor": {
"code": 6,
"label": "Floor 1"
},
"image": "https://m2.spitogatos.gr/366917227_300x220.jpg?v=20130730",
"price": 30,
"rooms": 2,
"agency": {
"id": 0,
"logo": null,
"name": null,
"slug": null,
"membership": null,
"profile_url": null
},
"web_id": "2120717671",
"ad_type": "simple",
"area_m2": 70,
"ad_types": [],
"category": "residential",
"kitchens": 1,
"modified": "2026-09-01 21:16:22",
"uploaded": "2026-08-28 20:10:18",
"bathrooms": 1,
"geography": "\u03a3\u03c4\u03b1\u03b8\u03bc\u03cc\u03c2 \u039b\u03b1\u03c1\u03af\u03c3\u03b7\u03c2 (\u039a\u03bf\u03bb\u03c9\u03bd\u03cc\u03c2 - \u039a\u03bf\u03bb\u03bf\u03ba\u03c5\u03bd\u03b8\u03bf\u03cd\u03c2)",
"has_video": false,
"image_ids": [
366917227,
366917248,
366917250
],
"coordinates": {
"latitude": 37.987652,
"longitude": 23.718189,
"geocode_type": "exact"
},
"description": "\u039d\u039f\u0399\u039a\u0399\u0386\u0396\u0395\u03a4\u0391\u0399 \u03a0\u039b\u0397\u03a1\u03a9\u03a3 \u0391\u039d\u0391\u039a\u0391\u0399\u039d\u0399\u03a3\u039c\u0395\u039d\u039f \u039a\u0391\u0399 \u0395\u039e\u039f\u03a0\u039b\u0399\u03a3\u039c\u0388\u039d\u039f \u0394\u0399\u0391\u039c\u0395\u03a1\u0399\u03a3\u039c\u0391 \u03a3\u03a4\u0397\u039d \u039f\u0395\u03a1\u0399\u039f\u03a7\u0397 \u0393\u039a\u0391\u0396\u0399 \u039c\u0395\u03a4\u0391\u039e\u039f\u03a5\u03a1\u0393\u0395\u0399\u039f \u03a0\u03a1\u03a9\u03a4\u039f\u03a3 \u039f\u03a1\u039f\u03a6\u039f\u03a3 \u039c\u0395 \u039c\u03a0\u0391\u039b\u039a\u038c\u039d\u0399\u0391 \u0392\u039b\u0395\u03a0\u0395\u0399 \u03a3\u0395 \u03a0\u0386\u03a1\u039a\u039f. \u0394\u03a5\u039f \u039a\u03a1\u0395\u0392\u0392\u0391\u03a4\u039f\u039a\u0391\u039c\u0391\u03a1\u0395\u03a3. \u0397 \u0395\u039d\u039f\u0399\u039a\u038a\u0391\u03a3\u0397 \u0395\u0399\u039d\u0391\u0399 \u03a3\u03a4\u0391 30\u20ac \u03a4\u0397\u039d \u0397\u039c\u0388\u03a1\u0391 \u039c\u0395 \u0395\u039b\u0386\u03a7\u0399\u03a3\u03a4\u039f \u03a4\u039f\u039d \u0395\u039d\u0391 \u039c\u0397\u039d\u0391.",
"listing_type": "rent",
"living_rooms": 1,
"price_per_m2": 0.43,
"price_reduced": false,
"property_type": "apartment",
"new_development": false,
"has_virtual_tour": false,
"first_publish_date": "2026-08-28 20:21:10",
"price_pre_reduction": null,
"price_change_percentage": null
}
],
"pagination": {
"page": 1,
"total": 2035,
"per_page": 30,
"last_page": 68,
"has_next_page": true
},
"applied_filters": {
"sort": "price",
"order": "asc",
"area_ids": [
100
],
"category": "residential",
"price_max": 900,
"rooms_min": 2,
"listing_type": "rent"
},
"search_metadata": {
"areas": [
{
"id": 100,
"name": "\u0391\u03b8\u03ae\u03bd\u03b1 - \u039a\u03ad\u03bd\u03c4\u03c1\u03bf",
"slug": null,
"level": 2,
"full_name": "\u0391\u03b8\u03ae\u03bd\u03b1 - \u039a\u03ad\u03bd\u03c4\u03c1\u03bf (\u0391\u03c4\u03c4\u03b9\u03ba\u03ae)",
"parent_id": 105103,
"coordinates": {
"latitude": 37.9894707207,
"longitude": 23.7344219707,
"geocode_type": null
},
"parent_name": "\u0391\u03c4\u03c4\u03b9\u03ba\u03ae"
}
],
"search_urls": {
"el": "https://www.spitogatos.gr/enoikiaseis-katoikies/athina-kentro/timi_eos-900/dwmatia_apo-2/order_price_asc",
"en": "https://www.spitogatos.gr/en/to_rent-homes/athens-center/maxprice-900/minrooms-2/order_price_asc"
}
}
},
"meta": {
"billable": true,
"endpoint_family": "search"
},
"success": true
}
Errors
Handle these documented responses before retrying or showing customer-facing failures.
Validation Error
A required parameter or a range is invalid. This response is not billable.
{
"errors": {
"listing_type": [
"The listing type field is required."
]
},
"message": "The request validation failed"
}Not Found
The area was not found. Use the autocomplete route. This response is not billable.
{
"meta": {
"billable": false,
"retryable": false,
"endpoint_family": "search"
},
"error": {
"code": "NOT_FOUND",
"message": "The requested resource was not found."
},
"success": false
}Upstream Unavailable
Spitogatos could not be reached or returned data that does not match the request. This response is not billable and is retryable.
{
"meta": {
"billable": false,
"retryable": true,
"endpoint_family": "search"
},
"error": {
"code": "UPSTREAM_UNAVAILABLE",
"message": "Spitogatos could not be reached. Please retry shortly."
},
"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.