Validar um endereço

Para validar um endereço usando a API Maps JavaScript, chame o método fetchAddressValidation transmitindo um corpo de solicitação com o endereço a ser validado, conforme mostrado no exemplo a seguir.

async function validateAddress() {
  // Import the Address Validation library.
  const {AddressValidation} =
      await google.maps.importLibrary('addressValidation');
  // Call the fetchAddressValidation method.
  const result = await AddressValidation.fetchAddressValidation({
    address: {
      postalCode: '94043',
      regionCode: 'US',
      languageCode: 'en',
      addressLines: ['1600 Amphitheatre', 'Parkway'],
    }
  });
  // Log the results to the console.
  document.querySelector('pre').textContent =
      JSON.stringify(result, null, '  ');
}
    

É possível definir um endereço usando componentes individuais ou addressLines para transmitir o endereço formatado inteiro como um literal de matriz. A API vai analisar o endereço em componentes individuais:

address: {
  addressLines: ['1600 Amphitheatre Parkway, Mountain View, CA 94043'],
}
    

Processar os resultados

O método fetchAddressValidation retorna uma promessa que é resolvida para um objeto AddressValidationResponse. Esse objeto contém o endereço validado, incluindo todas as correções feitas pela API. É possível acessar os vários campos do objeto de resposta para determinar o status de validação do endereço. O exemplo a seguir mostra como acessar os campos do objeto de resposta.

async function validateAddress() {
  // Import the Address Validation library.
  const {AddressValidation} =
      await google.maps.importLibrary('addressValidation');
  // Call the fetchAddressValidation method.
  const result = await AddressValidation.fetchAddressValidation({
    address: {
      postalCode: '94043',
      regionCode: 'US',
      languageCode: 'en',
      addressLines: ['1600 Amphitheatre', 'Parkway'],
    }
  });
  // Log the results to the console:
  console.log(`Formatted address: ${result.address.formattedAddress}`);
  console.log(`Entered: ${result.verdict.inputGranularity}`);
  console.log(`Validated: ${result.verdict.validationGranularity}`);
  console.log(`Address complete: ${result.verdict.addressComplete}`);
  console.log(`Has unconfirmed components: ${result.verdict.hasUnconfirmedComponents}`);
  console.log(`Has inferred components: ${result.verdict.hasInferredComponents}`);
  console.log(`Has replaced components: ${result.verdict.hasReplacedComponents}`);
}
    

Próximas etapas