# Spitogatos Search Map API Documentation

<p><strong>Spitogatos Map API</strong> returns up to 300 map pins for a search. A pin has its coordinates and the listings at that place, with the same listing fields as the search route. <code>total</code> is the number of matching listings, <code>shown</code> the number of listings in the pins. Failed requests are not billed.</p>

- **Documentation:** [https://scrappa.co/docs/spitogatos-api/spitogatos_search_map](https://scrappa.co/docs/spitogatos-api/spitogatos_search_map)
- **API group:** Spitogatos API
- **Endpoint:** `GET https://scrappa.co/api/spitogatos/search/map`

## Authentication

Send your Scrappa API key in the `X-API-KEY` request header. Paid endpoints also support accountless x402 payments when called without an API key.

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `listing_type` | string | Yes | rent or sale. |
| `category` | string | No | residential (default), commercial or land. |
| `area_ids` | array | Yes | One to 10 area ids from the autocomplete route, as area_ids[]=100 or area_ids=100,101. Example: 100 is Athens Center. |
| `property_types` | array | No | Property type names. Residential: apartment, studio, maisonette, detached, building, farm, houseboat, villa, loft, bungalow. Commercial: office, store, warehouse, hotel, showroom. Land: plot, parcel. |
| `price_min` | integer | No | Minimum price in EUR (rent: per month). |
| `price_max` | integer | No | Maximum price in EUR. |
| `area_min` | integer | No | Minimum living area in square meters. |
| `area_max` | integer | No | Maximum living area in square meters. |
| `rooms_min` | integer | No | Minimum bedrooms. Not for land. |
| `rooms_max` | integer | No | Maximum bedrooms. Not for land. |
| `construction_year_min` | integer | No | Built in or after this year. Not for land. |
| `construction_year_max` | integer | No | Built in or before this year. Not for land. |
| `new_development` | boolean | No | true to return new developments only. |
| `reductions` | boolean | No | true to return listings with a reduced price only. |
| `furnished` | boolean | No | true to return furnished listings only. Not for land. |
| `elevator` | boolean | No | true to return listings with an elevator only. Not for land. |
| `balcony` | boolean | No | true to return listings with a balcony only. Not for land. |
| `garden` | boolean | No | true to return listings with a garden only. Not for land. |
| `air_conditioning` | boolean | No | true to return listings with air conditioning only. Not for land. |
| `storage` | boolean | No | true to return listings with a storage room only. Not for land. |
| `locale` | string | No | Language of area names: el (default) or en. |

## Example response

```json
{
    "data": {
        "pins": [
            {
                "top_vip": true,
                "latitude": 37.9666042327881,
                "listings": [
                    {
                        "id": 20896131,
                        "url": "https://www.spitogatos.gr/aggelia/1120896131",
                        "floor": {
                            "code": 4,
                            "label": "Mezzanine"
                        },
                        "image": "https://m3.spitogatos.gr/369605942_300x220.jpg?v=20130730",
                        "price": 120000,
                        "rooms": null,
                        "agency": {
                            "id": 16396,
                            "logo": null,
                            "name": "Agentia",
                            "slug": null,
                            "membership": null,
                            "profile_url": null
                        },
                        "web_id": "1120896131",
                        "ad_type": "vip",
                        "area_m2": 30,
                        "ad_types": [
                            "vip",
                            "prime"
                        ],
                        "category": "residential",
                        "kitchens": 1,
                        "modified": "2026-10-25 18:35:57",
                        "uploaded": "2026-09-21 19:47:38",
                        "bathrooms": 1,
                        "geography": "\u03a0\u03b1\u03b3\u03ba\u03c1\u03ac\u03c4\u03b9 (\u0391\u03b8\u03ae\u03bd\u03b1 - \u039a\u03ad\u03bd\u03c4\u03c1\u03bf)",
                        "has_video": false,
                        "image_ids": [
                            369605942,
                            369605946,
                            369605951
                        ],
                        "coordinates": {
                            "latitude": 37.96664,
                            "longitude": 23.745558,
                            "geocode_type": "offset"
                        },
                        "description": null,
                        "listing_type": "sale",
                        "living_rooms": 1,
                        "price_per_m2": 4000,
                        "price_reduced": false,
                        "property_type": "studio",
                        "new_development": false,
                        "has_virtual_tour": false,
                        "first_publish_date": "2026-09-21 19:47:38",
                        "price_pre_reduction": null,
                        "price_change_percentage": null
                    }
                ],
                "longitude": 23.7454032897949,
                "geocode_type": "offset"
            }
        ],
        "shown": 300,
        "total": 1476,
        "applied_filters": {
            "area_ids": [
                100
            ],
            "category": "residential",
            "listing_type": "sale",
            "property_types": [
                "studio"
            ]
        }
    },
    "meta": {
        "billable": true,
        "endpoint_family": "search_map"
    },
    "success": true
}
```

## Errors

| Status | Error | Description |
| --- | --- | --- |
| 422 | Validation Error | A required parameter or a range is invalid. This response is not billable. |
| 503 | Upstream Unavailable | Spitogatos could not be reached or returned data that does not match the request. This response is not billable and is retryable. |

## More Scrappa resources

- [API documentation](https://scrappa.co/docs)
- [Full LLM-readable API reference](https://scrappa.co/llms-full.txt)
- [OpenAPI specification](https://scrappa.co/docs/api.json)
- [Pricing](https://scrappa.co/pricing)
