先行入力Rapid用API
旅行者が検索している際に、提案を表示する
Typehead(GET /suggestions)は、地域、関連する場所、および利用可能な在庫情報に基づいて、旅行者に提案型の検索体験を提供できる新しいAPIエンドポイントです。このエンドポイントは、部分検索文字列およびユーザーが入力したリクエストパラメータに基づいて、候補の一覧を返します。アカウントに 先行入力 を追加するには、アカウントマネージャー までご連絡ください。
仕組み
先行入力APIは、言語予測ツールです。オートコンプリートやオートサジェストと呼ばれることもあります。検索ボックスに入力された一部の情報を基に、地域、場所、または在庫の一覧を返します。ユーザーが検索ボックスに入力すると、先行入力APIは、都市、地域、在庫商品、または郵便番号の情報に基づいて、最大10件の結果を返し始めます。お客様は一覧から候補を選択して検索を開始することも、入力を続けて自動提案された結果を絞り込むこともできます。
たとえば、「Memp」で始まる検索を行うと、米国テネシー州メンフィスに関連する地区、駅、空港など、いくつかの地理的な候補が表示され、その後に米国ミズーリ州メンフィスが表示されます。
開始ガイド
APIについて詳しくお知りになりたい場合は、アカウントマネージャー またはPartner Connectの担当者までお問い合わせください。相手方からアクセス承認の申請があり、承認された場合は、契約書に「先行入力」を追加する形で契約内容を修正いたします。お客様の組織で 先行入力 の有効化が完了しましたら、Partner Connectの担 当者が、必要な開発作業についてサポートいたします。
公開要件 :
- 認証には、不透明アクセストークンのプロセスを採用し、使用する必要があります。
- アクセストークンは、そのトークンをリクエストしたのと同じサーキットIDまたはAPIキーでのみ使用できます。
- アクセストークンの有効期間は4時間のみです。
- 新しいアクセストークンのリクエストは、そのスケジュールに従って一貫して更新されるように設定し、更新頻度が高くなりすぎないようにしてください。
- 言語とリクエスト本文は必須のパラメータです。
先行入力 に対するGoogle Placesの代替表示
先行入力 が特定の検索クエリに対して結果を表示できない場合、Google Placesに「フォールバック」して結果を返します。このシナリオでは、レスポンス本文は他のどの 先行入力 レスポンスとも同じように見えますが、結果がGoogle経由で取得された場合は、以下のレスポンスヘッダーが返されます:Third-Party-Result-Source: Google。Googleのフォールバック機能はすべてのパートナーが利用できますが、Switchboxの設定を通じてPartner Connectで有効にする必要があります。すべてのパートナーが、Googleの規定に従って適切な出典表示を行うことは、運用上の要件となっております。 帰属に関する方針。
認証とアクセス
現在Rapidバージョン3をご利用中のパートナー様は、APIエンドポイントを通じてRapid先行入力APIをリクエストすることができます。承認されると、お客様のプロフィールには、APIを正常に利用するために必要な権限が付与されます。
ご提案のお願い
Suggestions APIでは、リクエストヘッダーおよびクエリパラメータに特定の情報を指定する必要があります。レスポンスの堅牢性を高めるために、オプションのクエリパラメータを含めることもできます。
リクエストヘッダー
必須
Accept: クライアントが受け取りたい応答形式を指定します。この値は である必要がありますapplication/json。Accept-Encoding: クライアントが応答として受け取りたいエンコーディングを指定します。この値はgzipでなければなりません。User-Agent: お客様のリクエストに含まれるヘッダー文字列で、貴社の連携機能によって取得されたものです。アプリケーションを構築する場合は、User-Agentの値を{app name}/{app version}に設定してください。例えば、TravelNow/3.30.112などです。
クエリパラメータ
必須
language: 応答で使用する希望の言語を、two-digitの言語コードと国コードのハイフンで区切られたペアのみを使用するBCP47形式のサブセットとして指定します。w3.orgに記載されている通り、ISO 639-1 alpha-2言語コードおよびISO 3166-1 alpha-2国コードのみを使用してください(例:language=en-US)。
>> 対応言語の一覧をご覧ください
>> #へ移動w3.org
text: 検索対象の入力文字列で、文字数は150文字までです(例:text=Springfie)。
省略可
type: ユーザーが探している場所について説明しています。このパラメータは、異なる値を指定して複数回指定することができます(例:type=AIRPORT&type=CITY)。指定がない場合は、デフォルトですべてのタイプが含まれます。利用可能なオプションについては、以下の「許可される値」の表をご参照ください。line_of_business: このパラメータは検索のヒューリスティックを提供するものであり、有効な値を指定することで、より関連性の高い検索結果が得られます。このパラメータは任意ですが、指定しない場合、検索結果に影響が出る可能性があるため、各Rapid APIごとにデフォルト値を設定しています。利用可能なオプションについては、以下の「許可される値」の表をご参照ください。package_type: ユーザーが指定したパッケージの種類で絞り込みを行います。利用可能なオプションについては、以下の「許可される値」の表をご参照ください。feature: 候補結果の算出方法を変更します。値には、hierarchy、nearby_airport、およびpostal_codeが含まれます。region_id: 検索結果を指定した地域に絞り込みます。origin: クエリテキストが宛先ではなく送信元であるかどうかを指定します。デフォルトの検索では、目的地のみが検索対象となります。limit: レスポンスで返される候補の最大数を指定します。この値は1から10の間でなければなりません(例:limit=5)。このパラメータが指定されていない場合、デフォルト値は10となります。
許容値
| type | line_of_business | package_type |
|---|---|---|
airport | properties | flight_property |
city | flights | flight_property_car |
multi_city_vicinity | packages | flight_car |
neighborhood | cars | property_car |
point_of_interest | activities | |
airport_metro_code | ||
multi_region | ||
train_station | ||
metro_station | ||
address | ||
property | ||
bus_station |
注:上記の表に記載されていない値を入力すると、エラーが発生します。
データのご請求
access_tokenを入手したら、GET のリクエストを設定します。
リクエスト例 - 宿泊施設API
GET - https://api.ean.com/v3/suggestions?language=en-US&line_of_business=properties&limit=3&text=chicago&type=city&type=neighborhood
Header :
Authorization: Bearer {{access_token}}応答例 - 宿泊API
[
{
"related_id": "4477519",
"type": "airport",
"name": "Chicago, IL (ORD-O'Hare Intl.)",
"name_full": "Chicago, IL, United States of America (ORD-O'Hare Intl.)",
"name_display": "<B>Chicago</B>, IL, United States of America (ORD-O'Hare Intl.)",
"country_code": "US",
"country_code_3": "USA",
"iata_airport_code": "ORD",
"iata_airport_metro_code": "CHI",
"coordinates": {
"latitude": 41.976977,
"longitude": -87.90481
}
},
{
"related_id": "829",
"type": "city",
"name": "Chicago",
"name_full": "Chicago, Illinois, United States of America",
"name_display": "<B>Chicago</B>, Illinois, United States of America",
"country_code": "US",
"country_code_3": "USA",
"iata_airport_code": "CHI",
"iata_airport_metro_code": "CHI",
"coordinates": {
"latitude": 41.878113,
"longitude": -87.629799
}
},
{
"related_id": "6350699",
"type": "neighborhood",
"name": "Downtown Chicago",
"name_full": "Downtown Chicago, Chicago, Illinois, United States of America",
"name_display": "Downtown <B>Chicago</B>, <B>Chicago</B>, Illinois, United States of America",
"country_code": "US",
"country_code_3": "USA",
"iata_airport_code": "CHI",
"iata_airport_metro_code": "CHI",
"coordinates": {
"latitude": 41.885969845574834,
"longitude": -87.62933540465228
}
}
]エラーコード
先行入力APIは、他のRapid APIと同様のエラーコードを採用しています。
他のRapid APIとの連携
エンドユーザーが検索バーにテキストを入力すると、先行入力APIは、検索で指定されたtype に応じて 、地域(地域ID、名称、座標など)またはアイテム情報を取得します。その後、APIはその情報をオートコンプリートリストの結果として表示します。
ユーザーがオートコンプリートリストから地域を選択すると、Region APIが呼び出され、その地域周辺の在庫リストが取得されます。その検索で返されたIDを使用して、Shopping APIを呼び出し、在庫状況を取得し、リストを表示してください。
ユーザーがオートコンプリートリストから商品を選択すると、Shopping APIは、在庫状況や在庫の詳細情報を含む詳細ページを生成します。
API の詳細
このページで関連エンドポイント定義を調べてから、API Explorer または別のテストソフトウェアを使用して、例とスキーマ定義が実際の出力とどのように比較されるかを理解します。
その他のリソース
Rapid APIのすべてのエンドポイントを試してみたい場合でも、そのOpenAPI仕様や当社のPostmanコレクションをダウンロードしたい場合でも、お客様のご要望にお応えできるものがございます。