Mã thông báo phiên là các chuỗi (hoặc đối tượng) do người dùng tạo để theo dõi các lệnh gọi Tự động hoàn thành (Mới) dưới dạng phiên. Tính năng Tự động hoàn thành (Mới) sử dụng mã thông báo phiên để nhóm các giai đoạn truy vấn và lựa chọn của một cụm từ tìm kiếm tự động hoàn thành của người dùng thành một phiên riêng biệt cho mục đích thanh toán.
Người dùng chịu trách nhiệm tạo mã thông báo phiên cho mỗi phiên. Mã thông báo phiên phải là chuỗi base64 an toàn cho URL và tên tệp. Người dùng có thể tạo mã thông báo phiên theo bất kỳ cách nào, mặc dù Google đề xuất sử dụng giá trị nhận dạng duy nhất (UUID) phiên bản 4 cho mã thông báo phiên.
Phiên bắt đầu bằng một lệnh gọi đến tính năng Tự động hoàn thành (Mới) và kết thúc bằng một lệnh gọi đến Chi tiết về địa điểm (Mới) hoặc Xác thực địa chỉ. Mỗi phiên có thể có nhiều truy vấn Tự động hoàn thành (Mới), sau đó là một yêu cầu đến Chi tiết về địa điểm (Mới) hoặc Xác thực địa chỉ. (Các) khoá API được dùng cho mỗi yêu cầu trong một phiên phải thuộc cùng một dự án trên Google Cloud Console.
Mã thông báo phiên sẽ kết thúc theo những cách sau:
Place Details (New) được gọi.
Xác thực địa chỉ được gọi.
Phiên đã bị bỏ dở.
Sau khi một phiên kết thúc, mã thông báo sẽ không còn hợp lệ nữa; ứng dụng của bạn phải tạo mã thông báo mới cho mỗi phiên mới. Nếu bạn bỏ qua thông số sessionToken hoặc nếu bạn sử dụng lại mã thông báo phiên, thì phiên mới sẽ bị tính phí như thể bạn không cung cấp mã thông báo phiên (mỗi yêu cầu sẽ được tính phí riêng).
[null,null,["Cập nhật lần gần đây nhất: 2025-08-22 UTC."],[[["\u003cp\u003eSession tokens group Autocomplete (New) queries and their corresponding Place Details (New) or Address Validation calls into sessions for billing purposes.\u003c/p\u003e\n"],["\u003cp\u003eYou must generate a unique, URL-safe base64 session token (preferably a UUID) for each new user session.\u003c/p\u003e\n"],["\u003cp\u003eA session concludes when Place Details (New) or Address Validation is called, or if the session is abandoned.\u003c/p\u003e\n"],["\u003cp\u003eRequests without a session token or with a reused token are billed individually per request.\u003c/p\u003e\n"],["\u003cp\u003eEach request within a session must use API keys from the same Google Cloud Console project.\u003c/p\u003e\n"]]],["Session tokens, unique identifiers, group user autocomplete searches into sessions for billing. These tokens, which must be URL- and filename-safe base64 strings, are created by the user, with UUIDs recommended. A session begins with an Autocomplete (New) call and ends with Place Details (New) or Address Validation. Each session may include several Autocomplete (New) queries. Once terminated, a new token is required. Omitting or reusing a token results in individual billing for each request.\n"],null,["Select platform: [Android](/maps/documentation/places/android-sdk/session-tokens \"View this page for the Android platform docs.\") [iOS](/maps/documentation/places/ios-sdk/session-tokens \"View this page for the iOS platform docs.\") [JavaScript](/maps/documentation/javascript/places-autocomplete#session_tokens \"View this page for the JavaScript platform docs.\") [Web Service](/maps/documentation/places/web-service/session-tokens \"View this page for the Web Service platform docs.\")\n\n\u003cbr /\u003e\n\nSession tokens\n\nSession tokens are user-generated strings (or objects) that track [Autocomplete (New)](/maps/documentation/places/android-sdk/place-autocomplete)\ncalls as *sessions*. Autocomplete (New) uses session tokens to group the query\nand selection phases of a user autocomplete search into a discrete session for\nbilling purposes.\n\nUsers are responsible for creating session tokens for each session. Session\ntokens must be URL- and filename-safe base64 strings. Users can generate session\ntokens in any manner, although Google recommends using [version 4 universally\nunique identifiers (UUIDs)](https://tools.ietf.org/html/rfc4122) for session tokens.\n\nThe session begins with a call to Autocomplete (New), and concludes with a call\nto [Place Details (New)](/maps/documentation/places/android-sdk/details-place) or [Address Validation](/maps/documentation/address-validation/overview). Each session can have\nmultiple Autocomplete (New) queries, followed by one request to Place Details\n(New) or Address Validation. The API key(s) used for each request within a\nsession must belong to the same Google Cloud Console project.\n| **Note:** Session tokens cannot be exchanged between Places API endpoints and Places API (New) or Address Validation endpoints. For example, [Place\n| Autocomplete](/maps/documentation/places/android-sdk/autocomplete) request can be followed by a Place Details request in the same session, but it cannot be followed by a Place Details (New) request or an Address Validation request in the same session.\n\nSession tokens terminate in the following ways:\n\n- Place Details (New) is called.\n- Address Validation is called.\n- The session is abandoned.\n\n| **Note:** You can optionally omit the Autocomplete (New) session token from a request. If the session token is omitted, each request is billed separately and charges the [Autocomplete -- Per Request SKU](/maps/documentation/places/android-sdk/usage-and-billing#autocomplete-request-new-ess-sku).\n\nOnce a session has concluded, the token is no longer valid; your app must\ngenerate a fresh token for each new session. If the sessionToken parameter is\nomitted, or if you reuse a session token, the new session is charged as if no\nsession token was provided (each request is billed separately).\n\nFor more information about how Autocomplete (New) requests are billed, see\n[Autocomplete (New) and session pricing](/maps/documentation/places/android-sdk/session-pricing)."]]