Retorna o detalhe completo de um conjunto de propriedades a partir de seus IDs, com paginação e ordem opcional. É pensado para o painel de resultados do chat: primeiro se obtêm os IDs com GET /api/action/mapaprop-chat-ai-v1/search e depois se resolve o detalhe em páginas de até 10 propriedades com este endpoint.
customerId é resolvido a partir do access token. Somente são retornadas propriedades que pertençam à conta autenticada; qualquer ID de outra conta é descartado em silêncio.
| Informações do recurso | |
|---|---|
| Autenticação | Obrigatória (Token de API, Bearer) |
| Método HTTP | GET |
| Resposta | JSON |
| Versão | 1 |
URL do recurso
https://mapaprop.app/api/action/mapaprop-chat-ai-v1/properties
Parâmetros
| Chave | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| propertyIds | string | sim | Lista de IDs de propriedade separados por vírgula (ex: "2600144,2600145,2600150"). Os valores não numéricos são ignorados em silêncio |
| from | int | não | Offset de paginação, base zero. Por padrão 0 |
| size | int | não | Quantidade de resultados por página. Por padrão 10. Se for enviado um valor maior que 10, é ajustado para 10 (não gera erro) |
| sort | string | não | Ordem dos resultados. Valores válidos: price_desc, price_asc, area_desc, bedrooms_desc. Qualquer outro valor é ignorado e os resultados são retornados na ordem de propertyIds |
Código de exemplo
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}
Resposta
| Objeto | Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|---|
| Response | properties | Array of Property | sim | A página de propriedades resolvida |
| total | int | sim | Quantidade total de IDs recebidos em propertyIds (não é uma contagem de uma busca; é simplesmente propertyIds.length) | |
| from | int | sim | O offset recebido, tal qual | |
| size | int | sim | Quantidade de propriedades retornadas nesta página (pode ser menor que o size solicitado) | |
| hasMore | boolean | sim | Se restam mais propriedades após esta página | |
| Property | propertyId | int | sim | ID da propriedade |
| code | string | sim | Código da propriedade inserido pelo cliente, sem o prefixo de conta | |
| title | string | sim | Título da propriedade | |
| description | string | sim | Descrição da propriedade | |
| descriptionFormatted | string | não | Descrição com quebras de linha | |
| seoUrl | string | sim | Rota SEO da propriedade no site do cliente | |
| type | int | sim | ID do tipo de propriedade. GET /api/action/mapaprop-chat-ai-v1/types | |
| propertyType | string | sim | Descrição traduzida do tipo | |
| operation | int | sim | ID da operação. GET /api/action/mapaprop-chat-ai-v1/operations | |
| propertyOperation | string | sim | Descrição traduzida da operação | |
| status | string | não | Descrição traduzida do estado de construção | |
| price | int | sim | Preço da propriedade | |
| currency | string | sim | Moeda do preço | |
| expensesPrice | int | não | Valor do condomínio | |
| expensesCurrency | string | não | Moeda do condomínio | |
| taxPrice | int | não | Valor de impostos | |
| taxCurrency | string | não | Moeda dos impostos | |
| address | string | não | Endereço da propriedade | |
| countryId | int | sim | ID do país | |
| stateId | int | sim | ID do estado (zone1) | |
| countyId | int | não | ID do município (zone2) | |
| cityId | int | não | ID da cidade/bairro (zone3) | |
| country | string | sim | Nome do país | |
| state | string | não | Nome do estado | |
| county | string | não | Nome do município | |
| city | string | não | Nome da cidade/bairro | |
| customerCountryDesc | string | sim | Nome do país da conta do cliente | |
| bedrooms | int | não | Quantidade de quartos | |
| ambiences | int | não | Quantidade de ambientes | |
| bathrooms | int | não | Quantidade de banheiros | |
| totalSurface | number | não | Superfície total em m². Pode não estar presente em propriedades cadastradas somente com buildingArea/landArea | |
| buildingArea | int | não | Superfície coberta em m² | |
| landArea | int | não | Superfície do terreno em m² | |
| garage | int | não | Quantidade de vagas de garagem | |
| garageType | string | não | Descrição do tipo de garagem | |
| sold | boolean | sim | Se a propriedade foi marcada como vendida | |
| rented | boolean | sim | Se a propriedade foi marcada como alugada | |
| reserved | boolean | sim | Se a propriedade foi reservada | |
| suspended | boolean | sim | Se a publicação foi suspensa | |
| mainImage | string | sim | URL completa da imagem principal | |
| images | Array of Image | não | Imagens da propriedade | |
| mapLatitude | string | não | Latitude | |
| mapLongitude | string | não | Longitude | |
| mapEmbedUrl | string | não | URL pronta para incorporar um mapa (Google Maps), somente se a propriedade tiver coordenadas | |
| labels | Array of string | não | Labels de amenities/atributos em destaque. Constantes | |
| attributes | Array of object | não | Atributos ativos da propriedade | |
| Image | image | string | sim | URL da imagem |
| thumbnail | string | sim | URL do thumbnail |
Exemplo de resposta
{
"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
}
Se propertyIds não for enviado, ou nenhum de seus valores for um número válido, o serviço responde HTTP 400 com um JSON de erro: {"error": "REQUIRED_INPUT", "description": "validation failed"} quando falta o parâmetro, ou {"error": "REQUIRED_INPUT", "description": "No valid property IDs provided"} quando são enviados apenas valores não numéricos.