Devuelve el detalle completo de un conjunto de propiedades a partir de sus IDs, con paginación y orden opcional. Está pensado para el panel de resultados del chat: primero se obtienen los IDs con GET /api/action/mapaprop-chat-ai-v1/search y después se resuelve el detalle de a páginas de hasta 10 propiedades con este endpoint.
customerId se resuelve del access token. Solo se devuelven propiedades que pertenezcan a la cuenta autenticada; cualquier ID de otra cuenta se descarta en silencio.
| Información del recurso | |
|---|---|
| Autenticación | Requerida (Token de API, Bearer) |
| HTTP Method | GET |
| Response | JSON |
| Version | 1 |
URL del recurso
https://mapaprop.app/api/action/mapaprop-chat-ai-v1/properties
Parámetros
| Key | Type | Required | Descripción |
|---|---|---|---|
| propertyIds | string | yes | Lista de IDs de propiedad separados por coma (ej: "2600144,2600145,2600150"). Los valores no numéricos se ignoran en silencio |
| from | int | no | Offset de paginación, base cero. Por defecto 0 |
| size | int | no | Cantidad de resultados por página. Por defecto 10. Si se envía un valor mayor a 10, se ajusta a 10 (no genera error) |
| sort | string | no | Orden de los resultados. Valores válidos: price_desc, price_asc, area_desc, bedrooms_desc. Cualquier otro valor se ignora y los resultados se devuelven en el orden de propertyIds |
Código de ejemplo
GET /api/action/mapaprop-chat-ai-v1/properties?propertyIds=2600144,2600145,2600150&from=0&size=10&sort=price_desc HTTP/1.1
Host: mapaprop.app
Content-Type: application/x-www-form-urlencoded
Content-Length: 0
Authorization: Bearer {access_token}
Respuesta
| Objeto | Campo | Tipo | Requerido | Descripción |
|---|---|---|---|---|
| Response | properties | Array of Property | yes | La página de propiedades resuelta |
| total | int | yes | Cantidad total de IDs recibidos en propertyIds (no es un conteo de una búsqueda; es simplemente propertyIds.length) | |
| from | int | yes | El offset recibido, tal cual | |
| size | int | yes | Cantidad de propiedades devueltas en esta página (puede ser menor al size solicitado) | |
| hasMore | boolean | yes | Si quedan más propiedades después de esta página | |
| Property | propertyId | int | yes | ID de la propiedad |
| code | string | yes | Código de la propiedad ingresado por el cliente, sin el prefijo de cuenta | |
| title | string | yes | Título de la propiedad | |
| description | string | yes | Descripción de la propiedad | |
| descriptionFormatted | string | no | Descripción con saltos de línea | |
| seoUrl | string | yes | Ruta SEO de la propiedad en el sitio del cliente | |
| type | int | yes | ID del tipo de propiedad. GET /api/action/mapaprop-chat-ai-v1/types | |
| propertyType | string | yes | Descripción traducida del tipo | |
| operation | int | yes | ID de la operación. GET /api/action/mapaprop-chat-ai-v1/operations | |
| propertyOperation | string | yes | Descripción traducida de la operación | |
| status | string | no | Descripción traducida del estado de construcción | |
| price | int | yes | Precio de la propiedad | |
| currency | string | yes | Moneda del precio | |
| expensesPrice | int | no | Monto de expensas | |
| expensesCurrency | string | no | Moneda de las expensas | |
| taxPrice | int | no | Monto de impuestos | |
| taxCurrency | string | no | Moneda de los impuestos | |
| address | string | no | Dirección de la propiedad | |
| countryId | int | yes | ID del país | |
| stateId | int | yes | ID de la provincia (zone1) | |
| countyId | int | no | ID del partido (zone2) | |
| cityId | int | no | ID de la ciudad/barrio (zone3) | |
| country | string | yes | Nombre del país | |
| state | string | no | Nombre de la provincia | |
| county | string | no | Nombre del partido | |
| city | string | no | Nombre de la ciudad/barrio | |
| customerCountryDesc | string | yes | Nombre del país de la cuenta del cliente | |
| bedrooms | int | no | Cantidad de dormitorios | |
| ambiences | int | no | Cantidad de ambientes | |
| bathrooms | int | no | Cantidad de baños | |
| totalSurface | number | no | Superficie total en m². Puede no estar presente en propiedades cargadas solo con buildingArea/landArea | |
| buildingArea | int | no | Superficie cubierta en m² | |
| landArea | int | no | Superficie de terreno en m² | |
| garage | int | no | Cantidad de cocheras | |
| garageType | string | no | Descripción del tipo de cochera | |
| sold | boolean | yes | Si la propiedad fue marcada como vendida | |
| rented | boolean | yes | Si la propiedad fue marcada como alquilada | |
| reserved | boolean | yes | Si la propiedad fue reservada | |
| suspended | boolean | yes | Si la publicación fue suspendida | |
| mainImage | string | yes | URL completa de la imagen principal | |
| images | Array of Image | no | Imágenes de la propiedad | |
| mapLatitude | string | no | Latitud | |
| mapLongitude | string | no | Longitud | |
| mapEmbedUrl | string | no | URL lista para embeber un mapa (Google Maps), solo si la propiedad tiene coordenadas | |
| labels | Array of string | no | Labels de amenities/atributos destacados. Constantes | |
| attributes | Array of object | no | Atributos activos de la propiedad | |
| Image | image | string | yes | URL de la imagen |
| thumbnail | string | yes | URL del thumbnail |
Ejemplo de respuesta
{
"properties": [
{
"propertyId": 2600144,
"code": "casas236516",
"title": "Departamento 2 ambientes en Palermo",
"description": "Excelente departamento a estrenar...",
"seoUrl": "venta-de-departamento-en-palermo-capital-federal-11099-2600144",
"type": 1,
"propertyType": "Departamento",
"operation": 1,
"propertyOperation": "Venta",
"price": 210000,
"currency": "USD",
"address": "Av. Santa Fe 3200",
"countryId": 1,
"stateId": 1,
"countyId": 46,
"country": "Argentina",
"state": "Capital Federal",
"county": "Palermo",
"customerCountryDesc": "Argentina",
"bedrooms": 2,
"bathrooms": 1,
"totalSurface": 55,
"sold": false,
"rented": false,
"reserved": false,
"suspended": false,
"mainImage": "https://s3.amazonaws.com/mapaprop-dev/photos/11099/2600144/1t.jpg",
"images": [
{
"image": "https://s3.amazonaws.com/mapaprop-dev/photos/11099/2600144/1.jpg",
"thumbnail": "https://s3.amazonaws.com/mapaprop-dev/photos/11099/2600144/1t.jpg"
}
],
"mapLatitude": "-34.5875",
"mapLongitude": "-58.4205",
"mapEmbedUrl": "https://www.google.com/maps/embed/v1/place?key=...&q=-34.5875,-58.4205&zoom=15",
"labels": ["furnished", "grill"]
}
],
"total": 3,
"from": 0,
"size": 1,
"hasMore": true
}
Si no se envía propertyIds, o ninguno de sus valores es un número válido, el servicio responde HTTP 400 con un JSON de error: {"error": "REQUIRED_INPUT", "description": "validation failed"} cuando falta el parámetro, o {"error": "REQUIRED_INPUT", "description": "No valid property IDs provided"} cuando se envían solo valores no numéricos.