ZAP Imóveis Scraper — Brazil Property Data & API avatar

ZAP Imóveis Scraper — Brazil Property Data & API

Pricing

from $1.60 / 1,000 overview listings

Go to Apify Store
ZAP Imóveis Scraper — Brazil Property Data & API

ZAP Imóveis Scraper — Brazil Property Data & API

ZAP Imóveis scraper & real estate data API for one of Brazil's biggest property portals (Grupo OLX). Sale & rent listings: price, condo fee, IPTU, size, rooms, baths, suites, parking, address, GPS, photos, broker phone — clean JSON/CSV. Overview or detail. No API key needed.

Pricing

from $1.60 / 1,000 overview listings

Rating

0.0

(0)

Developer

SIÁN OÜ

SIÁN OÜ

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

2 days ago

Last modified

Share

ZAP Imóveis Scraper — Brazil Property Data & API 🇧🇷🏠

SIÁN Agency Store VivaReal Scraper Immobiliare Scraper Smart Idealista Scraper

🎉 The fast, no-code ZAP Imóveis data API — scrape a full property record per listing, no ZAP account or API key required

Built for property investors, brokers, proptech teams, and market researchers who need clean Brazilian real-estate data — for sale and for rent — across every city in Brazil.

📋 Overview

Pull listings from ZAP Imóveis — one of Brazil's biggest real-estate portals (Grupo OLX) — as clean JSON or CSV. For sale (venda) and for rent (aluguel), across São Paulo, Rio de Janeiro, Belo Horizonte, Curitiba, Brasília and every city in Brazil. Pick the depth that fits the job: a fast, low-cost overview scan for sizing a market, or the full per-property record with the authoritative description and complete photo gallery.

Why investors and brokers choose us:

  • Two depths, one actor: a fast Overview scan for whole-market sweeps, or full Detail records when you need the authoritative description and every photo
  • 🔁 Detail = Overview + more: every Overview field is on a Detail row too, with the authoritative price/title/description and complete media added on top — never less
  • 💰 Pay-per-result pricing: only charged for listings actually extracted — Overview and Detail priced separately
  • 📐 Analysis-ready: price, condo fee, IPTU, size in m², rooms, baths, suites, parking, price-per-m² and GPS coordinates on every row
  • 🎯 Three ways to search: by state + city, by a pasted ZAP Imóveis search URL (your filters honored), or by specific listing URLs
  • 📞 Broker contact built in: advertiser name and phone on every listing — instant lead lists
  • 🆓 Free to try: up to 25 listings per run, no credit card

✨ Features

  • 🧭 Overview mode: a full record per listing straight from the search API — price, condo fee, IPTU, specs, location, broker, photo gallery — ideal for fast market sweeps
  • 🔍 Detail mode: full per-listing record with the authoritative server-rendered price/title/description and the entire photo gallery
  • 🗺️ By place / search URL / listing URL: pick a state + city + sale/rent, paste a ZAP Imóveis search link, or drop in specific listings
  • 🎚️ Filters: contract (sale/rent), price range, min area, min bedrooms
  • 📐 Price-per-m² + thumbnail computed on every row for instant comparison
  • 📍 GPS + full address on every listing for mapping and territory analysis
  • 📞 Broker contact: advertiser name + phone on every listing — instant lead lists
  • 🧾 Self-documenting datasets: every row carries a metadata object recording the exact search settings that produced it
  • 📤 Clean exports: JSON, CSV, Excel, or the full REST API

🎬 Quick Start

Pick a scrape depth, choose how to search, set filters, and run. Results stream to the Apify dataset as clean JSON/CSV.

curl -X POST "https://api.apify.com/v2/acts/sian.agency~zapimoveis-property-scraper/runs?token=[YOUR_TOKEN]" \
-H 'Content-Type: application/json' \
-d '{"scrapeMode":"overview","searchMode":"byPlace","contract":"sale","state":"SP","city":"São Paulo","maxResults":50}'

🚀 Getting Started (3 Simple Steps)

Step 1: Pick your scrape depth

Overview for a fast, full-record scan, or Detail for the authoritative description and entire photo gallery.

By place (pick sale/rent + a state like SP and a city like São Paulo), By search URL (paste a ZAP Imóveis search link — filters honored), or By listing URL (detail mode — drop in specific listings).

Step 3: Set filters & run

Price range, min area, min bedrooms, Max results — then hit Start.

That's it! In under a minute, you'll have:

  • A clean dataset of Brazilian property listings (JSON / CSV / Excel)
  • Price, condo fee, IPTU, size, rooms, GPS, broker contact and price-per-m² on every row
  • A repeatable, no-code real-estate data feed

📥 Input Configuration

FieldTypeRequiredDescription
scrapeModestringNooverview (fast & cheap) or detail (authoritative description + all media). Default overview.
searchModestringNobyPlace, bySearchUrl, or byListingUrl (detail only).
contractstringNosale (venda) or rent (aluguel). Default sale.
statestringNoBrazilian state acronym (UF), e.g. SP, RJ (byPlace).
citystringNoCity name, e.g. São Paulo (byPlace).
searchUrlsarrayNoZAP Imóveis search URLs (bySearchUrl) — on-page filters honored.
listingUrlsarrayNoListing URLs (detail / byListingUrl).
maxResultsintegerNoMax listings this run. FREE tier capped at 25.
minPrice / maxPriceintegerNoPrice range filter (R$).
minArea / minRoomsintegerNoMinimum area (m²) / bedrooms.

Example — by place:

{
"scrapeMode": "overview",
"searchMode": "byPlace",
"contract": "sale",
"state": "SP",
"city": "São Paulo",
"maxPrice": 900000,
"minArea": 50,
"maxResults": 200
}

Example — by search URL:

{
"scrapeMode": "overview",
"searchMode": "bySearchUrl",
"searchUrls": ["https://www.zapimoveis.com.br/aluguel/imoveis/rj+rio-de-janeiro/"],
"maxResults": 100
}

📤 Output

Results are saved to the Apify dataset with 40+ fields including:

FieldTypeDescription
propertyTitlestringListing title
urlstringListing URL
business_typestringSALE or RENTAL
unit_typestringProperty type (APARTMENT, HOME, …)
pricenumberAsking price (R$)
condo_fee / iptunumberCondo fee + property tax (R$)
price_per_sqm_brlnumberPrice per m² (computed)
area / total_areanumberUsable / total area (m²)
bedrooms / bathrooms / suites / parkingnumberSpecs
city / state / neighborhood / zone / streetstringLocation rollup
latitude / longitudenumberGPS
advertiser_name / advertiser_phonestringBroker contact
amenities / images / thumbnailarray / stringAmenities + photo gallery
descriptionstringListing description (full in detail mode)

Example:

{
"id": "2528260885",
"propertyTitle": "Apartamento para comprar com 60 m², 2 quartos, 1 vaga",
"url": "https://www.zapimoveis.com.br/imovel/...-id-2528260885/",
"business_type": "SALE",
"unit_type": "APARTMENT",
"price": 525000,
"price_per_sqm_brl": 8750,
"area": 60,
"bedrooms": 2,
"bathrooms": 1,
"suites": 1,
"parking": 1,
"city": "São Paulo",
"state_acronym": "SP",
"neighborhood": "Jardim Ester",
"zone": "Zona Oeste",
"latitude": -23.55,
"longitude": -46.75,
"advertiser_name": "Imobiliária Exemplo",
"advertiser_phone": "1133334444",
"image_count": 18
}

💼 Use Cases & Examples

1. Market research & price benchmarking

Analysts sizing a city or neighbourhood market. Input: byPlace São Paulo, sale. Output: thousands of listings with price-per-m². Use: build a live price index per zone.

2. Investment sourcing

Investors hunting undervalued stock. Input: byPlace + maxPrice + minArea. Output: filtered listings with R$/m² and GPS. Use: rank deals by price-per-m² vs zone median.

3. Broker lead generation

Brokers building a contact list. Input: Overview scan of a target area. Output: advertiser_name and advertiser_phone on every row. Use: prospecting and competitive coverage.

4. Proptech & valuation data feeds

Proptech teams powering AVMs and dashboards. Input: scheduled bySearchUrl runs. Output: a clean, repeatable Brazilian real-estate data feed. Use: feed models without a ZAP Imóveis API.

5. Rental-yield models

Investors comparing rent vs sale stock. Input: byPlace rent + sale runs. Output: rent, condo fee, IPTU and price on every row. Use: compute gross/net yield by neighborhood.

6. Comparative market analysis (CMA)

Appraisers preparing valuations. Input: Detail mode on a set of comparable listings. Output: full description, complete media, specs. Use: defensible CMA inputs.

🔗 Integration Examples

JavaScript/Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('sian.agency/zapimoveis-property-scraper').call({
scrapeMode: 'overview', searchMode: 'byPlace', contract: 'sale', state: 'SP', city: 'São Paulo', maxResults: 50,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0]);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('sian.agency/zapimoveis-property-scraper').call(
run_input={'scrapeMode': 'overview', 'searchMode': 'byPlace', 'contract': 'sale', 'state': 'SP', 'city': 'São Paulo', 'maxResults': 50}
)
for item in client.dataset(run['defaultDatasetId']).iterate_items():
print(item)

cURL

curl -X POST 'https://api.apify.com/v2/acts/sian.agency~zapimoveis-property-scraper/runs?token=YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"scrapeMode":"overview","searchMode":"byPlace","contract":"sale","state":"SP","city":"São Paulo","maxResults":50}'

Automation Workflows (N8N / Zapier / Make)

  1. Trigger: Schedule (e.g. daily) or webhook
  2. HTTP Request: Call the actor API
  3. Process: Handle the JSON results
  4. Action: Save to a sheet/DB, notify, or transform

📊 Performance & Pricing

FREE Tier (Try It Now)

  • 25 listings per run — full feature access, same quality
  • No credit card required
  • Perfect for testing and small projects
  • Unlimited listings per run
  • Pay-per-result: only charged for listings actually extracted
  • Overview and Detail priced separately so you only pay for the depth you use

🔗 View current pricing

❓ Frequently Asked Questions

Q: How many listings can I extract? A: FREE tier: 25 per run. PAID tier: unlimited.

Q: Do I need a ZAP Imóveis API key? A: No. There's no setup and no ZAP Imóveis account or API key required.

Q: What's the difference between Overview and Detail? A: Overview is a fast, low-cost scan that already returns a full record per listing (price, specs, location, broker contact, photo gallery). Detail adds the authoritative server-rendered description and the entire photo gallery — and includes everything Overview returns.

Q: Can I use my own ZAP Imóveis search filters? A: Yes — paste your search URL in bySearchUrl mode and the path + on-page filters are honored.

Q: What output formats are available? A: JSON, CSV, Excel — export directly from the Apify dataset.

Q: Does it work for both sale and rent? A: Yes — set contract to sale (venda) or rent (aluguel).

Q: Is this legal? A: We only extract publicly available data. See the legal note below.

🐛 Troubleshooting

No results returned

  • Check the state acronym and city spelling (e.g. SP + São Paulo), or paste a working ZAP Imóveis search URL instead.
  • Loosen filters — an overly tight price/area range can return zero listings.

Fewer results than expected

  • FREE tier is capped at 25 listings per run. Upgrade to PAID for unlimited, or raise maxResults.

Our actors are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what the user has chosen to share publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.

However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union, the LGPD in Brazil, and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.

You can also read Apify's blog post on the legality of web scraping.

This is an independent tool and is not affiliated with, endorsed by, or sponsored by ZAP Imóveis, Grupo OLX, or their affiliates. "ZAP Imóveis" is a trademark of its respective owner.

🤝 Support

Telegram Support

Join our active support community


Built by SIÁN Agency | More Tools