{
  "openapi": "3.0.1",
  "info": {
    "title": "Spitogatos.gr Greece Property Scraper",
    "description": "Scrape Spitogatos.gr property listings in Greece: price, m², rooms, floor, amenities, energy class, GPS, photos and a resolved agent or agency phone for every listing.",
    "version": "1.0",
    "x-build-id": "PxXteavVm2l9MDWsL"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/parsebird~spitogatos-property-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-parsebird-spitogatos-property-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/parsebird~spitogatos-property-scraper/runs": {
      "post": {
        "operationId": "runs-sync-parsebird-spitogatos-property-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/parsebird~spitogatos-property-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-parsebird-spitogatos-property-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "start_urls": {
            "title": "Start URLs",
            "type": "array",
            "description": "Add Spitogatos search pages, single property pages or agency pages, in English or Greek. Mix them freely. Search pages keep every filter you set on the site, e.g. https://www.spitogatos.gr/en/for_sale-homes/thessaloniki-center",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "max_depth": {
            "title": "Max result pages per search",
            "minimum": 1,
            "type": "integer",
            "description": "Set how many result pages (30 listings each) to walk per search URL, filter search or agency. Leave empty to scrape every page. Ignored for single property URLs."
          },
          "max_items": {
            "title": "Max properties",
            "minimum": 1,
            "type": "integer",
            "description": "Stop after this many properties in total across all inputs. Leave empty for no limit."
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "Type place names as the site shows them, in English or Greek, e.g. Kolonaki, Glyfada or Analipsi - Mpotsari - Nea Paralia. Several places are searched together without duplicates. For a name that exists in more than one place, add the parent in brackets, e.g. Kolonaki (Thiva). Postcodes do not work.",
            "items": {
              "type": "string"
            }
          },
          "listing_type": {
            "title": "Listing type",
            "enum": [
              "sale",
              "rent"
            ],
            "type": "string",
            "description": "Choose properties for sale or to rent.",
            "default": "sale"
          },
          "category": {
            "title": "Category",
            "enum": [
              "residential",
              "commercial",
              "land",
              "other",
              "new_development",
              "student_housing"
            ],
            "type": "string",
            "description": "Pick the property category. New development and Student housing use the Home property types.",
            "default": "residential"
          },
          "property_types": {
            "title": "Property type",
            "enum": [
              "apartment",
              "studio",
              "maisonette",
              "detached",
              "villa",
              "loft",
              "bungalow",
              "building",
              "apartment complex",
              "farm",
              "houseboat",
              "other residential",
              "office",
              "store",
              "warehouse",
              "industrial space",
              "craft space",
              "hotel",
              "business building",
              "hall",
              "showroom",
              "other commercial",
              "plot",
              "parcel",
              "island",
              "other land",
              "parking spot",
              "business",
              "prefabricated",
              "detachable",
              "air",
              "other"
            ],
            "type": "string",
            "description": "Optionally pick one property type. It must belong to the chosen category."
          },
          "price_min": {
            "title": "Min price (EUR)",
            "minimum": 0,
            "type": "integer",
            "description": "Set the minimum price in EUR. For rentals this is the monthly rent."
          },
          "price_max": {
            "title": "Max price (EUR)",
            "minimum": 0,
            "type": "integer",
            "description": "Set the maximum price in EUR. For rentals this is the monthly rent."
          },
          "area_min": {
            "title": "Min area (m²)",
            "minimum": 0,
            "type": "integer",
            "description": "Set the minimum living area in m²."
          },
          "area_max": {
            "title": "Max area (m²)",
            "minimum": 0,
            "type": "integer",
            "description": "Set the maximum living area in m²."
          },
          "rooms_min": {
            "title": "Min rooms",
            "minimum": 0,
            "type": "integer",
            "description": "Set the minimum room count (bedrooms for homes)."
          },
          "rooms_max": {
            "title": "Max rooms",
            "minimum": 0,
            "type": "integer",
            "description": "Set the maximum room count (bedrooms for homes)."
          },
          "construction_year_min": {
            "title": "Built from (year)",
            "minimum": 1800,
            "type": "integer",
            "description": "Set the earliest construction year."
          },
          "construction_year_max": {
            "title": "Built up to (year)",
            "minimum": 1800,
            "type": "integer",
            "description": "Set the latest construction year."
          },
          "floor_min": {
            "title": "Floor from",
            "enum": [
              "basement",
              "semi_basement",
              "ground_floor",
              "semi_ground_floor",
              "1",
              "2",
              "3",
              "4",
              "5",
              "6",
              "7",
              "8",
              "9",
              "10",
              "15",
              "20",
              "30",
              "40",
              "51"
            ],
            "type": "string",
            "description": "Pick the lowest floor."
          },
          "floor_max": {
            "title": "Floor up to",
            "enum": [
              "basement",
              "semi_basement",
              "ground_floor",
              "semi_ground_floor",
              "1",
              "2",
              "3",
              "4",
              "5",
              "6",
              "7",
              "8",
              "9",
              "10",
              "15",
              "20",
              "30",
              "40",
              "51"
            ],
            "type": "string",
            "description": "Pick the highest floor."
          },
          "heating_controllers": {
            "title": "Heating type",
            "type": "array",
            "description": "Keep only listings with these heating types.",
            "items": {
              "type": "string",
              "enum": [
                "with_heating",
                "autonomous",
                "central",
                "individual",
                "none"
              ],
              "enumTitles": [
                "With heating",
                "Autonomous",
                "Central",
                "Individual",
                "Without heating"
              ]
            }
          },
          "heating_media": {
            "title": "Heating medium",
            "type": "array",
            "description": "Keep only listings heated with these fuels.",
            "items": {
              "type": "string",
              "enum": [
                "petrol",
                "natural_gas",
                "gas",
                "current",
                "thermal_accumulator",
                "stove",
                "pellet",
                "infrared",
                "fan_coil",
                "wood",
                "teleheating",
                "geothermal_energy",
                "heating_pump"
              ],
              "enumTitles": [
                "Petrol",
                "Natural gas",
                "Liquefied petroleum gas",
                "Electricity",
                "Heat accumulator",
                "Stove",
                "Pellet",
                "Infrared",
                "Fan coil",
                "Wood",
                "Teleheating",
                "Geothermal energy",
                "Heating pump"
              ]
            }
          },
          "energy_class": {
            "title": "Energy class (up to)",
            "enum": [
              "ap",
              "a",
              "bp",
              "b",
              "c",
              "d",
              "e",
              "f",
              "g"
            ],
            "type": "string",
            "description": "Keep listings with this energy class or better, like the energy slider on the site."
          },
          "amenities": {
            "title": "Features",
            "type": "array",
            "description": "Keep only listings that have every feature you pick. Each feature narrows the search.",
            "items": {
              "type": "string",
              "enum": [
                "hasMainImage",
                "reductions",
                "garage",
                "storage",
                "elevator",
                "furnished",
                "airConditioning",
                "balcony",
                "garden",
                "fireplace",
                "secureDoor",
                "alarm",
                "penthouse",
                "corner",
                "petsAllowed",
                "accessibleForDisabled",
                "loadingDock",
                "auction",
                "view",
                "swimmingPool",
                "solarHeater"
              ],
              "enumTitles": [
                "With photos",
                "Price reduced",
                "Parking",
                "Storage",
                "Elevator",
                "Furnished",
                "Air conditioning",
                "Balcony",
                "Garden",
                "Fireplace",
                "Secure door",
                "Alarm",
                "Penthouse",
                "Corner property",
                "Pets welcome",
                "Accessible for people with disabilities",
                "Loading dock (commercial)",
                "Auction (sale only)",
                "View",
                "Swimming pool",
                "Solar water heater"
              ]
            }
          },
          "posted_within": {
            "title": "Posted within",
            "type": "string",
            "description": "Keep listings first published within this period: 24hours, 3days, 1week, 1month, 3months, 6months, 1year, 3years, or since a date like 25/09/2026."
          },
          "updated_within": {
            "title": "Updated within",
            "type": "string",
            "description": "Keep listings updated within this period: 24hours, 3days, 1week, 1month, 3months, 6months, 1year, 3years, or since a date like 25/09/2026."
          },
          "sort_by": {
            "title": "Sort by",
            "enum": [
              "rankingscore",
              "datemodified",
              "price",
              "pricepersqmeters",
              "size"
            ],
            "type": "string",
            "description": "Pick the order of the search results.",
            "default": "rankingscore"
          },
          "sort_order": {
            "title": "Sort order",
            "enum": [
              "asc",
              "desc"
            ],
            "type": "string",
            "description": "Pick ascending or descending. Default ranking and Last update are always descending."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}