Configurar a API Geocoding

Desenvolvedores do Espaço Econômico Europeu (EEE)

Este documento descreve as etapas necessárias para começar a usar a API Geocoding.

Para proteger os produtos da Plataforma Google Maps contra uso não autorizado, as chamadas de API precisam incluir uma chave de API ou um token OAuth.

Criar um token OAuth

A API Geocoding é compatível com o uso do OAuth 2.0 para autenticação. O Google permite o uso do OAuth 2.0 para diversas finalidades, como em servidores da Web.

Este documento descreve como transmitir um token do OAuth para a chamada da API Geocoding no seu ambiente de desenvolvimento. Para instruções sobre como usar o OAuth em um ambiente de produção, consulte Métodos de autenticação no Google.

Sobre o OAuth

Há muitas maneiras de criar e gerenciar tokens de acesso com OAuth com base no seu ambiente de implantação.

Por exemplo, o sistema do Google OAuth 2.0 aceita interações de servidor para servidor, como as que ocorrem entre seu aplicativo e um serviço do Google. Para esse cenário, você precisa de uma conta de serviço, que pertence ao aplicativo e não a um usuário final. O aplicativo chama as APIs do Google em nome da conta de serviço, evitando o envolvimento direto dos usuários. Para mais informações sobre métodos de autenticação, consulte Métodos de autenticação no Google.

Outra opção é usar a API Geocoding como parte de um app para dispositivos móveis Android ou iOS. Para informações gerais sobre como usar o OAuth com a API Geocoding, incluindo como gerenciar tokens de acesso para diferentes ambientes de implantação, consulte Como usar o OAuth 2.0 para acessar as APIs do Google.

Sobre os escopos do OAuth

Para usar o OAuth com a API Geocoding, o token OAuth precisa receber o escopo correto. A API Geocoding é compatível com os seguintes escopos:

  • https://www.googleapis.com/auth/maps-platform.geocode — Use com todos os endpoints da API Geocoding.
  • https://www.googleapis.com/auth/maps-platform.geocode.address — Use somente com GeocodeAddress para geocodificação direta.
  • https://www.googleapis.com/auth/maps-platform.geocode.location — Use somente com GeocodeLocation para geocodificação inversa.
  • https://www.googleapis.com/auth/maps-platform.geocode.place — Use somente com GeocodePlace para geocodificação de lugar.

Além disso, é possível usar o escopo geral https://www.googleapis.com/auth/cloud-platform para todos os endpoints da API Geocoding. Esse escopo é útil durante o desenvolvimento porque é o padrão usado ao criar tokens com gcloud.

Exemplo: testar chamadas da API REST no ambiente de desenvolvimento local

Se você quiser testar a API Geocoding usando um token OAuth, mas não tiver um ambiente configurado para gerar tokens, use o procedimento desta seção para fazer a chamada.

Este exemplo descreve como usar o token do OAuth fornecido pelas Application Default Credentials (ADC) para fazer a chamada. Para informações sobre como usar o ADC para chamar APIs do Google usando bibliotecas de cliente, consulte Autenticar usando bibliotecas de cliente.

Pré-requisitos

Antes de fazer uma solicitação REST usando o ADC, use a CLI do Google Cloud para fornecer credenciais ao ADC:

  1. Instale e inicialize a gcloud CLI.
  2. Execute o seguinte comando gcloud na sua máquina local para criar o arquivo de credenciais:

    gcloud auth application-default login
  3. Uma tela de login será exibida. Após o login, suas credenciais são armazenadas no arquivo de credenciais local usado pelo ADC.

Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local.

Fazer uma solicitação REST

Neste exemplo, você transmite dois cabeçalhos de solicitação:

  • Transmita o token OAuth no cabeçalho Authorization usando o seguinte comando para gerar o token:

    gcloud auth application-default print-access-token

    O token retornado tem um escopo de https://www.googleapis.com/auth/cloud-platform.

  • Transmita o ID ou o nome do seu projeto do Google Cloud com o faturamento ativado no cabeçalho X-Goog-User-Project.

O exemplo a seguir faz uma chamada para a API Geocoding usando um token OAuth.

  1. Edite o campo PROJECT_ID para transmitir o ID do seu projeto do Google Cloud.

    curl -X GET -H 'Content-Type: application/json' \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://geocode.googleapis.com/v4beta/geocode/address/1600+Amphitheatre+Parkway,+Mountain+View,+CA"
    
  2. Clique no ícone de cópia no exemplo de código, Selecione o ícone de cópia., para copiar o comando curl.
  3. Cole o comando em uma janela de terminal e execute-o.

A resposta é um objeto JSON:

Solução de problemas

Se a sua solicitação retornar uma mensagem de erro informando que as credenciais do usuário final não são compatíveis com essa API, consulte Solução de problemas de configuração do ADC.