{
  "openapi": "3.0.1",
  "info": {
    "title": "Ingatlan Scraper -- Hungarian Real Estate Listings",
    "description": "Scrape real estate listings from ingatlan.com -- Hungary's #1 property portal. Get prices, addresses, property details, photos, room counts, and agency info for properties for sale or rent. No login or cookies required.",
    "version": "0.1",
    "x-build-id": "bBnFzvzByywm0g8QA"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/studio-amba~ingatlan-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-studio-amba-ingatlan-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/studio-amba~ingatlan-scraper/runs": {
      "post": {
        "operationId": "runs-sync-studio-amba-ingatlan-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/studio-amba~ingatlan-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-studio-amba-ingatlan-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": {
          "listingType": {
            "title": "Listing Type",
            "enum": [
              "elado",
              "kiado"
            ],
            "type": "string",
            "description": "Filter by sale (elado) or rent (kiado).",
            "default": "elado"
          },
          "location": {
            "title": "Location",
            "type": "string",
            "description": "City or district name in Hungarian (e.g. 'budapest', 'debrecen', 'szeged', 'budapest+XIII.+kerulet'). Leave empty for all Hungary.",
            "default": ""
          },
          "propertyType": {
            "title": "Property Type",
            "enum": [
              "",
              "lakas",
              "haz",
              "telek",
              "garázs",
              "iroda",
              "uzlethelyiseg"
            ],
            "type": "string",
            "description": "Filter by property type.",
            "default": ""
          },
          "minPrice": {
            "title": "Minimum Price (HUF)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum price in Hungarian Forint. For rent (kiado) this is the monthly rent. Ingatlan.com rounds this to whole millions for sale and whole thousands for rent."
          },
          "maxPrice": {
            "title": "Maximum Price (HUF)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum price in Hungarian Forint. For rent (kiado) this is the monthly rent."
          },
          "minSize": {
            "title": "Minimum Size (m2)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum floor area in square meters. Setting only a minimum searches from that size upward."
          },
          "maxSize": {
            "title": "Maximum Size (m2)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum floor area in square meters. Setting only a maximum searches from 0 up to that size."
          },
          "minRooms": {
            "title": "Minimum Rooms",
            "minimum": 0,
            "type": "number",
            "description": "Minimum number of rooms. Ingatlan.com counts a half-room toward the total, so a '3 + 1 half' listing matches a minimum of 4; the output reports rooms and halfRooms separately."
          },
          "maxRooms": {
            "title": "Maximum Rooms",
            "minimum": 0,
            "type": "number",
            "description": "Maximum number of rooms."
          },
          "maxResults": {
            "title": "Max Results",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Maximum number of listings to return.",
            "default": 100
          },
          "fetchDetails": {
            "title": "Fetch detail pages (slow, one extra request per listing)",
            "type": "boolean",
            "description": "OFF by default. When off, each listing carries what the search page shows (price, address, city, district, size, rooms, balcony, image). Turn it on to also fill landSurface, floor, condition, heating, energyRating, parking, agencyName and description, which ingatlan.com only publishes on the listing's own page. This costs ONE extra page fetch per listing and adds roughly 15-30 seconds per listing (three are fetched at a time), so a 50-listing run takes 12-25 minutes. Use maxDetails to cap it.",
            "default": false
          },
          "maxDetails": {
            "title": "Max detail pages per run",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "Hard cap on how many listings get their detail page fetched when fetchDetails is on. Listings past the cap are still returned, with the eight detail-only fields null.",
            "default": 50
          },
          "brightDataApiKey": {
            "title": "Bright Data API key",
            "type": "string",
            "description": "Optional. Leave empty -- the actor supplies its own key. Only needed if you want the run to go through your own Bright Data account."
          },
          "proxyConfiguration": {
            "title": "Proxy Configuration",
            "type": "object",
            "description": "Kept for backwards compatibility and no longer used. Ingatlan.com refuses Apify proxy exits on every page except the first search page, so this actor fetches through Bright Data Web Unlocker instead. Anything set here is ignored.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ],
              "apifyProxyCountry": "HU"
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}