セッション トークン

プラットフォームを選択: Android iOS JavaScript ウェブサービス

Place Autocomplete は、セッション トークンを使用して、ユーザーのオートコンプリート検索におけるクエリと選択のフェーズを、課金のために個別のセッションにグループ化します。セッションは、ユーザーがクエリの入力を開始すると開始され、場所を選択して Place Details が呼び出されると終了します。各セッションでは、複数のオートコンプリート クエリに続けて 1 つの場所を選択できます。セッション内の各リクエストに使用される API キーは、同じ Google Cloud コンソール プロジェクトに属している必要があります。セッションが終了するとトークンは無効になります。アプリはセッションごとに新しいトークンを生成する必要があります。sessiontoken パラメータが省略されている場合、またはセッション トークンを再利用する場合、セッション トークンが提供されない場合と同様にセッションが課金されます(各リクエストは個別に課金されます)。

次のガイドラインに従うことをおすすめします。

  • すべてのオートコンプリート セッションでセッション トークンを使用します。
  • セッションごとに新しいトークンを生成します。
  • セッション内のすべての Place Autocomplete リクエストと Place Details リクエストで使用される API キーが、同じ Google Cloud コンソール プロジェクトに属していることを確認します。
  • 新しいセッションごとに固有のセッション トークンを渡すようにしてください。同じトークンを複数のセッションで使用した場合は、各リクエストが個別に課金されます。

必要に応じて、リクエストからオートコンプリートのセッション トークンを省略できます。セッション トークンを省略すると、各リクエストは個別に課金され、Autocomplete - Per Request SKU がトリガーされます。セッション トークンを再利用すると、そのセッションは無効とみなされ、セッション トークンを渡さなかった場合と同様にリクエストが課金されます。

ユーザーがクエリを入力すると、(文字単位ではなく)数キー入力ごとにオートコンプリート リクエストが呼び出され、候補となる結果のリストが返されます。ユーザーが結果リストから選択を行うと、その選択がリクエストとしてカウントされ、検索中に行われたすべてのリクエストがバンドルされて 1 つのリクエストとしてカウントされます。ユーザーが場所を選択すると、その検索クエリは料金なしで利用できます。料金は場所データ リクエストに対してのみ発生します。セッションの開始から数分以内にユーザーが選択を行わなかった場合は、検索クエリのみが課金されます。

このイベントのフローをアプリの視点から見てみましょう。

  1. ユーザーがクエリの入力を開始し、「パリ、フランス」を検索します。
  2. ユーザー入力を検出すると、アプリは新しいセッション トークン「Token A」を作成します。
  3. ユーザーが入力を始めると、API により数文字ごとにオートコンプリート リクエストが行われ、それぞれの候補の新しいリストが表示されます。
    "P"
    "Par"
    "Paris",
    "Paris, Fr"
  4. ユーザーが選択した場合:
    • このクエリによるすべてのリクエストはグループ化され、「トークン A」で表されるセッションに 1 つのリクエストとして追加されます。
    • ユーザーの選択は Place Detail リクエストとしてカウントされ、「トークン A」で表されるセッションに追加されます。
  5. セッションが終了し、アプリは「トークン A」を破棄します。

Autocomplete リクエストの課金方法について詳しくは、使用量と課金をご覧ください。

セッション トークンを作成する

セッション トークンを作成するには、AutocompleteSessionToken.newInstance() を呼び出します。