Immobilienscout24 (.de|.ch|.at) Only$1.75💰 Search-Detail-Agent
Pricing
from $1.75 / 1,000 results
Immobilienscout24 (.de|.ch|.at) Only$1.75💰 Search-Detail-Agent
💰$1.75 per 1,000. Extract comprehensive German real estate data: property details (rent, size, rooms, location), high-res images, agent info with verification status, pricing insights, amenities (balcony, kitchen, cellar), contact forms, market analytics, and 40+ targeting parameters for research.
Pricing
from $1.75 / 1,000 results
Rating
5.0
(8)
Developer
Muhamed Didovic
Actor stats
14
Bookmarked
298
Total users
64
Monthly active users
1.2 hours
Issues response
8 hours ago
Last modified
Categories
Share
ImmobilienScout24 Scraper (Germany, Austria & Switzerland)
There are two versions of this ImmobilienScout24 scraper on Apify (both support immobilienscout24.de, immobilienscout24.at, and immoscout24.ch):
- Rentable Version: Immobilienscout24.de Scraper (Rent)
- Pay Per Result Version: Immobilienscout24.de Scraper (Pay Per Result)
Unlock the full power of ImmobilienScout24 / ImmoScout24 real estate data for Germany, Austria, and Switzerland. Track and analyze listings on immobilienscout24.de, immobilienscout24.at, and immoscout24.ch with the same actor: search results, detail payloads, monitoring mode, structured JSON export, and a unified normalized block that gives you the same shape across all three countries.
"From studio apartments to luxury properties, we turn ImmoScout24 listings into data you can use."
Overview
This scraper extracts listing data from ImmoScout24 in Germany, Austria, and Switzerland. It is aimed at agents, analysts, investors, and researchers who need prices, locations, media, and metadata at scale.
- Germany uses
/Suche/...search URLs,/expose/...detail URLs, and/anbieter/profil/...makler (agency) profiles. - Austria uses immobilienscout24.at regional search URLs and a different (REST-style) JSON shape.
- Switzerland uses immoscout24.ch real-estate URLs and the iOS app's mobile API (deeplink → paged search → detail).
All three are handled automatically from your startUrls — the actor routes each URL to the correct backend.
Supported markets
| Market | Domain | Typical input URLs | Output shape |
|---|---|---|---|
| Germany | immobilienscout24.de | /Suche/... search URLs, /expose/{id}, /anbieter/profil/{slug} (makler profiles) | Mobile expose JSON (sections, header, basicInfo, …) + countryCode: "DE" + normalized — see Sample JSON Output |
| Austria | immobilienscout24.at | Regional search URLs (e.g. /regional/...) | AT property API JSON + basicInfo / countryCode: "AT" + normalized — see Austria (AT) Support |
| Switzerland | immoscout24.ch | /{locale}/real-estate/... search URLs, /{locale}/d/<slug>/<id> detail URLs | CH listings API JSON + basicInfo / countryCode: "CH" + normalized — see Switzerland (CH) Support |
You can mix German, Austrian, and Swiss URLs in the same run (startUrls). The actor routes each URL to the correct backend.
What does this scraper do?
The ImmoScout24 scraper enables you to:
Comprehensive Data Collection
- Property Data
- Extract complete apartment and house details with specifications
- Scrape comprehensive listing data including rent, costs, and fees
- Gather detailed property features, amenities, and equipment
- Analyze property types, floor plans, and architectural details
- Download high-quality property images and media content
- Location Data
- Scrape precise location information with coordinates
- Extract neighborhood profiles and area information
- Gather transportation connectivity and travel time data
- Access price comparison data for similar properties in the area
Advanced Scraping Capabilities
- API Integration: Uses ImmoScout24 APIs appropriate per country — .de (mobile expose/search), .at (AT search/property endpoints), and .ch (iOS app deeplink + paged search + listing detail)
- Pagination Handling: Walks all result pages (page-based for DE; offset/
from/sizefor AT and CH) - Efficient Processing: Processes only new or updated listings in subsequent runs
- Change Detection: Identifies price changes, availability updates, and new listings
- Scheduled Monitoring: Set up automated runs to keep your property data current
- Incremental Data Collection: Build comprehensive real estate datasets over time
- Anti-blocking: TLS-fingerprinted HTTP via
got-scraping+impitracing in parallel for profile HTML, mobile/iOS-app User-Agent strings per country, residential proxy rotation, automatic retries with backoff - Unified output across countries: Every dataset row carries a
normalizedblock with the same shape (price, area, address, contact, …) regardless of whether it came from DE, AT, or CH — see Unifiednormalizedblock
Flexible Scraping Options
- Search Results: Extract property listings by search criteria
- Germany:
https://www.immobilienscout24.de/Suche/de/berlin/wohnung-mieten - Austria:
https://www.immobilienscout24.at/regional/wien/wien/wohnung-mieten(and other regional search URLs) - Switzerland:
https://www.immoscout24.ch/en/real-estate/buy/city-zuerich(any/{locale}/real-estate/...URL)
- Germany:
- Individual Listings: Target specific properties using direct URLs
- Germany:
https://www.immobilienscout24.de/expose/160531543 - Austria: detail resolution is driven from search listings and AT API URLs (see Austria (AT) Support)
- Switzerland:
https://www.immoscout24.ch/de/d/<slug>/<id>direct listing URLs are supported as start URLs
- Germany:
- Makler (agency) profiles (Germany only): One public profile URL returns all residential listings for that agency (buy and rent), each as a full mobile-expose dataset row — see Makler (agency) profile URLs.
This tool is ideal for:
- German, Austrian, and Swiss real estate market research and analysis
- Rental and purchase price analysis and competitive intelligence
- Market trend analysis across cities and neighborhoods (DACH coverage: DE, AT, CH)
- Building comprehensive property databases for business intelligence
- Tracking rent and price trends on ImmoScout24
- Real estate agencies and property management companies
- Property investors and market analysts focusing on DACH coverage
Features
- Germany, Austria & Switzerland: Same actor accepts immobilienscout24.de, immobilienscout24.at, and immoscout24.ch URLs
- Comprehensive Data Extraction: Detailed property information, pricing, costs, and specifications (fields vary by country)
- Dual Scraping Modes:
- Search Results: Scrape all properties from search results
- Individual Listings: Direct expose URLs (Germany), CH listing URLs (Switzerland); Austria is optimized for search URLs and listing discovery
- Flexible Input: Multiple URLs in
startUrls:- Germany:
/Suche/...,/expose/..., and/anbieter/profil/...(details) - Austria: regional search URLs on immobilienscout24.at
- Switzerland:
/{locale}/real-estate/...search URLs and/{locale}/d/<slug>/<id>listing URLs on immoscout24.ch
- Germany:
- Makler profiles (DE): Loads the agency directory API plus mobile expose details for every listing (BUY and RENT), with fallbacks when the API returns no cards or IDs do not match.
- API Integration: Uses ImmoScout24 mobile/search APIs appropriate per domain
- DE:
api.mobile.immobilienscout24.de(URL-mapper → search list → expose) with iPhone app User-Agent - AT:
www.immobilienscout24.at/api/psa/is24/...(search → property detail) with iOS app User-Agent - CH:
api.immoscout24.ch(deeplinklistings-by-url→ pagedlistings→listings/listing/{id}detail) with iOS app User-Agent +X-App-Id/X-Udidheaders
- DE:
- Automatic Pagination: Multi-page results (Germany: page-based; Austria & Switzerland:
from/sizestyle pagination) - Anti-blocking: TLS-fingerprinted HTTP clients (
got-scraping+impitraced in parallel for profile HTML), country-appropriate mobile User-Agents and headers, residential proxy support, automatic retries with backoff - Efficient Processing: Concurrent scraping with configurable concurrency settings
- Reliable Performance: Built-in retry mechanisms and proxy support
- Monitoring Mode: Per-URL deduplication via Apify Key-Value store; duplicate listings are tracked and charged via the
additional-dataevent so reruns stay cheap - Unified
normalizedblock: Every dataset row, regardless of country, carries anormalizedobject with the same fields (price, area, rooms, address, contact, images, …). Lets you treat DE / AT / CH listings uniformly downstream — see Unifiednormalizedblock. - Structured Data Export: JSON dataset items per listing
Supported Listing Categories
The scraper supports the listing types exposed by each site. Field names and JSON layout differ between Germany, Austria, and Switzerland (each uses its own API); always check the Germany sample, Austria sample, or Switzerland sample for the raw shape. If you only care about the cross-country common fields, use the normalized block — see Unified normalized block.
Germany (immobilienscout24.de) — examples:
-
Apartment Rentals — e.g.
https://www.immobilienscout24.de/Suche/de/berlin/wohnung-mieten— fields such asbasicRent,totalRent,livingSpace,rooms,floor, etc. (inside expose sections /basicInfo). -
Individual Property Exposes — e.g.
https://www.immobilienscout24.de/expose/160531543—header,sections,contact,basicInfo,adTargetingParameters, etc. -
House Rentals — e.g.
https://www.immobilienscout24.de/Suche/de/muenchen/haus-mieten—plotArea,houseType,constructionYear,energyCertificate, etc. -
Agency (makler) profiles — e.g.
https://www.immobilienscout24.de/anbieter/profil/example-agency-slug— same mobile expose JSON as single-listing scrapes, one dataset item per listing; enriched withrealtorName,realtorProfileUrl, and related context where available. See Makler (agency) profile URLs.
Austria (immobilienscout24.at) — use regional search URLs; output uses the AT schema (meta, priceInformation, localization, …). See Austria (AT) Support.
Switzerland (immoscout24.ch) — use any /{locale}/real-estate/... URL (the deeplink API converts the public web URL into a structured query) or a direct /{locale}/d/<slug>/<id> listing URL. Output uses the CH schema (nested listing.{characteristics, address, prices, attachments, contact}). See Switzerland (CH) Support.
Quick Start
- Sign up for Apify: Create your free account at apify.com.
- Find the Scraper: Search for ImmoScout24 or immobilienscout24 in the Apify Store (Rent or Pay Per Result actor).
- Configure Input: Add
startUrlsfor .de, .at, and/or .ch — search URLs,/expose/URLs, makler profile URLs on.de, or/d/<slug>/<id>listing URLs on.ch(see Supported markets, Makler profiles, and Switzerland (CH) Support). - Run the Scraper: Execute the scraper on the Apify platform.
- Data Collection: Dataset items contain full listing payloads; the raw structure depends on whether the listing came from Germany, Austria, or Switzerland, but each row also carries a unified
normalizedblock (see Unifiednormalizedblock).
Input Configuration
Example input mixing Germany, Austria, and Switzerland URLs:
{"startUrls": [{"url": "https://www.immobilienscout24.de/Suche/de/berlin/wohnung-mieten"},{"url": "https://www.immobilienscout24.de/expose/160531543"},{"url": "https://www.immobilienscout24.de/anbieter/profil/example-agency-slug"},{"url": "https://www.immobilienscout24.at/regional/wien/wien/wohnung-mieten"},{"url": "https://www.immoscout24.ch/en/real-estate/buy/city-zuerich"}],"maxConcurrency": 10,"minConcurrency": 1,"maxRequestRetries": 100,"proxyConfiguration": {"useApifyProxy": true}}
Input Fields Explanation
startUrls: Array of objects with aurlstring. Supported patterns:- Germany — search:
https://www.immobilienscout24.de/Suche/... - Germany — expose:
https://www.immobilienscout24.de/expose/{id} - Germany — makler profile:
https://www.immobilienscout24.de/anbieter/profil/{slug}(optional query?realtorEncryptedId=...— see below) - Austria — search:
https://www.immobilienscout24.at/regional/...(and other valid AT search URLs copied from the browser) - Switzerland — search:
https://www.immoscout24.ch/{locale}/real-estate/...(locale =en,de,fr,it) - Switzerland — listing detail:
https://www.immoscout24.ch/{locale}/d/<slug>/<id>
- Germany — search:
monitoringMode: When enabled, only scrapes new listings compared to previous runs (default: false). Works for all three countries; deduplicated IDs from previous runs are billed via theadditional-dataevent so reruns stay cheap.maxConcurrency: Maximum number of pages processed simultaneously (default: 10).minConcurrency: Minimum number of pages processed simultaneously (default: 1).maxRequestRetries: Number of retries for failed requests (default: 100).proxyConfiguration: Proxy settings for enhanced scraping reliability. Strongly recommended (residential preferred for DE; AT and CH usually work with datacenter / direct, but residential improves stability).
Makler (agency) profile URLs — Germany (.de)
For immobilienscout24.de only, you can pass a public agency profile URL in startUrls. The actor collects residential inventory for that makler and writes one dataset row per listing, using the same mobile expose API as for /expose/{id} URLs.
Example startUrls
{"startUrls": [{ "url": "https://www.immobilienscout24.de/anbieter/profil/your-agency-slug" }]}
You may also append ?realtorEncryptedId=... (opaque id from a contact/deeplink URL) if you need to force a specific directory token; the slug URL alone is usually enough.
How it works
- Resolve the agency — Loads the profile HTML when needed to read
realtorEncryptedId(from the page embedwindow.appModelor from the query string). - Directory listings API — Calls ImmoScout’s
searchlistingsendpoint with browser-style headers (as on the website), paginates BUY then RENT,realEstateType=RESIDENTIAL. - Detail fetch — For each card, fetches the mobile expose JSON (
api.mobile.immobilienscout24.de) and pushes it to the dataset (respectingmaxItemsand monitoring dedup when enabled).
If the first API pass returns no listings
realtorEncryptedIdmismatch — A contact URL can carry a different token than the directory API expects. The actor loads the canonical profile page (no query), readsappModel.realtorEncryptedId, and retries the listings API when it differs from the id used first.- HTML fallback — If there are still no API cards, it scans profile HTML for
/expose/{id}links and fetches those exposes (only when such links exist in the HTML).
Logs and dataset size
- Progress lines like “Page 1 (BUY): 14 cards” refer to one deal type; RENT runs in a second phase, so total dataset rows are BUY + RENT (and any extra pages), not only the first number.
- Right after the run,
Dataset.getInfo()can briefly lag behind the number ofpushDatacalls. The actor reconciles the logged item count with the internal profile counter so summaries match the full export.
Requirements
- Proxies are strongly recommended (residential/datacenter per your setup); profile HTML and APIs may return 401/403 without a good IP/fingerprint rotation.
- Austria — this profile flow applies to .de only; immobilienscout24.at does not use the same
/anbieter/profil/...pipeline in this actor.
Monitoring Mode
When monitoringMode is enabled, the scraper will only collect new listings that haven't been seen in previous runs. This works for all three countries (DE, AT, CH); deduplication state is kept per start URL (so different searches do not share the same “seen ids” store). This is useful for:
- Tracking new properties as they come on the market
- Building a historical archive of property listings
- Monitoring specific areas for new opportunities without duplicating data
How Monitoring Mode Works
- The scraper maintains a per-URL record of previously scraped property IDs in an Apify Key-Value store.
- On subsequent runs with
monitoringMode: true, each individual listing ID from each search page is compared against the store. - Only new listings (those not already in the store) are fetched and added to the dataset.
- Duplicates that were already scraped in a previous run are skipped without a detail call, and one
additional-datacharge is recorded per page-batch via Apify'sChargingManager. This means reruns are billed as ~1 event per page worth of duplicates rather than per dataset row. - The store is updated with any new property IDs the run encounters.
Note: earlier versions of this actor exited the run early if the total number of cached IDs exceeded the search's reported total results. That early-exit logic has been removed. The current implementation always paginates through search results and only skips per-listing IDs it has already seen, which avoids missing reactivated or re-listed properties.
Output Structure
Each dataset item is one listing. Germany, Austria, and Switzerland use different JSON shapes (different APIs). To tell them apart, every dataset row carries:
- a top-level
countryCodefield —"DE","AT", or"CH" - a top-level
normalizedobject — the same shape across all three countries (see Unifiednormalizedblock) - the full raw payload from the source API alongside it
This means you can either work with the country-specific raw fields (when you need every detail) or with the cross-country normalized block (when you want one consistent schema).
The sections below document the Germany (immobilienscout24.de) mobile expose-style payload. For Austria, skip to Austria (AT) Support; for Switzerland, skip to Switzerland (CH) Support.
Unified normalized block (DE / AT / CH)
Regardless of which country a listing comes from, every dataset row includes a normalized object with the same field names and types. This lets you treat DE, AT, and CH listings uniformly downstream without writing per-country branching.
Schema
{countryCode: 'DE' | 'AT' | 'CH',listingId: string | null,title: string | null,description: string | null,url: string | null,detailApiUrl: string | null,transferType: 'BUY' | 'RENT' | null,realEstateType: string | null, // raw type string from the source (e.g. "APARTMENT", "office", "HOUSE")categories: string[], // additional category labels (e.g. ["APARTMENT", "ATTIC_FLAT"])price: {amount: number | null,currency: 'EUR' | 'CHF' | string | null,formatted: string | null,kind: 'BUY' | 'RENT_NET' | 'RENT_GROSS' | 'RENT_TOTAL' | null,},area: {livingSpace: number | null, // m²plotArea: number | null,usableArea: number | null,unit: 'm2',},rooms: {total: number | null,bedrooms: number | null,bathrooms: number | null,},floor: {current: number | null,total: number | null,},construction: {yearBuilt: number | null,condition: string | null,isNew: boolean | null,},address: {street: string | null,houseNumber: string | null,zip: string | null,city: string | null,region: string | null,country: string | null, // typically "DE" / "AT" / "CH"latitude: number | null,longitude: number | null,formatted: string | null, // convenience one-liner, e.g. "Leimbachstrasse 28, 8041 Zürich"},contact: {name: string | null,company: string | null,phone: string | null,email: string | null,website: string | null,logoUrl: string | null,},images: string[], // best-quality image URLs, deduplicateddocuments: { url: string; title: string | null }[],publishedAt: string | null, // ISO 8601updatedAt: string | null, // ISO 8601}
How it's populated per country
| Source | DE | AT | CH |
|---|---|---|---|
title | section type === "TITLE" (falls back to header.title when not the placeholder "Description") | description.title | localized text.title |
description | concatenation of every TEXT_AREA section (Description, Furnishing, Location, Notes, …) | concatenation of description.{descriptionNote, locationNote, fittingNote, miscellaneousNote, propertyNote, objectDescription} | localized text.description |
transferType | from Vermarktungsart / Commercialisation type attribute, or inferred from realEstateType (apartmentrent / apartmentbuy / …) | type.transferType | query.offerType / listing-level offer type |
price.amount | from labelled attributes (Kaltmiete, Warmmiete, Gesamtmiete, Kaufpreis, or English equivalents); locale-aware parser handles 1.160,50 (DE) and 1,160.50 (EN) | priceInformation.prices.{buy,rent}.{gross,total} | prices.buy.gross / prices.rent.{net,gross,total} |
address.street/zip/city | MAP section's addressLine1/addressLine2 (placeholders like "The full address is available from the agent" are filtered out) | localization.address.{street,streetNumber,zip,city,state,countryCode} | address.{street,number,postcode,city,region,country} |
address.lat/lng | MAP.location.{lat,lng} (null for listings with obfuscated addresses) | localization.geo.{lat,lon} | address.geoCoordinates.{latitude,longitude} |
address.formatted | derived "<street> <number>, <zip> <city>" from the parsed parts | derived from the parsed parts | derived from the parsed parts |
contact.name/company/logoUrl | AGENTS_INFO section | contact.{firstName, lastName, company.name} + meta.features.LOGO_ON_EXPOSE.url | lister.{contacts.inquiry, legalName, logoUrl} |
contact.phone | CONTACT.phoneNumbers[0].text | contact.phone.{main,mobile,fax} | lister.phone |
contact.website | AGENTS_INFO.website/homepage (when present) | contact.{homepage,website} / contact.company.{homepage,website} | lister.website.value (or bare lister.website string) |
images | MEDIA section media[].fullImageUrl (falls back through imageUrlForWeb / previewImageUrl) | pictures[].url | per-locale attachments[].url where type === "IMAGE" |
documents | media items typed as DOCUMENT/PDF | attachments[] | per-locale attachments[] where type !== "IMAGE" |
publishedAt / updatedAt | DE expose typically does not expose these — null | meta.creation.date / meta.auditing.updatedAt | listing's lastPublished / lastModified |
Locale-aware number parsing
The internal num() helper handles both German (1.160,50) and English (1,160.50) formatted numbers correctly by inspecting the digit count after the last separator. "1,160 m²" correctly parses to 1160, not 1.16.
Verifying the normalized output
The repo includes a live comparison harness that fetches one search hit + one detail per country (no proxy by default), runs the normalizer, and writes the raw + normalized JSON plus a fill-rate matrix to comparison/:
$npm run compare:countries
Optional env vars:
| Var | Purpose | Default |
|---|---|---|
DE_FALLBACK_IDS | Comma-separated DE expose IDs to fall back to if the DE search is blocked by Datadome | a few public ones |
COMPARE_OUT_DIR | Output directory | comparison |
COMPARE_PROXY_URL | HTTP(S) proxy URL for all requests | unset (direct) |
The harness writes:
comparison/{DE,AT,CH}_raw.json— exact API responsescomparison/{DE,AT,CH}_normalized.json— output ofnormalizeListing()comparison/_fill-report.tsv— field-by-field presence matrixcomparison/_summary.json— one-line summary per country
Use this anytime you suspect the upstream APIs changed shape or you want to verify a tweak to the normalizer.
Sample JSON Output
Germany example — apartment rent expose (immobilienscout24.de).
{"header": {"id": "160531543","title": "Description","fraudReportUrl": "https://angebot-melden.immobilienscout24.de/report?realEstateId=160531543&publicationState=live","displayStatusIcon": true,"shareMessage": "I found this offer on ImmoScout24:\nhttps://www.immobilienscout24.de/expose/160531543?utm_medium=social&utm_campaign=expose_sharing&utm_content=expose_toolbar&utm_source=other&referrer=taf\n\n Details\n-------------------------\nBasic rent €7.02/m²: €414\nRooms: 2.5\nLiving space: 59 m²\nTotal rent: €515\n\nLauterberger Str 5\n12347 Britz, Berlin","publicationState": "active","realEstateType": "apartmentrent"},"sections": [{"type": "MEDIA","media": [{"type": "PICTURE","caption": "www.tauschwohnung.com","previewImageUrl": "https://pictures.immobilienscout24.de/listings/af8d5720-26b0-4eee-80e8-b7bc1529c7f3-1922754470.png/ORIG/resize/800x600/format/webp/quality/80","imageUrlForWeb": "https://pictures.immobilienscout24.de/listings/af8d5720-26b0-4eee-80e8-b7bc1529c7f3-1922754470.png/ORIG/legacy_thumbnail/%WIDTH%x%HEIGHT%/format/jpg","fullImageUrl": "https://pictures.immobilienscout24.de/listings/af8d5720-26b0-4eee-80e8-b7bc1529c7f3-1922754470.png/ORIG/resize/1500x1000/format/webp/quality/80","generatedImages": []},...]},{"type": "TOP_ATTRIBUTES","attributes": [{"label": "Basic rent €7.02/m²","text": "€414","type": "TEXT"},{"label": "Rooms","text": "2.5","type": "TEXT"},{"label": "Living space","text": "59 m²","type": "TEXT"},{"label": "Total rent","highlighted": true,"text": "€515","type": "TEXT"}]},{"type": "TITLE","title": "Tauschwohnung: 2,5 Zimmer Hochparterre direkt am Teltowkanal"},{"type": "RELOCATION","text": "How much would relocation cost?","subText": "Get free offers","reference": {"label": "","url": "is24://relocationService?pag_source=expose_criteria&floor=0&street=Lauterberger%20Str&houseNumber=5&postcode=12347&city=Berlin","type": "URL_LINK","target": "INTERNAL","trackingConfig": {"category": "expose","action": "consumerservices","label": "relocation_criteria","event_name": "productintegration_click","event_product": "search","parameters": {"event_parameter_1": "relocation_criteria"}}}},{"type": "MAP","title": "Map","location": {"lat": 52.45787,"lng": 13.42804},"addressLine1": "Lauterberger Str 5","addressLine2": "12347 Britz, Berlin","zipCodeShapes": [],"enableEnterFullAddressAction": true},{"type": "REFERENCE_LIST","references": [{"label": "View price history for this address","url": "https://www.immobilienscout24.de/Suche/controller/executePriceInsightsSimple/radius?realestatetype=apartmentrent&geocoordinates=52.45787;13.42804;1¢erofsearchaddress=Berlin;12347;Lauterberger%20Str;;;Britz;5&utm_medium=app&utm_source=android&utm_campaign=resultlist_price_insights&utm_content=expose_pricedev","type": "URL_LINK","target": "WEB_INTERNAL","trackingConfig": {"category": "expose","action": "atlas_tapped","label": "txt_link_address","event_name": "productintegration_click","event_product": "search","parameters": {"event_parameter_1": "txt_link_address"}}}]},{"type": "TRAVELTIME","isBlocked": false,"exposeId": "160531543","address": "Lauterberger Str 5, 12347 Britz, Berlin","location": {"lat": 52.45787,"lng": 13.42804}},{"type": "ATTRIBUTE_LIST","title": "Main criteria","attributes": [{"type": "TEXT","label": "Apartment type:","text": "Raised ground floor"},{"type": "TEXT","label": "Floor:","text": "0"},{"type": "CHECK","label": "Balcony/Terrace:"},{"type": "CHECK","label": "Cellar:"},{"type": "CHECK","label": "Fitted kitchen:"},{"type": "LINK","label": "Credit report:","reference": {"type": "URL_LINK","label": "Apply online","url": "https://bonitaetscheck.immobilienscout24.de/?utm_medium=app&utm_source=android&utm_campaign=solvency_check&utm_content=residential_expose_criteria","target": "WEB_INTERNAL","trackingConfig": {"category": "expose","action": "consumerservices","label": "solvencycheck_criteria","event_name": "productintegration_click","event_product": "search","parameters": {"event_parameter_1": "solvencycheck_criteria"}}}},{"type": "LINK","label": "Internet:","reference": {"type": "URL_LINK","iconUrl": "https://www.immobilienscout24.de/content/dam/is24/expose-snippets/services/powered-by-telekom-new.png","label": "See rates","secondaryLabel": "up to 250 MBit/s","additionalInfoText": "The speed estimate is a non-binding statement based on the object's location. Binding availability statements will be only performed when ordering.","url": "https://rebrand.ly/speedcheckandroidapp?address=eyJvcnQiOiJCZXJsaW4iLCJvcnRzdGVpbCI6IiIsInN0cmFzc2UiOiJMYXV0ZXJiZXJnZXIgU3RyLiIsImhhdXNudW1tZXIiOiI1Iiwia2xzaWQiOjE2NjQ4NzI1LCJoYXVzbnVtbWVyenVzYXR6IjoiIiwicGx6IjoiMTIzNDcifQ%3D%3D","target": "WEB_INTERNAL","trackingConfig": {"category": "clickout","action": "relocation","label": "internet_checkspeed_criteria","event_name": "expose_clickout","event_product": "search","parameters": {"event_parameter_1": "internet_checkspeed_criteria"}},"additionalInfoForIcon": {"title": "Why this ad?","text": "We cooperate with Telekom Deutschland GmbH to provide information on internet availability at the location of the ad.","buttonText": "Further information","buttonUrl": "https://www.immobilienscout24.de/anbieten/dsa-info/telekom.html"},"onClickTrackingTag": "INTERNET_SPEED_CHECK"}}]},{"type": "ATTRIBUTE_LIST","title": "Costs","attributes": [{"type": "TEXT","label": "Net rent (plus ancillary costs):","text": "€414"},{"type": "TEXT","label": "Price/m²:","text": "€7.02/m²","additionalInfoText": "Calculated by ImmoScout24"},{"type": "TEXT","label": "Ancillary costs:","text": "€101"},{"type": "TEXT","label": "Total rent:","text": "€515 (heating costs excluded)"}]},{"type": "PREMIUM_ADDITIONAL_INFO","title": "Plus Members know more","isExposeBuy": false,"chancenCheck": {"enabled": false,"title": "Plus Insights","publishedLabel": "Published","visitedLabel": "Views","shortlistedLabel": "Saved","contactedLabel": "Contacted"},"competitionAnalysis": {"enabled": false,"title": "Competition analysis","plusUser": {"label": "Plus members","count": null},"basicUser": {"label": "Basic members","count": null},"totalUserCount": null,"description": "incl. 6 charts more with Plus+","activationLabel": "with Plus or separate","quickCartUrl": "https://www.immobilienscout24.de/warenkorb/mieterplus?isMobileView=true&utm_campaign=chancen_check&utm_content=residential_expose_competitionanalysis_cta","trackingConfig": {"event_name": "subscription_clickout","event_product": "expose","parameters": {"event_parameter_1": "rent","event_parameter_2": "competition_analysis"}}},"quickCartButton": {"enabled": true,"label": "Activate Plus now","url": "https://www.immobilienscout24.de/warenkorb/mieterplus?isMobileView=true&utm_campaign=chancen_check&utm_content=residential_expose_plusinsights_cta","trackingConfig": {"event_name": "subscription_clickout","event_product": "expose","parameters": {"event_parameter_1": "rent","event_parameter_2": "plus_insights"}}},"visits": null,"contactRequests": null,"shortlistAddEvents": null,"prospectiveCustomersCount": {"basic": null,"premium": null,"total": null},"newExposeHoursThreshold": null,"calculated": null,"privateOffer": null,"onlineSince": null},{"type": "ATTRIBUTE_LIST","title": "Building details & energy certificate","attributes": [{"type": "TEXT","label": "Substantial Energy Sources:","text": "No information"}]},{"type": "AD","ad": {"id": "/4467/IS24_APP_DE/app_Android_Phone_expose_contentbanner_1"}},{"type": "TEXT_AREA","title": "Property description","collapseAfterLines": 5,"text": "Ich biete meine Wohnung zum Tausch an, die in einer ruhigen Gegend direkt am Teltowkanal liegt. Der Kanal ist ideal für schöne Spaziergänge.\n\nDie Wohnung ist gut angebunden: Die näheste Busstation ist in direkter Nähe, der Bus zur Hermannstraße ist in etwa 10 Minuten erreichbar. Das Tempelhofer Feld ist ebenfalls nur 20 Minuten zu Fuß entfernt und perfekt für Spaziergänge oder Radtouren. Zwei Supermärkte sind innerhalb von 5 Minuten Fußweg erreichbar.\n\nEin besonderes Plus ist der nach Osten ausgerichtete Balkon. Im Frühling und Sommer ist es dort besonders schön, um gemütlich zu sitzen und zu brunchen.\n\nDie Wohnung verfügt über einen großen Keller, der viel Stauraum bietet. Die Kosten für Gas, also Heizung und Warmwasser, sind nicht in den Nebenkosten enthalten, dafür müsstest du einen eigenen Vertrag abschließen.\n\nIch freue mich auf deine Nachricht, wenn du Interesse hast!"},{"type": "TEXT_AREA","title": "Further notes","collapseAfterLines": 5,"text": "Wichtig\nDiese Wohnung auf Tauschwohnung.com ist nur für Personen geeignet, die eine passende Wohnung zum Tauschen haben. Die Registrierung ist 100 % kostenfrei und ermöglicht es dir, mit unserem Matching Algorithmus diese Wohnung oder viele andere auf unserer Plattform zu entdecken.\nVorteile mit Tauschwohnung:\n✅ Keine Massenbesichtigungen\n✅ Direkter Kontakt zum Tauschpartner\n✅ Günstige Mietpreise\n✅ Nr. 1 Wohnungstauschplattform in Deutschland."},{"type": "HOMEOWNER","title": "Rent out with Tauschwohnung GmbH","text": "Get a free and non-binding consultation for renting out your property. We look forward to your enquiry!","featuredBarColor": "#00FFD0","logoUrl": "https://pictures.immobilienscout24.de/usercontent/673f597c-5c74-4405-b30d-522c850afc4e.PNG/ORIG/resize/%WIDTH%x%HEIGHT%%3E/format/webp/quality/80","reference": {"label": "Free consultation","url": "https://www.immobilienscout24.de/anbieter/contact/tauschwohnung-gmbh/a27b21be31b1040bc277c05","type": "BUTTON","target": "WEB_INTERNAL"},"trackingConfig": {"title": "expose","category": "expose","action": "consumerservices","label": "chancencheck"}},{"type": "REFERENCE_LIST","title": "Services consistent with the flat","references": [{"type": "BUTTON","label": "Credit report:","url": "https://bonitaetscheck.immobilienscout24.de/?utm_medium=app&utm_source=android&utm_campaign=solvency_check&utm_content=residential_expose_services","target": "WEB_INTERNAL","trackingConfig": {"category": "expose","action": "consumerservices","label": "solvencycheck_services","event_name": "productintegration_click","event_product": "search","parameters": {"event_parameter_1": "solvencycheck_services"}}},{"type": "BUTTON","label": "Find moving company","url": "is24://relocationService?pag_source=expose_services&floor=0&street=Lauterberger%20Str&houseNumber=5&postcode=12347&city=Berlin","target": "INTERNAL","trackingConfig": {"category": "expose","action": "consumerservices","label": "relocation_services","event_name": "productintegration_click","event_product": "search","parameters": {"event_parameter_1": "relocation_services"}}},{"type": "BUTTON","label": "Visit MyProperty","url": "https://atlas.immobilienscout24.de/eigentuemerbereich?utm_medium=app&utm_source=android&utm_campaign=residential_atlas_myproperty&utm_content=residential_expose_service&street=Lauterberger%20Str&houseNumber=5&zipcode=12347&city=Berlin","target": "WEB_INTERNAL","trackingConfig": {"category": "expose","action": "further_links","label": "myproperty_services","event_name": "productintegration_click","event_product": "search","parameters": {"event_parameter_1": "myproperty_services"}}},{"type": "BUTTON","label": "Calculate electricity consumption","url": "https://www.immobilienscout24.de/umzug/service/electricity-calculator-mobile.html?zipCode=12347&squareMeters=59&lang=en","target": "WEB_INTERNAL","trackingConfig": {"category": "clickout","action": "electricity","label": "energy_services","event_name": "productintegration_click","event_product": "search","parameters": {"event_parameter_1": "energy_services"}}},{"type": "BUTTON","label": "Relocate internet","url": "https://rebrand.ly/service-android-app","target": "WEB_INTERNAL","trackingConfig": {"category": "clickout","action": "internet","label": "internet_services","event_name": "expose_clickout","event_product": "search","parameters": {"event_parameter_1": "internet_services"}},"additionalInfoForIcon": {"title": "Why this ad?","text": "We cooperate with Telekom Deutschland GmbH to provide information on internet availability at the location of the ad.","buttonText": "Further information","buttonUrl": "https://www.immobilienscout24.de/anbieten/dsa-info/telekom.html","iconUrl": "https://www.immobilienscout24.de/content/dam/is24/expose-snippets/services/powered-by-telekom-new.png"}}]},{"type": "PRICE_INFO","title": "Information about price and location","attributes": [],"priceBar": {"minPrice": "€5.30 /m²","maxPrice": "€19.40 /m²","minSimilarPrice": "€7.30 /m²","maxSimilarPrice": "€14 /m²","actualObject": "This listing €7.02 /m²","priceIndicatorPositionInPercent": 0.12},"calculationInformation": {"title": "More information regarding this address","offersLowerSimilarPrice": "15,9% within lower price range","offersWithSimilarPrice": "68.2% within similar price range","offersHigherSimilarPrice": "15,9% within higher price range","furtherInformation": {"target": "WEB","type": "URL_LINK","label": "Sources and further information","url": "https://www.immobilienscout24.de/immobilienbewertung/fragen-und-antworten/preis-lageinformationen-wohnung-miete.html"}}},{"type": "REFERENCE_LIST","title": "Additional links","references": [{"type": "URL_LINK","label": "www.tauschwohnung.com","url": "https://twg.click/is24-homepage","target": "WEB"},{"type": "URL_LINK","label": "Original-Exposé","url": "https://twg.click/is24-350127-547","target": "WEB"}]},{"type": "AGENTS_INFO","title": "Agent’s info","company": "Tauschwohnung GmbH","name": "Tauschwohnung Wohnungstausch","logoUrl": "https://pictures.immobilienscout24.de/usercontent/673f597c-5c74-4405-b30d-522c850afc4e.PNG/ORIG/resize/%WIDTH%x%HEIGHT%%3E/format/webp/quality/80","verifiedBy": [{"id": "TNS_REALTOR_BADGE","label": "Identity verified","tooltip": "Your security is important to us. This provider has therefore been successfully verified and is additionally protected by multi-factor authentication.","reference": {"label": "More Infos","url": "https://sicherheit.immobilienscout24.de/verifizierte-anbietende.html","type": "URL_LINK","target": "WEB_INTERNAL"}}],"dsaSelfDeclaration": {"text": "The provider has commited to ImmoScout24 to only offer products and services that comply with the applicable provisions of the law of the European Union."},"portraitUrl": "https://pictures.immobilienscout24.de/usercontent/ee5eb2d2-db68-457b-8a23-bacd2525adfb.PNG/ORIG/resize/%WIDTH%x%HEIGHT%%3E/format/webp/quality/80","address": "","references": [{"label": "Agent’s imprint","url": "is24://imprint?text=Tauschwohnung%20GmbH%0AGraf-von-Lehndorff-Str.%2012%0A53175%20Bonn%0Ainfo%40tauschwohnung.com%0A%0ATauschwohnung%20GmbH%0D%0AGraf-von-Lehndorff-Str.%2012%0D%0A53175%20Bonn%0D%0ATel.%3A%20%2B49%20(0)%20228%2092939018%0D%0AE-Mail%3A%20support%40tauschwohnung.com%0D%0A%0D%0AGesch%C3%A4ftsf%C3%BChrer%3A%20Dario%20Bednarski%20und%20John%20Weinert%0D%0A%0D%0AHandelsregisternummer%3A%20HRB%2025876%0D%0ARegistergericht%3A%20Amtsgericht%20Bonn%0D%0AUSt-Ident.Nr.%3A%20DE%20273060580%0A","type": "URL_LINK","target": "INTERNAL"},{"label": "Agent’s homepage","url": "https://www.tauschwohnung.com","type": "URL_LINK","target": "WEB"}],"immoPartnerBadge": {"badgeUrl": "https://pro-badge-images-bucket.s3.eu-west-1.amazonaws.com/standard/silver_2025.png","linkUrl": "https://www.immobilienscout24.de/anbieten/gewerbliche-anbieter/lp/profis-leicht-erkennen.html"}},{"type": "OBJECT_INFO","text": "Scout-ID: 160531543 | Property ID: 350127"},{"type": "AD","ad": {"id": "/4467/IS24_APP_DE/app_Android_Phone_expose"}},{"type": "FRAUD_REPORT","text": "Something suspicious about this offer?","reference": {"label": "Report offer!","url": "https://angebot-melden.immobilienscout24.de/report?realEstateId=160531543&publicationState=live","type": "URL_LINK","target": "WEB_INTERNAL"}}],"contact": {"type": "CONTACT","callButtonLabel": "Call","mailButtonLabel": "More Info","messengerButtonLabel": "Messenger","premiumProfileRequiredForContacting": "false","phoneNumbers": [],"contactData": {"agent": {"name": "Tauschwohnung Wohnungstausch","company": "Tauschwohnung GmbH","rating": {},"logo": "https://pictures.immobilienscout24.de/usercontent/673f597c-5c74-4405-b30d-522c850afc4e.PNG/ORIG/resize/%WIDTH%x%HEIGHT%%3E/format/webp/quality/80","verifiedBy": [{"id": "TNS_REALTOR_BADGE","label": "Identity verified","tooltip": "Your security is important to us. This provider has therefore been successfully verified and is additionally protected by multi-factor authentication.","reference": {"label": "More Infos","url": "https://sicherheit.immobilienscout24.de/verifizierte-anbietende.html","type": "URL_LINK","target": "WEB_INTERNAL"}}]},"realEstateType": "apartmentrent","formFieldConfig": {"petsInHouseholdField": "OPTIONAL","numberOfResidentsField": "OPTIONAL","incomeAmountField": "OPTIONAL","firstnameField": "MANDATORY","lastnameField": "MANDATORY","phoneNumberField": "OPTIONAL","emailAddressField": "MANDATORY","addressField": "OPTIONAL","salutationField": "MANDATORY","messageField": "OPTIONAL","rentArrears": "OPTIONAL","insolvencyProcess": "OPTIONAL","smoker": "OPTIONAL","commercialPurposes": "OPTIONAL"},"isExposeBuy": false},"clickOutUrl": "https://www.tauschwohnung.com/350127?mtm_source=is24&utm_source=is24&mtm_medium=immo-partner&utm_medium=immo-partner&mtm_campaign=is24&utm_campaign=is24&mtm_content=clickout&utm_content=clickout&mtm_group=traffic"},"tracking": {"realEstateType": "APARTMENT_RENT","parameters": {"obj_scoutid": "160531543","obj_nbp": "false","obj_ityp": "apartment_rent","obj_totalRent": "515","obj_baseRent": "414","obj_listFirstStatus": "false","ga_cd_cxp_interactivepic": "false","geo_land": "deutschland","geo_bln": "berlin","geo_krs": "berlin","obj_ExclusiveExpose": "false","obj_privateOffer": "false","ga_cd_via": "premium","ga_cd_application_requirements": "profile0","ga_cd_customer_group": "others","obj_commissionsettings": "flow:0"}},"adTargetingParameters": {"obj_regio1": "Berlin","obj_serviceCharge": "101","obj_telekomInternetUrlAddition": "eyJvcnQiOiJCZXJsaW4iLCJvcnRzdGVpbCI6IiIsInN0cmFzc2UiOiJMYXV0ZXJiZXJnZXIgU3RyLiIsImhhdXNudW1tZXIiOiI1Iiwia2xzaWQiOjE2NjQ4NzI1LCJoYXVzbnVtbWVyenVzYXR6IjoiIiwicGx6IjoiMTIzNDcifQ%3D%3D","obj_cId": "18634500","obj_newlyConst": "n","obj_balcony": "y","obj_picturecount": "6","obj_totalRent": "515","geo_ot": "britz","obj_privateOffer": "false","obj_scoutId": "160531543","obj_firingTypes": "no_information","obj_hasKitchen": "y","obj_ExclusiveExpose": "false","geo_bln": "berlin","obj_cellar": "y","obj_baseRent": "414","obj_telekomInternetUrlBase": "https://www.telekom.de/festnetz/tarife-und-optionen/internet-dsl","obj_houseNumber": "5","obj_livingSpace": "59","geo_krs": "berlin","obj_zipCode": "12347","obj_condition": "no_information","obj_interiorQual": "no_information","obj_highDemand": "false","obj_petsAllowed": "no_information","obj_street": "Lauterberger Str","obj_lift": "n","obj_depositLink": "n","obj_baseRentRange": "3","obj_streetPlain": "Lauterberger_Str","obj_typeOfFlat": "raised_ground_floor","obj_noRooms": "2.5","obj_assistedLiving": "n","obj_ityp": "0,active","obj_telekomInternetAvailable": "true","geo_land": "deutschland","obj_immotype": "wohnung_miete","obj_privateOfferInvestmentCheck": "false","obj_contactFormInputFieldCount": "22","obj_floor": "0","obj_telekomInternetSpeed": "250 MBit/s","obj_cwId": "009.62a83171-bf6a-4eb2-858e-d6e01b2d7d29","geo_bg": "neukölln_bezirk","obj_noRoomsRange": "2","obj_garden": "n","obj_regio4": "Britz","obj_barrierFree": "n","obj_international": "n","obj_regio3": "Neukölln_Bezirk","obj_objectnumber": "350127","obj_livingSpaceRange": "2","obj_regio2": "Berlin"},"basicInfo": {"reportUrl": "https://angebot-melden.immobilienscout24.de/report?realEstateId=160531543&publicationState=live","id": "160531543","title": "Tauschwohnung: 2,5 Zimmer Hochparterre direkt am Teltowkanal","pictures": [{"urlScaleAndCrop": "https://pictures.immobilienscout24.de/listings/af8d5720-26b0-4eee-80e8-b7bc1529c7f3-1922754470.png/ORIG/legacy_thumbnail/%WIDTH%x%HEIGHT%/format/webp/quality/80"}],"titlePicture": {"preview": "https://pictures.immobilienscout24.de/listings/af8d5720-26b0-4eee-80e8-b7bc1529c7f3-1922754470.png/ORIG/resize/800x600>/format/webp/quality/20","full": "https://pictures.immobilienscout24.de/listings/af8d5720-26b0-4eee-80e8-b7bc1529c7f3-1922754470.png/ORIG/resize/800x600>/format/webp/quality/80"},"address": {"line": "Lauterberger Str 5, 12347 Berlin, Britz (Neukölln)","lat": 52.4579,"lon": 13.428},"isProject": false,"isPrivate": false,"listingType": "L","published": "a month ago","isNewObject": false,"liveVideoTourAvailable": false,"listOnlyOnIs24": false,"attributes": [{"label": "","value": "€414"},{"label": "","value": "59 m²"},{"label": "","value": "2.5 rms"}],"realEstateType": "apartmentrent","realtor": {"logoUrlScale": "https://pictures.immobilienscout24.de/usercontent/673f597c-5c74-4405-b30d-522c850afc4e.PNG/ORIG/resize/%WIDTH%x%HEIGHT%%3E/format/webp/quality/80"},"tags": [],"url": "https://api.mobile.immobilienscout24.de/expose/160531543"}}
Output Fields Explanation
The following field reference applies to the Germany sample JSON above (header, sections, nested expose fields). Austrian listings use a different schema; see Austria Output Fields.
Header Section
header.id(String): Unique ImmoScout24 property identifier (e.g., "160531543")header.title(String): The section title, typically "Description"header.fraudReportUrl(String): URL for reporting suspicious listings to ImmoScout24header.displayStatusIcon(Boolean): Whether to display status indicatorsheader.shareMessage(String): Pre-formatted sharing message with property detailsheader.publicationState(String): Current listing status ("active", "inactive", etc.)header.realEstateType(String): Type of real estate ("apartmentrent", "houserent", etc.)
Sections Array
The sections array contains various content blocks with different types:
MEDIA Section
sections[].type(String): "MEDIA" - Contains property images and mediasections[].media[].type(String): Media type ("PICTURE", "VIDEO", etc.)sections[].media[].caption(String): Image caption or watermark textsections[].media[].previewImageUrl(String): Thumbnail/preview image URLsections[].media[].imageUrlForWeb(String): Web-optimized image URL templatesections[].media[].fullImageUrl(String): Full-resolution image URLsections[].media[].generatedImages(Array): Additional generated image variations
TOP_ATTRIBUTES Section
sections[].type(String): "TOP_ATTRIBUTES" - Key property highlightssections[].attributes[].label(String): Attribute label (e.g., "Basic rent €7.02/m²")sections[].attributes[].text(String): Attribute value (e.g., "€414")sections[].attributes[].type(String): Display type ("TEXT", "CHECK", "LINK")sections[].attributes[].highlighted(Boolean): Whether the attribute is emphasized
TITLE Section
sections[].type(String): "TITLE" - Property titlesections[].title(String): Full property title/headline
RELOCATION Section
sections[].type(String): "RELOCATION" - Relocation service informationsections[].text(String): Main relocation text (e.g., "How much would relocation cost?")sections[].subText(String): Additional relocation text (e.g., "Get free offers")sections[].reference.label(String): Reference button labelsections[].reference.url(String): Relocation service URLsections[].reference.type(String): Reference type ("URL_LINK")sections[].reference.target(String): Link target ("INTERNAL", "WEB_INTERNAL")sections[].reference.trackingConfig(Object): Analytics tracking configuration
MAP Section
sections[].type(String): "MAP" - Location and mapping datasections[].title(String): Section title ("Map")sections[].location.lat(Number): Latitude coordinatesections[].location.lng(Number): Longitude coordinatesections[].addressLine1(String): Street addresssections[].addressLine2(String): City, postal code, and districtsections[].zipCodeShapes(Array): Geographic boundary datasections[].enableEnterFullAddressAction(Boolean): Whether full address entry is enabled
TRAVELTIME Section
sections[].type(String): "TRAVELTIME" - Transportation and commute informationsections[].isBlocked(Boolean): Whether travel time calculation is blockedsections[].exposeId(String): Property ID for travel time calculationssections[].address(String): Full address for travel calculationssections[].location(Object): Coordinates for travel time calculations
ATTRIBUTE_LIST Sections
Main Criteria:
sections[].type(String): "ATTRIBUTE_LIST"sections[].title(String): "Main criteria"sections[].attributes[].type(String): Attribute type ("TEXT", "CHECK", "LINK")sections[].attributes[].label(String): Criteria label (e.g., "Apartment type:", "Floor:")sections[].attributes[].text(String): Criteria value (e.g., "Raised ground floor", "0")
Costs:
sections[].title(String): "Costs"sections[].attributes[].label(String): Cost type (e.g., "Net rent (plus ancillary costs):")sections[].attributes[].text(String): Cost amount (e.g., "€414")sections[].attributes[].additionalInfoText(String): Additional cost information
Building Details & Energy Certificate:
sections[].title(String): "Building details & energy certificate"sections[].attributes[].label(String): Building detail typesections[].attributes[].text(String): Building detail value
LINK Type Attributes (in any ATTRIBUTE_LIST):
sections[].attributes[].reference.type(String): Reference type ("URL_LINK")sections[].attributes[].reference.label(String): Link button textsections[].attributes[].reference.url(String): Target URLsections[].attributes[].reference.target(String): Link target ("WEB_INTERNAL", "INTERNAL")sections[].attributes[].reference.iconUrl(String): Icon URL for the linksections[].attributes[].reference.secondaryLabel(String): Additional label textsections[].attributes[].reference.additionalInfoText(String): Additional information textsections[].attributes[].reference.trackingConfig(Object): Analytics tracking configurationsections[].attributes[].reference.additionalInfoForIcon(Object): Icon additional informationsections[].attributes[].reference.onClickTrackingTag(String): Click tracking tag
PREMIUM_ADDITIONAL_INFO Section
sections[].type(String): "PREMIUM_ADDITIONAL_INFO" - Premium membership informationsections[].title(String): Section title (e.g., "Plus Members know more")sections[].isExposeBuy(Boolean): Whether this is a purchase listingsections[].chancenCheck.enabled(Boolean): Whether chance check is enabledsections[].chancenCheck.title(String): Chance check titlesections[].chancenCheck.publishedLabel(String): Published label textsections[].chancenCheck.visitedLabel(String): Visited label textsections[].chancenCheck.shortlistedLabel(String): Shortlisted label textsections[].chancenCheck.contactedLabel(String): Contacted label textsections[].competitionAnalysis.enabled(Boolean): Whether competition analysis is enabledsections[].competitionAnalysis.title(String): Competition analysis titlesections[].competitionAnalysis.plusUser.label(String): Plus user labelsections[].competitionAnalysis.plusUser.count(Number|null): Plus user countsections[].competitionAnalysis.basicUser.label(String): Basic user labelsections[].competitionAnalysis.basicUser.count(Number|null): Basic user countsections[].competitionAnalysis.totalUserCount(Number|null): Total user countsections[].competitionAnalysis.description(String): Analysis descriptionsections[].competitionAnalysis.activationLabel(String): Activation labelsections[].competitionAnalysis.quickCartUrl(String): Quick cart URLsections[].competitionAnalysis.trackingConfig(Object): Tracking configurationsections[].quickCartButton.enabled(Boolean): Whether quick cart button is enabledsections[].quickCartButton.label(String): Button labelsections[].quickCartButton.url(String): Button URLsections[].quickCartButton.trackingConfig(Object): Button tracking configurationsections[].visits(Number|null): Visit countsections[].contactRequests(Number|null): Contact request countsections[].shortlistAddEvents(Number|null): Shortlist add events countsections[].prospectiveCustomersCount.basic(Number|null): Basic customer countsections[].prospectiveCustomersCount.premium(Number|null): Premium customer countsections[].prospectiveCustomersCount.total(Number|null): Total customer countsections[].newExposeHoursThreshold(Number|null): New expose hours thresholdsections[].calculated(Boolean|null): Whether calculatedsections[].privateOffer(Boolean|null): Whether private offersections[].onlineSince(String|null): Online since date
TEXT_AREA Section
sections[].type(String): "TEXT_AREA" - Long-form text contentsections[].title(String): Section title (e.g., "Property description")sections[].collapseAfterLines(Number): Lines after which text collapsessections[].text(String): Full text content with line breaks
PRICE_INFO Section
sections[].type(String): "PRICE_INFO" - Price comparison and market datasections[].title(String): "Information about price and location"sections[].attributes(Array): Additional price-related attributessections[].priceBar.minPrice(String): Minimum price in area (e.g., "€5.30 /m²")sections[].priceBar.maxPrice(String): Maximum price in area (e.g., "€19.40 /m²")sections[].priceBar.minSimilarPrice(String): Minimum similar property pricesections[].priceBar.maxSimilarPrice(String): Maximum similar property pricesections[].priceBar.actualObject(String): This property's price positionsections[].priceBar.priceIndicatorPositionInPercent(Number): Price position as percentagesections[].calculationInformation.title(String): Calculation information titlesections[].calculationInformation.offersLowerSimilarPrice(String): Percentage of lower-priced offerssections[].calculationInformation.offersWithSimilarPrice(String): Percentage of similarly-priced offerssections[].calculationInformation.offersHigherSimilarPrice(String): Percentage of higher-priced offers
HOMEOWNER Section
sections[].type(String): "HOMEOWNER" - Homeowner service informationsections[].title(String): Section title (e.g., "Rent out with Tauschwohnung GmbH")sections[].text(String): Service description textsections[].featuredBarColor(String): Featured bar color (hex code)sections[].logoUrl(String): Company logo URLsections[].reference.label(String): Reference button labelsections[].reference.url(String): Reference URLsections[].reference.type(String): Reference type ("BUTTON")sections[].reference.target(String): Link target ("WEB_INTERNAL")sections[].trackingConfig.title(String): Tracking titlesections[].trackingConfig.category(String): Tracking categorysections[].trackingConfig.action(String): Tracking actionsections[].trackingConfig.label(String): Tracking label
REFERENCE_LIST Section
sections[].type(String): "REFERENCE_LIST" - Links and referencessections[].title(String): Section title (e.g., "Services consistent with the flat")sections[].references[].type(String): Reference type ("BUTTON", "URL_LINK")sections[].references[].label(String): Link labelsections[].references[].url(String): Target URLsections[].references[].target(String): Link target ("WEB_INTERNAL", "WEB", "INTERNAL")sections[].references[].trackingConfig(Object): Analytics tracking configurationsections[].references[].additionalInfoForIcon.title(String): Icon info titlesections[].references[].additionalInfoForIcon.text(String): Icon info textsections[].references[].additionalInfoForIcon.buttonText(String): Icon info button textsections[].references[].additionalInfoForIcon.buttonUrl(String): Icon info button URLsections[].references[].additionalInfoForIcon.iconUrl(String): Icon URL
AGENTS_INFO Section
sections[].type(String): "AGENTS_INFO" - Real estate agent informationsections[].title(String): "Agent's info"sections[].company(String): Company namesections[].name(String): Agent namesections[].logoUrl(String): Company logo URLsections[].verifiedBy(Array): Verification badges and certificationssections[].dsaSelfDeclaration.text(String): Legal compliance declarationsections[].portraitUrl(String): Agent portrait image URLsections[].address(String): Agent's business addresssections[].references(Array): Agent contact links (imprint, homepage)sections[].immoPartnerBadge.badgeUrl(String): Partner badge imagesections[].immoPartnerBadge.linkUrl(String): Partner information link
OBJECT_INFO Section
sections[].type(String): "OBJECT_INFO" - Property identificationsections[].text(String): Scout ID and Property ID information
FRAUD_REPORT Section
sections[].type(String): "FRAUD_REPORT" - Fraud reporting functionalitysections[].text(String): Fraud report prompt textsections[].reference.label(String): Report button labelsections[].reference.url(String): Fraud report URL
AD Section
sections[].type(String): "AD" - Advertisement placementsections[].ad.id(String): Advertisement slot identifier
Contact Section
contact.type(String): "CONTACT" - Contact informationcontact.callButtonLabel(String): Phone call button textcontact.mailButtonLabel(String): Email contact button textcontact.messengerButtonLabel(String): Messenger contact button textcontact.premiumProfileRequiredForContacting(String): Premium requirement statuscontact.phoneNumbers(Array): Available phone numberscontact.contactData.agent.name(String): Agent namecontact.contactData.agent.company(String): Agent companycontact.contactData.agent.rating(Object): Agent rating informationcontact.contactData.agent.logo(String): Agent logo URLcontact.contactData.agent.verifiedBy(Array): Agent verification statuscontact.contactData.agent.verifiedBy[].id(String): Verification badge ID (e.g., "TNS_REALTOR_BADGE")contact.contactData.agent.verifiedBy[].label(String): Verification label (e.g., "Identity verified")contact.contactData.agent.verifiedBy[].tooltip(String): Verification tooltip textcontact.contactData.agent.verifiedBy[].reference.label(String): Reference link labelcontact.contactData.agent.verifiedBy[].reference.url(String): Reference link URLcontact.contactData.agent.verifiedBy[].reference.type(String): Reference type ("URL_LINK")contact.contactData.agent.verifiedBy[].reference.target(String): Link target ("WEB_INTERNAL")
contact.contactData.realEstateType(String): Property type for contact formcontact.contactData.formFieldConfig(Object): Contact form field requirementscontact.contactData.formFieldConfig.petsInHouseholdField(String): Pets field requirement ("OPTIONAL", "MANDATORY")contact.contactData.formFieldConfig.numberOfResidentsField(String): Residents field requirementcontact.contactData.formFieldConfig.incomeAmountField(String): Income field requirementcontact.contactData.formFieldConfig.firstnameField(String): First name field requirementcontact.contactData.formFieldConfig.lastnameField(String): Last name field requirementcontact.contactData.formFieldConfig.phoneNumberField(String): Phone field requirementcontact.contactData.formFieldConfig.emailAddressField(String): Email field requirementcontact.contactData.formFieldConfig.addressField(String): Address field requirementcontact.contactData.formFieldConfig.salutationField(String): Salutation field requirementcontact.contactData.formFieldConfig.messageField(String): Message field requirementcontact.contactData.formFieldConfig.rentArrears(String): Rent arrears field requirementcontact.contactData.formFieldConfig.insolvencyProcess(String): Insolvency field requirementcontact.contactData.formFieldConfig.smoker(String): Smoker field requirementcontact.contactData.formFieldConfig.commercialPurposes(String): Commercial purposes field requirement
contact.contactData.isExposeBuy(Boolean): Whether this is a purchase listingcontact.clickOutUrl(String): External contact URL
Tracking Section
tracking.realEstateType(String): Property type for analyticstracking.parameters(Object): Comprehensive tracking parameters including:obj_scoutid(String): Property Scout IDobj_nbp(String): New building project status ("true"/"false")obj_ityp(String): Internal type classificationobj_totalRent(String): Total rent amountobj_baseRent(String): Base rent amountobj_listFirstStatus(String): First listing status ("true"/"false")ga_cd_cxp_interactivepic(String): Interactive picture status ("true"/"false")geo_land(String): Country ("deutschland")geo_bln(String): Federal stategeo_krs(String): District/regionobj_ExclusiveExpose(String): Exclusive expose status ("true"/"false")obj_privateOffer(String): Private offer status ("true"/"false")ga_cd_via(String): Via parameter for analyticsga_cd_application_requirements(String): Application requirements classificationga_cd_customer_group(String): Customer group classificationobj_commissionsettings(String): Commission settings
Ad Targeting Parameters
adTargetingParameters(Object): Extensive targeting data for advertisements:obj_regio1(String): Primary region (e.g., "Berlin")obj_regio2(String): Secondary region (e.g., "Berlin")obj_regio3(String): Tertiary region (e.g., "Neukölln_Bezirk")obj_regio4(String): Quaternary region (e.g., "Britz")obj_serviceCharge(String): Service charges amountobj_totalRent(String): Total rent amountobj_baseRent(String): Base rent amountobj_livingSpace(String): Living space in m²obj_noRooms(String): Number of roomsobj_noRoomsRange(String): Room number range classificationobj_floor(String): Floor numberobj_balcony(String): Balcony availability ("y"/"n")obj_cellar(String): Cellar availability ("y"/"n")obj_hasKitchen(String): Kitchen availability ("y"/"n")obj_garden(String): Garden availability ("y"/"n")obj_lift(String): Elevator availability ("y"/"n")obj_zipCode(String): Postal codeobj_street(String): Street nameobj_streetPlain(String): Street name in plain formatobj_houseNumber(String): House numberobj_typeOfFlat(String): Apartment type (e.g., "raised_ground_floor")obj_immotype(String): Property category (e.g., "wohnung_miete")obj_scoutId(String): ImmoScout24 property IDobj_objectnumber(String): Internal object numberobj_cId(String): Customer/company IDobj_cwId(String): Customer web IDobj_newlyConst(String): Newly constructed status ("y"/"n")obj_picturecount(String): Number of picturesobj_privateOffer(String): Private offer status ("true"/"false")obj_ExclusiveExpose(String): Exclusive expose status ("true"/"false")obj_firingTypes(String): Heating/firing types (e.g., "no_information")obj_condition(String): Property condition (e.g., "no_information")obj_interiorQual(String): Interior quality (e.g., "no_information")obj_highDemand(String): High demand status ("true"/"false")obj_petsAllowed(String): Pets allowed status (e.g., "no_information")obj_depositLink(String): Deposit link status ("y"/"n")obj_baseRentRange(String): Base rent range classificationobj_livingSpaceRange(String): Living space range classificationobj_assistedLiving(String): Assisted living availability ("y"/"n")obj_barrierFree(String): Barrier-free accessibility ("y"/"n")obj_international(String): International listing status ("y"/"n")obj_ityp(String): Internal type classificationobj_privateOfferInvestmentCheck(String): Private offer investment check ("true"/"false")obj_contactFormInputFieldCount(String): Number of contact form input fieldsobj_telekomInternetAvailable(String): Telekom internet availability ("true"/"false")obj_telekomInternetSpeed(String): Internet speed (e.g., "250 MBit/s")obj_telekomInternetUrlBase(String): Base URL for Telekom internet servicesobj_telekomInternetUrlAddition(String): Additional URL parameters for Telekom servicesgeo_land(String): Country ("deutschland")geo_bln(String): Federal stategeo_krs(String): District/regiongeo_ot(String): Local area (e.g., "britz")geo_bg(String): Borough/district (e.g., "neukölln_bezirk")
Basic Info Section
basicInfo.reportUrl(String): Fraud report URLbasicInfo.id(String): Property IDbasicInfo.title(String): Property titlebasicInfo.pictures(Array): Property image URLsbasicInfo.titlePicture.preview(String): Preview image URLbasicInfo.titlePicture.full(String): Full-size title image URLbasicInfo.address.line(String): Full address linebasicInfo.address.lat(Number): Latitude coordinatebasicInfo.address.lon(Number): Longitude coordinatebasicInfo.isProject(Boolean): Whether this is a development projectbasicInfo.isPrivate(Boolean): Whether this is a private listingbasicInfo.listingType(String): Listing type codebasicInfo.published(String): Publication time (e.g., "a month ago")basicInfo.isNewObject(Boolean): Whether this is a new constructionbasicInfo.liveVideoTourAvailable(Boolean): Live video tour availabilitybasicInfo.listOnlyOnIs24(Boolean): Exclusive to ImmoScout24basicInfo.attributes(Array): Key property attributes (rent, size, rooms)basicInfo.realEstateType(String): Property typebasicInfo.realtor.logoUrlScale(String): Realtor logo URLbasicInfo.tags(Array): Property tags and labelsbasicInfo.url(String): API URL for this property
Austria (AT) Support
immobilienscout24.at is fully supported alongside immobilienscout24.de. Austrian listings use a separate API and JSON model from Germany; the actor selects the correct pipeline based on each startUrl host.
Supported Features
- Search URLs: Regional and filter URLs from
immobilienscout24.atare resolved to AT search/detail API calls - Detail data: Full property payloads from the AT property API (merged with
basicInfoand actor fields such asscrapedAt,url,detailApiUrl) - Pagination: AT listing pages use offset/limit style parameters (
from/size), not the Germanpagenumberflow - Monitoring Mode: Supported for AT listings (deduplication is scoped per search URL)
Example AT Input URL
https://www.immobilienscout24.at/regional/wien/wien/4-bezirk-wieden/wohnung-bis-100-m2-kaufen/aktualitaet?conditionType=FULLY_RENOVATED%2CMODERNIZED%2CREFURBISHED%2CMINT_CONDITION%2CFIRST_TIME_USE&primaryAreaFrom=60&primaryPriceTo=1500000
Sample Austria Output
{"meta": {"account": {"cwid": "012.0012000001E3r8L","ssoIds": ["111288989"],"ssoId": "111288989"},"hasChildren": false,"transmission": {"software": "JUSTIMMO"},"exposeActive": true,"exposeId": "699b6e9f38f831cc11bedeb8","privateInsertion": false,"searchActive": true,"creation": {"date": "2026-03-24T21:01:21.985Z"},"originalId": "699b6e9f38f831cc11bedeb8","auditing": {"updatedAt": "2026-03-01T02:38:32.737Z"},"parentId": "662b625a13c0e9bc54f145fe","features": {"RANKING": {"value": 45,"type": "REGULAR"},"BADGES_ON_EXPOSE": ["ESTATE_DETAIL_TYPE","OLDBUILDING"],"BADGES_ON_RESULTLIST": ["NEW","OLDBUILDING"],"LOGO_ON_EXPOSE": {"url": "https://pictures.immobilienscout24.de/prod.www.immobilienscout24.at/pictureserver/loadPicture?id=111288989-012.0012000001E3r8L-logo-a32c43388fdd4272a9f43f10d87c6056"},"LOGO_ON_RESULTLIST": {"url": "https://pictures.immobilienscout24.de/prod.www.immobilienscout24.at/pictureserver/loadPicture?id=111288989-012.0012000001E3r8L-logo-a32c43388fdd4272a9f43f10d87c6056"},"SCOUTBOOST_MONTHLY": {"active": true},"BRAND_BAR": {"textColor": "#ffffff","backgroundColor": "#0d2240"},"REALTOR_PROFILE_PRO": {"active": true},"EXCLUSIVE_EXPOSE": {"adServerId": "ADS0017892627"},"FULFILLMENT_BOOST": {"active": true},"REALTOR_BADGE": {"active": true,"type": "GOLD"},"SUPER": {"active": true},"INSERTION": {"active": true},"BADGES": [{"type": "REGULAR","shownOn": ["RESULTLIST"],"details": {"value": "NEW"}},{"type": "REGULAR","shownOn": ["RESULTLIST","EXPOSE"],"details": {"value": "OLDBUILDING"}},{"type": "REGULAR","shownOn": ["EXPOSE"],"details": {"value": "ESTATE_DETAIL_TYPE"}},{"type": "TRANSIT","shownOn": ["RESULTLIST"],"details": {"lines": ["U1"],"stop": "Taubstummengasse"}},{"type": "TRANSIT","shownOn": ["RESULTLIST"],"details": {"lines": ["U4"],"stop": "Pilgramgasse"}}]},"popularity": {"score": 0},"ranking": 2328058718015,"search": {},"augmentations": {"condition.type": {"value": "REFURBISHED","citation": "zum Teil saniert","citationSource": "description.descriptionNote","source": "AI"},"object.isRented": {"value": true,"citation": "Unbefristet vermietete Dachgeschosswohnung","citationSource": "description.title","source": "AI"}}},"type": {"useType": "RESIDENTIAL","transferType": "BUY","estateType": "APARTMENT","estateDetailType": "APARTMENT","propertyTypeAttribute": {"isInvestmentProperty": true,"isShorttermRentable": false,"isVacationProperty": false}},"object": {"showAddress": true,"socialHousing": false,"realtorObjectID": "21903","tourOptions": [],"isRented": true},"priceInformation": {"hasPriceOnRequest": false,"included": {},"validityOfQuotation": {},"hasCommission": true,"commissionNote": "3% des Kaufpreises zzgl. 20% USt.","currency": "EUR","prices": {"buy": {"gross": 319000,"total": 319000},"externalCommission": {"note": "3% des Kaufpreises zzgl. 20% USt."},"priceRange": {"from": 319000,"to": 319000},"buyPerSquareMeter": {"total": 3877.01,"isCalculated": true}},"costs": {"monthlyCosts": {"gross": 181.29,"net": 164.81,"tax": 16.48},"operationalCosts": {"net": 137.03,"total": 137.03,"tax": 13.7},"miscCosts": {"net": 27.78,"tax": 2.78}},"income": {},"primaryPriceInformation": "buy","primaryPrice": 319000},"area": {"effectiveArea": 82.28,"livingArea": 82.28,"numberOfRooms": 2,"numberOfBathrooms": 1,"numberOfToilets": 1,"parking": {},"primaryAreaInformation": "livingArea","primaryArea": 82.28,"outdoorSpaces": [],"areaRangeFrom": 82.28,"areaRangeTo": 82.28},"fitting": {"suitableForSharedApartment": false,"roomsModifiable": false,"bathroom": [],"kitchen": ["OPEN_KITCHEN"],"floor": ["TILES","PARQUET"],"facilities": [],"heatingType": [],"firingType": ["GAS"],"lift": ["LIFT"],"balconyTerraceOrientation": [],"distances": {},"accessibility": [],"communication": [],"gastronomy": [],"serviceFeature": [],"broadband": {},"securityTechnology": [],"shapeOfRoof": [],"constructionMethod": [],"energyType": [],"numberOfParkingSpaces": 0},"condition": {"yearOfConstruction": "1900","age": "OLDBUILDING","energyCertification": {"type": "REQUIREMENT","validTo": "2032-10-27","heatingDemand": "71.2","heatingDemandClass": "C"},"buildingCertificates": [],"type": "REFURBISHED"},"contact": {"salutation": "Herr","firstName": "Lucas","lastName": "Carlsen","personNumber": "40225644","position": "Immobilienvermittlung","contactPicture": {"url": "https://pictures.immobilienscout24.de/prod.www.immobilienscout24.at/pictureserver/loadPicture?q=70&id=012.0012000001E3r8L-5ced8dc1d52746049d051d3a40d9c2d8"},"phone": {"fax": "+43 1 607 55 80","mobile": "+43 699 10 34 29 38","main": "+43 1 607 58 58 - 80"},"company": {"name": "3SI Makler GmbH","url": "https://www.3si.at","contractHolderName": "3SI Makler GmbH"},"isAddressDisplayed": true,"contactAddress": {"country": "AUT","city": "Wien","zip": "1010","street": "Tegetthoffstraße 7","postOfficeBox": {}}},"localization": {"address": {"zip": "1040","city": "Wien","street": "Leibenfrostgasse","streetNumber": "8","state": "Wien","countryCode": "AT"},"information": {"floor": 5,"numberOfFloors": 7,"apartmentNumber": "29"},"external": {"geo": {"lat": 48.1899847,"lon": 16.3638232}},"geo": {"lat": 48.1899847,"lon": 16.3638232},"geoMeta": {"source": "EXTERNAL"},"geoHierarchy": ["009","009001","009001004"],"shapeIds": ["S040-202130","1040009","1040009001","1040009001004","P040-1040","1040009001004003"],"geoKey": "48.1899847_16.3638232","location": {"lat": 48.1899847,"lon": 16.3638232,"type": "POINT"},"transit": {"stops": [{"name": "Wien Leibenfrostgasse","distance": 53,"lines": [{"line": "13A","type": "BUS"}]},{"name": "Wien Johann-Strauß-Gasse","distance": 170,"lines": [{"line": "1","type": "TRAM"},{"line": "62","type": "TRAM"},{"line": "BB","type": "TRAM"},{"line": "13A","type": "BUS"},{"line": "303","type": "BUS"},{"line": "N62","type": "MISCELLANEOUS"}]},{"name": "Wien Ziegelofengasse","distance": 378,"lines": [{"line": "13A","type": "BUS"},{"line": "59A","type": "BUS"},{"line": "N71","type": "MISCELLANEOUS"}]},{"name": "Wien Margaretenplatz","distance": 456,"lines": [{"line": "12A","type": "BUS"},{"line": "59A","type": "BUS"}]},{"name": "Wien Taubstummengasse","distance": 651,"lines": [{"line": "U1","type": "SUBWAY"},{"line": "N66","type": "MISCELLANEOUS"}]},{"name": "Wien Pilgramgasse","distance": 753,"lines": [{"line": "U4","type": "SUBWAY"},{"line": "12A","type": "BUS"},{"line": "13A","type": "BUS"},{"line": "14A","type": "BUS"},{"line": "N60","type": "MISCELLANEOUS"},{"line": "N71","type": "MISCELLANEOUS"}]}]},"hexagons": ["8a1e15b7325ffff"]},"project": {"objectState": "AVAILABLE"},"pictures": [{"title": "","contentType": "","url": "https://pictures.immobilienscout24.de/prod.www.immobilienscout24.at/pictureserver/loadPicture?q=70&id=012.0012000001E3r8L-1714124615-af27d178041241b9b40a097bb6c54f52","isTitlePicture": true,"type": "IMAGE","lastUpdated": "2024-04-26T09:43:35","tags": ["amenities-standard","old-building","massive-construction","city-views","aristocratic","big-windows"],"caption": "Historisches Gebäude mit klassischer Architektur und reich verzierten Fassadendetails an einer belebten Straße."},{"title": "","contentType": "","url": "https://pictures.immobilienscout24.de/prod.www.immobilienscout24.at/pictureserver/loadPicture?q=70&id=012.0012000001E3r8L-1727165897-e66a2a4e82024e06a209cfe1b2befe96","isTitlePicture": false,"type": "IMAGE","lastUpdated": "2024-09-24T08:18:17","tags": ["amenities-standard","old-building","massive-construction","city-views","aristocratic","corner-unit","big-windows"],"caption": "Eindrucksvolles Eckgebäude mit historischer Architektur und vielen Fenstern in einer städtischen Umgebung."},{"title": "","contentType": "","url": "https://pictures.immobilienscout24.de/prod.www.immobilienscout24.at/pictureserver/loadPicture?q=70&id=012.0012000001E3r8L-1714124613-9ae1679158744a8ba0699642e628ac90","isTitlePicture": false,"type": "IMAGE","lastUpdated": "2024-04-26T09:43:33","tags": ["amenities-standard","old-building","massive-construction","city-views","aristocratic","corner-unit","big-windows"],"caption": "Klassisches Eckgebäude mit eleganter Fassade und vielen Fenstern an einer städtischen Kreuzung."},{"title": "","contentType": "","url": "https://pictures.immobilienscout24.de/prod.www.immobilienscout24.at/pictureserver/loadPicture?q=70&id=012.0012000001E3r8L-1714124618-98adb8002ced48e7b088d95041aa8f7e","isTitlePicture": false,"type": "IMAGE","lastUpdated": "2024-04-26T09:43:38","tags": ["amenities-upscale","flooring-marble","ornate-ceiling","high-ceilings","aristocratic","natural-light","white-hallway"],"caption": "Eleganter Eingangsbereich mit Marmorboden, Stuckdetails und klassischer Beleuchtung."},{"title": "","contentType": "","url": "https://pictures.immobilienscout24.de/prod.www.immobilienscout24.at/pictureserver/loadPicture?q=70&id=012.0012000001E3r8L-1714124620-af925cad85f74f9ebba8ea023d44fdca","isTitlePicture": false,"type": "IMAGE","lastUpdated": "2024-04-26T09:43:40","tags": ["amenities-upscale","old-building","flooring-tile","aristocratic","beige-hallway"],"caption": "Historisches Treppenhaus mit elegantem Geländer und gemusterten Fliesen auf den Stufen."},{"title": "","contentType": "","url": "https://pictures.immobilienscout24.de/prod.www.immobilienscout24.at/pictureserver/loadPicture?q=70&id=012.0012000001E3r8L-1709675653-06246d1acda642b084ad2bedc45e2940","isTitlePicture": false,"type": "IMAGE"