Method: projects.locations.corpora.searchAssets

メディア アセットを検索します。

HTTP リクエスト

POST https://visionai.googleapis.com/v1/{corpus=projects/*/locations/*/corpora/*}:searchAssets

この URL は gRPC Transcoding 構文を使用します。

パスパラメータ

パラメータ
corpus

string

必須。検索する親コーパス。形式: `projects/{projectId}/locations/{locationId}/corpora/{corpus_id}'

リクエストの本文

リクエストの本文には、次の構造のデータが含まれます。

JSON 表現
{
  "pageSize": integer,
  "pageToken": string,
  "contentTimeRanges": {
    object (DateTimeRangeArray)
  },
  "criteria": [
    {
      object (Criteria)
    }
  ],
  "exclusionCriteria": [
    {
      object (Criteria)
    }
  ],
  "facetSelections": [
    {
      object (FacetGroup)
    }
  ],
  "resultAnnotationKeys": [
    string
  ],
  "searchQuery": string,

  // Union field sort_spec can be only one of the following:
  "schemaKeySortingStrategy": {
    object (SchemaKeySortingStrategy)
  }
  // End of list of possible types for union field sort_spec.
}
フィールド
pageSize

integer

このページで返される結果の数。0 の場合、サーバーは適切な pageSize を決定します。

pageToken

string

次のページを取得するための継続トークン。空の場合は、最初のページを取得中であることを意味します。

contentTimeRanges

object (DateTimeRangeArray)

一致する動画コンテンツが含まれる必要がある時間範囲。範囲が指定されていない場合、時間制限はありません。このフィールドは、以下の条件と同様に扱われますが、頻繁に使用されるため、便宜上別途定義されています。endTime が将来の日時の場合は、リクエストを受信した時刻にクランプされます。

criteria[]

object (Criteria)

検索結果に適用される条件。

exclusionCriteria[]

object (Criteria)

検索結果から除外する条件。fetchMatchedAnnotations は無視されます。

facetSelections[]

object (FacetGroup)

最新のファセット選択状態を保存します。ユーザーが選択したファセット グループのみが表示されます。選択状態は、選択または選択解除のいずれかです。選択したファセット バケットのみが検索条件として使用されます。

resultAnnotationKeys[]

string

各検索結果とともに取得して返されるアノテーションを指定するアノテーション キーのリスト。アノテーションの粒度は GRANULARITY_ASSET_LEVEL にする必要があります。また、検索戦略は NO_SEARCH に設定しないでください。

searchQuery

string

グローバル検索クエリ。値が属するフィールドを指定せずに、アセットを検索できます。

共用体フィールド sort_spec。並べ替えの仕様。このフィールドが指定されていない場合、デフォルトは次のようになります。- STREAM_VIDEO: 検索結果は開始時間で並べ替えられます。sort_spec は次のいずれかになります。
schemaKeySortingStrategy

object (SchemaKeySortingStrategy)

データスキーマキーの値で並べ替えます。

レスポンスの本文

corpora.searchAssets のレスポンス メッセージ。

成功した場合、レスポンスの本文には次の構造のデータが含まれます。

JSON 表現
{
  "searchResultItems": [
    {
      object (SearchResultItem)
    }
  ],
  "nextPageToken": string,
  "facetResults": [
    {
      object (FacetGroup)
    }
  ]
}
フィールド
searchResultItems[]

object (SearchResultItem)

返された検索結果。

nextPageToken

string

次のページの継続トークン。

facetResults[]

object (FacetGroup)

特定のクエリのファセット検索結果。ユーザーがすでに選択したファセット値と、更新されたファセット検索結果が含まれます。

認可スコープ

次の OAuth スコープが必要です。

  • https://www.googleapis.com/auth/cloud-platform

詳細については、認証の概要をご覧ください。

IAM 権限

corpus リソースに対する次の IAM 権限が必要です。

  • visionai.assets.search

詳細については、IAM のドキュメントをご覧ください。

SchemaKeySortingStrategy

データスキーマキーで並べ替える方法を指定する戦略。

JSON 表現
{
  "options": [
    {
      object (Option)
    }
  ]
}
フィールド
options[]

object (Option)

前面のオプションは後面のオプションよりも優先度が高くなります。

オプション

1 つのデータスキーマ鍵のオプション。

JSON 表現
{
  "dataSchemaKey": string,
  "sortDecreasing": boolean,
  "aggregateMethod": enum (AggregateMethod)
}
フィールド
dataSchemaKey

string

並べ替えに使用するデータ。

sortDecreasing

boolean

降順または昇順で並べ替えるか。デフォルトでは、結果は昇順で並べ替えられます。

aggregateMethod

enum (AggregateMethod)

現在のデータスキーマキーの集計方法。

AggregateMethod

1 つの結果に同じキーを持つ複数の値がある場合は、並べ替えに使用する値を指定します。デフォルトでは、結果を降順で並べ替える場合は AGGREGATE_METHOD_LARGEST が使用され、結果を昇順で並べ替える場合は AGGREGATE_METHOD_SMALLEST が使用されます。

列挙型
AGGREGATE_METHOD_UNSPECIFIED 指定されていない集計メソッドは、上記のように上書きされます。
AGGREGATE_METHOD_LARGEST 最大値(辞書順または数値)を取得して並べ替えます。
AGGREGATE_METHOD_SMALLEST 最小の値(辞書順または数値)を取得して並べ替えます。

FacetGroup

バックエンドとフロントエンドの間でやり取りされるファセット バケットのグループ。

JSON 表現
{
  "facetId": string,
  "displayName": string,
  "buckets": [
    {
      object (FacetBucket)
    }
  ],
  "bucketType": enum (FacetBucketType),
  "fetchMatchedAnnotations": boolean
}
フィールド
facetId

string

ファセット グループの一意の ID。

displayName

string

ファセットの表示名。UI でファセットのレンダリングに使用されます。

buckets[]

object (FacetBucket)

ファセットに関連付けられたバケット。たとえば、「チーム」ファセットの場合、バケットは 49ers、patriots などになります。

bucketType

enum (FacetBucketType)

ファセットのバケットタイプ。

fetchMatchedAnnotations

boolean

true の場合、このファセット グループの選択に対してクエリが一致したアノテーションを返します。このオプションは、パーティション レベルのアノテーションに基づくファセットにのみ適用されます。次のファセット値がサポートされています。- INTEGER - STRING(DataSchema.SearchStrategy.EXACT_SEARCH のみ)

FacetBucket

ファセット値、選択状態、メタデータを保持します。

JSON 表現
{
  "selected": boolean,

  // Union field bucket_value can be only one of the following:
  "value": {
    object (FacetValue)
  },
  "range": {
    object (Range)
  }
  // End of list of possible types for union field bucket_value.
}
フィールド
selected

boolean

1 つのファセット バケットが選択されているかどうか。このフィールドは、ユーザーが選択したファセットを表します。SearchVideosRequest のフロントエンドで設定されます。

共用体フィールド bucket_value。ファセットに関連付けられたバケット。たとえば、ファセット「チーム」のバケットは「49ers」、「patriots」など、ファセット「選手」のバケットは「tom brady」、「drew brees」などです。bucket_value は次のいずれかになります。
value

object (FacetValue)

単一値。

range

object (Range)

範囲値。

範囲

ファセットが適用される値の範囲([開始、終了])。

JSON 表現
{
  "start": {
    object (FacetValue)
  },
  "end": {
    object (FacetValue)
  }
}
フィールド
start

object (FacetValue)

範囲の開始日。存在しない場合は、なんらかの境界(-inf など)を示します。

end

object (FacetValue)

範囲の終了。存在しない場合は、なんらかの上限(inf など)を示します。