{
  "openapi": "3.0.1",
  "info": {
    "title": "Kleinanzeigen.de | $1.5💰 | Scraper (Richest output)[PPE]",
    "description": "💰$1.5 per 1,000 results, extract detailed listings from Kleinanzeigen.de, saving you time by automating data collection for property, product, and service ads. It helps in market analysis, competitor research, and lead generation, providing accurate and timely insights from Germany's platforms.",
    "version": "0.0",
    "x-build-id": "nwf8enzYZ8m6wZBXH"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/memo23~kleinanzeigen-search-scraper-ppe/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-memo23-kleinanzeigen-search-scraper-ppe",
        "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/memo23~kleinanzeigen-search-scraper-ppe/runs": {
      "post": {
        "operationId": "runs-sync-memo23-kleinanzeigen-search-scraper-ppe",
        "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/memo23~kleinanzeigen-search-scraper-ppe/run-sync": {
      "post": {
        "operationId": "run-sync-memo23-kleinanzeigen-search-scraper-ppe",
        "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": "Search or listing URLs",
            "type": "array",
            "description": "Each entry is a kleinanzeigen.de search-result, category, or single-listing URL. The actor paginates search pages automatically. Non-kleinanzeigen.de URLs (ImmoScout, Mobile.de, etc.) are rejected at runtime with a clear log line — this actor scrapes kleinanzeigen.de only. Example: https://www.kleinanzeigen.de/s-aachen/iphone/k0l1921",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "searchQueries": {
            "title": "Search keywords",
            "uniqueItems": true,
            "type": "array",
            "description": "One keyword per entry. Examples: 'iphone 15', 'ebike', '3 zimmer wohnung'. Leave empty if you only paste URLs.",
            "items": {
              "type": "string"
            }
          },
          "category": {
            "title": "Category (keyword searches only)",
            "enum": [
              "",
              "161",
              "173",
              "216",
              "223",
              "211",
              "217",
              "305",
              "306",
              "276",
              "280",
              "220",
              "241",
              "195",
              "199",
              "402",
              "196",
              "275",
              "197",
              "277",
              "207",
              "208",
              "205",
              "203",
              "403",
              "238",
              "198",
              "80",
              "91",
              "93",
              "246",
              "239",
              "89",
              "90",
              "84",
              "86",
              "82",
              "81",
              "88",
              "87",
              "153",
              "224",
              "154",
              "159",
              "160",
              "158",
              "156",
              "157",
              "155",
              "172",
              "226",
              "245",
              "176",
              "408",
              "279",
              "278",
              "228",
              "225",
              "285",
              "407",
              "175",
              "227",
              "405",
              "406",
              "168",
              "130",
              "138",
              "134",
              "136",
              "132",
              "135",
              "139",
              "133",
              "283",
              "243",
              "313",
              "17",
              "236",
              "22",
              "19",
              "258",
              "21",
              "237",
              "25",
              "20",
              "23",
              "18",
              "102",
              "118",
              "111",
              "114",
              "110",
              "105",
              "107",
              "125",
              "123",
              "247",
              "117",
              "109",
              "185",
              "232",
              "248",
              "187",
              "282",
              "240",
              "191",
              "249",
              "233",
              "234",
              "230",
              "250",
              "189",
              "242",
              "73",
              "76",
              "281",
              "284",
              "77",
              "79",
              "78",
              "74",
              "75",
              "231",
              "286",
              "254",
              "287",
              "252",
              "255",
              "257",
              "251",
              "256",
              "297",
              "288",
              "289",
              "290",
              "293",
              "291",
              "292",
              "294",
              "295",
              "296",
              "298",
              "272",
              "273",
              "274",
              "192",
              "235",
              "269",
              "260",
              "265",
              "263",
              "264",
              "262",
              "268",
              "261",
              "271",
              "267",
              "266",
              "270",
              "400",
              "401"
            ],
            "type": "string",
            "description": "Limit keyword searches to one top-level or sub-category. Pick 'Any' to search all categories. The ID matches Kleinanzeigen's category tree; main categories include all their sub-categories.",
            "default": ""
          },
          "location": {
            "title": "Location (keyword searches only)",
            "type": "string",
            "description": "City, district or zip code (e.g. 'Berlin', 'München', 'Hamburg-Altona', '10115'). Leave empty to search all of Germany. If the place can't be resolved, the search runs Germany-wide and the log says so."
          },
          "radiusKm": {
            "title": "Radius around the location (keyword searches only)",
            "enum": [
              "",
              "5",
              "10",
              "20",
              "30",
              "50",
              "100",
              "150",
              "200",
              "500"
            ],
            "type": "string",
            "description": "Distance in kilometers from the location. Ignored if no location is set.",
            "default": ""
          },
          "minPrice": {
            "title": "Min price (€, keyword searches only)",
            "type": "integer",
            "description": "Lower bound in euros. Leave empty for no minimum."
          },
          "maxPrice": {
            "title": "Max price (€, keyword searches only)",
            "type": "integer",
            "description": "Upper bound in euros. Leave empty for no maximum."
          },
          "sortBy": {
            "title": "Sort order (keyword searches only)",
            "enum": [
              "newest",
              "price_asc",
              "distance",
              "recommended"
            ],
            "type": "string",
            "description": "Order in which listings are collected. 'newest' is Kleinanzeigen's default. Kleinanzeigen does not expose price-descending directly, so pick 'price_asc' and reverse downstream if you need the opposite.",
            "default": "newest"
          },
          "sellerType": {
            "title": "Seller type (keyword searches only)",
            "enum": [
              "all",
              "private",
              "commercial"
            ],
            "type": "string",
            "description": "Private sellers (Privat), commercial sellers (Gewerblich), or both.",
            "default": "all"
          },
          "offerType": {
            "title": "Offer type (keyword searches only)",
            "enum": [
              "all",
              "offered",
              "wanted"
            ],
            "type": "string",
            "description": "Items offered for sale (Angebote) or wanted ads (Gesuche).",
            "default": "all"
          },
          "shipping": {
            "title": "Shipping (keyword searches only)",
            "enum": [
              "all",
              "shippable",
              "pickup"
            ],
            "type": "string",
            "description": "Whether the seller ships the item or only offers local pickup.",
            "default": "all"
          },
          "buyNowOnly": {
            "title": "Direkt kaufen only (keyword searches only)",
            "type": "boolean",
            "description": "Only listings that can be bought directly on Kleinanzeigen's buy-now flow.",
            "default": false
          },
          "photosOnly": {
            "title": "With photos only",
            "type": "boolean",
            "description": "Skip listings that don't have at least one picture. Applies to keyword searches and to pasted start URLs.",
            "default": false
          },
          "monitoringMode": {
            "title": "Monitoring mode",
            "type": "boolean",
            "description": "If checked, only emit listings that weren't seen in previous runs of this actor (cross-run deduplication).",
            "default": false
          },
          "maxItems": {
            "title": "Max listings in total",
            "type": "integer",
            "description": "Hard cap across all searches and URLs in this run. Leave as the default to use 100.",
            "default": 100
          },
          "includeListingDetails": {
            "title": "Include full details and seller info",
            "type": "boolean",
            "description": "Adds the full description, item specifications, view count, seller name, seller type, member-since date, and — for commercial sellers — phone number and imprint. One extra request per listing, so slower.",
            "default": false
          },
          "downloadImages": {
            "title": "Download images into the run's key-value store",
            "type": "boolean",
            "description": "Also saves each listing's photos as binaries in the run's key-value store (named below). Off by default to keep storage small.",
            "default": false
          },
          "storeName": {
            "title": "Key-value store name for downloaded images",
            "type": "string",
            "description": "Only used when 'Download images' is on. The store is created on first write.",
            "default": "kleinanzeigen-images"
          },
          "maxConcurrency": {
            "title": "Max concurrency",
            "type": "integer",
            "description": "Maximum number of pages that can be processed at the same time.",
            "default": 10
          },
          "minConcurrency": {
            "title": "Min concurrency",
            "type": "integer",
            "description": "Minimum number of pages that will be processed at the same time.",
            "default": 1
          },
          "maxRequestRetries": {
            "title": "Max request retries",
            "type": "integer",
            "description": "Number of times the crawler retries a failed request before giving up. Keep low; with Max Concurrency 1 a single stubborn URL can eat the whole run.",
            "default": 3
          },
          "proxy": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Leave this empty unless you want to use your own proxies. On a paid Apify plan the actor routes through its own residential proxies at no extra cost to you, and this field is then ignored. On the free plan the actor uses YOUR Apify proxy: it defaults to the Residential group in Germany, because Kleinanzeigen blocks datacenter IPs and the datacenter group returns only 403s. Residential traffic is billed to your own Apify account. To use your own proxies instead, switch Apify Proxy off and paste your proxy URLs. A mistyped field name here is corrected or ignored rather than failing the run."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}