Tokens de sesión

Selecciona la plataforma: Android iOS JavaScript Servicio web

Place Autocomplete usa tokens de sesión para agrupar las etapas de consulta y selección de la búsqueda con autocompletado de un usuario en una sesión discreta para realizar la facturación correspondiente. La sesión comienza cuando el usuario comienza a escribir una consulta y termina cuando selecciona un lugar y se realiza una llamada a Place Details. Cada sesión puede tener varias consultas de Autocomplete, seguidas de una selección de lugar. Las claves de API que se usan para cada solicitud dentro de una sesión deben pertenecer al mismo proyecto de la consola de Google Cloud. Una vez que finaliza la sesión, el token deja de ser válido. Tu app debe generar un token nuevo para cada sesión. Si se omite el parámetro sessiontoken, o si reutilizas un token de sesión, la sesión se cobrará como si no se hubiera proporcionado un token de sesión (cada solicitud se factura por separado).

Recomendamos los siguientes lineamientos:

  • Usa tokens de sesión para todas las sesiones de autocompletado.
  • Genera un token nuevo para cada sesión.
  • Asegúrate de que las claves de API que se usan para todas las solicitudes de Place Autocomplete y Place Details dentro de una sesión pertenezcan al mismo proyecto de la consola de Google Cloud.
  • Asegúrate de pasar un token de sesión único para cada sesión nueva. Si usas el mismo token en más de una sesión, cada solicitud se facturará de forma individual.

De forma opcional, puedes omitir el token de sesión de Autocomplete de una solicitud. Si se omite el token de sesión, cada solicitud se factura por separado, lo que activa el SKU Autocomplete - Per Request. Si vuelves a usar el token para otra sesión, esta se considera no válida y las solicitudes se cobran como si no se hubiera proporcionado un token de sesión.

Ejemplo

A medida que el usuario escribe una consulta, se llama a una solicitud de autocompletado cada algunas teclas presionadas (no por carácter) y se muestra una lista de resultados posibles. Cuando el usuario realiza una selección en la lista de resultados, esta se registra como una solicitud, y todas las solicitudes realizadas durante la búsqueda se agrupan y se registran como una sola solicitud. Si el usuario selecciona un lugar, la búsqueda está disponible sin cargo, y solo se cobra la solicitud de datos de Place. Si el usuario no realiza una selección en los primeros minutos de la sesión, solo se cobra la búsqueda.

Examinemos este flujo de eventos desde la perspectiva de una app.

  1. Un usuario comienza a escribir una consulta para buscar "París, Francia".
  2. Cuando detecta la entrada del usuario, la app crea un nuevo token de sesión, "Token A".
  3. A medida que el usuario escribe, la API realiza una solicitud de autocompletado cada pocos caracteres y muestra una nueva lista de posibles resultados para cada uno:
    "P"
    "Par"
    "Paris,"
    "Paris, Fr"
  4. Cuando el usuario realiza una selección, ocurre lo siguiente:
    • Todas las solicitudes que resultan de la consulta se agrupan y se agregan a la sesión representada por "Token A", como una sola solicitud.
    • La selección del usuario se cuenta como una solicitud de Place Details y se agrega a la sesión representada por "Token A".
  5. La sesión finaliza y la app descarta el "Token A".

Para obtener más información sobre cómo se facturan las solicitudes de Autocomplete, consulta Uso y facturación.

Crea tokens de sesión

Para crear un token de sesión, llama a AutocompleteSessionToken.newInstance().