{
  "openapi": "3.0.1",
  "info": {
    "title": "ImmobilienScout24 Scraper - Germany Real Estate",
    "description": "Scrape Germany property listings from immobilienscout24.de search URLs: price, price per m2, rooms, living space, full address, energy class, agent and contact phone, images and 50+ fields. Sale and rental, apartments and houses. Bypasses anti-bot protection. Paste search URLs or import a file.",
    "version": "0.1",
    "x-build-id": "7rpi15yoa8MBBJu1H"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapesage~immobilienscout24-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapesage-immobilienscout24-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/scrapesage~immobilienscout24-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapesage-immobilienscout24-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/scrapesage~immobilienscout24-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapesage-immobilienscout24-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": {
          "startUrls": {
            "title": "immobilienscout24.de search URLs",
            "type": "array",
            "description": "immobilienscout24.de search URLs, one per line. Build a search on immobilienscout24.de with your filters (city, price, rooms...), then paste the URL from the address bar. Buy and rent, apartments and houses all work. <b>Leave empty and the run returns a small free sample.</b>",
            "items": {
              "type": "string"
            }
          },
          "startUrlsFromFile": {
            "title": "Import URLs from a file",
            "type": "string",
            "description": "Bulk-load immobilienscout24.de URLs. Either <b>paste the whole list</b> (one per line), or give <b>a single link</b> to a public <code>.txt</code>/<code>.csv</code>, a Google Sheet/Drive link, or an Apify key-value-store record. A file that cannot be read says so and charges nothing."
          },
          "maxPagesPerUrl": {
            "title": "Max pages per URL",
            "minimum": 1,
            "type": "integer",
            "description": "How many result pages to follow for each start URL (20 listings per page).",
            "default": 10
          },
          "maxItems": {
            "title": "Max listings (total)",
            "minimum": 1,
            "type": "integer",
            "description": "Overall cap across all URLs. You are only charged for listings actually saved.",
            "default": 1000
          },
          "outputFields": {
            "title": "Output fields (leave empty for all)",
            "type": "array",
            "description": "Pick the fields you want and every record is trimmed to exactly those - handy for lean CSV/Sheets exports.",
            "items": {
              "type": "string",
              "enum": [
                "type",
                "id",
                "url",
                "title",
                "propertyType",
                "marketingType",
                "price",
                "currency",
                "priceIntervalType",
                "pricePerSqm",
                "totalRent",
                "livingSpaceSqm",
                "plotAreaSqm",
                "rooms",
                "street",
                "houseNumber",
                "postcode",
                "city",
                "quarter",
                "fullAddress",
                "latitude",
                "longitude",
                "energyEfficiencyClass",
                "hasEnergyCertificate",
                "constructionYear",
                "builtInKitchen",
                "balcony",
                "garden",
                "lift",
                "guestToilet",
                "cellar",
                "barrierFree",
                "commissionFree",
                "privateOffer",
                "agentCompany",
                "contactName",
                "contactPhone",
                "tags",
                "images",
                "image",
                "hasFloorplan",
                "hasVideo",
                "listingTier",
                "isNewBuildProject",
                "projectName",
                "projectUrl",
                "groupedCount",
                "isOnlyOnIs24",
                "isNewListing",
                "publishedAt",
                "modifiedAt",
                "attributes",
                "sourceUrl",
                "scrapedAt"
              ],
              "enumTitles": [
                "Record type (type)",
                "Listing id (id)",
                "Listing URL (url)",
                "Title (title)",
                "Property type (propertyType)",
                "Buy or rent (marketingType)",
                "Price / base rent (price)",
                "Currency (currency)",
                "Price interval (priceIntervalType)",
                "Price per m2 (pricePerSqm)",
                "Total rent incl. costs (totalRent)",
                "Living space m2 (livingSpaceSqm)",
                "Plot area m2 (plotAreaSqm)",
                "Rooms (rooms)",
                "Street (street)",
                "House number (houseNumber)",
                "Postcode (postcode)",
                "City (city)",
                "Quarter / district (quarter)",
                "Full address (fullAddress)",
                "Latitude (latitude)",
                "Longitude (longitude)",
                "Energy class (energyEfficiencyClass)",
                "Energy certificate (hasEnergyCertificate)",
                "Construction year (constructionYear)",
                "Built-in kitchen (builtInKitchen)",
                "Balcony (balcony)",
                "Garden (garden)",
                "Lift (lift)",
                "Guest toilet (guestToilet)",
                "Cellar (cellar)",
                "Barrier-free (barrierFree)",
                "No buyer commission (commissionFree)",
                "Private offer (privateOffer)",
                "Agent / company (agentCompany)",
                "Contact name (contactName)",
                "Contact phone (contactPhone)",
                "Badges (tags)",
                "Image URLs (images)",
                "Main image (image)",
                "Has floorplan (hasFloorplan)",
                "Has video (hasVideo)",
                "Listing tier (listingTier)",
                "New-build project (isNewBuildProject)",
                "Project name (projectName)",
                "Project URL (projectUrl)",
                "Grouped variants (groupedCount)",
                "Only on IS24 (isOnlyOnIs24)",
                "New listing flag (isNewListing)",
                "Published at (publishedAt)",
                "Modified at (modifiedAt)",
                "Card attributes raw (attributes)",
                "Source URL (sourceUrl)",
                "Scraped at (scrapedAt)"
              ]
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}