アセットの検索
アセットの検索
概要
Frame.io の API は、アカウント全体のアセットの詳細なファセット検索をサポートしており、web アプリケーションの機能をミラーリングします。最も一般的で便利なフィルターはチーム、プロジェクト、およびステータスですが、フィルターと並べ替えを独自の方法で組み合わせて、非常に具体的な API 主導型セットを生成できます。一般に、account_id、q(クエリ)、および sort を除くすべてのフィルターは、同じ構造に従い、以下で説明されています。

リクエストされたページサイズと返されたページサイズが一致しない
2022年3月現在、検索 API のページング機能に影響を与える既知のバグがあります。このバグが解決されるまで、検索 API を使用して結果の複数ページ(例:100 を超えるアセット)を反復処理することはお勧めしません。リクエストされたページサイズが実際に返されたアセット数に対応していない可能性があるからです。
デフォルト
検索をトリガーする API リクエストは、常に同じです。
常に同じリクエストです
https://api.frame.io/v2/search/library への POST
明示的に指定しなかった場合、検索チューニングのデフォルト値は、次のとおりです。
このガイドについて
このガイドでは、次の条件に一致する検索クエリを構築するプロセスについて説明します。
- アカウント内のアセット
- クエリ
"moon"と一致 - 特定のプロジェクトにある
- 2020 年 4 月 1 日から 30 日までの間にアップロードされた
- かつ、「承認済み」になった
検索の本文は、次のようになります。
アカウント、クエリおよび並べ替え
アカウント(account_id)、クエリ(q)、および sort は 、検索クエリの filter 属性の外側に存在する最も基本的な 3 つの構成要素です。
アカウントコンテキスト
技術的には、検索を実行するのに必要な唯一の属性は account_id です。これにより、アカウント上のすべてのアセット(フォルダーを含む)が、デフォルトのページネーション値(1 ページから、ページあたり 10 アセット)で取り込まれます。
検索クエリ
次に最も一般的な含めるべき属性は、クエリ自体です。メモ:Frame.io の API 検索は null クエリを受け入れるので、ワイルドカード(*)クエリは必要ありません。何かを検索するか、アカウント内のすべてのアセット(フィルタリングされている可能性がある)の種類をリクエストします。
ここでは、用語「moon」を検索します。
並べ替え

Frame.io は、様々な並べ替えオプションをサポートしています。並べ替え順序の構文は、オプションにわたって同様です。
- デフォルトの並べ替え方向があります
- その方向を逆にするには、並べ替え値に、マイナス
-の接頭辞を付けます
例えば、アルファベットの逆の順序(Z から A)で並べ替えるには、"sort": "-name" を宣言します。
デフォルトの並べ替え操作は「関連性」です。したがって、これは宣言する必要はなく、sort 属性が指定されていない場合、宣言されたと見なされます。
したがって、クエリを構築するときは、name に sort で A から Z を追加できるようになりました。
フィルターとページネーション
フィルターは、Frame.io のアセット検索で最も難しく、最も強力な機能です。フィルターは、1 個の filter オブジェクト内に書き込まれ、すべて同じパターンの演算(op)および value に従います。フィルターでは、次の一般的な略語が使用され、「等しい」以外の等価オプションは日付およびサイズクエリ用に予約されています。
eq—等しいlt—より小さいgt—より大きいlte—より小さいか等しいgte—以上match—完全一致。アップロード者フィルターおよび Filetype フィルターにのみ使用されます
例えば、既知の project_id で一致する filter は、次のように構成します。
オプションと演算
次の表では、各フィルタータイプに関連するオプションおよび演算について説明します。
インデックスを入力するには、アップロード者がアクティブなアカウントメンバーである必要があります
アカウントのメンバーではなくなったクリエイターの検索は機能しません。そのユーザーがユーザー検索インデックスに存在しないからです。
クエリの構築を続行するために、次のようなアセットのフィルターを追加できるようになりました。
- 特定のプロジェクトにある
- 2020 年 4 月 1 日から 30 日までの間にアップロード済み
- 「承認済み」としてマーク済み
ページネーション
検索エンドポイントは、リクエスト本文の最も外側のレイヤーにある page_size 属性と page 属性を使用して、他のエンドポイントとまったく同じようにページネーションされます。ページネーションの詳細については、こちらの別ガイドを参照してください。