O modelo de imóvel
Quando você publica um imóvel através da PropertyAPI, você o envia uma única vez com o modelo da Mapaprop. Nós o traduzimos para o formato de cada portal.
Para que isso funcione nos 15 países onde operamos, há uma única coisa que você precisa entender bem:
o vocabulário é único. O tipo casa é o mesmo valor na Argentina, no México e no Brasil. O que
muda de um país para outro é como ele se chama na tela — "Departamento", "Piso", "Apartamento" —
e quais opções estão disponíveis, não o valor que você envia.
Se você integra vários países, aprende um vocabulário, não quinze.
Tipo e operação
No JSON do imóvel eles viajam como números:
| Campo | O que é |
|---|---|
type | O tipo do imóvel |
propertyOperation | A operação |
Esses números são estáveis: significam a mesma coisa em todos os países.
As operações são sete:
propertyOperation | Operação |
|---|---|
1 | Venda |
2 | Aluguel |
3 | Aluguel por temporada |
4 | Permuta |
5 | Trespasse |
6 | Compartilhar |
7 | Leilão |
Os tipos são vinte e três e não os listamos aqui, porque não todos estão habilitados em todos os países. Você os obtém a partir do catálogo.
O catálogo: de onde vêm os valores
O GET /property-attributes devolve, para um país,
tudo o que aquele país aceita. Cada entrada traz:
| Campo | O que é |
|---|---|
pa_key | A chave em texto — apartment, house, pool |
pa_key_legacy | O valor estável que você envia no JSON |
pa_label | O rótulo traduzido, para mostrar ao seu usuário |
pa_type | A natureza do dado: bool, list ou string |
pa_group_subtype | A família, para agrupar na tela — ammenities, spaces, services |
Com isso você consegue traduzir nas duas direções: do seu sistema para o nosso, e da nossa resposta para algo legível para o seu usuário.
Peça o catálogo do país do imóvel, não de um só. Um tipo pode estar habilitado na Argentina e não no Peru.
E tenha isso em mente: nós não validamos os valores contra o catálogo. A validação do cadastro verifica que os campos obrigatórios estejam presentes e sejam do tipo de dado correto — nada mais. Um valor que aquele país não usa não é rejeitado: é gravado, e o imóvel fica publicado com um dado errado. O catálogo não é uma sugestão: é a única forma de saber o que enviar.
Os atributos
Além dos campos fixos, o imóvel leva um array attributes com todo o resto: as comodidades, os
acabamentos, as orientações. É ali que vive a riqueza do anúncio, e é o mesmo lugar para os três
tipos de dado:
pa_type | O que é | O que você envia |
|---|---|---|
bool | Tem ou não tem — piscina, churrasqueira, garagem coberta | a entrada do atributo, marcada como presente |
list | Uma opção entre várias — tipo de ar-condicionado, orientação | a entrada da opção escolhida, com o seu valor |
string | Um valor com texto próprio | a entrada, com a chave do valor |
Copie os nomes exatos dos campos de cada entrada a partir do exemplo em O objeto JSON do imóvel — eles não são os mesmos para as três naturezas, e não coincidem com os do catálogo. Esse exemplo é o contrato.
O que você envia e o que nós preenchemos
O catálogo traz mais campos do que você precisa enviar. A regra é simples: envie apenas o que você sabe e nós não.
| Quem define | |
|---|---|
| O identificador do cliente | Nós, a partir do seu token — se você enviar no body, é ignorado |
| Todo o resto | Você |
O array attributes é gravado exatamente como você o envia, rótulos e idioma incluídos: nós não
o reescrevemos contra o catálogo. Isso significa que, se você inventar um rótulo, é esse que vai
aparecer.
Por isso: monte cada entrada a partir do catálogo do país em vez de escrevê-la à mão. Peça o
GET /property-attributes para o país do imóvel e copie a entrada como ela vem.
Um exemplo do vocabulário único
O mesmo imóvel, publicado em dois países, envia o mesmo valor:
// Argentina
{ "type": 1, "propertyOperation": 1, "currency": "USD" }
// Espanha — mesmo tipo, mesmo número
{ "type": 1, "propertyOperation": 1, "currency": "EUR" }
O que muda é o que o seu usuário vê: na Argentina o catálogo devolve pa_label: "Departamento"; na
Espanha, pa_label: "Piso".
E se o país não estiver no catálogo
Se o GET /property-attributes não devolver o país que você procura, aquele país ainda não está
habilitado para publicação. Não converta os valores à mão e não assuma os de outro país: fale com
a gente e nós habilitamos.
Veja também
- O objeto JSON do imóvel — a referência de campos do objeto
GET /property-attributes— o catálogo por país- Conexões com portais — conectar a conta de portal do seu cliente