{
  "openapi": "3.0.1",
  "info": {
    "title": "Daft.ie Property Scraper",
    "description": "Scrapes property listings from Daft.ie including residential, rental, commercial, and new homes across Ireland.",
    "version": "1.0",
    "x-build-id": "HjMoVZ2fStqL5R0Di"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/rigelbytes~daft-ie-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-rigelbytes-daft-ie-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/rigelbytes~daft-ie-scraper/runs": {
      "post": {
        "operationId": "runs-sync-rigelbytes-daft-ie-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/rigelbytes~daft-ie-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-rigelbytes-daft-ie-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": {
          "searchUrls": {
            "title": "Search URLs",
            "type": "array",
            "description": "Paste one or more Daft.ie search result URLs. Each URL is converted into the equivalent API search payload. When provided, manual filters below are ignored for that URL.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "section": {
            "title": "Property Section",
            "enum": [
              "residential-for-sale",
              "residential-to-rent",
              "commercial-for-sale",
              "commercial-to-rent",
              "sharing",
              "student-accommodation-to-share",
              "new-homes"
            ],
            "type": "string",
            "description": "Daft.ie listing section to scrape. Ignored when Search URLs are provided.",
            "default": "residential-for-sale"
          },
          "searchArea": {
            "title": "Search Area",
            "type": "string",
            "description": "Location to search in (e.g. 'Dublin 8', 'dublin-city', 'Galway'). Resolved via Daft autocomplete/areas API into a geo filter. Leave empty for all Ireland.",
            "default": ""
          },
          "searchQuery": {
            "title": "Keyword / Address Search",
            "type": "string",
            "description": "Free-text keyword or address search sent as the API `terms` field. Separate from Search Area.",
            "default": ""
          },
          "distanceRadius": {
            "title": "Distance From Area",
            "enum": [
              "",
              "_1000",
              "_3000",
              "_5000",
              "_10000",
              "_20000"
            ],
            "type": "string",
            "description": "Search radius around the selected area.",
            "default": ""
          },
          "salePriceFrom": {
            "title": "Sale Price From",
            "type": "string",
            "description": "Minimum sale price (e.g. '100000')",
            "default": ""
          },
          "salePriceTo": {
            "title": "Sale Price To",
            "type": "string",
            "description": "Maximum sale price (e.g. '500000')",
            "default": ""
          },
          "rentalPriceFrom": {
            "title": "Rental Price From",
            "type": "string",
            "description": "Minimum rental price per month (e.g. '1000')",
            "default": ""
          },
          "rentalPriceTo": {
            "title": "Rental Price To",
            "type": "string",
            "description": "Maximum rental price per month (e.g. '3000')",
            "default": ""
          },
          "numBedsFrom": {
            "title": "Bedrooms From",
            "type": "string",
            "description": "Minimum number of bedrooms",
            "default": ""
          },
          "numBedsTo": {
            "title": "Bedrooms To",
            "type": "string",
            "description": "Maximum number of bedrooms",
            "default": ""
          },
          "numBathsFrom": {
            "title": "Bathrooms From",
            "type": "string",
            "description": "Minimum number of bathrooms",
            "default": ""
          },
          "numBathsTo": {
            "title": "Bathrooms To",
            "type": "string",
            "description": "Maximum number of bathrooms",
            "default": ""
          },
          "floorSizeFrom": {
            "title": "Min Floor Area (m²)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum floor area in square metres",
            "default": 0
          },
          "floorSizeTo": {
            "title": "Max Floor Area (m²)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum floor area in square metres",
            "default": 0
          },
          "propertyTypes": {
            "title": "Property Types",
            "type": "array",
            "description": "Filter by property type. Leave empty for all types.",
            "items": {
              "type": "string",
              "enum": [
                "houses",
                "detached-houses",
                "semi-detached-houses",
                "terraced-houses",
                "end-of-terrace-houses",
                "townhouses",
                "apartments",
                "studio-apartments",
                "duplexes",
                "bungalows",
                "sites",
                "office-spaces",
                "retail-units",
                "industrial-units",
                "industrial-sites",
                "restaurants-bars-hotels",
                "commercial-sites",
                "agricultural-land",
                "development-land",
                "investment-properties"
              ],
              "enumTitles": [
                "House",
                "Detached House",
                "Semi-Detached House",
                "Terraced House",
                "End of Terrace House",
                "Townhouse",
                "Apartment",
                "Studio Apartment",
                "Duplex",
                "Bungalow",
                "Site",
                "Office Space",
                "Retail Unit",
                "Industrial Unit",
                "Industrial Site",
                "Restaurant / Bar / Hotel",
                "Commercial Site",
                "Agricultural Land",
                "Development Land",
                "Investment Property"
              ]
            },
            "default": []
          },
          "facilities": {
            "title": "Facilities",
            "type": "array",
            "description": "Required facilities (all selected facilities must be present).",
            "items": {
              "type": "string",
              "enum": [
                "alarm",
                "gas-fired-central-heating",
                "oil-fired-central-heating",
                "parking",
                "wheelchair-access",
                "wired-for-cable-television",
                "cable-television",
                "dishwasher",
                "garden-patio-balcony",
                "central-heating",
                "internet",
                "microwave",
                "pets-allowed",
                "smoking",
                "serviced-property",
                "dryer",
                "washing-machine",
                "ensuite",
                "cat-5-cabling",
                "cat-6-data-cabling",
                "kitchen-area",
                "meeting-rooms",
                "reception",
                "phone-lines",
                "toilets"
              ],
              "enumTitles": [
                "Alarm",
                "Gas Fired Central Heating",
                "Oil Fired Central Heating",
                "Parking",
                "Wheelchair Access",
                "Wired for Cable TV",
                "Cable Television",
                "Dishwasher",
                "Garden / Patio / Balcony",
                "Central Heating",
                "Internet",
                "Microwave",
                "Pets Allowed",
                "Smoking",
                "Serviced Property",
                "Dryer",
                "Washing Machine",
                "Ensuite",
                "Cat 5 Cabling",
                "Cat 6 Data Cabling",
                "Kitchen Area",
                "Meeting Rooms",
                "Reception",
                "Phone Lines",
                "Toilets"
              ]
            },
            "default": []
          },
          "saleType": {
            "title": "Sale Type",
            "enum": [
              "",
              "auction"
            ],
            "type": "string",
            "description": "Filter by sale type.",
            "default": ""
          },
          "berFrom": {
            "title": "BER Rating From",
            "enum": [
              "",
              "A1",
              "A2",
              "A3",
              "B1",
              "B2",
              "B3",
              "C1",
              "C2",
              "C3",
              "D1",
              "D2",
              "E1",
              "E2",
              "F",
              "G",
              "Exempt (SI666)"
            ],
            "type": "string",
            "description": "Minimum BER rating.",
            "default": ""
          },
          "berTo": {
            "title": "BER Rating To",
            "enum": [
              "",
              "A1",
              "A2",
              "A3",
              "B1",
              "B2",
              "B3",
              "C1",
              "C2",
              "C3",
              "D1",
              "D2",
              "E1",
              "E2",
              "F",
              "G",
              "Exempt (SI666)"
            ],
            "type": "string",
            "description": "Maximum BER rating.",
            "default": ""
          },
          "onlineOffersOnly": {
            "title": "Online Offers Only",
            "type": "boolean",
            "description": "Only return listings that accept online offers.",
            "default": false
          },
          "mediaTypes": {
            "title": "Media Types",
            "type": "array",
            "description": "Filter by listing media.",
            "items": {
              "type": "string",
              "enum": [
                "video",
                "virtual-tour"
              ],
              "enumTitles": [
                "Ads with video",
                "Ads with virtual tour"
              ]
            },
            "default": []
          },
          "availability": {
            "title": "Availability",
            "enum": [
              "published",
              "sale-agreed"
            ],
            "type": "string",
            "description": "Listing availability state.",
            "default": "published"
          },
          "addedSince": {
            "title": "Added In Last",
            "enum": [
              "",
              "now-1d/d",
              "now-3d/d",
              "now-7d/d",
              "now-14d/d",
              "now-30d/d"
            ],
            "type": "string",
            "description": "Only include listings published within the selected period.",
            "default": ""
          },
          "sortBy": {
            "title": "Sort By",
            "enum": [
              "best-match",
              "priceAsc",
              "priceDesc",
              "publishDateDesc"
            ],
            "type": "string",
            "description": "Sort order for search results.",
            "default": "best-match"
          },
          "maxItems": {
            "title": "Max Items",
            "minimum": 0,
            "type": "integer",
            "description": "Max listings to scrape (0 = unlimited). Applied together with Max Pages — whichever limit is hit first stops the crawl.",
            "default": 10
          },
          "maxPages": {
            "title": "Max Pages",
            "minimum": 0,
            "type": "integer",
            "description": "Max pages (20 listings each) to scrape (0 = unlimited). Applied together with Max Items — whichever limit is hit first stops the crawl.",
            "default": 0
          },
          "maxConcurrency": {
            "title": "Max Concurrent Requests",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Maximum number of parallel Daft API requests. Pages are fetched concurrently after the first page. Use 2-3 for safe scraping; increase cautiously if you are not seeing rate limits.",
            "default": 3
          },
          "proxyConfiguration": {
            "title": "Proxy Configuration",
            "type": "object",
            "description": "Proxy settings for scraping",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ]
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}