# MyHome.ie Scraper (`crawlerbros/myhome-ie-scraper`) Actor

Scrape MyHome.ie - Ireland's leading property portal. Search residential properties for sale and rent across all 26 counties with filters for county, mode, property type, price range, and bedrooms. Returns address, price, size, energy rating, coordinates, agent, and property URL.

- **URL**: https://apify.com/crawlerbros/myhome-ie-scraper.md
- **Developed by:** [Crawler Bros](https://apify.com/crawlerbros) (community)
- **Categories:** Real estate, Automation, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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

## MyHome.ie Scraper

Scrape residential property listings from **MyHome.ie** — Ireland's leading property portal. Search properties **for sale** or **for rent** across all 26 counties of the Republic of Ireland with filters for property type, price, bedrooms, bathrooms, floor size, sale status, auction listings, and locality, returning price, address, BER energy rating, GPS coordinates, estate agent/negotiator contact details, photos, and direct listing URLs. HTTP-only — no login, cookies, or proxy required.

### What this actor does

- **Two modes:** `buy` (for sale) and `rent` (for rent), covering all 26 counties of the Republic of Ireland
- **Rich filters:** property type, price range, bedroom/bathroom count, floor size, sale status, auction-only, free-text keyword search, and locality (town/suburb)
- **Full listing detail:** price, address, BER energy rating, GPS coordinates, estate agent & negotiator contact info, full photo gallery, and listing dates
- **Sort control:** most recent, price low-to-high, or price high-to-low
- **Empty fields are omitted** — a field only appears on a record when the source listing actually has that data

### Output per property

Each item in the dataset represents one property listing. Fields that aren't present on a given listing are omitted rather than returned as `null`/empty.

- `propertyId` — unique MyHome.ie property ID
- `address` — full property address
- `county` — Irish county searched
- `eircode` — Irish postal code, when present in the listing address
- `bedrooms`, `bathrooms` — bedroom / bathroom counts
- `sizeSqM` — floor area in square metres
- `price` — price in euros (asking price for sale, rent amount for rent)
- `priceDisplay` — formatted price string (e.g. `€310,000` or `€1,800 / month`)
- `priceFrequency` — rent payment frequency, `month` or `week` (rent listings only)
- `priceChange`, `priceChangeIsIncrease` — latest price change and direction, when the listing has ever changed price
- `propertyType` — property type (Detached House, Apartment, etc.)
- `propertyStatus` — `ForSale`, `SaleAgreed`, `Sold` (sale listings), or `ToLet` (rentals)
- `energyRating` — BER energy rating (A1–G)
- `latitude`, `longitude` — GPS coordinates
- `agentName`, `agentAddress`, `agentEmail`, `agentUrl`, `agentLogoUrl`, `agentWebsite` — listing estate agency details
- `negotiatorName`, `negotiatorTitle`, `negotiatorPhone`, `negotiatorEmail`, `negotiatorImageUrl` — individual agent/negotiator details, when one is assigned
- `isPrivateLandlord` — `true` if the listing is from a private landlord rather than an agency
- `isNewBuild` — `true` if the listing is a new-build property
- `isBuildToRent` — `true` if part of a purpose-built rental development
- `isPremiumListing` — `true` if a paid featured/premium placement
- `hasVideo` — `true` if a video walkthrough is attached
- `mainPhoto`, `photos[]`, `photoCount` — main photo URL, full gallery of photo URLs, and photo count
- `listedDate` — ISO timestamp of when the listing was first published on MyHome.ie
- `lastRefreshedDate` — ISO timestamp of when the agent most recently refreshed/bumped the listing
- `openViewings[]` — scheduled open-viewing slots (`start`, `end` ISO timestamps and a human-readable `formatted` string), when the agent has one booked
- `propertyUrl` — direct link to the MyHome.ie listing
- `scrapedAt` — ISO timestamp of when data was scraped

### Input

| Field | Type | Default | Description |
|---|---|---|---|
| `mode` | string | `buy` | `buy` for sale listings, `rent` for rental listings |
| `area` | string | `Dublin` | Irish county to search (all 26 counties supported) |
| `propertyType` | string | Any | Filter by property type (Apartment, Detached House, etc.). Leave as Any for all types |
| `minPrice` | integer | – | Minimum price in euros (minimum monthly rent for `rent`) |
| `maxPrice` | integer | – | Maximum price in euros (maximum monthly rent for `rent`) |
| `minBeds` | integer | – | Minimum number of bedrooms |
| `maxBeds` | integer | – | Maximum number of bedrooms |
| `minBathrooms` | integer | – | Minimum number of bathrooms |
| `maxBathrooms` | integer | – | Maximum number of bathrooms |
| `minSizeSqM` | integer | – | Minimum floor area in square metres |
| `maxSizeSqM` | integer | – | Maximum floor area in square metres |
| `keywords` | string | – | Free-text search across listing descriptions (e.g. "garden", "renovated") |
| `locality` | string | – | Narrow the search to a specific town/suburb/area within the county (e.g. "Balbriggan", "Rathmines") |
| `saleStatus` | string | `forSale` | `forSale` / `saleAgreed` / `sold` (mode=`buy` only; ignored for `rent`) |
| `sortOrder` | string | `mostRecent` | `mostRecent` / `priceLowToHigh` / `priceHighToLow` |
| `auctionOnly` | boolean | `false` | Only return properties listed for public auction (mode=`buy` only) |
| `maxItems` | integer | `20` | Max number of results (1–500) |

#### Example: Dublin houses for sale within budget

```json
{
  "mode": "buy",
  "area": "Dublin",
  "propertyType": "Detached House",
  "minPrice": 300000,
  "maxPrice": 800000,
  "minBeds": 3,
  "maxItems": 50
}
```

#### Example: apartments for rent in Cork

```json
{
  "mode": "rent",
  "area": "Cork",
  "propertyType": "Apartment",
  "maxPrice": 2000,
  "minBeds": 1,
  "maxItems": 30
}
```

#### Example: recently sold properties in a Dublin suburb

```json
{
  "mode": "buy",
  "area": "Dublin",
  "locality": "Rathmines",
  "saleStatus": "sold",
  "sortOrder": "mostRecent",
  "maxItems": 40
}
```

#### Example: auction listings with a keyword filter

```json
{
  "mode": "buy",
  "area": "Galway",
  "auctionOnly": true,
  "keywords": "renovation",
  "maxItems": 25
}
```

### Use cases

- **Property portals & comparison sites** — aggregate MyHome.ie listings alongside other Irish portals for a unified search experience
- **Real estate investors** — screen properties by price, beds/baths, and locality across Irish counties
- **Relocation & letting agencies** — track available rentals by county and locality for clients moving to or within Ireland
- **PropTech & market research** — monitor asking-price trends, price changes, and new-build activity across the Irish housing market
- **Buyer's agents** — build shortlists filtered by budget, property type, and sale status
- **Academic & economic research** — bulk-export listing data to study Irish housing market dynamics

### FAQ

**Do I need to provide proxies or cookies?**
No. This actor works out of the box with no proxies, cookies, or login required.

**How many listings can I get per run?**
Use `maxItems` to control the count, from 1 up to 500 per run. MyHome.ie has thousands of live listings across Ireland.

**Which counties does this actor cover?**
All 26 counties of the Republic of Ireland: Dublin, Cork, Galway, Limerick, Waterford, Wicklow, Kildare, Meath, Louth, Tipperary, Kerry, Clare, Wexford, Kilkenny, Mayo, Roscommon, Sligo, Donegal, Cavan, Monaghan, Laois, Offaly, Westmeath, Longford, Leitrim, and Carlow. Northern Ireland is not covered by MyHome.ie.

**Does every listing have an Eircode?**
No — MyHome.ie doesn't expose a dedicated Eircode field for every listing. When the agent has included it directly in the listing address, it's extracted and returned; otherwise the field is omitted rather than guessed.

**Do `sold` listings show a price?**
Usually not — most Sold listings on MyHome.ie display the sale as closed without publishing the final price, so `price`/`priceDisplay` are omitted for those records. A minority of Sold listings that originally went to auction still show their pre-sale advised minimum value (AMV), in which case `price`/`priceDisplay` are populated normally. Every other field (address, beds, size, agent, URL) is always returned.

**What does the auction-only filter return?**
Only properties MyHome.ie has flagged as public auction listings. Auction listings are priced as an Advised Minimum Value (AMV) rather than a fixed asking price, which is reflected in `price`/`priceDisplay`. This filter only applies to `mode=buy` — MyHome.ie doesn't have rental auctions.

**How does the `locality` filter work?**
Type a town, suburb, or area name (e.g. "Balbriggan", "Rathmines", "Salthill") and it's matched against MyHome.ie's own list of localities for the selected county, case- and accent-insensitively. If your input doesn't confidently match a single locality, the filter is skipped and results cover the whole county instead — you'll never get zero results just from a locality-name typo.

**Can I filter by minimum BER energy rating?**
Not directly as an input filter — MyHome.ie doesn't expose a reliable, documented way to filter by BER band externally. Every listing's own `energyRating` field is still returned, so you can filter A1–G ratings post-hoc in your exported dataset.

**Is this actor affiliated with MyHome.ie?**
No. This is an independent third-party actor that reads MyHome.ie's public listing search results. It is not affiliated with, endorsed by, or sponsored by MyHome.ie.

# Actor input Schema

## `mode` (type: `string`):

Whether to search for properties for sale or rent.

## `area` (type: `string`):

Irish county to search in. MyHome.ie covers the Republic of Ireland's 26 counties.

## `propertyType` (type: `string`):

Filter by property type. Leave as "Any" to include all types. Note: for rent mode only Apartment, Terraced House, Semi-Detached House, Detached House, Bungalow, Studio, and Penthouse are supported — other types are ignored when mode=rent.

## `minPrice` (type: `integer`):

Minimum price in euros. For rent mode this is the minimum monthly rent. Leave unset for no minimum.

## `maxPrice` (type: `integer`):

Maximum price in euros. For rent mode this is the maximum monthly rent. Leave unset for no maximum.

## `minBeds` (type: `integer`):

Minimum number of bedrooms. Leave unset for no minimum.

## `maxBeds` (type: `integer`):

Maximum number of bedrooms. Leave unset for no maximum.

## `minBathrooms` (type: `integer`):

Minimum number of bathrooms. Leave unset for no minimum.

## `maxBathrooms` (type: `integer`):

Maximum number of bathrooms. Leave unset for no maximum.

## `minSizeSqM` (type: `integer`):

Minimum property floor area in square metres. Leave unset for no minimum.

## `maxSizeSqM` (type: `integer`):

Maximum property floor area in square metres. Leave unset for no maximum.

## `keywords` (type: `string`):

Optional free-text search across listing descriptions (e.g. "garden", "sea view", "renovated"). Leave blank to skip.

## `locality` (type: `string`):

Optional: narrow the search to a specific town, suburb, or area within the selected county (e.g. "Balbriggan", "Rathmines", "Dun Laoghaire", "Salthill"). Matched against MyHome.ie's own locality list for that county (case- and accent-insensitive). If no confident match is found, this filter is ignored and results cover the whole county instead. Leave blank to search the entire county.

## `saleStatus` (type: `string`):

Only applies when mode="buy". Filter sale listings by status. Rent listings are always shown as available to let (no equivalent filter exists for rent on MyHome.ie).

## `sortOrder` (type: `string`):

Order in which listings are returned.

## `auctionOnly` (type: `boolean`):

Only applies when mode="buy". When enabled, returns only properties listed for public auction (advised minimum value / "AMV" pricing) instead of all sale listings. Ignored for mode="rent" (MyHome.ie has no rental auctions).

## `maxItems` (type: `integer`):

Maximum number of listings to return (1–500).

## Actor input object example

```json
{
  "mode": "buy",
  "area": "Dublin",
  "propertyType": "",
  "saleStatus": "forSale",
  "sortOrder": "mostRecent",
  "auctionOnly": false,
  "maxItems": 20
}
```

# Actor output Schema

## `listings` (type: `string`):

Dataset containing all scraped MyHome.ie property listings.

# 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 = {
    "mode": "buy",
    "area": "Dublin",
    "propertyType": "",
    "saleStatus": "forSale",
    "sortOrder": "mostRecent",
    "auctionOnly": false,
    "maxItems": 20
};

// Run the Actor and wait for it to finish
const run = await client.actor("crawlerbros/myhome-ie-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 = {
    "mode": "buy",
    "area": "Dublin",
    "propertyType": "",
    "saleStatus": "forSale",
    "sortOrder": "mostRecent",
    "auctionOnly": False,
    "maxItems": 20,
}

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

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

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

```

## CLI example

```bash
echo '{
  "mode": "buy",
  "area": "Dublin",
  "propertyType": "",
  "saleStatus": "forSale",
  "sortOrder": "mostRecent",
  "auctionOnly": false,
  "maxItems": 20
}' |
apify call crawlerbros/myhome-ie-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,crawlerbros/myhome-ie-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/DzaFTVibqJUSurX6r/builds/jonwREdWvMWi20mkp/openapi.json
