PRODUCCIÓN

Este servicio devuelve la lista de desarrollos inmobiliarios.

Información del recurso
AutenticaciónRequired
Método HTTPGET
RespuestaJSON
Versión1

URL del recurso

https://mapaprop.app/api/action/express-v1/developments

Código de ejemplo

GET /api/action/express-v1/developments?customerId=1&dateFrom=20-02-2019&dateTo=28-02-2019 HTTP/1.1
Host: mapaprop.app
Content-Type: application/x-www-form-urlencoded
Content-Length: 0
Authorization: Bearer {access_token}

Parámetros

ClaveTipoRequeridoDescripción
customerIdintnoID del cliente para acotar la búsqueda. Por defecto usa el ID del cliente autenticado.
termstringnoTérmino que intenta coincidir con al menos 3 caracteres en la zona, dirección o título de la propiedad. Admite búsqueda de texto completo.
typeintnoSiempre se sobreescribe con 23 (Desarrollo Inmobiliario) por la API. Cualquier valor enviado por el usuario es ignorado. Constantes
operationintnoOperación de la propiedad. Constantes
fromintnoNúmero de registro inicial. El valor por defecto es 0.
sizeintnoCantidad de registros a traer en cada consulta. El valor por defecto es 7. El máximo es 20 (error de validación: "You cannot retrieve more than 20 properties at a time").
branchIdintnoID de la sucursal donde se encuentran las propiedades.
stateIdintnoID del estado o provincia de la propiedad.
countyIdintnoID del partido o municipio de la propiedad.
cityIdintnoID de la ciudad de la propiedad.
tempOccupancyintnoNúmero de personas que pueden hospedarse en la propiedad.
dateFromstringnoFecha de llegada (formato: "dd-MM-yyyy").
dateTostringnoFecha de salida (formato: "dd-MM-yyyy").

Paginación

Este endpoint utiliza paginación por offset a través de los parámetros from y size.

ParámetroSignificadoValor por defectoMáximo
fromOffset (base cero) del primer registro a devolver0
sizeCantidad de registros devueltos por solicitud720

La respuesta siempre incluye el campo total con el total de registros que coinciden con los filtros (no solo los de la página actual). Usá ese valor para saber cuándo dejar de paginar.

Cómo paginar

Para obtener la página N (índice 1) con un tamaño fijo de página:

from = (N - 1) * size

Seguí solicitando la siguiente página mientras from + size < total.

Ejemplo: paginar 25 desarrollos, 20 por página

Supongamos que una búsqueda devuelve "total": 25. Para obtener todos los resultados se necesitan 2 solicitudes:

Página 1 — registros 1 a 20:

GET /api/action/express-v1/developments?from=0&size=20

Respuesta: { "took": 8, "total": 25, "properties": [ ...20 items... ] }

Página 2 — registros 21 a 25:

GET /api/action/express-v1/developments?from=20&size=20

Respuesta: { "took": 6, "total": 25, "properties": [ ...5 items... ] }

En este punto from + size = 40 >= total = 25, por lo que no hay más páginas.

Notas

  • Mantené los filtros consistentes entre páginas. Cambiar cualquier filtro entre solicitudes (por ejemplo operation, stateId, dateFrom) reinicia el conjunto de resultados y tu offset apuntará a una colección diferente.
  • size no puede superar 20. Solicitar size=21 o más devuelve un error de validación: "You cannot retrieve more than 20 properties at a time". Para recuperar conjuntos grandes debés paginar.
  • from es un offset, no un número de página. from=2 devuelve registros a partir de la posición 3, no "página 2".
  • El campo took indica el tiempo en milisegundos que tardó la búsqueda en el servidor para esa página.

Respuesta

Un documento JSON con la lista de zonas en jerarquía donde el cliente tiene propiedades.

ObjetoCampoTipoRequeridoDescripción
ResponsetookintyesTiempo que tardó la búsqueda, en milisegundos
totalintyesTotal de registros en el contexto de esta búsqueda. Podés paginarlo
propertiesArray of PropertyyesLa lista de objetos Property
PropertypropertyHashstringyesID único de la propiedad
timestampstringyesTimestamp ISO8601 de cuándo se creó la propiedad
lastUpdatestringyesTimestamp ISO8601 de la última actualización de la propiedad
codestringyesCódigo único de la propiedad ingresado por el cliente
branchIdintyesID de la sucursal asociada a esta propiedad. GET /api/action/express-v1/branches.
typeintyesId del tipo de propiedad. GET /api/action/express-v1/types
operationintyesId de la operación de la propiedad. Constantes
propertyTypestringyesDescripción traducida del tipo de propiedad. GET /api/action/express-v1/types
propertyOperationstringyesDescripción traducida de la operación de la propiedad. Constantes
statusstringyesDescripción traducida del estado constructivo. Constantes
mainImagestringnoId del tipo de propiedad. GET /api/action/express-v1/types
currencystringyesSímbolo de moneda del precio de la propiedad. Constantes
priceintyesPrecio de la propiedad
expensesCurrenciesstringnoSímbolo de moneda de las expensas mensuales/anuales. Constantes
expensesPriceintnoMonto de las expensas mensuales/anuales
taxCurrencystringnoSímbolo de moneda de los impuestos mensuales/anuales. Constantes
taxPriceintnoMonto de los impuestos mensuales/anuales
titlestringyesTítulo ingresado por el cliente
addressstringyesDirección y número de la propiedad
zipCodestringyesCódigo postal de la propiedad
zonestringyesDescripción combinada desde ciudad (si está disponible) hasta estado
countryIdintyesID del país de la propiedad
stateIdintyesID del estado o provincia. GET /api/action/express-v1/zones
countyIdintyesID del partido o municipio. GET /api/action/express-v1/zones
cityIdintnoID de la ciudad. GET /api/action/express-v1/zones
countryIdintyesID del país. GET /api/action/express-v1/zones
countrystringyesNombre del país
statestringyesNombre del estado o provincia
countystringyesNombre del partido o segunda división
citystringnoNombre de la ciudad, barrio o tercera división
suspendedbooleanyesLa publicación ha sido suspendida
reservedbooleanyesLa propiedad ha sido reservada
rentedbooleanyesLa propiedad ha sido alquilada
soldbooleanyesLa propiedad ha sido vendida
descriptionstringyesDescripción larga de la propiedad
conditionsstringnoCondiciones de la propiedad. Generalmente relacionadas con los pagos
bedroomsintnoNúmero de dormitorios
ambiencesintnoNúmero de ambientes o espacios
bathroomsintnoNúmero de baños
dependenciesintnoNúmero de cuartos de servicio
occupancyintnoNúmero de ocupantes (generalmente en alquiler temporario)
toilettesintnoNúmero de toilettes (baños de media)
buildingAreaintnoMetros cuadrados de superficie construida
landAreaintnoMetros cuadrados del terreno
yearsOldintnoAntigüedad de la propiedad
ubicationstringnoOrientación cardinal de la propiedad en el edificio
totalFloorsintnoTotal de pisos del edificio
apartmentsPerFloorintnoCantidad de departamentos por piso
airConditionerTypestringnoTipo de aire acondicionado
waterHeaterTypestringnoTipo de calefón
heatingTypestringnoTipo de calefacción
balconyTypestringnoTipo de balcón
garageintnoTotal de cocheras de la propiedad
garageTypestringnoTipo de cochera
imagesArray of ImagenoArray de objetos Image
locationLocationyesObjeto Location
LocationlonstringyesLongitud geográfica de la propiedad
latstringyesLatitud geográfica de la propiedad
ImageimagestringyesURL de la imagen
thumbnailstringyesURL del thumbnail
orientationintyesOrientación de la imagen. 1 = PORTRAIT, 2 = LANDSCAPE
typeintyesTipo de imagen. 1 = PHOTO, 2 = BLUEPRINT
contentTypestringyesTipo de contenido de la imagen
timestampstringyesTimestamp ISO8601 de cuándo se subió la imagen
LabelslabelsArray of labelsnoEtiquetas de la propiedad. Constantes
attributesattributesArray of json attributesnoTodos los atributos de la propiedad
descriptionFormatteddescriptionstringnoDescripción con formato nuevo que acepta saltos de línea

Respuesta de ejemplo

{
"took":6,
"total":3,
"properties": [
        {
"zipCode":"1884",
"country":"Argentina",
"developmentProperties": [
198102
            ],
"landArea":133,
"county":"Almirante Brown",
"buildingArea":235,
"cityId":897,
"type":220,
"ambiences":2,
"zone":"Malvinas Argentinas, Almirante Brown, Buenos Aires, Argentina",
"price":1200000,
"airConditionerType":"Central",
"publication": [
                {
"mercadolibre":false,
"plan":"no-plan"
                },
                {
"cabaprop":false,
"plan":"no-plan"
                },
                {
"zonaprop":false,
"plan":"no-plan"
                },
                {
"navent":false,
"plan":"no-plan"
                }
            ],
"state":"Buenos Aires",
"branchId":1,
"images": [],
"development":true,
"descriptionFormatted":"Descripcion de un desarrollo unico del sistema.",
"bathrooms":2,
"suspended":false,
"labels": [
"laundry",
"playroom",
"suite"
            ],
"propertyOperation":"Venta",
"bedrooms":2,
"garages":1,
"yearsOld":12,
"reserved":false,
"lastUpdate":"2024-10-22T12:21:00.000-03:00",
"customerCountryDesc":"Argentina",
"code":"1-DESARROLLO-3",
"city":"Malvinas Argentinas",
"description":"Descripcion de un desarrollo unico del sistema.",
"alternativePrices": [],
"title":"titulo de desarrollo",
"networks": [
"4",
"5"
            ],
"customerCountry":1,
"countryId":1,
"seoUrl":"venta-de-desarrollo-inmobiliario-en-malvinas-argentinas-almirante-brown-buenos-aires-1-247058",
"rented":false,
"countyId":140,
"propertyType":"Desarrollo Inmobiliario",
"hightlight": {},
"currency":"ARS",
"timestamp":"2024-10-03T00:00:00.000-03:00",
"sold":false,
"address":"Calle 123 1537",
"stateId":2,
"garage":1,
"propertyHash":"1a9ad9df2c25980db55e6f74c5d62b94",
"mainImage":"https://s3.amazonaws.com/mapaprop-dev-image/photos/noimage.gif",
"garageType":"Espacio Guarda Coche",
"location": {
"lon":"-58.54596230000001",
"lat":"-34.5904958"
            },
"attributes": [
                {
"group_sub":"label",
"country":"ar",
"key_legacy":"hasLaundry",
"group_subtype":"spaces",
"id":"laundry",
"label":"Lavadero",
"locale":"es_AR",
"type":"bool",
"group":"propertyAttribute",
"status":true
                },
                {
"group_sub":"label",
"country":"ar",
"key_legacy":"petsReady",
"group_subtype":"extras",
"id":"petsReady",
"label":"Apto mascotas",
"locale":"es_AR",
"type":"bool",
"group":"propertyAttribute",
"status":true
                },
                {
"group_sub":"label",
"country":"ar",
"key_legacy":"playroom",
"group_subtype":"spaces",
"id":"playroom",
"label":"Playroom",
"locale":"es_AR",
"type":"bool",
"group":"propertyAttribute",
"status":true
                },
                {
"group_sub":"label",
"country":"ar",
"key_legacy":"hasPrivatElevator",
"group_subtype":"ammenities",
"id":"private-elevator",
"label":"Elevador privado",
"locale":"es_AR",
"type":"bool",
"group":"propertyAttribute",
"status":true
                },
                {
"group_sub":"label",
"country":"ar",
"key_legacy":"suite",
"group_subtype":"spaces",
"id":"suite",
"label":"Dormitorio en suite",
"locale":"es_AR",
"type":"bool",
"group":"propertyAttribute",
"status":true
                }
            ],
"operation":1
        }
    ]
}