Kleinanzeigen $1💰 URL Search | Keyword Filtering | Rich Output avatar

Kleinanzeigen $1💰 URL Search | Keyword Filtering | Rich Output

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Kleinanzeigen $1💰 URL Search | Keyword Filtering | Rich Output

Kleinanzeigen $1💰 URL Search | Keyword Filtering | Rich Output

From $1/1K. Scrape Kleinanzeigen.de ads by keyword, category, location, price, seller type, or search URL. Extract descriptions, photos, attributes, seller details, posted dates, category paths, and imprint data. Returns flat JSON records ready for spreadsheets or databases.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

AbotAPI

AbotAPI

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Kleinanzeigen.de Scraper

Scrape classified ads from Kleinanzeigen.de (formerly eBay Kleinanzeigen) by keyword, category, location, price, offer type and seller type, or just paste ready-made search URLs. The scraper walks result pages automatically and, when you want it, opens each ad's detail page to pull the full description, every photo, the attribute list, the seller profile, the posted date, the category path and the commercial-seller imprint. Output is one flat JSON record per ad, ready for spreadsheets, dashboards or databases.

Why this scraper

  • Two ways in: a filter builder (keyword, category id, location with radius, min/max price, offered vs wanted, private vs commercial, sort) and a paste-URLs mode that accepts any Kleinanzeigen.de search or category URL.
  • Automatic forward pagination, 27 ads per page, up to the site's page limit.
  • Up to ~35 fields per ad including full description, all photo URLs, attribute key/value pairs, category path, seller name/type/registration date, and the commercial-seller legal imprint (name, address, email) where the seller is a registered trader.
  • Fast to run on Residential proxy (the default), or on Datacenter for free-tier users.
  • Lean toggle: turn off detail fetching for a quicker, cheaper run that still returns ~14 fields straight from the search results.
  • Deduplicates promoted listings that repeat across pages, so you do not pay for the same ad twice.

Data you get

Sample shape, values are illustrative placeholders, not from a live ad.

FieldExample
adId"3400000001"
url"https://www.kleinanzeigen.de/s-anzeige/sample-listing-title/3400000001-217-0001"
title"Sample Listing Title"
descriptionShort"First sentence of the ad as shown in the result list..."
descriptionFull"Full ad description text appears here when fetchDetails = true."
price"1.500 € VB"
priceAmount1500
priceType"NEGOTIABLE"
currency"EUR"
locationText"10115 Berlin - Mitte"
postalCode"10115"
regionName"Berlin"
cityName"Mitte"
categoryId"217"
categoryName"Fahrräder & Zubehör"
categoryPath"Auto, Rad & Boot > Fahrräder & Zubehör"
postedDate"2026-01-01"
postedDateText"Heute, 09:00"
viewCountnull
imageCount5
thumbnailUrl"https://img.kleinanzeigen.de/api/v1/prod-ads/images/00/00000000-0000-0000-0000-000000000000?rule=$_59.AUTO"
imageUrls["https://img.kleinanzeigen.de/api/v1/prod-ads/images/00/00000000-0000-0000-0000-000000000000?rule=$_59.AUTO"]
attributes{ "Art": "Herren", "Typ": "Elektrofahrräder", "Zustand": "Sehr Gut" }
attributesRaw[{ "name": "Art", "value": "Herren" }]
isProfalse
isShopfalse
isTopAdfalse
isSoldfalse
adType"OFFERED"
tags["Versand möglich"]
sellerId"100000000"
sellerName"Seller Name"
sellerType"PRIVATE"
sellerUrl"https://www.kleinanzeigen.de/s-bestandsliste.html?userId=100000000"
sellerActiveSince"2026-01-01"
sellerOtherAdsCount4
imprint{ "raw": "Sample Trader\nEinzelunternehmer\n10115 Berlin, Sample Str. 1\ntrader@example.com", "lines": ["Sample Trader", "Einzelunternehmer", "10115 Berlin, Sample Str. 1", "trader@example.com"], "email": "trader@example.com" }
searchUrl"https://www.kleinanzeigen.de/s-fahrrad/k0"
scrapedAt"2026-01-01T00:00:00.000Z"

Fields that only come from the detail page (descriptionFull, categoryName, categoryPath, imageUrls beyond the first, attributes, seller*, imprint, postedDate) are null or empty when fetchDetails is false.

How to use

Search by keyword:

{
"mode": "search",
"keyword": "fahrrad",
"maxPages": 3,
"maxListings": 50,
"fetchDetails": true
}

Search a category in a city with a radius and a price range, newest first:

{
"mode": "search",
"keyword": "",
"categoryId": "217",
"location": "Berlin",
"radiusKm": 20,
"minPrice": 100,
"maxPrice": 800,
"sortBy": "date",
"maxPages": 5,
"maxListings": 100,
"fetchDetails": true
}

Only private sellers, wanted ads:

{
"mode": "search",
"keyword": "sofa",
"offerType": "gesuche",
"sellerType": "privat",
"maxPages": 2,
"fetchDetails": false
}

Paste several search URLs (filter fields are ignored in this mode):

{
"mode": "url",
"urls": [
"https://www.kleinanzeigen.de/s-fahrrad/k0",
"https://www.kleinanzeigen.de/s-berlin/sofa/k0l3331"
],
"maxPages": 3,
"maxListings": 80,
"fetchDetails": true
}

Input parameters

ParameterTypeDefaultDescription
modestringsearchsearch to build URLs from the filters below, url to paste your own search URLs.
keywordstringfahrradFree-text query. Leave empty to browse a whole category.
categoryIdstring(empty)Numeric Kleinanzeigen category id, e.g. 217. Find it in any category URL: .../c217 -> 217.
locationstring(empty)City name or German postal code. Resolved automatically to the matching location id.
radiusKminteger0Search radius in km around the location. Ignored when no location is set.
minPriceinteger(empty)Lowest price to include.
maxPriceinteger(empty)Highest price to include.
offerTypestringanyangebote for offered ads, gesuche for wanted ads, any for both.
sellerTypestringanyprivat for private sellers, gewerblich for commercial sellers/shops, any for both.
sortBystringrelevancerelevance, date (newest), price-asc, price-desc, distance. Promoted ads can appear first regardless of sort.
urlsarray of strings["https://www.kleinanzeigen.de/s-fahrrad/k0"]Search/category URLs to scrape (used only when mode = url).
maxPagesinteger1Result pages to walk per search/URL (27 ads per page).
maxListingsinteger0Stop after this many ads across all searches. 0 = unlimited (still bounded by maxPages).
fetchDetailsbooleantrueOpen each ad's detail page for the full description, all photos, attributes, seller info and imprint. Turn off for a faster, cheaper run.
proxyobjectResidential, country DEApify Proxy. Residential is the default for the smoothest runs. On the free plan, switch to Datacenter (expect occasional retries).

Output example

Sample shape, values are illustrative placeholders.

{
"adId": "3400000001",
"url": "https://www.kleinanzeigen.de/s-anzeige/sample-listing-title/3400000001-217-0001",
"title": "Sample Listing Title",
"descriptionShort": "First sentence of the ad as shown in the result list...",
"descriptionFull": "Full ad description text appears here when fetchDetails = true.",
"price": "1.500 € VB",
"priceAmount": 1500,
"priceType": "NEGOTIABLE",
"currency": "EUR",
"locationText": "10115 Berlin - Mitte",
"postalCode": "10115",
"regionName": "Berlin",
"cityName": "Mitte",
"categoryId": "217",
"categoryName": "Fahrräder & Zubehör",
"categoryPath": "Auto, Rad & Boot > Fahrräder & Zubehör",
"postedDate": "2026-01-01",
"postedDateText": "Heute, 09:00",
"viewCount": null,
"imageCount": 1,
"thumbnailUrl": "https://img.kleinanzeigen.de/api/v1/prod-ads/images/00/00000000-0000-0000-0000-000000000000?rule=$_59.AUTO",
"imageUrls": ["https://img.kleinanzeigen.de/api/v1/prod-ads/images/00/00000000-0000-0000-0000-000000000000?rule=$_59.AUTO"],
"attributes": { "Art": "Herren", "Typ": "Elektrofahrräder", "Zustand": "Sehr Gut" },
"attributesRaw": [{ "name": "Art", "value": "Herren" }, { "name": "Typ", "value": "Elektrofahrräder" }, { "name": "Zustand", "value": "Sehr Gut" }],
"isPro": false,
"isShop": false,
"isTopAd": false,
"isSold": false,
"adType": "OFFERED",
"tags": ["Versand möglich"],
"sellerId": "100000000",
"sellerName": "Seller Name",
"sellerType": "PRIVATE",
"sellerUrl": "https://www.kleinanzeigen.de/s-bestandsliste.html?userId=100000000",
"sellerActiveSince": "2026-01-01",
"sellerOtherAdsCount": 4,
"imprint": null,
"searchUrl": "https://www.kleinanzeigen.de/s-fahrrad/k0",
"scrapedAt": "2026-01-01T00:00:00.000Z"
}

Plan and proxy notes

  • Default proxy is Residential with country DE. Available on the Starter plan and above. This gives the cleanest runs.
  • On the free plan, set proxy to { "useApifyProxy": true } (Datacenter). The actor will still work, but expect some retries and occasionally fewer results.
  • Detail enrichment (fetchDetails: true) makes one extra request per ad. Use maxListings and maxPages to keep runs bounded, or set fetchDetails: false for the fastest, cheapest pass.
  • Be considerate with how often and how broadly you run the scraper, and use the data in line with Kleinanzeigen.de's terms and applicable law.