# Indomio.gr Scraper (`saregaa/indomiogr-scraper`) Actor

Scrape property listings and agency data from Indomio.gr. Supports city-wide agency search, auto-pagination, and full national agency collection across Greece.

- **URL**: https://apify.com/saregaa/indomiogr-scraper.md
- **Developed by:** [Saregaa](https://apify.com/saregaa) (community)
- **Categories:** Real estate, Lead generation, E-commerce
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## 🏠 Indomio.gr Pro Scraper

Extract property listings, agency search results, and **all agencies across Greece** from [Indomio.gr](https://www.indomio.gr) — one of Greece's leading real estate portals. Powered by direct API calls and browser fingerprint emulation via `curl_cffi`, this actor is fast, resilient, and virtually block-proof.

> **$1.00 per 1,000 results** — cost-effective and transparent pricing with no hidden fees.

---

### ✨ What makes this scraper different

| Feature                             | This Actor | Competitor A | Competitor B |
| ----------------------------------- | ---------- | ------------ | ------------ |
| Property listings (search)          | ✅         | ✅           | ✅           |
| Agency search by city               | ✅         | ❌           | ❌           |
| **Scrape ALL Greek agencies** | ✅         | ❌           | ❌           |
| Multi-language URLs (EN, GR)        | ✅         | ❌           | ❌           |
| Auto-pagination                     | ✅         | partial      | ✅           |
| Listing limit control               | ✅         | ❌           | ❌           |
| Browser fingerprint emulation       | ✅         | ❌           | ❌           |
| State saving (migration safe)       | ✅         | ❌           | ❌           |

---

### 🔗 Supported URL types

The scraper intelligently detects the URL type and routes it to the correct API endpoint automatically. No configuration needed — just paste your URLs.

> ⚠️ **Note:** Links to single property ads and individual agency profile pages are **not supported** and will be skipped automatically.

#### Property search listings

Standard search URLs with optional filters (price, category, location, etc.):

````

https://www.indomio.gr/pwlhsh-katoikies/chalkida/
https://www.indomio.gr/enoikiash-katoikies/athina/
https://www.indomio.gr/pwlhsh-diamerismata/thessaloniki/
https://www.indomio.gr/pwlhsh-katoikies/patra/?criterio=prezzo\&ordine=desc

```

#### Agency search by city

Lists all agencies operating in a given city, with full pagination:

```

https://www.indomio.gr/ktimatomesites/athina/
https://www.indomio.gr/ktimatomesites/thessaloniki/
https://www.indomio.gr/ktimatomesites/chalkida/?pag=2

```

#### Commercial & specialty property types

Offices, land, warehouses, garages, and more:

```

https://www.indomio.gr/pwlhsh-grafeia/athina/
https://www.indomio.gr/pwlhsh-oikopeda/thessaloniki/
https://www.indomio.gr/enoikiash-katasthmata/athina/
https://www.indomio.gr/pwlhsh-garaz/athina/

```

#### Multi-language URLs

The scraper supports English and other language prefixes:

```

https://www.indomio.gr/en/sale-houses/athens/
https://www.indomio.gr/en/rent-apartments/thessaloniki/

```

#### URLs without `https://` prefix

The scraper auto-corrects bare URLs:

```

indomio.gr/pwlhsh-katoikies/chalkida/?criterio=prezzo\&ordine=desc

````

---

### ⚙️ Input configuration

| Parameter              | Type    | Default     | Description                                                                              |
| ---------------------- | ------- | ----------- | ---------------------------------------------------------------------------------------- |
| `startUrls`          | array   | —          | List of Indomio.gr URLs to scrape                                                        |
| `maxListingsLimit`   | integer | `100`     | Max properties or agencies to collect per search. Set `0` for unlimited                |
| `scrapeAllAgencies`  | boolean | `false`   | Ignores `startUrls` and scrapes every agency in Greece using the built-in cities index |
| `proxyConfiguration` | object  | Apify proxy | Proxy settings. Apify residential proxies are recommended                                |

#### Example input

```json
{
  "startUrls": [
    { "url": "https://www.indomio.gr/pwlhsh-katoikies/chalkida/" },
    { "url": "https://www.indomio.gr/ktimatomesites/athina/" }
  ],
  "maxListingsLimit": 200,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
````

***

### 📦 Output structure

#### Agency result

```json
{
    "address": "16ης Οκτωβρίου 4, Αμάρυνθος 34006 - Αμάρυνθος",
    "agencyUrl": "https://www.indomio.gr/mesitika-grafeia/388097/",
    "description": "Η TerraMak είναι μια Start-Up εταιρεία, η οποία ικανοποιεί τις ανάγκες των πελατών, προσφέρει αξιοπιστία και ποιότητα. Δραστηριοποιείται στην διαχείριση ακινήτων, στην κάλυψη επενδυτικών πλάνων, καθώς και στην υλοποίηση των ονείρων σας στο κατασκευαστικό κομμάτι.",
    "displayName": "TerraMak",
    "guaranteed": false,
    "id": 388097,
    "imageUrls": {
      "large": "https://pic.indomio.gr/imagenoresize/101054539.jpg",
      "small": "https://pic.indomio.gr/imagenoresize/101054533.jpg"
    },
    "isPaid": true,
    "partnership": "",
    "phones": [
      {
        "type": "tel1",
        "value": "2221 200720",
        "formattedValues": "+302221200720",
        "isVirtual": false
      }
    ],
    "realEstate": 55,
    "realEstateSales": 0,
    "timeContract": 3,
    "type": "agency",
    "highlighted": false,
    "agencyLocation": {
      "nation": "Grecia",
      "region": "Στερεά Ελλάδα",
      "province": "Εύβοια",
      "city": "Αμάρυνθος",
      "macrozone": "Κέντρο",
      "latitude": 38.3919,
      "longitude": 23.8847
    },
    "qualityIndex": 0,
    "premiumAds": 15
  }
```

#### Property listing result

```json
{
    "realEstate": {
      "visibility": "vetrina",
      "dataType": "list-real-estate",
      "id": 7344437,
      "uuid": "f02802d0-87e6-5dd7-a9a6-238925ff7826",
      "advertiser": {
        "agency": {
          "id": 376556,
          "type": "agency",
          "showOnlyAgentPhone": false,
          "phones": [
            {
              "type": "tel1",
              "value": "693 644 4600"
            }
          ],
          "bookableVisit": {
            "isVisitBookable": true,
            "virtualVisitEnabled": true
          },
          "isPaid": true,
          "label": "μεσιτικό γραφείο",
          "displayName": "ISPC.DAO",
          "guaranteed": false,
          "showAgentPhone": false,
          "showLogo": true,
          "imageUrls": {
            "small": "https://pic.indomio.gr/imagenoresize/101115887.jpg",
            "large": "https://pic.indomio.gr/imagenoresize/101115893.jpg"
          },
          "agencyUrl": "https://www.indomio.gr/mesitika-grafeia/376556/",
          "showExternalLink": false
        },
        "hasCallNumbers": true
      },
      "contract": "sale",
      "isNew": false,
      "luxury": false,
      "price": {
        "visible": true,
        "value": 470000,
        "formattedValue": "€ 470.000",
        "priceRange": "300.001 - 500.000 €"
      },
      "properties": [
        {
          "multimedia": {
            "photos": [
              {
                "id": 124630807,
                "caption": "THea",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124630807/xxs-c.jpg"
                }
              },
              {
                "id": 124630847,
                "caption": "Mpalkoni me thea",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124630847/xxs-c.jpg"
                }
              },
              {
                "id": 124631009,
                "caption": "Ayle me thea",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631009/xxs-c.jpg"
                }
              },
              {
                "id": 124630899,
                "caption": "Krebatokamara",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124630899/xxs-c.jpg"
                }
              },
              {
                "id": 124630821,
                "caption": "Mpalkoni",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124630821/xxs-c.jpg"
                }
              },
              {
                "id": 124630871,
                "caption": "Krebatokamara",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124630871/xxs-c.jpg"
                }
              },
              {
                "id": 124630939,
                "caption": "Deytere krebatokamara",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124630939/xxs-c.jpg"
                }
              },
              {
                "id": 124630963,
                "caption": "Krebatokamara",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124630963/xxs-c.jpg"
                }
              },
              {
                "id": 124630985,
                "caption": "Mpalkoni",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124630985/xxs-c.jpg"
                }
              },
              {
                "id": 124631039,
                "caption": "wc",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631039/xxs-c.jpg"
                }
              },
              {
                "id": 124631065,
                "caption": "Tzaki",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631065/xxs-c.jpg"
                }
              },
              {
                "id": 124631085,
                "caption": "Porta asphaleias",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631085/xxs-c.jpg"
                }
              },
              {
                "id": 124631109,
                "caption": "wc",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631109/xxs-c.jpg"
                }
              },
              {
                "id": 124631133,
                "caption": "..",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631133/xxs-c.jpg"
                }
              },
              {
                "id": 124631163,
                "caption": "Koyzina",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631163/xxs-c.jpg"
                }
              },
              {
                "id": 124631181,
                "caption": "wc",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631181/xxs-c.jpg"
                }
              },
              {
                "id": 124631203,
                "caption": "Koyzina",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631203/xxs-c.jpg"
                }
              },
              {
                "id": 124631225,
                "caption": "..",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631225/xxs-c.jpg"
                }
              },
              {
                "id": 124631247,
                "caption": "..",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631247/xxs-c.jpg"
                }
              },
              {
                "id": 124631269,
                "caption": "bbq",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631269/xxs-c.jpg"
                }
              },
              {
                "id": 124631291,
                "caption": "Ayle",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124631291/xxs-c.jpg"
                }
              },
              {
                "id": 124630917,
                "caption": "..",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124630917/xxs-c.jpg"
                }
              },
              {
                "id": 124630837,
                "caption": "..",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124630837/xxs-c.jpg"
                }
              },
              {
                "id": 124630859,
                "caption": "..",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124630859/xxs-c.jpg"
                }
              },
              {
                "id": 124630889,
                "caption": "..",
                "urls": {
                  "small": "https://pic.indomio.gr/image/124630889/xxs-c.jpg"
                }
              }
            ],
            "virtualTours": [
              null
            ],
            "hasMultimedia": true
          },
          "bathrooms": "2",
          "isMain": false,
          "floor": {
            "abbreviation": null,
            "value": "Ισόγειο",
            "floorOnlyValue": "ισόγειο",
            "ga4FloorValue": "ισόγειο"
          },
          "ga4Condition": "Ottimo / Ristrutturato",
          "price": {
            "visible": true,
            "value": 470000,
            "formattedValue": "€ 470.000",
            "priceRange": "300.001 - 500.000 €"
          },
          "rooms": "3",
          "surface": "100 m²",
          "typology": {
            "id": 21,
            "name": "Μονοκατοικία"
          },
          "ga4Garage": "2 in box privato/box in garage, 2 posto auto",
          "typologyGA4Translation": "Casa indipendente",
          "ga4features": [
            "caminetto",
            "mansarda",
            "impianto di allarme",
            "porta blindata",
            "esposizione esterna",
            "accesso per disabili",
            "balcone",
            "arredato",
            "cantina"
          ],
          "ga4Heating": "Autonomo",
          "category": {
            "id": 1,
            "name": "Κατοικία"
          },
          "photo": {
            "id": 124630807,
            "caption": "THea",
            "urls": {
              "small": "https://pic.indomio.gr/image/124630807/xxs-c.jpg",
              "medium": "https://pic.indomio.gr/image/124630807/m-c.jpg",
              "large": "https://pic.indomio.gr/image/124630807/xxl.jpg"
            }
          },
          "bedRoomsNumber": "2",
          "location": {
            "address": "Αιγιαλού, Νικήτη 63088",
            "latitude": 40.208,
            "longitude": 23.6769,
            "marker": "marker",
            "region": "Μακεδονία",
            "province": "Χαλκιδική",
            "macrozone": "Νικήτη",
            "city": "Σιθωνία",
            "nation": {
              "id": "GR",
              "name": "Grecia"
            }
          },
          "featureList": [
            {
              "type": "rooms",
              "label": "3 δωμάτια",
              "compactLabel": "3"
            },
            {
              "type": "surface",
              "label": "100 m²"
            },
            {
              "type": "bathrooms",
              "label": "2 μπάνια",
              "compactLabel": "2"
            },
            {
              "type": "elevator",
              "label": "Όχι Ανελκυστήρας",
              "compactLabel": "Όχι"
            },
            {
              "type": "balcony",
              "label": "Μπαλκόνι"
            },
            {
              "type": "furniture",
              "label": "Επιπλωμένο"
            },
            {
              "type": "basement",
              "label": "Αποθήκη"
            }
          ]
        }
      ],
      "title": "Μονοκατοικία Αιγιαλού, Νικήτη 63088, Νικήτη, Σιθωνία",
      "type": "ad",
      "typology": {
        "id": 21,
        "name": "Μονοκατοικία"
      },
      "hasMainProperty": false,
      "isProjectLike": false,
      "isMosaic": false
    },
    "seo": {
      "anchor": "Μονοκατοικία Αιγιαλού, Νικήτη 63088, Νικήτη, Σιθωνία",
      "url": "https://www.indomio.gr/aggelies/7344437/"
    },
    "idGeoHash": "sx0udz8u"
  }
```

***

### 🇬🇷 Scrape all Greek agencies

Enable the `scrapeAllAgencies` option to collect every registered real estate agency across Greece. The actor uses a pre-compiled `apify_cities_gr_index.json` file containing geo IDs for all Greek municipalities and handles full pagination for each city automatically.

This mode supports **Apify server migrations** — the actor saves its progress after every city and resumes from where it left off if interrupted, ensuring no data is lost on long runs.

***

### 🛡️ Anti-block technology

- Uses **`curl_cffi`** with Chrome browser fingerprint emulation to mimic real browser traffic at the HTTP/2 level
- Works reliably with **Apify residential proxies** for maximum stability
- Calls Indomio's **internal JSON APIs** directly — no HTML parsing, no Playwright overhead, maximum speed and stability

***

### 💰 Pricing

**$1.00 per 1,000 results**

Pay only for what you extract. There are no hidden charges for failed requests or pagination overhead.

***

### ⚡ Performance tips

- Set `maxListingsLimit: 0` only when you genuinely need all pages — large cities can have thousands of listings
- For agency data collection at national scale, use `scrapeAllAgencies: true` instead of constructing per-city URLs manually
- For targeted searches, paste the exact URL from your browser — the scraper handles all filter parameters automatically

***

### 🐛 Known limitations

- The `scrapeAllAgencies` mode requires the `apify_cities_gr_index.json` file to be bundled with the actor
- Single property ads and individual agency profile links are not supported and will be skipped
- Property description fields may be truncated in list view; full descriptions are available only through the source listing page

***

### 📬 Support

Found a bug or need a custom feature? Open an issue via the Apify platform or contact the actor author directly through the Apify store.

# Actor input Schema

## `startUrls` (type: `array`):

List of Indomio.gr URLs to scrape (residential search, commercial search, or agency search). Note: Single ads or specific agency profile links are not supported and will be skipped.

## `maxListingsLimit` (type: `integer`):

The maximum number of properties or agencies to collect when auto-paginating through search results. Set to 0 for unlimited.

## `scrapeAllAgencies` (type: `boolean`):

If enabled, ignores startUrls and scrapes all agencies across Greece using the pre-compiled 'apify\_cities\_gr\_index.json' file.

## `proxyConfiguration` (type: `object`):

Select proxies to prevent blocks. Apify residential proxies are highly recommended.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.indomio.gr/pwlhsh-katoikies/chalkida/"
    }
  ],
  "maxListingsLimit": 100,
  "scrapeAllAgencies": false,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrls": [
        {
            "url": "https://www.indomio.gr/pwlhsh-katoikies/chalkida/"
        }
    ],
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("saregaa/indomiogr-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "startUrls": [{ "url": "https://www.indomio.gr/pwlhsh-katoikies/chalkida/" }],
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("saregaa/indomiogr-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://www.indomio.gr/pwlhsh-katoikies/chalkida/"
    }
  ],
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call saregaa/indomiogr-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=saregaa/indomiogr-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Indomio.gr Scraper",
        "description": "Scrape property listings and agency data from Indomio.gr. Supports city-wide agency search, auto-pagination, and full national agency collection across Greece.",
        "version": "0.0",
        "x-build-id": "dMngaEHaRjWQrwrgh"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/saregaa~indomiogr-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-saregaa-indomiogr-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/saregaa~indomiogr-scraper/runs": {
            "post": {
                "operationId": "runs-sync-saregaa-indomiogr-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/saregaa~indomiogr-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-saregaa-indomiogr-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",
                "required": [
                    "proxyConfiguration"
                ],
                "properties": {
                    "startUrls": {
                        "title": "Start URLs",
                        "type": "array",
                        "description": "List of Indomio.gr URLs to scrape (residential search, commercial search, or agency search). Note: Single ads or specific agency profile links are not supported and will be skipped.",
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    },
                    "maxListingsLimit": {
                        "title": "Max Listings Limit",
                        "minimum": 0,
                        "type": "integer",
                        "description": "The maximum number of properties or agencies to collect when auto-paginating through search results. Set to 0 for unlimited.",
                        "default": 100
                    },
                    "scrapeAllAgencies": {
                        "title": "Scrape all Greek agencies",
                        "type": "boolean",
                        "description": "If enabled, ignores startUrls and scrapes all agencies across Greece using the pre-compiled 'apify_cities_gr_index.json' file.",
                        "default": false
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Select proxies to prevent blocks. Apify residential proxies are highly recommended."
                    }
                }
            },
            "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
                                    }
                                }
                            },
                            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
