Todo anúncio publicado fica salvo em nosso banco de dados sob seu Id. Eventualmente você pode despublicá-lo (Zonaprop API > DELETE aviso ), publicá-lo novamente (Zonaprop API > PUT aviso ) ou modificá-lo sem perder os dados.
Mapear uma zona significa encontrar uma equivalência entre uma zona do seu APP e uma zona do Navent.
Todo mapeamento realizado pelo seu APP fica salvo em nosso banco de dados sob seu Id. Eventualmente você pode excluí-lo ou modificá-lo.
- Um banco de dados onde você pode armazenar seus dados de mapeamento
- Métodos para realizar mapeamentos entre as zonas do seu APP e as Zonas do Navent
- Métodos para obter a zona mapeada e preencher seu JSON de imóvel (Zonaprop API > Property Object )
Métodos / Endpoints
O mapeamento de zonas consiste em um conjunto de web services que trabalham em conjunto com um banco de dados para fornecer as funcionalidades.
Headers
Para todos os métodos incluídos nesta documentação
| Type | Description |
|---|---|
| Authorization | Token de autorização da Property API |
Mapear Zona (PUT)
Este endpoint é utilizado para mapear as zonas do Zonaprop com as de um app externo.
Um mapeamento insere um registro em nosso banco de dados, que poderá ser recuperado posteriormente com um método GET
Production
| Resource information | |
|---|---|
| Authentication | Required |
| HTTP Method | PUT |
| Response | JSON |
| Version | 1 |
Resource URL
https://api-navent.mapaprop.com/property-api/navent/put-zone
Parameters - URL
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
brandZoneId | string | yes | O id da zona do app |
brand | string | yes | O nome do app |
brandZoneName | string | yes | O nome da zona do app |
naventNewZoneId | string | yes | O id da zona do Zonaprop |
naventNewZoneName | string | yes | O nome da zona do Zonaprop |
Response
Uma string indicando que o mapeamento foi realizado corretamente
| Objeto | Campo | Tipo | Descrição |
|---|---|---|---|
| Response | success | string | 'Navent Zone mapping ok' |
| error | string | Um texto indicando onde ocorreu o erro |
Sample code
//Autorização necessária
//MÉTODO PUT
//Endpoint
https://api-navent.mapaprop.com/property-api/navent/put-zone?brandZone=appZone&brand=app&naventNewZone=naventZoneId&naventNewZoneName=description&brandZoneName=appZoneName
//Parâmetros
//* brandZone
//* brand
//* brandZoneName
//* naventNewZone
//* naventNewZoneName
Como mostrado neste exemplo, os valores são 1-2-203-1032 (id da zona do app), mapaprop (app), V1-C-1004013 (id da zona da api), Lanús (nome da zona da api) e Argentina, Buenos Aires, Lanús, Lanús Oeste (nome da zona do app).
?brandZone=1-2-203-1032&brand=mapaprop&naventNewZone=V1-C-1004013&naventNewZoneName=Lanús&brandZoneName=Argentina, Buenos Aires, Lanús, Lanús Oeste
Obtemos a seguinte resposta em caso de sucesso.
Navent Zone mapping ok
Obter zona mapeada (GET)
Este web service é utilizado para obter a zona mapeada, com base na zona do seu APP, a partir do banco de dados do nosso sistema.
Production
| Resource information | |
|---|---|
| Authentication | Required |
| HTTP Method | GET |
| Response | JSON |
| Version | 1 |
Resource URL
https://api-navent.mapaprop.com/property-api/navent/get-zone
Parameters - URL
| Key | Type | Required | Description |
|---|---|---|---|
brandZoneId | string | yes | O id da zona do app |
brand | string | yes | O nome do app |
Response
O JSON completo da zona mapeada
| Objeto | Campo | Tipo | Descrição |
|---|---|---|---|
| Response | success | JSON | O JSON da zona mapeada |
| error | string | Um texto indicando onde ocorreu o erro |
Sample code
//Autorização necessária
//MÉTODO GET
//Endpoint
https://api-navent.mapaprop.com/property-api/navent/get-zone?brandZoneId=1-1-19-0&brand=mapaprop
//Parâmetros
//* brandZoneId
//* brand
Como mostrado neste exemplo, os valores são mapaprop (brand) e 1-1-19-0 (id da zona do app).
?brandZoneId=1-1-19-0&brand=mapaprop
Em caso de sucesso, obteremos a seguinte resposta JSON.
{
"nz_brand": "mapaprop",
"nz_brand_zone_id": "1-1-19-0",
"nz_navent_zone_name": "Cid Campeador",
"nz_navent_zone_id": "V1-D-1199748"
}
Obter estados da zona a partir do país (GET)
Este web service é utilizado para obter os estados do país a partir de um código ISO
Production
| Resource information | |
|---|---|
| Authentication | Required |
| HTTP Method | GET |
| Response | JSON |
| Version | 1 |
Resource URL
https://api-navent.mapaprop.com/property-api/navent/get-api-cities-state
Parameters - URL
| Key | Type | Required | Description |
|---|---|---|---|
countryIso | string | yes | O ISO do país. Baseado nesta nomenclatura |
Response
O JSON completo da zona mapeada
| Objeto | Campo | Tipo | Descrição |
|---|---|---|---|
| Response | success | JSON | O JSON do estado do país |
| error | string | Um texto indicando onde ocorreu o erro |
Sample code
//Autorização necessária
//MÉTODO GET
//Endpoint
https://api-navent.mapaprop.com/property-api/navent/get-api-states?apiKey=xxx&countryIso=AR
//Parâmetros
//* apiKey
//* countryIso
Como mostrado neste exemplo, os valores são xxx (apiKey) e AR (ISO do país).
?apiKey=xxx&countryIso=AR
Em caso de sucesso, obteremos a seguinte resposta JSON.
[
{
"id": "V1-B-1",
"nombre": "Buenos Aires (fuera de GBA)",
"nombreCompleto": "Buenos Aires (fuera de GBA),Argentina"
},
{
"id": "V1-B-2000",
"nombre": "Buenos Aires Costa Atlántica",
"nombreCompleto": "Buenos Aires Costa Atlántica,Argentina"
},
{
"id": "V1-B-6",
"nombre": "Capital Federal",
"nombreCompleto": "Capital Federal,Argentina"
},
....
Obter cidades da zona a partir do estado (GET)
Este web service é utilizado para obter a zona de cidades a partir de um estado, com base em seu id (obtido no método anterior)
Production
| Resource information | |
|---|---|
| Authentication | Required |
| HTTP Method | GET |
| Response | JSON |
| Version | 1 |
Resource URL
https://api-navent.mapaprop.com/property-api/navent/get-api-cities-state?apiKey=xxxx&stateId=V1-B-6
Parameters - URL
| Key | Type | Required | Description |
|---|---|---|---|
countryIso | string | yes | O ISO do país |
apiKey | string | yes | O token da API do Zonaprop |
Response
O JSON completo da zona mapeada
| Objeto | Campo | Tipo | Descrição |
|---|---|---|---|
| Response | success | JSON | O JSON das cidades do estado. |
| error | string | Um texto indicando onde ocorreu o erro |
Sample code
//Autorização necessária
//MÉTODO GET
//Endpoint
https://api-navent.mapaprop.com/property-api/navent/get-api-cities-state?apiKey=xxxx&stateId=V1-B-6
//Parâmetros
//* apiKey
//* stateId
Como mostrado neste exemplo, os valores são xxx (apiKey) e V1-B-6 (id do estado).
?apiKey=xxx&stateId=V1-B-6
Em caso de sucesso, obteremos a seguinte resposta JSON.
[
{
"id": "V1-B-1",
"nombre": "Buenos Aires (fuera de GBA)",
"nombreCompleto": "Buenos Aires (fuera de GBA),Argentina"
},
{
"id": "V1-B-2000",
"nombre": "Buenos Aires Costa Atlántica",
"nombreCompleto": "Buenos Aires Costa Atlántica,Argentina"
},
{
"id": "V1-B-6",
"nombre": "Capital Federal",
"nombreCompleto": "Capital Federal,Argentina"
},
....
Obter bairros da zona a partir da cidade (GET)
Este web service é utilizado para obter a zona de bairros de uma cidade a partir de seu id (obtido no método anterior)
Production
| Resource information | |
|---|---|
| Authentication | Required |
| HTTP Method | GET |
| Response | JSON |
| Version | 1 |
Resource URL
https://api-navent.mapaprop.com/property-api/navent/get-api-neighborhoods-city?apiKey=xxxx&cityId=V1-C-1003667
Parameters - URL
| Key | Type | Required | Description |
|---|---|---|---|
cityId | string | yes | O ISO da cidade |
apiKey | string | yes | O token da API do Zonaprop |
Response
O JSON completo da zona mapeada
| Objeto | Campo | Tipo | Descrição |
|---|---|---|---|
| Response | success | JSON | O JSON das cidades do estado. |
| error | string | Um texto indicando onde ocorreu o erro |
Sample code
//Autorização necessária
//MÉTODO GET
//Endpoint
https://api-navent.mapaprop.com/property-api/navent/get-api-neighborhoods-city?apiKey=xxxx&cityId=V1-C-1003667
//Parâmetros
//* apiKey
//* cityId
Como mostrado neste exemplo, os valores são xxx (apiKey) e V1-C-1003667 (id da cidade).
?apiKey=xxx&cityId=V1-C-1003667
Em caso de sucesso, obteremos a seguinte resposta JSON.
{
"id": "V1-C-1003667",
"nombre": "Almagro",
"nombreCompleto": "Almagro,Capital Federal,Argentina",
"localidades": [
{
"id": "V1-D-1199773",
"nombre": "Almagro Norte",
"nombreCompleto": "Almagro Norte,Almagro,Capital Federal,Argentina"
},
{
"id": "V1-D-1199774",
"nombre": "Almagro Sur",
"nombreCompleto": "Almagro Sur,Almagro,Capital Federal,Argentina"
}
]
}
Obter sub-bairros da zona a partir do bairro (GET)
Este web service é utilizado para obter as zonas de sub-bairros a partir de um bairro, com base em seu id (obtido no método anterior)
Production
| Resource information | |
|---|---|
| Authentication | Required |
| HTTP Method | GET |
| Response | JSON |
| Version | 1 |
Resource URL
https://api-navent.mapaprop.com/property-api/navent/get-api-sub-neighborhood?apiKey=xxxx&neighborhoodId=V1-D-1012994
Parameters - URL
| Key | Type | Required | Description |
|---|---|---|---|
neighborhoodId | string | yes | O id do bairro |
apiKey | string | yes | O token da API do Zonaprop |
Response
O JSON completo da zona mapeada
| Objeto | Campo | Tipo | Descrição |
|---|---|---|---|
| Response | success | JSON | O JSON das cidades do estado. |
| error | string | Um texto indicando onde ocorreu o erro |
Sample code
//Autorização necessária
//MÉTODO GET
//Endpoint
https://api-navent.mapaprop.com/property-api/navent/get-api-sub-neighborhood?apiKey=xxxx&neighborhoodId=V1-D-1012994
//Parâmetros
//* apiKey
//* neighborhoodId
Como mostrado neste exemplo, os valores são xxx (apiKey) e V1-D-1012994 (id do bairro).
?apiKey=xxx&neighborhoodId=V1-D-1012994
Em caso de sucesso, obteremos a seguinte resposta JSON.
{
"id": "V1-D-1012994",
"nombre": "El Pato",
"nombreCompleto": "El Pato,Berazategui,GBA Sur,Argentina",
"localidades": [....]
}
Exemplo de uso: Novo mapeamento
Este é um exemplo de caso de uso para criação de um novo mapeamento.
GET para obter o mapeamento
Primeiro, após fazer um GET ao seguinte endpoint para uma zona NÃO mapeada:
https://api-navent.mapaprop.com/property-api/navent/get-zone?brandZoneId=1-1-19-0&brand=APP
Ao não encontrar um mapeamento, obtemos um erro. A resposta de erro que devemos interpretar para iniciar o mapeamento é
statusCode: 500, (Int)
body: 'Zone not found. Brand or Zone error.', (String)
Buscar a zona compatível do Navent
A partir deste momento deveríamos criar um mapeamento com o método Mapear Zona (PUT). Para isso, antes precisamos encontrar nossa Zona dentro da Navent API. Para tanto, navegaremos pelos endpoints até chegar à nossa zona final, onde obteremos um código de Zona, para finalmente realizar um mapeamento com Mapear Zona (PUT)
Então fazemos um GET ao seguinte endpoint passando como parâmetro um id de país (AR, BR ou LAT)
AR: Exclusivamente para Argentina
BR: Exclusivamente para Brasil
LAT Para o restante da América Latina
1. Obter estados do Navent
Passamos os parâmetros countryIso e apiKey, resultando em algo assim:
https://api-navent.mapaprop.com/property-api/navent/get-api-states?countryIso=AR&apiKey=40a6660d-dfb3-48ca-8cbd-f381a525b2a4
Recebemos como resposta todos os estados ou províncias disponíveis para aquele país no Zonaprop
Uma vez obtidos esses dados, criamos uma função para interpretar essa resposta.
https://api-navent.mapaprop.com/property-api/navent/get-api-states
Função de exemplo em JS
// Navent MAPPING
let apiKey = xxxx;
let getNaventStates = (countryIsoCode) => {
$http.get(
'https://api-navent.mapaprop.com/property-api/navent/get-api-states?apiKey='+ apiKey +'&countryIso=' + countryIsoCode)
.then((response) => {
console.log("Response state data" , response)
naventStates = response.data;
});
};
Armazenamos o response.data em uma variável e passamos ao próximo endpoint
2. Obter Cidades do Navent
https://api-navent.mapaprop.com/property-api/navent/get-api-cities-state
Aqui passamos o estado selecionado como parâmetro a uma nova função:
let naventGetCities = (state) => {
$scope.loadingModal = true;
let naventState = JSON.parse(state.id);
$http.get(
'https://api-navent.mapaprop.com/property-api/navent/get-api-cities-state?apiKey='+ apiKey +'&stateId=' + naventState.id, configNavent).then((response) => {
console.log("Response cities data" , response)
naventCities = response.data.localidades;
});
};
Em seguida, passamos ao próximo endpoint para obter os bairros da cidade anterior
3. Obter Bairros do Navent
https://api-navent.mapaprop.com/property-api/navent/get-api-neighborhoods-city
Criamos uma função para armazená-los. Neste caso, devemos incluir um if antes de salvar os bairros, pois a cidade pode não conter nenhum.
let naventGetNeighborhoods = (city) => {
let naventCity = JSON.parse(city);
console.log(naventCity)
$scope.naventCity = naventCity;
$http.get(
'https://api-navent.mapaprop.com/property-api/navent/get-api-neighborhoods-city?apiKey='+ apiKey +'&cityId=' + naventCity.id, configNavent).then((response) => {
**if(response.data.localidades != []){
c**onsole.log("Response neighborhoods data" , response)
**naventNeighborhoods = response.data.localidades;
}**
});
};
Por último, criamos a última função para obter os sub-bairros no próximo endpoint
4. Obter Sub-Bairros do Navent
https://api-navent.mapaprop.com/property-api/navent/get-api-sub-neighborhood
let naventGetSubNeighborhoods = (neighborhood) => {
if (neighborhood) {
$http.get(
'https://api-navent.mapaprop.com/property-api/navent/get-api-sub-neighborhood?apiKey='+ apiKey +'&neighborhoodId=' + naventNeighborhood.id, configNavent).then((response) => {
console.log("Response SubNeighborhoods data" , response)
naventSubNeighborhoods = response.data.localidades;
});
}
};
Uma vez obtidos todos os dados para o mapeamento, fazemos o PUT final
Concretizar o mapeamento com o método PUT
https://api-navent.mapaprop.com/property-api/navent/put-zone
//Aqui passamos como parâmetros ao PUT
//* brandZoneId É o id da zona da aplicação
//* brand O nome do app (valor único e constante por aplicação)
//* naventNewZone É o id da zona do Zonaprop
//* naventNewZoneName É o nome da zona do Zonaprop
//* brandZoneName É o nome da zona da aplicação
//Endpoint
https://api-navent.mapaprop.com/property-api/navent/put-zone?brandZoneId='+ appZone +'&brand=appName&naventNewZone='+ naventNewZone + '&naventNewZoneName=' + naventNewZoneName + '&brandZoneName=' + brandZoneName