DocumentaçãoIntegrações

Google Maps

Como conectar uma chave do Google Maps para o app sugerir endereços enquanto a pessoa digita e guardar a localização (latitude e longitude) de cada endereço.

Custo em créditos: nenhum passo deste guia consome crédito de IA.

O Maps alimenta o campo de endereço dos formulários do app e a localização dos registros com endereço. Sem a chave, nada quebra, mas tudo fica mais simples: o campo de endereço vira um campo de texto comum, sem sugestões, e o registro guarda só o texto do endereço, sem latitude e longitude. Recursos que dependem da localização, como distância ou área de entrega, ficam sem o dado de que precisam.

Antes de começar

  • Plano: qualquer um, inclusive o Free. O que é preciso é só a sua própria chave do Google;
  • Conta no Google Cloud com faturamento ativo. O Google exige um cartão cadastrado mesmo para uso dentro da cota gratuita, e sem faturamento a chave é recusada;
  • Custo: o uso é cobrado pelo Google, na sua conta, conforme a tabela de preços do Maps. A plataforma não cobra crédito de integração pelas buscas de endereço.

Passo a passo

  1. em console.cloud.google.com, crie um projeto (ou escolha um que já exista);
  2. ative o faturamento nesse projeto;
  3. em APIs e serviços → Biblioteca, ative duas APIs:
    • Geocoding API;
    • Places API (New). Atenção ao "(New)": a versão antiga não serve, e o Google não a oferece mais a clientes novos desde março de 2025;
  4. em APIs e serviços → Credenciais → Criar credenciais → Chave de API, crie a chave e copie (ela começa com AIza);
  5. ainda na chave, em Restrições de API, limite o uso às duas APIs do passo 3;
  6. no editor do app, aba Integrações, categoria Localização, abra o card Google Maps;
  7. cole a chave no campo API Key e clique em Salvar e ativar.

Não restrinja a chave por site

É comum restringir uma chave do Maps ao domínio do app (restrição por "sites" ou "referenciadores HTTP"). Aqui isso quebra a integração. A chave nunca vai para o navegador de quem usa o app: quem chama o Google são os servidores da Fabapp, e essas chamadas não carregam o endereço do seu site. Uma chave restrita por site é recusada em todas elas.

A proteção certa é a do passo 5, restringindo quais APIs a chave pode usar. Como a chave fica guardada cifrada no servidor, ela não aparece no código do app para ninguém copiar.

Como saber que funcionou

  • ao salvar, a plataforma faz uma busca de teste de um endereço real. Se o Google aceitar, aparece "Google Maps ativo." e o card fica Conectado;
  • no app, digite um endereço num formulário: as sugestões devem aparecer enquanto você digita.

A busca de endereço só funciona para quem entrou no app (está logado). Isso é de propósito: cada busca gasta a cota do seu projeto no Google, e deixá-la aberta a visitantes anônimos seria um convite a abuso.

Problemas comuns

O teste do card mostra a resposta do próprio Google, e o código entre parênteses diz a causa:

O card diz O que fazer
REQUEST_DENIED confira se a Geocoding API está ativada e se o projeto tem faturamento habilitado
OVER_DAILY_LIMIT quase sempre é faturamento: a conta de faturamento precisa estar ativa e com forma de pagamento válida
OVER_QUERY_LIMIT a cota da chave estourou: espere a cota renovar ou aumente o limite no projeto
  • Acabei de criar a chave e ela é recusada. Uma chave nova leva alguns minutos para valer. Espere e salve de novo;
  • O card está Conectado, mas as sugestões não aparecem. O teste do card usa só a Geocoding API. As sugestões usam a Places API (New): confira se ela está ativada no mesmo projeto, e se não foi a versão antiga que você ativou;
  • Funcionou por um tempo e parou. Veja se o faturamento do projeto no Google continua ativo e se a chave não ganhou uma restrição por site.
Abrir a Fabapp
Relacionados
Ativando integraçõesWebhooks e avisos: Webhook (saída), Slack, Discord e TelegramQuando algo dá errado