# Google Maps e geocodificação

Para usar o Google Maps com o Navixy On-premise, é necessário obter chaves de API do Google Maps válidas. Esta página de documentação fornece um guia passo a passo sobre como criar chaves de API do Google Maps e configurá-las para uso na plataforma Navixy.

O guia irá orientá-lo no processo de configuração de uma conta no Google Cloud Console, criação de um novo projeto, geração das chaves de API necessárias e aplicação delas na configuração da sua instância Navixy. Ao seguir este guia, você poderá integrar facilmente o Google Maps ao Navixy On-premise e aproveitar ao máximo os recursos avançados de mapeamento da plataforma.

## Criando chaves de API do Google

Para criar chaves de API do Google para uso com a plataforma Navixy, siga o guia abaixo. Observe que as chaves de API do Google estão associadas à sua conta e estão sujeitas à política de uso das APIs do Google. Para mais informações, consulte os links abaixo:

* [Termos de Serviço das APIs do Google Maps](https://developers.google.com/maps/terms)
* [Perguntas Frequentes do Google Maps](https://developers.google.com/maps/faq)

### Configurando conta e projeto

1. Navegue até a [Console do Google Cloud](https://console.cloud.google.com/projectselector2/apis/dashboard?supportedpurview=project) página da web e faça login usando as credenciais da sua conta Google. Se você não tiver uma conta, poderá criar uma.
2. As chaves de API são criadas dentro de um projeto. Se você já tiver um projeto, pode escolhê-lo na lista. Se não tiver projetos existentes, clique em "Create project" para criar um novo.
3. Nomeie seu projeto de forma apropriada e clique no botão "Create" para criar um novo projeto

![](/files/9372e0ee5413da7a76ea59df3e32c6845187fa58)

![](/files/bdcee905a94bd38b4c7eb1d1b382b3c41e49dbbc)

4. Certifique-se de que o projeto recém-criado esteja selecionado e clique em “Enable APIs and Services”. Você será direcionado para a biblioteca de APIs do Google.
5. Digite o nome da API necessária, selecione-a e clique em “Enable”. Neste caso, estamos adicionando Maps Javascript API (usada para o google maps)
6. Repita o processo para as APIs necessárias. O Navixy utiliza um total de 5 APIs:

* Google Maps JavaScript API - Google maps na interface do usuário
* Google Maps Geocoding API - Geocodificação
* Google Maps Geolocation API - Processamento de pontos LBS
* Google Maps Directions API - Criação de rotas
* Google Static Maps API - Mapas estáticos em e-mail

![](/files/73c28cfbda3f6fa6976d436f6351529a76561399)

![](/files/639871ccd464ae890bf3cb8470234702b0303d91)

![](/files/acce629f080cbea03d4b17424ef9d3012e138ef8)

Garanta que todas as APIs habilitadas sejam exibidas no seu painel:

![](/files/f716a25b5a20870165db12afab6941b933efca01)

### Gerando chaves do Google

Para habilitar a gama completa de funcionalidades do Navixy, você precisará de um total de três chaves de API:

* Chave #1 para exibição de mapas na interface do usuário
* Chave #2 para acesso a serviços GIS (geocodificação, roteamento e geolocalização)
* Chave #3 para exibição de Google Maps estáticos em notificações por e-mail

#### Gerando a chave do Google #1 para Maps na interface do usuário

1. Acesse *Credenciais* guia
2. Pressione *Create credentials* e selecione *API key*
3. A chave será exibida em uma nova janela
4. Pressione *Restringir chave* para fazer alterações, você será levado a uma página de configuração
5. Nomeie a chave para que seja mais fácil distingui-la das demais
6. Em *Restrições de aplicativo* selecione *HTTP referrer* e especifique o domínio que você usa para a plataforma. Ex.: [contoso.com/\*](http://contoso.com/*) [gps.contoso.com/\*](http://gps.contoso.com/*)
7. Em *Restrições de API* selecione *Restringir chave* e escolha Maps JavaScript API
8. Pressione *Salvar* para aplicar as alterações

![](/files/78d58f0ff93828f0e0884d7c4557a3a8b65872fd)

![](/files/1b38ffb71c4ce9ec544313e0f470cefe0bcc9438)

![](/files/ef8ca649169f987b59b79fb08f7405d934905a60)

![](/files/a6020e21b8412ac515df2144a0bd66917a1d702a)

![](/files/557ddbed21d557786c159ae2c7224584bf5379b4)

#### Gerando a Chave do Google #2 para Geocodificação, Roteamento e Geolocalização

1. Acesse *Credenciais* guia
2. Pressione *Create credentials* e selecione *API key*
3. A chave será exibida em uma nova janela
4. Pressione *Restringir chave* para fazer alterações, você será levado a uma página de configuração
5. Nomeie a chave para que seja mais fácil distingui-la das demais
6. Em *Restrições de aplicativo* selecione *Endereços IP* e especifique o IP público do seu servidor
7. Em *Restrições de API* selecione *Restringir chave* e escolha Maps Geocoding API, Maps Geolocation API, Maps Directions API
8. Pressione *Salvar* para aplicar as alterações

![](/files/d47119711fa0559b84ce6dbeba16a4da12e51cec)

![](/files/b9c9f9f6e5565484cb6570faf7d1e360e88b5130)

![](/files/64b33ba67df6be8d0531615103ce898a8060ee04)

![](/files/62320063db7784551dd04d0f7be37a347e482af1)

![](/files/a85cdb611e05f70d9b8627c61f2bf0896cfbae8c)

#### **Gerando a Chave do Google #3 para mapas estáticos em notificações por e-mail**

1. Acesse *Credenciais* guia
2. Pressione *Create credentials* e selecione *API key*
3. A chave será exibida em uma nova janela
4. Pressione *Restringir chave* para fazer alterações, você será levado a uma página de configuração
5. Nomeie a chave para que seja mais fácil distingui-la das demais
6. Em *Restrições de aplicativo* selecione *HTTP referrer* e especifique o domínio que você usa para a plataforma. Ex.: [contoso.com/\*](http://contoso.com/*) [gps.contoso.com/\*](http://gps.contoso.com/*)
7. Em *Restrições de API* selecione *Restringir chave* e escolha Maps Static API
8. Pressione *Salvar* para aplicar as alterações

![](/files/c02cb0c1adf8a9e878fb81ce74d3148c701f0da3)

![](/files/d0b23ba7b17ce50f35176128b78cc7e9b3e4cc93)

![](/files/00106f99a4074eb56599657c7000743ea619cd47)

![](/files/4892945bc3de5c7c8756e761c7540e1f932c463f)

![](/files/db79ef18c9d957124dbb03e074e2a3063eaf821c)

Para a chave do Google #3 você também precisará de um *URL signing secret*. Consulte o guia abaixo para gerar um URL signing secret para sua chave de mapas estáticos:

1. Vá para o *Dashboard*
2. Role até a lista de APIs e clique em Maps Static API
3. Você será encaminhado para uma nova página.
4. Clique em *Credenciais* menu
5. Verifique se Maps Static API está selecionada
6. Role até URL signing secret para ver o seu atual.

![](/files/013e2c9eb5531637845fdd57b36f22b6b77ff36c)

![](/files/e80d92f7b5ae26cfa9f42d9ff5b102a1abc6f303)

## Aplicando as chaves de API do Google Maps

Conforme descrito acima, recomendamos gerar três chaves de API do Google Maps e atribuir os seguintes serviços de API do Google a elas:

**Chave de API do Google Maps #1** – deve ser restrita por HTTP referrer, que é a URL da sua interface de usuário:

* Google Maps JavaScript API
* Google Street View Image API

**Chave de API do Google Maps #2** – deve ser restrita por IP do servidor:

* Google Maps Geocoding API
* Google Maps Geolocation API
* Google Maps Directions API

**Chave de API do Google Maps #3** – deve ser restrita por HTTP referrer, que é a URL da sua interface de usuário:

* Google Static Maps API (você também precisa de *URL signing secret* para esta chave)

As três chaves serão armazenadas no banco de dados. Elas devem ser inseridas na tabela **dealer\_service\_credentials** de **google** DB com a seguinte consulta:

{% code overflow="wrap" %}

```
INSERT INTO dealer_service_credentials (dealer_id, service_type,credentials) VALUES (1, 'google', '{"maps_js_api_key":"FIRST_KEY_HERE","server_api_key":"SECOND_KEY_HERE","static_map_api_key":"THIRD_KEY_HERE", "static_map_crypto_key":"URL_SIGNING_SECRET_HERE"}';
```

{% endcode %}

Se você não desejar usar o Google Maps para determinados serviços, poderá omitir as chaves que não precisa na consulta. Por exemplo, use esta consulta para aplicar apenas a terceira chave:

{% code overflow="wrap" %}

```
INSERT INTO google.dealer_service_credentials (dealer_id, service_type, credentials) VALUES (1, "google", '{"static_map_api_key":"THIRD_KEY_HERE", "static_map_crypto_key":"URL_SIGNING_SECRET_HERE"}');
```

{% endcode %}

**Reiniciar os serviços**

`restart-navixy`


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://navixy.com/docs/on-premise/pt-br/on-premise/how-to-guide/configuration/maps-and-gis/google-maps-and-geocoding.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
