{
  "openapi": "3.0.1",
  "info": {
    "title": "Immowelt Scraper (Real Estate Scraper)",
    "description": "$2/1K 🔥 Fast Immowelt scraper for Germany 🇩🇪 & Austria 🇦🇹! Extract apartments & houses — price, m², rooms, address, agent & images. JSON, CSV, Excel or API in seconds. Paste a search URL & grab thousands of listings instantly. Cheap, fast & DACH-ready ⚡",
    "version": "0.0",
    "x-build-id": "xGiFUigmmag9Wa8RJ"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/ninhothedev~immowelt-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-ninhothedev-immowelt-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/ninhothedev~immowelt-scraper/runs": {
      "post": {
        "operationId": "runs-sync-ninhothedev-immowelt-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/ninhothedev~immowelt-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-ninhothedev-immowelt-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": {
          "city": {
            "title": "City",
            "type": "string",
            "description": "City to search, e.g. Berlin, München, Hamburg, Frankfurt, Köln. Leave empty for a nationwide search across all of Germany.",
            "default": "Berlin"
          },
          "propertyType": {
            "title": "Property Type",
            "enum": [
              "wohnung",
              "haus",
              "grundstueck"
            ],
            "type": "string",
            "description": "Type of property to search for: apartment (Wohnung), house (Haus), or plot (Grundstück).",
            "default": "wohnung"
          },
          "priceType": {
            "title": "Buy or Rent",
            "enum": [
              "kauf",
              "miete"
            ],
            "type": "string",
            "description": "Whether to search for properties for sale (Kaufen) or for rent (Mieten).",
            "default": "kauf"
          },
          "priceMin": {
            "title": "Min. Price (€)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum price in Euro. Leave empty for no lower price limit."
          },
          "priceMax": {
            "title": "Max. Price (€)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum price in Euro. Leave empty for no upper price limit."
          },
          "roomsMin": {
            "title": "Min. Rooms",
            "minimum": 1,
            "type": "integer",
            "description": "Minimum number of rooms. Leave empty for no lower limit."
          },
          "roomsMax": {
            "title": "Max. Rooms",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum number of rooms. Leave empty for no upper limit."
          },
          "areaMin": {
            "title": "Min. Area (m²)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum living area in square meters. Leave empty for no lower limit."
          },
          "areaMax": {
            "title": "Max. Area (m²)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum living area in square meters. Leave empty for no upper limit."
          },
          "yearBuiltMin": {
            "title": "Min. Year Built",
            "minimum": 1800,
            "maximum": 2030,
            "type": "integer",
            "description": "Only return properties built from this year onwards. Leave empty for no restriction."
          },
          "maxPages": {
            "title": "Max. Result Pages",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "Number of search result pages to scrape. Each page contains approximately 20 listings. More pages means more results but longer runtime. Maximum is 50 pages (~1,000 listings).",
            "default": 5
          },
          "enrichDetails": {
            "title": "Enrich with Detail Pages",
            "type": "boolean",
            "description": "If enabled, the scraper visits each individual listing page to extract the full description text and all photos. Significantly increases runtime and proxy usage. Recommended only when you specifically need descriptions or images.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy Configuration",
            "type": "object",
            "description": "Configure Apify Proxy to improve reliability and avoid rate limiting. Residential proxies are strongly recommended for runs above 3 pages."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}