PRODUCCIÓN
Este servicio retorna el listado de propiedades del cliente.
| Información del recurso | |
|---|---|
| Autenticación | Requerida |
| HTTP Method | GET |
| Response | JSON |
| Version | 1 |
URL del recurso
https://mapaprop.app/api/action/express-v1/properties
Código de ejemplo
GET /api/action/express-v1/properties?operation=1&buildingStatus=5&tempOccupancy=2&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
| Key | Type | Required | Descripción |
|---|---|---|---|
| term | string | no | Término que intentará coincidir con al menos 3 caracteres en la zona, dirección, código o título de la propiedad. Capacidad de búsqueda de texto completo. |
| address | string | no | Término que intentará coincidir con al menos 3 caracteres en el campo dirección. Capacidad de búsqueda de texto completo. |
| type | int | no | Tipo de propiedad. Constantes |
| operation | int | no | Operación de la propiedad. Constantes |
| from | int | no | Número de registro inicial. Por defecto es 0. |
| size | int | no | Cantidad de registros a retornar en cada consulta. Por defecto es 10. Máximo es 20 (error de validación: "You cannot retrieve more than 20 properties at a time"). |
| branchId | int | no | El ID de la sucursal donde están las propiedades. |
| buildingStatus | int | no | El estado físico del inmueble. Constantes |
| bedrooms | int | no | Cantidad de dormitorios de la propiedad |
| ambiences | int | no | Número exacto de ambientes |
| ambiencesFrom | int | no | Buscar desde un número hacia arriba |
| ambiencesTo | int | no | Buscar hasta el número asignado |
| bathrooms | int | no | Cantidad de baños de la propiedad |
| priceFrom | int | no | Filtro de precio mínimo |
| priceTo | int | no | Filtro de precio máximo |
| stateId | int | no | El ID de la provincia de la propiedad |
| countyId | int | no | El ID del partido/municipio de la propiedad |
| cityId | int | no | El ID de la ciudad de la propiedad |
| tempOccupancy | int | no | Cantidad de personas que pueden vivir en la propiedad |
| dateFrom | string | no | La fecha de llegada (formato: "dd-MM-yyyy") |
| dateTo | string | no | La fecha de salida (formato: "dd-MM-yyyy") |
Paginación
Este endpoint utiliza paginación por offset mediante los parámetros from y size.
| Parámetro | Significado | Por defecto | Máximo |
|---|---|---|---|
from | Offset base cero del primer registro a retornar | 0 | — |
size | Número de registros retornados por solicitud | 10 | 20 |
La respuesta siempre incluye un campo total con el total de registros que coinciden con tus filtros (no solo los retornados en la página actual). Usá este campo para saber cuándo detener la paginación.
Cómo paginar
Para obtener la página N (índice 1) con un tamaño de página fijo:
from = (N - 1) * size
Seguí solicitando la siguiente página mientras from + size < total.
Ejemplo: paginar 45 resultados, 20 por página
Supongamos que la búsqueda retorna "total": 45. Para obtener todos los resultados se necesitan 3 solicitudes:
Página 1 — registros 1 a 20:
GET /api/action/express-v1/properties?operation=1&from=0&size=20
Respuesta: { "took": 12, "total": 45, "properties": [ ...20 items... ] }
Página 2 — registros 21 a 40:
GET /api/action/express-v1/properties?operation=1&from=20&size=20
Respuesta: { "took": 9, "total": 45, "properties": [ ...20 items... ] }
Página 3 — registros 41 a 45:
GET /api/action/express-v1/properties?operation=1&from=40&size=20
Respuesta: { "took": 7, "total": 45, "properties": [ ...5 items... ] }
En este punto from + size = 60 >= total = 45, 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,priceFrom,stateId) reinicia el conjunto de resultados y el offset apuntará a una colección diferente. sizeno puede superar 20. Solicitarsize=21o más retorna un error de validación:"You cannot retrieve more than 20 properties at a time". Para obtener grandes conjuntos de resultados debés paginar.fromes un offset, no un número de página.from=2retorna los registros a partir de la posición 3, no "página 2".- El campo
tookes el tiempo en milisegundos que tomó la búsqueda en el servidor para esa página específica.
Respuesta
Un documento JSON con el listado de propiedades del cliente.
| Objeto | Campo | Tipo | Requerido | Descripción |
|---|---|---|---|---|
| Response | took | int | yes | Cuánto tiempo tomó la búsqueda en milisegundos |
| total | int | yes | Cuántos registros totales hay en el contexto de esta búsqueda. Podés paginar a través de ellos | |
| properties | Array of Property | yes | La lista de objetos Property | |
| Property | propertyHash | string | yes | Un ID único de la propiedad |
| timestamp | string | yes | Timestamp ISO8601 de cuándo fue creada la propiedad | |
| lastUpdate | string | yes | Timestamp ISO8601 de la última actualización de la propiedad | |
| code | string | yes | Código único de la propiedad ingresado por el cliente | |
| branchId | int | yes | El ID de la sucursal a la que pertenece la propiedad. GET /api/action/express-v1/branches. | |
| type | int | yes | El Id del tipo de propiedad. GET /api/action/express-v1/types | |
| operation | int | yes | El Id de la operación de la propiedad. Constantes | |
| propertyType | string | yes | La descripción traducida del tipo de propiedad. GET /api/action/express-v1/types | |
| propertyOperation | string | yes | La descripción traducida de la operación de la propiedad. Constantes | |
| status | string | yes | La descripción traducida del estado de construcción. Constantes | |
| mainImage | string | no | El Id del tipo de propiedad. GET /api/action/express-v1/types | |
| currency | string | yes | El símbolo de moneda del precio de la propiedad. Constantes | |
| price | int | yes | El precio de la propiedad | |
| expensesCurrencies | string | no | El símbolo de moneda de las expensas mensuales/anuales de la propiedad. Constantes | |
| expensesPrice | int | no | El monto de las expensas mensuales/anuales de la propiedad | |
| taxCurrency | string | no | El símbolo de moneda de los impuestos mensuales/anuales de la propiedad. Constantes | |
| taxPrice | int | no | El monto de los impuestos mensuales/anuales de la propiedad | |
| title | string | yes | Título ingresado por el cliente | |
| address | string | yes | La dirección y número de la propiedad | |
| zipCode | string | yes | El código postal de la ubicación de la propiedad | |
| zone | string | yes | Descripción amigable que combina ciudad (si está disponible) y provincia | |
| countryId | int | yes | El ID del país donde se ubica la propiedad | |
| stateId | int | yes | El ID de la provincia donde se ubica la propiedad. GET /api/action/express-v1/zones | |
| countyId | int | yes | El ID del partido/municipio donde se ubica la propiedad. GET /api/action/express-v1/zones | |
| cityId | int | no | El ID de la ciudad donde se ubica la propiedad. GET /api/action/express-v1/zones | |
| countryId | int | yes | El ID del país donde se ubica la propiedad. GET /api/action/express-v1/zones | |
| country | string | yes | El nombre del país | |
| state | string | yes | El nombre de la provincia | |
| county | string | yes | El nombre del partido o segunda división geográfica | |
| city | string | no | El nombre de la ciudad, barrio o tercera división | |
| suspended | boolean | yes | La publicación fue suspendida | |
| reserved | boolean | yes | La propiedad fue reservada | |
| rented | boolean | yes | La propiedad fue alquilada | |
| sold | boolean | yes | La propiedad fue vendida | |
| description | string | yes | La descripción larga de la propiedad | |
| conditions | string | no | Las condiciones detalladas de la propiedad. Generalmente relacionadas con pagos | |
| bedrooms | int | no | Número de dormitorios de la propiedad | |
| ambiences | int | no | Cantidad de ambientes de la propiedad | |
| bathrooms | int | no | Número de baños de la propiedad | |
| dependencies | int | no | Número de cuartos de dependencia (cuartos extra) | |
| occupancy | int | no | Cantidad de ocupantes (generalmente para alquiler temporal) | |
| toilettes | int | no | Número de toilettes (medios baños) en la propiedad | |
| buildingArea | int | no | Metros cuadrados de la superficie cubierta | |
| landArea | int | no | Metros cuadrados del terreno de la propiedad | |
| yearsOld | int | no | Antigüedad de la propiedad | |
| ubication | string | no | Ubicación cardinal de la propiedad en el edificio | |
| totalFloors | int | no | Total de pisos del edificio | |
| apartmentsPerFloor | int | no | Cantidad de departamentos por piso | |
| airConditionerType | string | no | Tipo de aire acondicionado. | |
| waterHeaterType | string | no | Tipo de calentador de agua. | |
| heatingType | string | no | Tipo de calefacción. | |
| balconyType | string | no | Tipo de balcón. | |
| garage | int | no | Total de garajes de la propiedad | |
| garageType | string | no | Tipo de garaje. | |
| images | Array of Image | no | Array de objetos Image | |
| location | Location | yes | Objeto Location | |
| Location | lon | string | yes | Longitud geográfica de la propiedad |
| lat | string | yes | Latitud geográfica de la propiedad | |
| Image | image | string | yes | URL de la imagen |
| thumbnail | string | yes | URL del thumbnail | |
| orientation | int | yes | Orientación de la imagen. 1 = PORTRAIT, 2 = LANDSCAPE | |
| type | int | yes | Tipo de imagen. 1 = PHOTO, 2 = BLUEPRINT | |
| contentType | string | yes | El content type de la imagen | |
| timestamp | string | yes | Timestamp ISO8601 de cuándo se subió la imagen | |
| Labels | labels | Array of labels | no | Los labels de la propiedad. Constantes |
| attributes | attributes | Array of json attributes | no | Todos los atributos de la propiedad |
| descriptionFormatted | description | string | no | Descripción con nuevo formato que acepta saltos de línea |
Ejemplo de respuesta
{
"took": 111,
"total": 13,
"properties": [
{
"country": "Argentina",
"county": "Caballito",
"type": 20,
"zone": "Caballito, Capital Federal, Argentina",
"price": 54554,
"state": "Capital Federal",
"branchId": 773,
"images": [],
"suspended": false,
"labels": [
"mortgage-ready",
"professional-available",
"furnished",
"janitor",
"grill",
"storage",
"security",
"security-box",
"swimming-pool",
"party-saloon",
"cable-included",
"telephone-line",
"daily-dinning",
"alarm",
"front-garden",
"laundry",
"patio",
"playroom",
"private-elevator",
"suite"
],
"propertyOperation": "Alquiler Temporario",
"reserved": false,
"lastUpdate": "2019-10-29T14:13:54.000-03:00",
"customerCountryDesc": "Argentina",
"code": "1-6454656",
"description": "gran casa en haedo capital de ahora morona",
"alternativePrices": [],
"title": "gran casa en haedo capital de ahora morona",
"customerCountry": 1,
"countryId": 1,
"seoUrl": "alquiler-temporario-de-loft-en-caballito-capital-federal-1-147874",
"rented": false,
"countyId": 18,
"propertyType": "Loft",
"ambiences": 2,
"hightlight": {},
"currency": "USD",
"timestamp": "2019-10-29T00:00:00.000-03:00",
"sold": false,
"address": "paysandu 984",
"stateId": 1,
"propertyHash": "e86a6a15b7f93ae633b0b009c5c51120",
"mainImage": "https://s3.amazonaws.com/mapaprop-dev/photos/noimage.gif",
"location": {
"lon": "-58.45284939999999",
"lat": "-34.6125374"
},
"operation": 3
},
{
"country": "Argentina",
"county": "Saavedra",
"cityId": 1774,
"type": 17,
"zone": "Arroyo Corto, Saavedra, Buenos Aires, Argentina",
"price": 1,
"state": "Buenos Aires",
"branchId": 773,
"images": [
{
"image": "https://s3.amazonaws.com/mapaprop-dev/photos/1/145148/1342116.jpg",
"thumbnail": "https://s3.amazonaws.com/mapaprop-dev/photos/1/145148/1342116t.jpg",
"orientation": 2,
"imageId": 1342116,
"main": true,
"type": 2,
"contentType": "image/jpeg",
"order": 0,
"timestamp": "2017-12-20T16:27:58Z"
}
],
"suspended": false,
"labels": [],
"propertyOperation": "Alquiler Temporario",
"reserved": false,
"lastUpdate": "2018-01-16T15:36:31.000-03:00",
"paymentPeriod": "Por día",
"customerCountryDesc": "Argentina",
"code": "1-ABC635265",
"city": "Arroyo Corto",
"description": "una descripcion larga es mucho mejor que nada.",
"alternativePrices": [],
"title": "Una gran casa requiere una casita",
"customerCountry": 1,
"countryId": 1,
"seoUrl": "alquiler-temporario-de-complejo-turistico-en-arroyo-corto-saavedra-buenos-aires-1-145148",
"rented": false,
"countyId": 300,
"propertyType": "Complejo Turístico",
"hightlight": {},
"currency": "ARS",
"timestamp": "2018-01-16T00:00:00.000-03:00",
"sold": false,
"address": "Maipu 191",
"stateId": 2,
"propertyHash": "c6ed3571d0215b75c19de96d40783a1b",
"mainImage": "https://s3.amazonaws.com/mapaprop-dev/photos/1/145148/1342116t.jpg",
"location": {
"lon": "-62.40793050000002",
"lat": "-37.5996419"
},
"operation": 19
},
{
"country": "Argentina",
"occupancy": 2,
"county": "Balvanera",
"type": 1,
"zone": "Balvanera, Capital Federal, Argentina",
"price": 90000,
"state": "Capital Federal",
"branchId": 773,
"images": [
{
"image": "https://s3.amazonaws.com/mapaprop-dev/photos/1/139555/1335004.jpg",
"thumbnail": "https://s3.amazonaws.com/mapaprop-dev/photos/1/139555/1335004t.jpg",
"orientation": 2,
"imageId": 1335004,
"main": false,
"type": 1,
"contentType": "image/png",
"timestamp": "2017-12-09T16:27:54Z"
},
],
"suspended": false,
"labels": [],
"propertyOperation": "Alquiler Temporario",
"reserved": false,
"lastUpdate": "2017-11-28T21:16:48.000-03:00",
"paymentPeriod": "Por día",
"customerCountryDesc": "Argentina",
"code": "1-389398",
"expensesCurrency": "ARS",
"description": "Buena prop a estrenar",
"alternativePrices": [
{
"price": 50000.0,
"description": "Casa",
"currency": "ARS",
"id": "1863"
},
{
"price": 6500.0,
"description": "Por dia",
"currency": "ARS",
"id": "12216"
}
],
"title": "Nueva propeidad here",
"customerCountry": 1,
"countryId": 1,
"seoUrl": "alquiler-temporario-de-departamento-en-balvanera-capital-federal-1-139555",
"rented": false,
"expensesPrice": 2323,
"countyId": 91,
"propertyType": "Departamento",
"hightlight": {},
"currency": "ARS",
"timestamp": "2017-09-29T00:00:00.000-03:00",
"sold": false,
"address": "Balvanera 3993",
"zipCode": "1661",
"stateId": 1,
"propertyHash": "74f6dd0e4809f9ba1b044f3704cfef62",
"mainImage": "https://s3.amazonaws.com/mapaprop-dev/photos/1/139555/1272968t.jpg",
"taxCurrency": "ARS",
"taxPrice": 2000,
"location": {
"lon": "-58.392606099999966",
"lat": "-34.6098208"
},
"attributes": [
{
"group_sub": "label",
"country": "ar",
"key_legacy": "accessible",
"group_subtype": "ammenities",
"id": "accessible",
"label": "Accesible",
"locale": "es_AR",
"type": "bool",
"group": "propertyAttribute",
"status": true
},
],
"descriptionFormatted": "Test Images, Propiedad TestTest Images, \n\nPropiedad Test",
"operation": 19,
"status": "En Construcción"
},
]
}