Properati Scraper | LATAM Real Estate Listings & Property API avatar

Properati Scraper | LATAM Real Estate Listings & Property API

Pricing

from $6.15 / 1,000 results

Go to Apify Store
Properati Scraper | LATAM Real Estate Listings & Property API

Properati Scraper | LATAM Real Estate Listings & Property API

Scrape Properati real estate listings in Argentina, Colombia, Peru and Ecuador. Export price in USD and local currency, price per m2, beds, baths, area, coordinates, amenities, images, agency and agent phone and WhatsApp. Any search URL, sale or rent. Datos inmobiliarios to JSON, CSV, Excel.

Pricing

from $6.15 / 1,000 results

Rating

4.0

(1)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

4

Monthly active users

3 days ago

Last modified

Share

Properati Real Estate Listings Scraper (LATAM)

Properati Scraper: LATAM Real Estate Listings and Property Data API

Scrape Properati property listings across Latin America and export clean, structured real estate data. This Properati scraper turns any Properati search URL into a dataset of propiedades en venta o alquiler: price in USD and local currency, price per m2, bedrooms, bathrooms, area, exact coordinates, amenities, the full image gallery, the publishing agency, and agent phone and WhatsApp. It covers Argentina, Colombia, Peru and Ecuador, and exports to JSON, CSV or Excel.

Built for real estate analysts, investors, proptech teams, lead generation and market research who need datos inmobiliarios and property listings at scale, without a browser.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

You paste one or more Properati search results URLs. The actor walks the results page by page (about 30 listings per page), reads each listing card, and writes one normalized record per property to the dataset. Every record carries the listing-level fields: title, price, currency, price in USD and local currency, price per m2, operation (sale or rent), property type, bedrooms, bathrooms, total area, neighborhood, region or province, country, exact coordinates, the publishing agency and the publish date.

When withDetails is on (paying plans), each listing's detail page is opened to add the full description, the complete amenities list, the full image gallery, the publishing agency and the agent phone and WhatsApp, plus built area, lot area, half bathrooms, construction year, the maintenance or HOA fee, and the "apto credito" flag. Missing source values are returned as null, never guessed.

It works on any Properati country domain, including Argentina (.com.ar), Colombia (.com.co), Peru (.com.pe) and Ecuador (.com.ec). Apply any filters you want on the site (operation, property type, location, price, days published) and paste the resulting URL.

Why this scraper

  • The most complete Properati field set. Beyond the basics, it returns dual currency (USD and local), price per m2, built vs lot area, half bathrooms, construction year, maintenance fee, the "apto credito" flag, principal amenity, and video and virtual-tour availability.
  • Real contacts. Agent phone and WhatsApp plus the publishing agency name and profile URL, so listings become leads.
  • Exact geolocation. Latitude and longitude on every listing, straight from the source, for mapping and geo analysis.
  • Multi country, multi operation. One actor for Argentina, Colombia, Peru and Ecuador, sale or rent, houses or apartments.
  • Batch friendly. Pass a list of search URLs and refine further with built-in price, bedroom, bathroom and area filters.
  • Honest billing. Pay per result, no charge on failed runs, and a spend cap you control.

How it compares

CapabilityThis actorlentic_clockss/properati-scraperunfenced-group/properati-scraper
Any Properati search URL as inputYesNo (builds URL from params)Partial (startUrls)
Batch multiple search URLsYesNoYes
Country, operation, property type, locationYes (in the URL)YesYes
Price, bedroom, bathroom, area filtersYesPartial (price, beds)Partial (price)
Price in USD and local currencyYesNoNo
Price per m2YesNoNo
Built area and lot areaYesNoPartial
Half bathrooms, construction yearYesNoNo
Maintenance / HOA feeYesNoNo
Apto credito flagYesNoNo
Exact coordinatesYesYesYes
Amenities list and image galleryYesPartialYes
Agent phone and WhatsAppYes (both)Phone onlyNo
Publishing agency name and URLYesYesName only
Video / virtual-tour availabilityYesNoNo
Pay per result, no charge on failureYesPay per resultPay per result

Every input the other actors accept is available here through the search URL plus the optional filters, and every output field they return is included, plus the extra fields above.

Use cases

  • Real estate market research. Track price per m2, inventory and days on market across cities and neighborhoods.
  • Lead generation. Collect agency names, agent phone and WhatsApp from active listings.
  • Investment and valuation. Compare built vs lot area, maintenance fees and asking prices to spot opportunities.
  • Proptech and portals. Feed listings, images and coordinates into your own app, CRM or map.
  • Price monitoring. Re-run on a schedule and watch how prices and supply move over time.

Quickstart

Open the actor, paste this into the input, and press Run. It returns up to 10 houses for sale in Argentina with full details.

{
"startUrl": "https://www.properati.com.ar/s/casa/venta",
"maxListings": 10,
"withDetails": true
}

Change the domain and path to target another market or operation, for example https://www.properati.com.co/s/apartamento/arriendo. Turn withDetails off for a faster listing-only run.

Input reference

FieldTypeRequiredDefaultDescription
startUrlstringone URL requiredhttps://www.properati.com.ar/s/casa/ventaA Properati search results URL. Apply any filters on the site and paste the resulting URL. Works on any country domain (.com.ar, .com.co, .com.pe, .com.ec and more).
startUrlsarrayno[]Optional list of extra Properati search URLs to scrape in one run. Plain strings or { "url": "..." } objects.
maxListingsintegerno10Maximum listings to collect across all search URLs. Leave empty for all results on paying plans. Free plans are capped at 10 per run.
withDetailsbooleannotrueWhen on, opens each listing detail page for description, amenities, gallery, agent contacts, areas, year, maintenance fee and more. Runs on paying plans only.
minPrice / maxPriceintegernoKeep only listings within this price range.
priceCurrencystringnoCurrency the price filter uses (USD, ARS, COP, PEN, MXN).
minBedrooms / maxBedroomsintegernoKeep only listings within this bedroom range.
minBathroomsintegernoKeep only listings with at least this many bathrooms.
minAreaM2 / maxAreaM2integernoKeep only listings within this total area range.

Output reference

One dataset item per listing. Types: string, integer, number, boolean, string[], object, or null when the source value is absent.

FieldTypeDescription
imageUrlstringMain listing image URL.
titlestringListing title.
pricenumberAsking price, or null when hidden.
currencystringPrice currency, for example USD, ARS, COP, PEN.
priceUsdnumberPrice in USD when the listing is in USD, else null.
priceLocalnumberPrice in the local currency when the listing is not in USD, else null.
priceLocalCurrencystringThe local currency code for priceLocal.
pricePerM2numberPrice per square meter, when computable.
pricePerM2CurrencystringCurrency of pricePerM2.
operationTypestringOperation, for example Venta, Alquiler.
propertyTypestringProperty type, for example Casa, Departamento.
bedroomsnumberNumber of bedrooms, or null.
bathroomsnumberNumber of bathrooms, or null.
halfBathroomsnumberHalf bathrooms (toilette), or null.
totalAreaM2numberTotal area in m2, or null.
builtAreaM2numberBuilt / covered area in m2 (detail), or null.
lotAreaM2numberLot / plot area in m2 (detail), or null.
yearBuiltnumberConstruction year (detail), or null.
maintenanceFeenumberMaintenance / HOA fee (detail), or null.
maintenanceFeeCurrencystringCurrency of the maintenance fee.
suitableForCreditbooleantrue when the listing is marked "apto credito".
principalAmenitystringHeadline amenity shown on the card.
amenitiesstring[]Full amenities list (detail).
hasVideobooleantrue when the listing has a video (detail).
hasVirtualTourbooleantrue when the listing has a virtual tour (detail).
publishDatestringListing publish date (ISO when parseable).
locationstringLocation text as published.
addressstringStreet address (structured).
neighborhoodstringNeighborhood or locality.
regionstringRegion or province.
countrystringCountry code.
coordinatesobjectMap coordinates, { lat, lng }.
descriptionstringFull description (detail).
imagesstring[]Full image gallery URLs (detail).
publisherobjectPublishing agency, { name, url } (detail).
publisherNamestringPublishing agency name.
agentPhonestringAgent phone number when published, else null.
agentWhatsappstringAgent WhatsApp number when published, else null.
urlstringDirect listing URL.
listingIdstringProperati listing ID.
observedAtstringISO 8601 timestamp of when the record was collected.
detailErrorstringnull on success. Set when only the detail page failed while the listing row is still valid.
errorstringnull on success. On a failed run, an item with a populated error field is written instead.

Example output record

Real record from a live run (input {"startUrl":"https://www.properati.com.ar/s/casa/venta","withDetails":true}). Long image URLs are truncated with ..., the images gallery is trimmed to two entries, and the description is shortened; every other value is unchanged from the live record:

{
"title": "Casa en Venta en Lácar",
"price": 620000,
"currency": "USD",
"priceUsd": 620000,
"priceLocal": null,
"pricePerM2": 1717,
"pricePerM2Currency": "USD",
"operationType": "Venta",
"propertyType": "Casa",
"bedrooms": 4,
"bathrooms": 4.5,
"totalAreaM2": 361,
"builtAreaM2": 279,
"lotAreaM2": 5180,
"yearBuilt": 2015,
"maintenanceFee": 100000,
"maintenanceFeeCurrency": "ARS",
"suitableForCredit": true,
"principalAmenity": "Garage",
"amenities": ["Garage", "Balcón", "Calefacción", "Jacuzzi", "Patio", "Parrilla", "Gimnasio", "Cancha de tenis"],
"hasVideo": true,
"hasVirtualTour": true,
"location": "Lácar, Neuquén",
"address": "Vallescondido - Club de Campo, Neuquén, Argentina",
"neighborhood": "Lácar",
"region": "Neuquén",
"country": "AR",
"coordinates": { "lat": -40.1637181, "lng": -71.3026999 },
"publisherName": "Inmobiliaria Grupo Patagonia",
"agentPhone": "+542996229443",
"agentWhatsapp": "+542996229443",
"publishDate": "2025-09-07",
"url": "https://www.properati.com.ar/detalle/...",
"listingId": "019925fb-4f9d-73fa-9aae-0a8a62003b7b",
"observedAt": "2026-09-04T17:54:15.248Z",
"detailError": null,
"error": null
}

Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~properati-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"startUrl":"https://www.properati.com.ar/s/casa/venta","maxListings":25,"withDetails":true}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~properati-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"startUrl":"https://www.properati.com.co/s/apartamento/arriendo","maxListings":100}'

Apify CLI:

apify call scrapers_lat/properati-scraper \
--input '{"startUrl":"https://www.properati.com.pe/s/departamento/venta"}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.

Billing and limits

  • Pay per result. You are charged per listing returned (result event). Enabling withDetails adds a small per-listing details add-on, charged only when the detail page is fetched successfully. See the pricing tab for current prices.
  • No charge on failure. If a run finds nothing or errors, the actor writes a single item with an error field and does not charge for it. Empty runs cost nothing.
  • No charge when only detail enrichment fails. If the listing is collected but its detail page fails, the row is delivered with detailError set and the details add-on is not charged.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further billable results.
  • Free Apify plans are capped at 10 listings per run, listing-level only. Upgrade for the full result set and detail enrichment.
  • Live data. Listings are read at run time, so each record reflects what is published at the moment of the run (see observedAt).

FAQ and troubleshooting

Which countries and Properati sites does this cover? Any Properati country domain, including Argentina (.com.ar), Colombia (.com.co), Peru (.com.pe) and Ecuador (.com.ec). Paste a search URL from the market you want.

How do I control which listings are scraped? Apply any filters (operation, property type, location, price, days published) on the Properati website and paste the resulting search URL into startUrl. The actor reads exactly that search, in the same order the site shows it. You can also add the built-in price, bedroom, bathroom and area filters, or pass several URLs in startUrls.

What extra data does the detail option add? With withDetails on, each listing detail page is opened to add the full description, amenities, complete image gallery, the publishing agency and agent contacts, built and lot area, half bathrooms, construction year, the maintenance fee, the "apto credito" flag and video and virtual-tour availability.

What happens to listings with missing prices or room counts? Some listings hide the price or omit bedroom, bathroom or area figures. Those fields are returned as null for that record while every other available field is still filled.

Do I get agent contact details? When the listing publishes them, agentPhone and agentWhatsapp are captured, along with the publisher agency name and URL. They are null when the site does not expose them.

Is this an official Properati tool? No. This actor is independent and has no affiliation with Properati. It accesses only data that is publicly available on the platform.


Properati Scraper: API de Datos y Avisos Inmobiliarios en LATAM

Extrae avisos de propiedades de Properati en toda Latinoamerica y exporta datos inmobiliarios limpios y estructurados. Este scraper de Properati convierte cualquier URL de busqueda de Properati en un conjunto de datos de propiedades en venta o alquiler: precio en USD y en moneda local, precio por m2, dormitorios, banos, superficie, coordenadas exactas, comodidades, galeria completa de imagenes, la inmobiliaria y el telefono y WhatsApp del agente. Cubre Argentina, Colombia, Peru y Ecuador, y exporta a JSON, CSV o Excel.

Pensado para analistas inmobiliarios, inversores, equipos proptech, generacion de leads e investigacion de mercado que necesitan datos inmobiliarios y avisos de propiedades a escala, sin navegador.

📥 Entrada · 📤 Salida · 💰 Precios · ▶️ Ejemplos

Indice

Que hace

Pegas una o varias URLs de resultados de busqueda de Properati. El actor recorre los resultados pagina por pagina (unos 30 avisos por pagina), lee cada tarjeta y escribe un registro normalizado por propiedad en el dataset. Cada registro incluye los campos de nivel de aviso: titulo, precio, moneda, precio en USD y en moneda local, precio por m2, operacion (venta o alquiler), tipo de propiedad, dormitorios, banos, superficie total, barrio, region o provincia, pais, coordenadas exactas, la inmobiliaria y la fecha de publicacion.

Cuando withDetails esta activado (planes de pago), se abre la pagina de detalle de cada aviso para agregar la descripcion completa, la lista de comodidades, la galeria completa de imagenes, la inmobiliaria y el telefono y WhatsApp del agente, ademas de superficie cubierta, superficie del lote, medios banos, ano de construccion, el gasto de mantenimiento o expensas y la marca "apto credito". Los valores ausentes en la fuente se devuelven como null, nunca se inventan.

Funciona en cualquier dominio de pais de Properati, incluidos Argentina (.com.ar), Colombia (.com.co), Peru (.com.pe) y Ecuador (.com.ec). Aplica los filtros que quieras en el sitio (operacion, tipo de propiedad, ubicacion, precio, dias publicados) y pega la URL resultante.

Por que este scraper

  • El conjunto de campos de Properati mas completo. Ademas de lo basico, devuelve doble moneda (USD y local), precio por m2, superficie cubierta y del lote, medios banos, ano de construccion, gasto de mantenimiento, la marca "apto credito", comodidad principal y disponibilidad de video y tour virtual.
  • Contactos reales. Telefono y WhatsApp del agente mas el nombre y la URL de la inmobiliaria, para convertir avisos en leads.
  • Geolocalizacion exacta. Latitud y longitud en cada aviso, directo de la fuente, para mapas y analisis geografico.
  • Multipais y multioperacion. Un solo actor para Argentina, Colombia, Peru y Ecuador, venta o alquiler, casas o departamentos.
  • Ideal para lotes. Pasa una lista de URLs de busqueda y refina con filtros integrados de precio, dormitorios, banos y superficie.
  • Facturacion honesta. Pago por resultado, sin cargo en corridas fallidas, y un limite de gasto que controlas.

Como se compara

CapacidadEste actorlentic_clockss/properati-scraperunfenced-group/properati-scraper
Cualquier URL de busqueda de Properati como entradaSiNo (arma la URL con parametros)Parcial (startUrls)
Varias URLs de busqueda en loteSiNoSi
Pais, operacion, tipo, ubicacionSi (en la URL)SiSi
Filtros de precio, dormitorios, banos, superficieSiParcial (precio, dorm.)Parcial (precio)
Precio en USD y en moneda localSiNoNo
Precio por m2SiNoNo
Superficie cubierta y del loteSiNoParcial
Medios banos, ano de construccionSiNoNo
Gasto de mantenimiento / expensasSiNoNo
Marca apto creditoSiNoNo
Coordenadas exactasSiSiSi
Comodidades y galeria de imagenesSiParcialSi
Telefono y WhatsApp del agenteSi (ambos)Solo telefonoNo
Nombre y URL de la inmobiliariaSiSiSolo nombre
Disponibilidad de video / tour virtualSiNoNo
Pago por resultado, sin cargo en falloSiPago por resultadoPago por resultado

Toda entrada que aceptan los otros actores esta disponible aqui mediante la URL de busqueda mas los filtros opcionales, y todo campo de salida que devuelven esta incluido, mas los campos extra de arriba.

Casos de uso

  • Investigacion de mercado inmobiliario. Sigue el precio por m2, el inventario y los dias en el mercado por ciudad y barrio.
  • Generacion de leads. Reune nombres de inmobiliarias, telefono y WhatsApp del agente de avisos activos.
  • Inversion y valuacion. Compara superficie cubierta y del lote, gastos de mantenimiento y precios de lista para detectar oportunidades.
  • Proptech y portales. Alimenta avisos, imagenes y coordenadas en tu app, CRM o mapa.
  • Monitoreo de precios. Vuelve a correr en un horario y observa como se mueven los precios y la oferta.

Inicio rapido

Abre el actor, pega esto en la entrada y presiona Run. Devuelve hasta 10 casas en venta en Argentina con detalle completo.

{
"startUrl": "https://www.properati.com.ar/s/casa/venta",
"maxListings": 10,
"withDetails": true
}

Cambia el dominio y la ruta para apuntar a otro mercado u operacion, por ejemplo https://www.properati.com.co/s/apartamento/arriendo. Desactiva withDetails para una corrida mas rapida solo de avisos.

Referencia de entrada

CampoTipoRequeridoPredet.Descripcion
startUrlstringuna URL requeridahttps://www.properati.com.ar/s/casa/ventaUna URL de resultados de busqueda de Properati. Aplica filtros en el sitio y pega la URL resultante. Funciona en cualquier dominio de pais.
startUrlsarrayno[]Lista opcional de URLs de busqueda de Properati adicionales. Strings o objetos { "url": "..." }.
maxListingsintegerno10Maximo de avisos a recolectar en todas las URLs. Deja vacio para todos los resultados en planes de pago. Los planes gratuitos se limitan a 10 por corrida.
withDetailsbooleannotrueSi esta activado, abre la pagina de detalle para descripcion, comodidades, galeria, contactos del agente, superficies, ano, expensas y mas. Solo en planes de pago.
minPrice / maxPriceintegernoConserva solo avisos dentro de este rango de precio.
priceCurrencystringnoMoneda del filtro de precio (USD, ARS, COP, PEN, MXN).
minBedrooms / maxBedroomsintegernoConserva solo avisos dentro de este rango de dormitorios.
minBathroomsintegernoConserva solo avisos con al menos esta cantidad de banos.
minAreaM2 / maxAreaM2integernoConserva solo avisos dentro de este rango de superficie total.

Referencia de salida

Un item de dataset por aviso. Tipos: string, integer, number, boolean, string[], object, o null cuando el valor no esta en la fuente.

CampoTipoDescripcion
imageUrlstringURL de la imagen principal.
titlestringTitulo del aviso.
pricenumberPrecio de lista, o null si esta oculto.
currencystringMoneda del precio, por ejemplo USD, ARS, COP, PEN.
priceUsdnumberPrecio en USD cuando el aviso esta en USD, si no null.
priceLocalnumberPrecio en moneda local cuando el aviso no esta en USD, si no null.
priceLocalCurrencystringCodigo de la moneda local de priceLocal.
pricePerM2numberPrecio por metro cuadrado, cuando se puede calcular.
pricePerM2CurrencystringMoneda de pricePerM2.
operationTypestringOperacion, por ejemplo Venta, Alquiler.
propertyTypestringTipo de propiedad, por ejemplo Casa, Departamento.
bedroomsnumberCantidad de dormitorios, o null.
bathroomsnumberCantidad de banos, o null.
halfBathroomsnumberMedios banos (toilette), o null.
totalAreaM2numberSuperficie total en m2, o null.
builtAreaM2numberSuperficie cubierta en m2 (detalle), o null.
lotAreaM2numberSuperficie del lote en m2 (detalle), o null.
yearBuiltnumberAno de construccion (detalle), o null.
maintenanceFeenumberGasto de mantenimiento / expensas (detalle), o null.
maintenanceFeeCurrencystringMoneda del gasto de mantenimiento.
suitableForCreditbooleantrue cuando el aviso esta marcado "apto credito".
principalAmenitystringComodidad principal mostrada en la tarjeta.
amenitiesstring[]Lista completa de comodidades (detalle).
hasVideobooleantrue cuando el aviso tiene video (detalle).
hasVirtualTourbooleantrue cuando el aviso tiene tour virtual (detalle).
publishDatestringFecha de publicacion (ISO cuando se puede interpretar).
locationstringUbicacion tal como se publica.
addressstringDireccion (estructurada).
neighborhoodstringBarrio o localidad.
regionstringRegion o provincia.
countrystringCodigo de pais.
coordinatesobjectCoordenadas, { lat, lng }.
descriptionstringDescripcion completa (detalle).
imagesstring[]URLs de la galeria completa (detalle).
publisherobjectInmobiliaria, { name, url } (detalle).
publisherNamestringNombre de la inmobiliaria.
agentPhonestringTelefono del agente cuando se publica, si no null.
agentWhatsappstringWhatsApp del agente cuando se publica, si no null.
urlstringURL directa del aviso.
listingIdstringID del aviso en Properati.
observedAtstringMarca de tiempo ISO 8601 de la recoleccion.
detailErrorstringnull en exito. Se completa cuando solo fallo la pagina de detalle pero el aviso es valido.
errorstringnull en exito. En una corrida fallida se escribe un item con error en su lugar.

Registro de ejemplo

Registro real de una corrida en vivo (entrada {"startUrl":"https://www.properati.com.ar/s/casa/venta","withDetails":true}). Las URLs largas de imagen se recortan con ..., la galeria images se recorta a dos entradas y la description se acorta; el resto es igual al registro real:

{
"title": "Casa en Venta en Lácar",
"price": 620000,
"currency": "USD",
"priceUsd": 620000,
"pricePerM2": 1717,
"operationType": "Venta",
"propertyType": "Casa",
"bedrooms": 4,
"bathrooms": 4.5,
"totalAreaM2": 361,
"builtAreaM2": 279,
"lotAreaM2": 5180,
"yearBuilt": 2015,
"maintenanceFee": 100000,
"maintenanceFeeCurrency": "ARS",
"suitableForCredit": true,
"principalAmenity": "Garage",
"amenities": ["Garage", "Balcón", "Calefacción", "Jacuzzi", "Parrilla", "Gimnasio"],
"hasVideo": true,
"hasVirtualTour": true,
"location": "Lácar, Neuquén",
"region": "Neuquén",
"country": "AR",
"coordinates": { "lat": -40.1637181, "lng": -71.3026999 },
"publisherName": "Inmobiliaria Grupo Patagonia",
"agentPhone": "+542996229443",
"agentWhatsapp": "+542996229443",
"publishDate": "2025-09-07",
"listingId": "019925fb-4f9d-73fa-9aae-0a8a62003b7b",
"detailError": null,
"error": null
}

Uso por API y CLI

Inicia una corrida y espera a que termine, luego lee el dataset. Reemplaza <TOKEN> con tu token de API de Apify.

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~properati-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"startUrl":"https://www.properati.com.ar/s/casa/venta","maxListings":25,"withDetails":true}'

Con la CLI de Apify:

apify call scrapers_lat/properati-scraper \
--input '{"startUrl":"https://www.properati.com.pe/s/departamento/venta"}'

Obtener resultados

Cada corrida escribe en un dataset. Obtiene los items como JSON, CSV o Excel cambiando format:

$curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"

<DATASET_ID> se devuelve como defaultDatasetId en el objeto de la corrida. Usa offset y limit para paginar. clean=true elimina campos vacios e internos.

Facturacion y limites

  • Pago por resultado. Se cobra por aviso devuelto (evento result). Activar withDetails agrega un pequeno complemento details por aviso, cobrado solo cuando la pagina de detalle se obtiene con exito. Consulta la pestana de precios.
  • Sin cargo en fallo. Si una corrida no encuentra nada o falla, se escribe un item con error y no se cobra. Las corridas vacias no cuestan nada.
  • Sin cargo cuando solo falla el detalle. Si el aviso se recolecta pero su pagina de detalle falla, la fila se entrega con detailError y no se cobra el complemento details.
  • Se respeta el limite de gasto. Configura maxTotalChargeUsd en la corrida; al alcanzarlo, el actor deja de emitir y cobrar resultados.
  • Los planes gratuitos se limitan a 10 avisos por corrida, solo a nivel de aviso. Mejora tu plan para el conjunto completo y el detalle.
  • Datos en vivo. Los avisos se leen en el momento de la corrida (ver observedAt).

Preguntas frecuentes

Que paises y sitios de Properati cubre? Cualquier dominio de pais de Properati, incluidos Argentina (.com.ar), Colombia (.com.co), Peru (.com.pe) y Ecuador (.com.ec). Pega una URL de busqueda del mercado que quieras.

Como controlo que avisos se extraen? Aplica filtros (operacion, tipo, ubicacion, precio, dias publicados) en el sitio de Properati y pega la URL resultante en startUrl. Tambien puedes usar los filtros integrados de precio, dormitorios, banos y superficie, o pasar varias URLs en startUrls.

Que datos extra agrega la opcion de detalle? Con withDetails activado, se abre cada pagina de detalle para agregar la descripcion completa, comodidades, galeria de imagenes, la inmobiliaria y contactos del agente, superficie cubierta y del lote, medios banos, ano de construccion, expensas, la marca "apto credito" y disponibilidad de video y tour virtual.

Que pasa con avisos sin precio o sin ambientes? Algunos avisos ocultan el precio u omiten dormitorios, banos o superficie. Esos campos se devuelven como null mientras el resto de los datos disponibles igual se completa.

Obtengo datos de contacto del agente? Cuando el aviso los publica, se capturan agentPhone y agentWhatsapp, junto con el nombre y la URL de la inmobiliaria en publisher. Son null cuando el sitio no los expone.

Es una herramienta oficial de Properati? No. Este actor es independiente y no tiene afiliacion con Properati. Accede solo a datos disponibles publicamente en la plataforma.

Example tasks

Preconfigured templates for common scenarios. Open one and press Run, or use it as a starting point:

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Independent tool, not affiliated with Properati. Accesses only data that is publicly available on the platform. Use it in accordance with Properati's terms of service.