Scraping Bot Animated

scrapingbot

idealista Scraper API

Extract structured property data from public idealista pages as JSON. Send a listing URL and receive the fields exposed by the target page.

Get your API keyRead the documentation1,000 free credits per month, no card required.

Decide before you build

Endpoint
POST /scrape/real-estate
Scrapers
idealista property listing pages
Cost
from 1 credit / call
Free plan
1,000 credits / month
Call pattern
sync, POST
On failure
credits refunded
Response format
JSON
Concurrency
by plan tier

Real Estate requests are synchronous. Cost depends on the options selected for the request.

Try the idealista scraper on your own targetRun a request against a public property listing page and inspect the JSON before you integrate.

Open the live test

What you get back

property data

idealista data in JSON

Retrieve the property information exposed by the public idealista page.

  • Listing title, description and images
  • Price, currency and property type when available
  • Location, surface area and room details
  • Agency and listing publication data when available
Request options

Control how the page is collected

Use rendering or proxy options only when the target requires them.

  • JavaScript rendering with useChrome
  • Premium proxy and country targeting
  • Public URL input; no account login required
  • Structured JSON in the same response

Call the idealista scraper

Send a public listing URL to the Real Estate endpoint. The API returns the result in the same response.

Step 1Submit the idealista listing URL and only the options required by the target.
bash
# POST - scrape a public property listing page
curl -X POST "https://api.scraping-bot.io/scrape/real-estate" \
  -u "yourUsername:yourApiKey" \
  -H "Content-Type: application/json" \
  -d '{
  "url": "https://example.com/listing/123",
  "options": {
    "useChrome": false,
    "premiumProxy": false
  }
}'

Code example

Authenticate with your ScrapingBot username and API key, then read the returned JSON.

const auth = "Basic " + Buffer.from("yourUsername:yourApiKey").toString("base64");

const response = await fetch("https://api.scraping-bot.io/scrape/real-estate", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: auth },
  body: JSON.stringify({ url: "https://example.com/listing/123", options: { useChrome: false, premiumProxy: false } }),
});

const result = await response.json();

Run this call in two minutesCreate an account, copy your API key, then use the example above.

Get your API key

Request parameters

ParameterTypeDefaultDescription
urlstring—Full public page URL, including https://.
options.useChromebooleanfalseRender JavaScript when the target page requires a browser.
options.premiumProxybooleanfalseUse a premium proxy for targets that require it.
options.proxyCountrystring—Country targeting with a premium proxy.

Response example

Example returned by the legacy idealista scraper documentation.

json
{
    "data": {
        "title": "Property for sale in Lloret de Mar, Gerona, Spain: houses and flats — idealista",
        "description": "2,376 listings of houses and flats for sale in Lloret de Mar, Spain, from 24,500 euros. Houses and flats for sale in Lloret de Mar from private owners and real estate agents.",
        "parcelSurfaceArea": null,
        "surfaceArea": null,
        "surfaceAreaUnit": null,
        "price": null,
        "currency": "EUR",
        "numberOfRooms": null,
        "numberOfBedrooms": null,
        "publishingDate": null,
        "monthlyRent": null,
        "weeklyRent": null,
        "marketedBy": {},
        "energyClass": null,
        "greenhouseGazClass": null,
        "buildYear": null,
        "postalCode": null,
        "city": null,
        "image": [],
        "insulation": null,
        "siteURL": "https://www.idealista.com/en/venta-viviendas/lloret-de-mar-girona/",
        "siteHtml": null,
        "statusCode": 200,
        "htmlLength": 345448,
        "captchaFound": true,
        "isHtmlPage": true,
        "host": "www.idealista.com"
    }
}

Credits, failures and limits

CaseCreditsNotes
Standard requestfrom 1 credit / callCurrent plans start at this rate.
JavaScript renderingAdditional creditsEnable only when the target requires it.
Premium proxyAdditional creditsUse for targets that require a premium proxy.
Unsuccessful requestNot deductedOnly successful requests count towards the monthly limit.

Real Estate API or Raw HTML scraper?

Real Estate APIRaw HTML scraper
Endpoint/scrape/real-estate/scrape/raw-html
ReturnsStructured property JSONRendered page HTML
FlowOne synchronous requestOne synchronous request
Starting costfrom 1 credit / callfrom 1 credit / call
Use it whenYou need parsed property fieldsYou need your own extraction logic

Questions about the idealista API

Does the idealista scraper access private data?
No. This guide covers public property listing pages and does not require signing in to a idealista account.
Are all fields always available?
No. Returned data depends on what the public idealista page exposes and what the extractor supports.
Can I collect multiple pages at once?
Each request takes one public URL. Submit one request per page you need to collect.
When should I use a premium proxy?
Use it only when a target requires it or when you need country targeting for a public page.

Source: ScrapingBot API documentation.

Other real estate scrapers

Browse the Real Estate category for the complete list of guides, or visit the ScrapingBot blog for implementation guides.

4.9
★★★★★
133 Google reviews

Trusted by developers using Real Estate data.
Customer reviews apply to ScrapingBot's service overall, not specifically to this scraper.

Start scraping idealista today

1,000 free credits every month. No card required, cancel anytime.