ガイドAPIリファレンス変更履歴
ガイド

Autosuggest レスポンスでのアクション

親ページで説明されているアプリケーションにはワンボックス検索フォームが表示され、エンドユーザーは テキスト形式でクエリを入力できます。これを実現するため、アプリケーションはユーザーが入力している間に/autosuggestエンドポイントを使用して候補を取得します。

例:Autosuggestクエリ

たとえば、位置(52.5044,13.33673)のレストランを検索しているエンドユーザーがワンボックス形式のフォームに文字シーケンス「r」、「e」、「s」、「t」を入力すると、アプリケーションは、 不完全なテキストクエリ「r」、「re」、「res」、「rest」をそれぞれ含むqパラメーターを指定して、一連の/autosuggestエンドポイントの呼び出しを送信します。

4番目の文字「t」の場合、呼び出しは次のようになります。

curl -sD /dev/stderr "https://autosuggest.search.hereapi.com/v1/autosuggest?apiKey=$API_KEY
&at=52.5044,13.33673
&limit=5
&q=rest" | jq .

APIレスポンスは次のようになります。

HTTP/1.1 200 OK
X-Correlation-ID: c40f3ffa-a672-449a-8d1a-7904f0265e18
(...)
{
  "items": [
    {
      "title": "Restaurant",
      "id": "here:cm:ontology:restaurant",
      "resultType": "categoryQuery",
      "href": "https://autosuggest.search.hereapi.com/v1/discover?at=52.5044%2C13.33673&limit=5&q=Restaurant&_ontology=restaurant",
      ...
    },
    {
      "title": "Marjellchen (Restaurant Marjellchen)",
      "id": "here:pds:place:276u336x-1e3dc04849204f10a3643af8f781e36e",
      "resultType": "place",
      ...
    },
    {
      "title": "Daitokai (Sreh Service Restaurant Exclusiv)",
      "id": "here:pds:place:276u336x-6bc24e93557a4b698ceeb8e8a6aad044",
      "resultType": "place",
      ...
    },
    {
      "title": "Tim Raue (Restaurant Tim Raue)",
      "id": "here:pds:place:276u33d8-a13306b80ec441b2852f80b3e3d63f07",
      "resultType": "place",
      ...
    },
    {
      "title": "Scandic Berlin Potsdamer Platz (Restaurant 3rd Floor)",
      "id": "here:pds:place:276u33d8-dd36958c73714b83ac51aaae16945635",
      "resultType": "place",
      ...
  ],
  "queryTerms": [ ]
}

注:

  • HERE Geocoding and Searchはランキングアルゴリズムを常に改善しているため、結果が変動する場合があります
  • X-Correlation-IDの値はAPIレスポンスごとに異なります。

例:Autosuggest結果でのユーザーアクション

エンドユーザーが2022年12月04日土曜日の10時56分(CET)に、提案「レストラン」(上の例で返された最初の結果)を選択する場合、アプリケーションは次の手順を行います。

  1. 実行されたアクションとともに、前のレスポンスから必要な属性を収集します。

    フィールド
    timestamp1670147788781
    correlationIdc40f3ffa-a672-449a-8d1a-7904f0265e18
    resourceIdhere:cm:ontology:restaurant
    rank0
    actionhere:gs:action:view
  2. 次のような/signalsリクエストを送信します。

    curl -sXPOST "https://signals.search.hereapi.com/v1/signals?apiKey=$API_KEY" -d @- << EOF
    version=1
    &timestamp=1670147788781
    &resourceId=here:cm:ontology:restaurant
    &correlationId=c40f3ffa-a672-449a-8d1a-7904f0265e18
    &rank=0
    &action=here:gs:action:view
    EOF
  3. レスポンスのhref要素で指定されたフォローアップリクエストを続行します。

  4. 後続の項目の選択については、関連する/signalsエンドポイントの呼び出しを送信します。

AutoSuggestによって返される項目(提案された位置やフォローアップクエリなど)は、ユーザーアクションの対象になる可能性があります。

/autosuggestエンドポイントの概要については、「AutoSuggest」を参照してください。

📘

/signalsエンドポイントはRESTRICTEDとしてリリースされています。詳細については、機能の成熟度トピックの「特権」セクションを参照してください。