Este documento descreve as etapas para começar a usar a API Places Aggregate.
Pré-requisitos
Este procedimento orienta você na configuração de uma conta do Google Cloud e de um projeto na nuvem com o faturamento ativado. Você também precisa saber como é feita a cobrança pelo uso da API Places Aggregate.
- Revise o faturamento e o custo de uso em Uso e faturamento da API Places Aggregate.
Verifique se você tem uma Conta do Google Cloud.
Faça login no console do Google CloudVerifique se você tem um projeto do Google Cloud com o faturamento ativado.
Acessar a página "Faturamento"- Selecione o projeto para abrir a página Faturamento.
Na página Faturamento:
- Se o faturamento já estiver ativado para o projeto selecionado e você tiver apenas uma conta de faturamento, a página Faturamento será aberta.
- Se você tiver várias contas de faturamento, selecione Acessar a conta de faturamento vinculada para ver os detalhes da conta de faturamento associada ao projeto.
- Se uma conta de faturamento existir, mas não estiver associada ao projeto, será solicitado que você vincule uma conta de faturamento ao projeto.
- Se não houver uma conta de faturamento ou se você quiser criar uma nova, selecione Gerenciar contas de faturamento para criar uma nova conta de faturamento. Para mais informações, consulte Criar uma nova conta do Cloud Billing de autoatendimento.
Ativar a API
Antes de usar a API Places Aggregate, use o console do Google Cloud ou o comando gcloud para ativá-la no seu projeto na nuvem do Google Cloud.
Para ativar a API:
Console
Abra a página do produto no console do Google Cloud:
Ativar a API Places AggregateClique no botão Ativar.
gcloud
gcloud services enable \ --project "PROJECT" \ "areainsights.googleapis.com"
Saiba mais sobre o SDK Google Cloud, a instalação do SDK Cloud e os seguintes comandos:
Receber uma chave de API para usar com a API Places Aggregate
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. O procedimento da chave de API vem primeiro. Para usar um token OAuth, consulte Criar um token OAuth.
Uma chave de API é uma string alfanumérica exclusiva que associa sua conta do Cloud Billing e o projeto na nuvem do Google Cloud à solicitação que seu aplicativo faz a uma API ou um SDK da Plataforma Google Maps. Para criar uma nova chave ou adicionar uma API ou um SDK a uma chave, siga estas instruções.
Console
-
Acesse a página Plataforma Google Maps > Chaves e credenciais.
- Se solicitado, selecione o projeto.
-
Escolha uma destas opções:
-
Crie uma nova chave:
- Clique em Criar credenciais > Chave de API.
- No painel Criar chave de API, abra a lista Selecionar restrições de API.
- Limpe as APIs que essa chave não precisa e verifique se a API Places Aggregate continua selecionada.
- Clique em Criar. O painel mostra sua nova chave de API.
-
Usar uma chave atual:
- Clique no nome da chave.
- Na lista Selecionar restrições da API, escolha API Places Aggregate.
- Clique em Salvar.
Selecionar uma API aqui não a ativa. Verifique se a API Places Aggregate está ativada na página da biblioteca de APIs.
-
- Para ver a string da chave mais tarde, acesse a página Chaves e credenciais e clique em Mostrar chave.
Se o console estiver diferente do que é mostrado nestas etapas, consulte Criar uma chave de API e Adicionar restrições de API na documentação do Google Cloud.
gcloud
Substitua PROJECT_ID pelo ID do projeto nos comandos a seguir.
-
Crie uma nova chave: execute o comando a seguir e substitua DISPLAY_NAME por um nome para a chave.
gcloud services api-keys create \ --project="PROJECT_ID" \ --display-name="DISPLAY_NAME" \ --api-target=service=areainsights.googleapis.com
Saiba mais sobre o SDK Google Cloud, a instalação do SDK Cloud e os seguintes comandos:
-
Usar uma chave atual: execute o comando a seguir e substitua KEY_ID pelo ID da chave. A flag
--appendmantém as APIs que a chave já permite. Sem ele, o comando as substitui.gcloud services api-keys update KEY_ID \ --project="PROJECT_ID" \ --append \ --api-target=service=areainsights.googleapis.com
Saiba mais sobre o SDK Google Cloud, a instalação do SDK Cloud e os seguintes comandos:
O ID da chave não é a string de chave nem o nome de exibição. Para encontrá-lo, execute
gcloud services api-keys list --project="PROJECT_ID". O ID é a última parte do camponame:projects/PROJECT_NUMBER/locations/global/keys/KEY_ID.
Para ver a string de chave, execute
gcloud services api-keys get-key-string KEY_ID
--project="PROJECT_ID".
Fazer uma solicitação de API
Este exemplo mostra uma solicitação para retornar a contagem de restaurantes em São Francisco que têm preços moderados.
Clique em API_KEY no código abaixo para inserir a string alfanumérica da chave:
curl --location 'https://areainsights.googleapis.com/v1:computeInsights' \ --header 'X-Goog-Api-Key: API_KEY' \ --header 'Content-Type: application/json' \ --data '{ "insights":[ "INSIGHT_COUNT" ], "filter":{ "locationFilter":{ "region":{ "place":"places/ChIJIQBpAG2ahYAR_6128GcTUEo" } }, "typeFilter":{ "includedTypes":[ "restaurant" ] }, "priceLevels":[ "PRICE_LEVEL_INEXPENSIVE" ] } }'- Clique no ícone de cópia no exemplo de código,
,
para copiar o comando curl. - Cole o comando em uma janela do terminal e execute-o.
A resposta é um objeto JSON no formato:
{ "count": "1025" }
Aplicar restrições de chave de API
O Google recomenda que você restrinja as chaves de API limitando o uso somente às APIs e aos apps que precisam delas. Restringir chaves de API adiciona segurança ao seu aplicativo, protegendo-o contra solicitações não autorizadas. As chaves de API são compatíveis com dois tipos de restrições:
- As restrições de API especificam quais SDKs e APIs podem ser chamados com a chave de API. O console e a CLI gcloud exigem pelo menos uma restrição de API quando você cria uma chave.
- As restrições de aplicativo especificam quais sites, endereços IP ou apps podem usar uma chave de API.
Para mais informações sobre como aplicar restrições, consulte Restringir suas chaves de API.
Criar um token OAuth
A API Places Aggregate é compatível com o OAuth 2.0 para autenticação. O Google é compatível com cenários comuns do OAuth 2.0, como os de um servidor da Web.
Neste documento, descrevemos como transmitir um token OAuth para uma chamada de API do Places Aggregate no seu ambiente de desenvolvimento. Para mais informações sobre como usar o OAuth em um ambiente de produção, consulte Métodos de autenticação no Google.
É possível chamar as APIs Google Maps diretamente fazendo solicitações de API ao servidor ou usar bibliotecas de cliente para simplificar seu código. O Google Maps oferece bibliotecas de cliente para Go, Java, Node.js e Python. Para mais informações, consulte Bibliotecas de cliente da API Places Aggregate.
Visão geral do OAuth
É possível criar e gerenciar tokens de acesso com o OAuth de várias maneiras, dependendo do seu ambiente de implantação.
É possível usar o OAuth 2.0 para interações de servidor para servidor entre seu aplicativo e um serviço do Google. Nesse cenário, você usa uma conta de serviço associada ao aplicativo, em vez de um usuário individual. É possível fazer solicitações de API usando a conta de serviço sem envolver os usuários diretamente. Para mais informações sobre métodos de autenticação, consulte Métodos de autenticação no Google.
Como alternativa, é possível integrar a API Places Aggregate a um app para dispositivos móveis Android ou iOS. Para mais informações sobre como usar o OAuth e gerenciar tokens de acesso para diferentes ambientes de implantação, consulte Como usar o OAuth 2.0 para acessar as APIs do Google.
Escopos do OAuth
Para usar o OAuth com a API Places Aggregate, atribua ao token OAuth o seguinte escopo:
https://www.googleapis.com/auth/cloud-platform
Exemplo: testar chamadas de API REST no ambiente de desenvolvimento local
Se você não tiver um ambiente que gere tokens e quiser testar a API Places Aggregate com um token OAuth, use o procedimento nesta seção.
Este exemplo descreve como usar o token OAuth fornecido pelo Application Default Credentials (ADC) para fazer a chamada. Para mais informações sobre como usar o ADC para chamar APIs do Google com bibliotecas de cliente, consulte Autenticar usando bibliotecas de cliente.
Use o procedimento REST a seguir apenas para desenvolvimento ou teste, não para produção.
Pré-requisitos
Antes de fazer uma solicitação REST usando o ADC, use a CLI gcloud para fornecer
credenciais ao ADC:
Instale e inicialize a CLI
gcloud. Para mais informações, consulte Instalar a CLI gcloud.Faça a autenticação com a
gcloudCLI:gcloud auth application-default login
Conclua o processo de login para salvar suas credenciais 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 da solicitação:
Transmita o token OAuth no cabeçalho
Authorizationusando o seguinte comando para gerar o token:gcloud auth application-default print-access-tokenO token retornado tem um escopo de
https://www.googleapis.com/auth/cloud-platform.Transmita o ID ou o nome do projeto na nuvem do Google Cloud com o faturamento ativado no cabeçalho
X-Goog-User-Project.
Para chamar a API Places Aggregate usando um token OAuth, siga estas etapas:
No exemplo de código a seguir, substitua PROJECT_NUMBER_OR_ID pelo número ou ID do projeto na nuvem do Google Cloud.
Este exemplo mostra uma solicitação para retornar a contagem de restaurantes em São Francisco que têm preços moderados:
curl -X POST 'https://areainsights.googleapis.com/v1:computeInsights' \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_NUMBER_OR_ID" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ --data '{ "insights":[ "INSIGHT_COUNT" ], "filter":{ "location_filter":{ "region":{ "place":"places/ChIJIQBpAG2ahYAR_6128GcTUEo" } }, "type_filter":{ "included_types":[ "restaurant" ] }, "price_levels":[ "PRICE_LEVEL_INEXPENSIVE" ] } }'Para copiar o comando
curl, clique em Copiar no exemplo de código.Cole o comando em uma janela do terminal e execute-o.
A resposta é um objeto JSON:
{
"count": "1025"
}
Solução de problemas
Se a solicitação retornar uma mensagem de erro informando que essa API não é compatível com credenciais de usuário final, consulte Resolver problemas de configuração do ADC.
A seguir
Agora que você ativou a API Places Aggregate e fez uma solicitação, consulte Fazer sua primeira solicitação para saber mais sobre como usar a API.