- HTTP リクエスト
- リクエストの本文
- レスポンスの本文
- 承認スコープ
- QueryInterpretationOptions
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- QueryInterpretation
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- QueryInterpretation.InterpretationType
- QueryInterpretation.Reason
- SearchResult
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- スニペット
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- MatchRange
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- メタデータ
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- ResultDisplayMetadata
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- ResultDisplayMetadata.ResultDisplayLine
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- ResultDisplayMetadata.ResultDisplayField
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- ResultDebugInfo
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- StructuredResult
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- SpellResult
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- FacetResult
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- FacetBucket
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- ResponseDebugInfo
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- ErrorInfo
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- ErrorMessage
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- ResultCounts
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- SourceResultCount
<ph type="x-smartling-placeholder">
- </ph>
- JSON 表現
- 試してみる
Cloud Search Query API には、ユーザーのクエリに対して最も関連性の高い結果を返す検索メソッドが用意されています。結果は、Gmail や Google ドライブなどの Google Workspace アプリから取得される場合もあれば、サードパーティからインデックスに登録されたデータである場合もあります。
注: この API を実行するには、標準のエンドユーザー アカウントが必要です。サービス アカウントでは Query API リクエストを直接実行できません。サービス アカウントを使用してクエリを実行するには、Google Workspace ドメイン全体の権限の委任を設定します。
HTTP リクエスト
POST https://cloudsearch.googleapis.com/v1/query/search
この URL は gRPC Transcoding 構文を使用します。
リクエストの本文
リクエストの本文には、次の構造のデータが含まれます。
JSON 表現 |
---|
{ "requestOptions": { object ( |
フィールド | |
---|---|
requestOptions |
検索アプリケーションやユーザーのタイムゾーンなどのリクエスト オプション。 |
query |
未加工のクエリ文字列。サポートされている検索演算子については、演算子で検索を絞り込むをご覧ください。 |
pageSize |
1 ページで返される検索結果の最大数。有効な値は 1 ~ 100 です。デフォルト値は 10 です。2,000 を超える結果がリクエストされる場合、最小値は 50 です。 |
start |
結果の開始インデックス。 |
dataSourceRestrictions[] |
クエリに使用するソース。指定しない場合、現在の検索アプリケーションのすべてのデータソースが使用されます。 |
facetOptions[] |
|
sortOptions |
検索結果の並べ替えオプション |
queryInterpretationOptions |
オプションが用意されています。 |
contextAttributes[] |
検索結果のランキングの調整に使用されるリクエストのコンテキスト属性。要素の最大数は 10 です。 |
レスポンスの本文
成功した場合、レスポンスの本文には次の構造のデータが含まれます。
Search API レスポンス。
JSON 表現 |
---|
{ "queryInterpretation": { object ( |
フィールド | |
---|---|
queryInterpretation |
ユーザークエリのクエリ解釈結果。クエリの解釈が無効になっている場合は空です。 |
results[] |
検索クエリの結果。 |
structuredResults[] |
ユーザークエリに対する構造化された結果。これらの結果は pageSize に対してカウントされません。 |
spellResults[] |
クエリのスペルの候補。 |
facetResults[] |
ファセットの結果の繰り返し。 |
hasMoreResults |
クエリに一致する検索結果が他にもあるかどうか。 |
debugInfo |
レスポンスに関するデバッグ情報。 |
errorInfo |
レスポンスに関するエラー情報。 |
resultCounts |
展開された結果数の情報。 |
共用体フィールド
まれにシステムですべてのドキュメントを検索できない場合は、クエリを再実行します。 |
|
resultCountEstimate |
このクエリの推定結果数。 |
resultCountExact |
このクエリの正確な結果数。 |
認可スコープ
次の OAuth スコープのいずれかが必要です。
https://www.googleapis.com/auth/cloud_search.query
https://www.googleapis.com/auth/cloud_search
詳細については、承認ガイドをご覧ください。
QueryInterpretationOptions
オプションが用意されています
JSON 表現 |
---|
{ "disableNlInterpretation": boolean, "enableVerbatimMode": boolean, "disableSupplementalResults": boolean } |
フィールド | |
---|---|
disableNlInterpretation |
クエリの自然言語(NL)解釈を無効にするフラグ。デフォルトは false です。true に設定すると自然言語の解釈が無効になります。NL の解釈は、事前定義されたデータソースにのみ適用されます。 |
enableVerbatimMode |
このフラグを有効にすると、クエリの自然言語(NL)解釈、補足的な結果の取得、類義語(カスタム キーワードを含む)の使用など、すべての内部最適化が無効になります。2 つのフラグのいずれかが true の場合、Nl 解釈は無効になります。 |
disableSupplementalResults |
クエリの補足結果を無効にするには、このフラグを使用します。True に設定した場合、SearchApplication レベルで選択した補足結果の設定が優先されます。 |
QueryInterpretation
JSON 表現 |
---|
{ "interpretedQuery": string, "interpretationType": enum ( |
フィールド | |
---|---|
interpretedQuery |
検索に使用されたクエリの解釈。たとえば、「山田さんからのメール」のような自然言語での意図を持つクエリがこれに該当します。は「from:john source:mail」と解釈されます。理由が NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY の場合、このフィールドは入力されません。 |
interpretationType |
|
reason |
クエリを解釈する理由。解釈タイプが NONE でない場合、このフィールドは UNSPECIFIED にはなりません。 |
QueryInterpretation.InterpretationType
列挙型 | |
---|---|
NONE |
検索結果の取得には、自然言語による解釈もクエリのより広範なバージョンも使用されません。 |
BLEND |
元のクエリの結果は、他の結果と統合されています。これらの他の結果を元のクエリの結果と統合する理由は、[理由] に入力されます表示されます。 |
REPLACE |
元のクエリの結果は置き換えられます。元のクエリの結果を置き換える理由が [Reason] に入力されています。表示されます。 |
QueryInterpretation.Reason
列挙型 | |
---|---|
UNSPECIFIED |
|
QUERY_HAS_NATURAL_LANGUAGE_INTENT |
クエリの自然言語解釈を使用して検索結果を取得します。 |
NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY |
クエリとドキュメントの用語の類似性は、ユーザーのクエリに対して十分な結果が見つからなかったため、追加の検索結果を取得するためにクエリを選択的に拡大するために使用されます。この場合、解釈されたクエリは空になります。 |
SearchResult
ドキュメントのインデックス登録された情報を含む結果。
JSON 表現 |
---|
{ "title": string, "url": string, "snippet": { object ( |
フィールド | |
---|---|
title |
検索結果のタイトル。 |
url |
検索結果の URL。この URL には、実際の商品アイテムへの Google リダイレクトが含まれています。この URL は署名されているため、変更しないでください。 |
snippet |
この結果で利用可能なすべてのスニペット(要約)の連結。 |
metadata |
メタデータ。 |
clusteredResults[] |
ソースがクラスタ化されている場合は、クラスタ化結果のリストを提供します。クラスタ化された結果のレベルは 1 つのみです。現在のソースがクラスタリングに対して有効になっていない場合、このフィールドは空になります。 |
debugInfo |
この検索結果に関するデバッグ情報。 |
スニペット
表示されるページのコンテンツをまとめた検索結果のスニペット。
JSON 表現 |
---|
{
"snippet": string,
"matchRanges": [
{
object ( |
フィールド | |
---|---|
snippet |
ドキュメントのスニペット。ドキュメントのスニペット。レンダリング前にエスケープ解除する必要がある、エスケープされた HTML 文字を含めることができます。 |
matchRanges[] |
スニペット内の一致した範囲。 |
MatchRange
スニペットの一致範囲([start, end)。
JSON 表現 |
---|
{ "start": integer, "end": integer } |
フィールド | |
---|---|
start |
スニペット内の一致の開始位置。 |
end |
スニペットでの一致の終了。 |
メタデータ
メタデータのセットです。
JSON 表現 |
---|
{ "source": { object ( |
フィールド | |
---|---|
source |
検索結果の名前付きソース(Gmail など)。 |
mimeType |
検索結果の MIME タイプ。 |
thumbnailUrl |
結果のサムネイル URL。 |
owner |
検索結果のドキュメントまたはオブジェクトのオーナー(通常は作成者)。 |
createTime |
検索結果におけるこのドキュメントまたはオブジェクトの作成時刻。 RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: |
updateTime |
検索結果のオブジェクトの最終更新日。このアイテムで設定されていない場合、ここで返される値は空になります。 RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: |
fields[] |
構造化データ内のインデックス付きフィールド。汎用的な名前付きプロパティとして返されます。 |
displayOptions |
構造化データの検索結果の表示方法を指定するオプションです。 |
objectType |
検索結果のオブジェクト タイプ。 |
ResultDisplayMetadata
JSON 表現 |
---|
{
"objectTypeLabel": string,
"metalines": [
{
object ( |
フィールド | |
---|---|
objectTypeLabel |
オブジェクトの表示ラベル。 |
metalines[] |
結果とともに表示される metalines コンテンツ。 |
ResultDisplayMetadata.ResultDisplayLine
表示される行を構成するフィールドのコレクション
JSON 表現 |
---|
{
"fields": [
{
object ( |
フィールド | |
---|---|
fields[] |
ResultDisplayMetadata.ResultDisplayField
query.search の結果のフィールドを表示する
JSON 表現 |
---|
{
"label": string,
"operatorName": string,
"property": {
object ( |
フィールド | |
---|---|
label |
プロパティの表示ラベル。 |
operatorName |
プロパティの演算子名。 |
property |
プロパティの名前と値のペア。 |
ResultDebugInfo
結果に関するデバッグ情報。
JSON 表現 |
---|
{ "formattedDebugInfo": string } |
フィールド | |
---|---|
formattedDebugInfo |
表示用にフォーマットされた一般的なデバッグ情報。 |
StructuredResult
検索リクエストの一部として返される構造化された結果。
JSON 表現 |
---|
{
"person": {
object ( |
フィールド | |
---|---|
person |
人物を表す |
SpellResult
JSON 表現 |
---|
{ "suggestedQuery": string } |
フィールド | |
---|---|
suggestedQuery |
クエリのスペルの候補。 |
FacetResult
ソース固有のファセット レスポンス
JSON 表現 |
---|
{
"sourceName": string,
"objectType": string,
"operatorName": string,
"buckets": [
{
object ( |
フィールド | |
---|---|
sourceName |
ファセット結果が返されるソース名。空にはなりません。 |
objectType |
ファセット結果が返されるオブジェクト タイプ。これは空でもかまいません。 |
operatorName |
ファセットに選択された演算子の名前。@cloudsearch.SchemaPropertyOptions をご覧ください |
buckets[] |
FacetBuckets。対応するフィルタで結果が 1 つ以上含まれているレスポンスの値の FacetBuckets。 |
FacetBucket
ファセット内のバケットは操作の基本単位です。バケットは、バケット化するフィールドのタイプに応じて、単一の値または連続した範囲の値で構成されます。FacetBucket は現在、レスポンス オブジェクトを返すためだけに使用されています。
JSON 表現 |
---|
{ "count": integer, "percentage": integer, "filter": { object ( |
フィールド | |
---|---|
count |
バケット値に一致する結果の数。件数は、件数の正確性が確保されている場合にのみ、検索に対して返されます。Cloud Search では、クエリのファセット カウントは保証されません。ファセット カウントは、同一のクエリであっても断続的にしか出現しない場合があります。ファセット カウントの存在に対する依存関係を構築しないでください。代わりに、常に返されるファセット ount の割合を使用します。 |
percentage |
バケット値に一致する結果の割合。返される値は(0 ~ 100)で、小数の場合は整数に切り捨てられます。値が明示的に返されていない場合は、0 に丸められたパーセンテージ値を表します。割合はすべての検索で返されますが、あくまで推定値です。常にパーセンテージが返されるため、カウントではなくパーセンテージでレンダリングしてください。 |
filter |
対応するバケットが選択されている場合に、検索リクエストで渡されるフィルタ。 |
value |
|
ResponseDebugInfo
レスポンスに関するデバッグ情報。
JSON 表現 |
---|
{ "formattedDebugInfo": string } |
フィールド | |
---|---|
formattedDebugInfo |
表示用にフォーマットされた一般的なデバッグ情報。 |
ErrorInfo
レスポンスに関するエラー情報。
JSON 表現 |
---|
{
"errorMessages": [
{
object ( |
フィールド | |
---|---|
errorMessages[] |
|
ErrorMessage
ソース レスポンスごとのエラー メッセージ。
JSON 表現 |
---|
{
"source": {
object ( |
フィールド | |
---|---|
source |
|
errorMessage |
|
ResultCounts
結果数の情報
JSON 表現 |
---|
{
"sourceResultCounts": [
{
object ( |
フィールド | |
---|---|
sourceResultCounts[] |
結果を含む各ソースの結果数情報。 |
SourceResultCount
ソースごとの結果数の情報。
JSON 表現 |
---|
{ "source": { object ( |
フィールド | |
---|---|
source |
結果数情報が関連付けられているソース。 |
hasMoreResults |
このソースについてさらに検索結果があるかどうか。 |
共用体フィールド
|
|
resultCountEstimate |
このソースの推定結果数。 |
resultCountExact |
このソースの正確な結果数。 |