{
  "openapi": "3.0.1",
  "info": {
    "title": "Israel Real Estate Scraper - Yad2 & Madlan Listings",
    "description": "Scrape Israeli apartments, houses and commercial property from Yad2 and Madlan in one run. One row per apartment, price history, price drops, neighborhood scores and new-listings-only monitoring.",
    "version": "0.1",
    "x-build-id": "dqF3zq3Y4cKNaeake"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/leadproof~israel-real-estate/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-leadproof-israel-real-estate",
        "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/leadproof~israel-real-estate/runs": {
      "post": {
        "operationId": "runs-sync-leadproof-israel-real-estate",
        "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/leadproof~israel-real-estate/run-sync": {
      "post": {
        "operationId": "run-sync-leadproof-israel-real-estate",
        "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": {
          "transactionType": {
            "title": "Transaction",
            "enum": [
              "rent",
              "sale",
              "commercial"
            ],
            "type": "string",
            "description": "For real_estate only. Rent is the default. Commercial covers offices, shops and other business property.",
            "default": "rent"
          },
          "sources": {
            "title": "Sources",
            "uniqueItems": true,
            "type": "array",
            "description": "Sites to search. Results from all sites share one output format, each row names its site, and the same apartment listed on several sites is delivered once. Homeless is read in a real Chrome window and is slower; give runs with Homeless at least 1024 MB of memory.",
            "items": {
              "type": "string",
              "enum": [
                "yad2",
                "madlan",
                "homeless"
              ],
              "enumTitles": [
                "Yad2",
                "Madlan",
                "Homeless"
              ]
            },
            "default": [
              "yad2",
              "madlan"
            ]
          },
          "maxResults": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Maximum delivered listings across all sites and searches.",
            "default": 100
          },
          "filters": {
            "title": "Filters",
            "type": "object",
            "description": "Real-estate filters. Every filter is checked on every row; most are also applied by the sites themselves.",
            "properties": {
              "city": {
                "title": "City",
                "type": "string",
                "description": "City or locality name as the sites show it, or several separated by commas (for example חיפה, צפרירים). Small moshavim and kibbutzim work; common English names (Tel Aviv, Jerusalem, Haifa) are accepted.",
                "editor": "textfield"
              },
              "area": {
                "title": "Area",
                "type": "string",
                "description": "Yad2 area name, for example \"אזור בית שמש והסביבה\". Madlan has no areas: with an area and no city, only Yad2 is searched.",
                "editor": "textfield"
              },
              "minPrice": {
                "title": "Minimum price (ILS)",
                "type": "integer",
                "description": "Inclusive minimum price in ILS. Applied by the source and checked again on every row.",
                "minimum": 0
              },
              "maxPrice": {
                "title": "Maximum price (ILS)",
                "type": "integer",
                "description": "Inclusive maximum price in ILS. Applied by the source and checked again on every row.",
                "minimum": 0
              },
              "rooms": {
                "title": "Exact rooms",
                "type": "number",
                "description": "Real estate only. Exact room count, including half rooms.",
                "minimum": 0
              },
              "minRooms": {
                "title": "Minimum rooms",
                "type": "number",
                "description": "Real estate only. Inclusive minimum.",
                "minimum": 0
              },
              "maxRooms": {
                "title": "Maximum rooms",
                "type": "number",
                "description": "Real estate only. Inclusive maximum.",
                "minimum": 0
              },
              "propertyType": {
                "title": "Property type",
                "type": "string",
                "description": "Real estate only. Source property type; apartment and house aliases are supported.",
                "editor": "textfield"
              },
              "minSize": {
                "title": "Minimum size (sqm)",
                "type": "integer",
                "description": "Real estate only. Inclusive minimum.",
                "minimum": 0
              },
              "maxSize": {
                "title": "Maximum size (sqm)",
                "type": "integer",
                "description": "Real estate only. Inclusive maximum.",
                "minimum": 0
              },
              "floor": {
                "title": "Floor",
                "type": "integer",
                "description": "Real estate only. Exact floor; basement values can be negative."
              },
              "parking": {
                "title": "Parking",
                "type": "boolean",
                "description": "True keeps listings with parking. Applied by Madlan; Yad2 listings need Read listing details for it."
              },
              "elevator": {
                "title": "Elevator",
                "type": "boolean",
                "description": "True keeps listings with elevator. Applied by Madlan; Yad2 listings need Read listing details for it."
              },
              "furnished": {
                "title": "Furnished",
                "type": "boolean",
                "description": "Yad2 listings only, with Read listing details."
              },
              "priceDropped": {
                "title": "Price dropped",
                "type": "boolean",
                "description": "Real estate only. True keeps listings whose price was lowered (Yad2 shows the old price; Madlan keeps the price history)."
              }
            },
            "additionalProperties": false
          },
          "includeDetails": {
            "title": "Read listing details",
            "type": "boolean",
            "description": "Reads each Yad2 listing page for description, dates, amenities and broker licence (one extra small request per Yad2 listing). Madlan rows already carry their data.",
            "default": false
          },
          "dedupeAcrossSites": {
            "title": "One row per apartment",
            "type": "boolean",
            "description": "The same apartment on Yad2 and Madlan (same city, street, number, rooms and floor, price within 5%) is delivered once and charged once. Turn off to receive every site listing.",
            "default": true
          },
          "onlyNewListings": {
            "title": "Only new or changed listings",
            "type": "boolean",
            "description": "Remembers every delivered listing and its price in a named key-value store. Later runs with the same search deliver only new listings and price changes, marked in changeType. Ideal for scheduled monitoring.",
            "default": false
          },
          "monitorName": {
            "title": "Monitor name",
            "type": "string",
            "description": "Optional name for the memory of Only new or changed listings, for example haifa-rentals. Without it the memory is keyed to the search itself. Setting it turns the mode on."
          },
          "maxPages": {
            "title": "Maximum pages",
            "minimum": 1,
            "maximum": 20000,
            "type": "integer",
            "description": "Total search-page limit across all searches. Leave empty to size it to Maximum results."
          },
          "maxRequests": {
            "title": "Maximum requests",
            "minimum": 1,
            "maximum": 500000,
            "type": "integer",
            "description": "Hard request budget including details and retries. Leave empty to size it to Maximum results."
          },
          "maxRunSeconds": {
            "title": "Maximum run time (seconds)",
            "minimum": 1,
            "maximum": 86400,
            "type": "integer",
            "description": "Crawler time limit across checkpoint resumes. Leave empty for at least 240 seconds, more for very large runs."
          },
          "maxConcurrency": {
            "title": "Parallel requests",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "Requests in flight at once, each from its own IP. 20 is fast and gentle on the source.",
            "default": 20
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Israeli residential proxy by default. Every request uses a new session (IP); requests flagged by the source are retried from other IPs.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ],
              "apifyProxyCountry": "IL"
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}