Immowelt scraper API: search results as JSON
Send any Immowelt page URL with recipe=immowelt and get title, url, image as JSON. No selectors to write, no proxies to pick.
- 1 page type
- 3 fields
- 25 credits a page · $2.49 per 1,000
- Working · 86.2% in 7 days
5,000 free credits for 7 days, no card.
curl -G 'https://api.ujeebu.com/scrape' \
-H "ApiKey: $UJEEBU_API_KEY" \
--data-urlencode 'url=https://www.immowelt.de/suche/koeln/wohnungen/kaufen' \
--data-urlencode 'recipe=immowelt'
{
"result": {
"title": "Wohnung zum Kauf - Köln - 199.000 € - 2,5 Zim..."
},
"success": true
}
What you get from Immowelt
The fields of each page type and a real sample from our last validation, shortened.
Search and listing pages recipe=immowelt 25 credits a page
| Field | Type | Example |
|---|---|---|
listings | list of 3+ items | |
listings[].url | URL | https://www.immowelt.de/expose/adc5a7af-e56d-424d-b98e-106834556a17... |
listings[].title | text | Wohnung zum Kauf - Köln - 199.000 € - 2,5 Zimmer, 75 m², 5. Geschos... |
listings[].image | image URL | https://mms.immowelt.de/1/e/8/f/1e8fea5f-69ac-4d9d-9e17-33da84f39e3... |
Sample answer, validated 2026-10-29
{
"listings": [
{
"url": "https://www.immowelt.de/expose/adc5a7af-e56d-424d-b98e-106834556a17?serp_view=list&search=distributionTypes%3DBuy%2CBuy_Auction%2CCompulsory_Auction%26estate...",
"title": "Wohnung zum Kauf - Köln - 199.000 € - 2,5 Zimmer, 75 m², 5. Geschoss, frei ab sofort",
"image": "https://mms.immowelt.de/1/e/8/f/1e8fea5f-69ac-4d9d-9e17-33da84f39e37.jpg?w=626&h=470"
},
{
"url": "https://www.immowelt.de/expose/008a1ebb-7510-4a88-b1f2-db10ae72dfef?serp_view=list&search=distributionTypes%3DBuy%2CBuy_Auction%2CCompulsory_Auction%26estate...",
"title": "Wohnung zum Kauf - Köln - 185.000 € - 2 Zimmer, 56 m²",
"image": "https://mms.immowelt.de/c/4/b/f/c4bfe0e9-21d9-4816-bfd2-7fdaff68e176.png?w=626&h=470"
}
]
}
One call
Send the page URL and the recipe name to the Scrape API. The recipe brings the extract rules and the settings that work on Immowelt (JavaScript rendering and the premium proxy (DE)).
curl -G 'https://api.ujeebu.com/scrape' \
-H "ApiKey: $UJEEBU_API_KEY" \
--data-urlencode 'url=https://www.immowelt.de/suche/koeln/wohnungen/kaufen' \
--data-urlencode 'recipe=immowelt'
import os, requests
r = requests.get(
"https://api.ujeebu.com/scrape",
params={"url": "https://www.immowelt.de/suche/koeln/wohnungen/kaufen", "recipe": "immowelt"},
headers={"ApiKey": os.environ["UJEEBU_API_KEY"]},
timeout=120,
)
print(r.json()["result"])
const params = new URLSearchParams({
url: "https://www.immowelt.de/suche/koeln/wohnungen/kaufen",
recipe: "immowelt",
});
const res = await fetch(`https://api.ujeebu.com/scrape?${params}`, {
headers: { ApiKey: process.env.UJEEBU_API_KEY },
});
console.log((await res.json()).result);
The answer is {"result": {...}} with the headers Ujb-Recipe and Ujb-Credits. Your own parameters always win over the recipe.
Search Immowelt with parameters
Fill in the parameters and we build the Immowelt search URL. The Playground and the Request builder do it for you.
| Parameter | Type | Values |
|---|---|---|
city required | string | German city (Köln, München, Berlin). |
property | enum | apartment, house |
deal | enum | buy, rent |
Works today: the built URL with recipe=immowelt/listing (city=Köln)
GET https://api.ujeebu.com/scrape?url=https%3A%2F%2Fwww.immowelt.de%2Fsuche%2Fkoeln%2Fwohnungen%2Fkaufen&recipe=immowelt%2Flisting
A single call with the parameters and no URL is coming to the API; it is not live yet. Search with parameters in the docs
What people build with Immowelt data
New listings alerts
Catch new listings in the areas you watch shortly after they appear.
Inventory tracking
Count active listings per area and type over time.
Price
Same price as the page call, no fee for the recipe. Only successful responses are billed; blocked, timed-out and failed requests are free.
| Page type | Credits a page | Per 1,000, Starter | Per 1,000, Pro |
|---|---|---|---|
| Search results | 25 | $4.08 | $2.49 |
FAQ
What does the Immowelt recipe return?
JSON with 3 fields from search results (recipe=immowelt), for example title, url, image. The answer is {"result": {...}} with the fields shown on this page.
How much does it cost to scrape Immowelt?
25 credits a page ($2.49 per 1,000 on Pro, $4.08 on Starter). Same price as the page call, no fee for the recipe. Only successful responses are billed; blocked, timed-out and failed requests are free.
Do I need proxies or a headless browser?
No. The recipe brings the settings that work on Immowelt: JavaScript rendering and the premium proxy (DE). Send only the URL and recipe=immowelt.
What happens when Immowelt changes its pages?
We check Immowelt every day and re-validate the recipe on real pages every week, then fix it when the site changes. Until a fix is live, the API answers 404 "the recipe has no working version" instead of empty data, and that call is free.
Can I search Immowelt with parameters?
Yes. Fill in city, property, deal: we build the Immowelt search URL, and the call is that URL with recipe=immowelt/listing. A single call with the parameters and no URL is coming to the API; it is not live yet.
Related recipes
ZillowSearch results, Property page · 5 credits
RedfinSearch results, Property page · 5 credits
RightmoveSearch results · 25 credits
SeLogerSearch results · 25 credits
Property FinderSearch results · 25 credits
LinkedInSearch results, Detail page, Profile · 5 credits
Logos and names belong to their owners. Ujeebu is not affiliated with Immowelt.
Get Immowelt data as JSON today.
5,000 free credits for 7 days. No card.