O Place Autocomplete usa tokens de sessão para agrupar as fases de consulta e seleção
de uma pesquisa de preenchimento automático do usuário em uma sessão discreta para fins de faturamento. A sessão começa quando o usuário começa a digitar uma consulta e termina
quando ele seleciona um lugar e uma chamada para o Place Details é feita. Cada sessão pode
ter várias consultas de preenchimento automático, seguidas por uma seleção de lugar. As chaves de API usadas para cada solicitação em uma sessão precisam pertencer ao mesmo projeto do console do Google Cloud. Após a conclusão de uma sessão, o token perde a validade. Seu app precisa gerar um novo token para cada sessão. Se o parâmetro sessiontoken
for omitido ou você reutilizar um token de sessão, a sessão será cobrada como se nenhum token de sessão tivesse sido fornecido. Cada solicitação será faturada separadamente.
Recomendamos as seguintes diretrizes:
- Use tokens de sessão em todas as sessões de preenchimento automático.
- Gerar um novo token para cada sessão.
- Verifique se as chaves de API usadas para todas as solicitações de Autocomplete e de detalhes de lugar em uma sessão pertencem ao mesmo projeto do console do Google Cloud.
- Transmita um token de sessão exclusivo para cada sessão nova. Se você usar o mesmo token para mais de uma sessão, cada solicitação vai ser faturada individualmente.
Você pode omitir o token de sessão do Autocomplete de uma solicitação. Se o token de sessão for omitido, cada solicitação será faturada separadamente, o que vai acionar a SKU Autocomplete – por solicitação. Se você reutilizar um token, a sessão será considerada inválida, e as solicitações serão cobradas como se nenhum token de sessão tivesse sido fornecido.
Exemplo
À medida que o usuário digita uma consulta, uma solicitação de preenchimento automático é chamada a cada poucos toques de tecla (não por caractere) e uma lista de resultados possíveis é retornada. Quando o usuário faz uma seleção na lista de resultados, a seleção é contabilizada como uma solicitação, e todas as solicitações feitas durante a pesquisa são agrupadas e contabilizadas como uma única solicitação. Se o usuário selecionar um lugar, a consulta de pesquisa vai estar disponível sem custos financeiros, e apenas a solicitação de dados do lugar será cobrada. Se o usuário não fizer uma seleção em alguns minutos após o início da sessão, apenas a consulta de pesquisa será cobrada.
Vamos examinar esse fluxo de eventos da perspectiva de um app.
- Um usuário começa a digitar uma consulta para pesquisar "Paris, França".
- Ao detectar a entrada do usuário, o app cria um novo token de sessão, "Token A".
- À medida que o usuário digita, a API faz uma solicitação de preenchimento automático a cada poucos
caracteres, mostrando uma nova lista de resultados possíveis para cada um:
"P"
"Par"
"Paris,"
"Paris, Fr"
- Quando o usuário faz uma seleção:
- Todas as solicitações resultantes da consulta são agrupadas e adicionadas à sessão representada por "Token A", como uma única solicitação.
- A seleção do usuário é contada como uma solicitação de detalhes do lugar e adicionada à sessão representada por "Token A".
- A sessão é concluída, e o app descarta o "Token A".
Para mais informações sobre como as solicitações de preenchimento automático são faturadas, consulte Uso e faturamento.
Criar tokens de sessão
É possível criar tokens de sessão usando qualquer mecanismo programático de sua preferência. Recomendamos o uso de um UUID da versão 4 para tokens de sessão.