Construindo requisições para a Multi Geocode API
O objetivo desse último endpoint é retornar as coordenadas geográficas a partir de multiplos endereços, completos ou parciais.
Para realizar a requisição para a Multi Geocode é necessário enviar a requisição usando o método POST para o seguinte endpoint:
Parâmetros da requisição
Os parâmetros são os mesmos usados na Geocode API, com a adição do parâmetro id
, que irá identificar os endereços desejados.
Parâmetros obrigatórios
Com exceção do id, o restante ao menos um é obrigatório, não há necessidade de informar todos. No entanto, quanto mais informação for fornecida, mais preciso será o resultado.
id
- Identificador único do endereço;road
- Nome da rua ou parte dele;number
- Número do logradouro. NÃO informar os dados do complemento.city
- Nome da cidade;state
- Estado;district
- Nome do bairro;zipcode
- CEP.
Parâmetro opcional
type
- Limita o tipo da pesquisa. Valores possíveis:ZIPCODE
- CEP;STATE
- Estado;CITY
- Cidade;POI
- Pedágios (Até a data atual);DISTRICT
- Bairro.
Há o limite de 200 pontos para o envio em uma mesma requisição
Exemplo 1 - Busca coordenadas de dois ou mais endereços na mesma requisição
Nesse exemplo vamos buscar dois endereços diferentes na mesma requisição. Para isso precisamos identificar cada um dos endereços com o parâmetro id. O primeiro será Address1 e o segundo Address2. A requisição encontra-se abaixo:
[ { "id": "Address1", "road": "Leopoldo Hess", "number": 75, "district": "São João", "zipcode": "88304-260", "city": "Itajai", "state": "SC" }, { "id": "Address2", "road": "Alameda Campinas", "number": 579, "zipcode": "01419-001", "city": "São Paulo", "state": "SP" } ]
Na resposta, as seguintes informações são retornadas:
found
- Quantidade de registros encontrados.results
- Resultados encontrados:address
- Endereço:road
- Nome da via;district
- Bairro;zipCode
- CEP;city
- Cidade;state
- Estado;mainLocation
- Coordenadas geográficas em latitude/longitude;
type
- Indica qual o melhor elemento encontrado na base cartográfica para o retorno da coordenada geográfica;score
- Pontuação de referência do resultado do processo de geocodificação;label
- Endereço completo encontrado utilizado no processo de geocodificação.
A resposta completa pode ser conferida abaixo:
{ "found": 2, "results": [ { "id": "Address1", "address": { "road": "Rua Leopoldo Hess", "number": "75", "district": "São João", "zipCode": "88304260", "city": "Itajaí", "state": { "code": "SC", "name": "Santa Catarina" }, "mainLocation": { "lat": -26.90314282963394, "lon": -48.68023153051618 } }, "type": "ROAD", "score": 154.34358, "label": "Rua Leopoldo Hess, 75, São João, 88304260, Itajaí, Santa Catarina, SC" }, { "id": "Address2", "address": { "road": "Alameda Santos", "district": "Cerqueira César", "zipCode": "01419001", "city": "São Paulo", "state": { "code": "SP", "name": "São Paulo" }, "mainLocation": { "lat": -23.568495, "lon": -46.650085 } }, "type": "ZIPCODE", "score": 48.98619, "label": "Alameda Santos, Cerqueira César, 01419001, São Paulo, São Paulo, SP" } ] }
Nota: Quanto maior o score, maior será a relevância do resultado para o endereço solicitado.