AI-generated Key Takeaways
-
Session tokens associate autocomplete search queries and selections for billing, ensuring accurate charges based on user interactions.
-
Each new search session requires a unique, user-generated token, ideally a version 4 UUID, to track related requests.
-
Autocomplete requests during a search are grouped and billed as a single request when the user makes a selection, charging only for Place data if a place is chosen.
-
If no selection is made within a few minutes, only the search query is billed, attributing costs to the initial search activity.
-
Session tokens are project-specific, allowing reuse across different Google Cloud projects but requiring uniqueness within the same project for proper billing.
Session tokens group the query and selection phases of a user autocomplete search into a discrete session for billing purposes.
Create a session token
Users are responsible for generating unique session tokens for each session. Google recommends using version 4 UUIDs.
Example
As the user types a query, an autocomplete request is called every few keystrokes (not per-character), and a list of possible results is returned. When the user makes a selection from the result list, the selection counts as a request, and all of the requests made during the search are bundled and counted as a single request. If the user selects a place, the search query is available at no charge, and only the Place data request is charged. If the user does not make a selection within a few minutes of the beginning of the session, only the search query is charged.
Let's examine this flow of events from the perspective of an app.
- A user begins typing a query to search for "Paris, France".
- Upon detecting user input, the app creates a new session token, "Token A".
- As the user types, the API makes an autocomplete request every few
characters, displaying a new list of potential results for each:
"P"
"Par"
"Paris,"
"Paris, Fr"
- When the user makes a selection:
- All requests resulting from the query are grouped and added to the session represented by "Token A", as a single request.
- The user's selection is counted as a Place Detail request, and added to the session represented by "Token A".
- The session is concluded, and the app discards "Token A".
For more information about how Autocomplete requests are billed, see Usage and Billing.