ZAP Imóveis Scraper avatar

ZAP Imóveis Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
ZAP Imóveis Scraper

ZAP Imóveis Scraper

Scrape ZAP Imóveis, Brazil's premium real estate portal (QuintoAndar Group): property listings, commercial real estate (sala, galpão, conjunto), lançamentos and 200K+ imobiliária profiles. Get price, condomínio, IPTU, CRECI, agency, building class, sem fiador and FGTS data.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Haketa

Haketa

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Extract property listings and agency profiles from ZAP Imóveis — Brazil's 25-year-old premium broker-centric real estate portal (QuintoAndar Group, ex-Globo Group). Covers residential, commercial real estate (sala/conjunto/galpão), lançamentos pipeline and the imobiliária directory.

Apify Actor


Why ZAP (and not just VivaReal)?

ZAP and VivaReal share the same Glue API backend but serve different personas. VivaReal is mass-market and classifieds-leaning; ZAP is the premium, broker-trusted, B2B/professional brand. Same shop, different inventory tier:

  • ZAP listings skew higher price-point, longer broker-written descriptions
  • ZAP agency directory is a unique 200K+ imobiliária profile layer (B2B intelligence goldmine)
  • ZAP has a deeper commercial vertical (sala, conjunto comercial, galpão, andar corporativo)
  • ZAP carries premium constructor pipelines (Cyrela CYRE3, EZTec EZTC3, Tegra, Even EVEN3, Mitre MTRE3)
  • ZAP's "sem fiador" segment tracks the modern rental model competing with QuintoAndar/Loft

This actor also supports VivaReal via the portal parameter — same code, switch one input.


How It Works

ZAP exposes a Glue API REST endpoint used by its own web UI. This actor calls it directly:

GET https://glue-api.zapimoveis.com.br/v2/listings
?portal=ZAP
&business=SALE
&listingType=USED
&usageTypes=RESIDENTIAL
&addressState=São Paulo&addressCity=São Paulo
&size=24&from=0

For agencies (mode: "agencies"):

GET https://glue-api.zapimoveis.com.br/v2/account/{id}?portal=ZAP
GET https://glue-api.zapimoveis.com.br/v2/account/{id}/listings?portal=ZAP

No browser, no headless Chrome. Pure HTTP with realistic headers.


Cloudflare & Proxy

ZAP sits behind Cloudflare. Brazilian residential proxies are strongly recommended — data-center IPs get challenged or blocked within a few requests. Default input prefills the Apify residential proxy with BR country:

"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "BR"
}

If you bring your own proxies, point proxyUrls at a BR residential pool. Without proxies you will likely see HTTP 403 / 503 errors after a handful of requests.


Input

{
"mode": "listings",
"portal": "ZAP",
"business": ["SALE"],
"listingType": ["USED"],
"usageTypes": ["RESIDENTIAL"],
"unitTypes": ["APARTMENT"],
"states": ["SP"],
"cities": ["sao-paulo"],
"neighborhoods": ["pinheiros"],
"minPrice": 0,
"maxPrice": 0,
"minBedrooms": 2,
"sortBy": "newest",
"maxListings": 200,
"pageSize": 24
}

Listings mode

ParameterTypeDefaultDescription
modestringlistingslistings or agencies
portalstringZAPZAP or VIVA_REAL
businessarray["SALE"]SALE, RENTAL
listingTypearray["USED"]USED, DEVELOPMENT (lançamentos)
usageTypesarray["RESIDENTIAL"]RESIDENTIAL, COMMERCIAL
unitTypesarray[]APARTMENT, HOME, OFFICE, WAREHOUSE_SHED, etc.
statesarray["SP"]2-letter UF codes
citiesarray["sao-paulo"]URL-slug format (lowercase, hyphenated)
neighborhoodsarray[]Bairro slugs
minPrice / maxPriceinteger0BRL range filter
minArea / maxAreainteger0m² range filter
minBedroomsinteger0Minimum quartos
minParkingSpacesinteger0Minimum vagas
semFiadorbooleanfalseRentals without guarantor requirement
sortBystringrelevancenewest, lowest_price, highest_price, lowest_area, highest_area

Agencies mode

ParameterTypeDefaultDescription
agencyIdsarray[]Explicit imobiliária IDs to fetch
agencyIdRangeStartinteger0Start of sequential ID range crawl
agencyIdRangeEndinteger0End of sequential range (max span 100K)
fetchAgencyListingsbooleanfalseAlso fetch each agency's listings portfolio

Common controls

ParameterTypeDefaultDescription
maxListingsinteger200Total record cap (0 = unlimited)
maxPagesinteger20Pages per task (24 listings/page)
pageSizeinteger24Records per API call
requestDelayinteger (ms)800Delay between requests
maxConcurrencyinteger1Parallel tasks (keep low)
maxRetriesinteger3Retries on 403/503/429
proxyConfigurationobjectBR residentialProxy settings

Brazilian UF Codes

UFStateUFStateUFState
SPSão PauloRJRio de JaneiroMGMinas Gerais
RSRio Grande do SulPRParanáSCSanta Catarina
BABahiaDFDistrito FederalGOGoiás
PEPernambucoCECearáESEspírito Santo
PAParáAMAmazonasMAMaranhão
MTMato GrossoMSMato Grosso do SulALAlagoas

City Slugs (Selection)

ZAP uses URL-friendly lowercase hyphenated slugs (no accents):

SlugCitySlugCity
sao-pauloSão Paulorio-de-janeiroRio de Janeiro
belo-horizonteBelo HorizontebrasiliaBrasília
salvadorSalvadorfortalezaFortaleza
curitibaCuritibaporto-alegrePorto Alegre
florianopolisFlorianópolisrecifeRecife
niteroiNiteróicampinasCampinas
santosSantosgoianiaGoiânia
vitoriaVitóriacajamarCajamar (logistics hub)

Unknown slugs fall back to title-case (some-bairroSome Bairro). For accent-sensitive cities, prefer the curated map.


Unit Types

Residential

APARTMENT, HOME, CONDOMINIUM, PENTHOUSE, FLAT, KITNET

Commercial (ZAP's strong vertical)

OFFICE (sala comercial), COMMERCIAL_BUILDING (prédio comercial), COMMERCIAL_PROPERTY (conjunto comercial), BUSINESS (ponto comercial), WAREHOUSE_SHED (galpão), HOTEL

Other

FARM (sítio/fazenda), LAND_LOT (terreno), GARAGE


Output

Listing record example

{
"recordType": "listing",
"listingId": "2853746",
"portal": "ZAP",
"url": "https://www.zapimoveis.com.br/imovel/apartamento-3-quartos-pinheiros-sao-paulo-sp-id-2853746/",
"title": "Apartamento 3 quartos Pinheiros 95m²",
"business": "SALE",
"listingType": "USED",
"usageType": "RESIDENTIAL",
"unitType": "APARTMENT",
"category": "residential",
"subCategory": "apartamento",
"priceBRL": 1250000,
"condominioMonthlyBRL": 1800,
"iptuYearlyBRL": 7800,
"pricePerSqmBRL": 13157,
"usableArea": 95,
"bedrooms": 3,
"bathrooms": 3,
"suites": 1,
"parkingSpaces": 2,
"uf": "SP",
"city": "São Paulo",
"neighborhood": "Pinheiros",
"zone": "Zona Oeste",
"latitude": -23.5677,
"longitude": -46.6856,
"amenities": ["GYM", "POOL", "PARTY_HALL", "PLAYGROUND"],
"isLancamento": false,
"isFiadorFree": false,
"isFGTSEligible": true,
"agencyId": "122847",
"agencyName": "Premium Real Estate",
"agencyCRECI": "J-12345",
"agencyTier": "premium",
"publishedAt": "2026-04-15T10:00:00Z",
"updatedAt": "2026-05-09T14:00:00Z",
"imageCount": 24,
"listingQualityScore": 95,
"searchBusiness": "SALE",
"searchState": "SP",
"searchCity": "sao-paulo",
"searchNeighborhood": "pinheiros",
"scrapedAt": "2026-05-12T10:00:00Z"
}

Agency record example

{
"recordType": "agency",
"listingId": "122847",
"portal": "ZAP",
"url": "https://www.zapimoveis.com.br/imobiliaria/122847/",
"title": "Premium Real Estate",
"agencyId": "122847",
"agencyName": "Premium Real Estate",
"agencyCRECI": "J-12345",
"agencyCNPJ": "00.000.000/0001-00",
"agencyPhone": "+5511999999999",
"agencyAddress": "Rua dos Pinheiros, 100, Pinheiros, São Paulo, SP",
"agencyTier": "premium",
"agencyTotalListings": 234,
"uf": "SP",
"city": "São Paulo",
"neighborhood": "Pinheiros",
"scrapedAt": "2026-05-12T10:00:00Z"
}

Notes

  • agencyCNPJ / agencyEmail / agencyWebsite may be null for listings (only present in agency profile responses)
  • isLancamento, launchPhase, constructorName only populated when listingType=DEVELOPMENT
  • alsoOnVivaReal / vivaRealId are reserved for a future cross-portal correlation actor
  • latitude / longitude may be null for hidden-address listings
  • mobileNo equivalent (agencyPhone) is publisher contact, not seller direct

Use Cases

  • Brazilian CRE intelligence — CBRE/JLL/Cushman & Wakefield Brasil prime office vacancy, galpão demand
  • Listed constructor equity research — Cyrela/EZTec/Tegra/MRV/Tenda launch pipeline for buy/sell calls
  • FII (REIT) fund manager input — BCFF11, HGLG11, HGRE11 property selection & pricing
  • B2B PropTech lead pipeline — Agency directory crawl → CRM/training/SaaS targeting (Vista, Apolo, Tabela)
  • QuintoAndar/Loft competitive analysis — Track "sem fiador" inventory share
  • Cross-portal arbitrage (with VivaReal) — Detect same listing at different price tiers
  • Brazilian Portuguese real estate NLP corpus — Broker-written long descriptions, premium tier

Cost & Performance

  • ~0.005 CU per 100 listings (no browser, just HTTP)
  • ~1 record/sec with 800ms delay + BR residential proxy (Cloudflare-safe)
  • No CAPTCHA solving needed in normal operation — if you hit one, increase requestDelay and verify proxy quality

Limitations

  • Agency phone unlock: ZAP requires an authenticated employer session for some agency contact info. This actor only scrapes publicly visible search/profile data.
  • Cloudflare: occasional 403/503; the actor retries with backoff but persistent failures need better proxy quality.
  • GraphQL? No. Despite some external references, the public-facing search uses REST-style v2/listings. The endpoint is stable as of April 2026 but ZAP's frontend team can change parameter names — feedback welcome.
  • Address granularity: Brazilian addresses with hidden street/number show city + bairro only; this is a publisher choice, not a scraper limit.

Changelog

VersionDateNotes
1.0.02026-05-13Initial release — Glue API direct integration, listings + agency modes, ZAP & VivaReal portal switch