SQLに似た構文で特定のメタデータと一致する項目を返す検索を作成します。
この機能は、現在使用が制限されています。この機能を有効にするには、メタデータクエリチームまでお問い合わせください。
0
クエリを制限しているフォルダのID。値が0の場合は、アクセスできるすべてのフォルダから結果が返されます。値が0以外の場合は、IDに対応するフォルダまたはそのサブフォルダで見つかった結果のみが返されます。
enterprise_123456.someTemplate
クエリで使用されるテンプレートを指定します。scope.templateKey
形式にする必要があります。
50
100
100
単一のリクエストに対して返す結果の最大数を示す0~100の値。これは、上限を示すだけで、返される結果の最小数を保証しません。
"AAAAAmVYB1FWec8GH6yWu2nwmanfMh07IyYInaa7DZDYjgO1H4KoLW29vPlLY173OKsci6h6xGh61gG73gnaxoS+o0BbI1/h6le6cikjlupVhASwJ2Cj0tOD9wlnrUMHHw3/ISf+uuACzrOMhN6d5fYrbidPzS6MdhJOejuYlvsg4tcBYzjauP3+VU51p77HFAIuObnJT0ff"
次ページをリクエストするために使用するマーカー。
メタデータクエリの結果の並べ替えに使用するテンプレートフィールドと方向のリスト。
並べ替えのdirection
は、配列内の各項目で同じにする必要があります。
asc
並べ替えの方向(昇順または降順)。
ordering
の方向は、配列内の各項目で同じにする必要があります。
次の値のいずれか1つ: ASC
,DESC
,asc
,desc
amount
並べ替えに使用するメタデータテンプレートフィールド。
field_key
は、検索対象のメタデータテンプレートのフィールドのkey
値を表します。
value >= :amount
実行するクエリ。クエリは、SQLのSELECT
ステートメントによく似た論理式です。検索クエリの値は、query_param
引数リストで指定されたパラメータに変換できるため、クエリ文字列に検索値を手動で挿入する必要がなくなります。
たとえば、:amount
という値は、query_params
オブジェクトのamount
値を表します。
query
で指定されたパラメータに対応する引数のセット。query_params
で使用されている各パラメータのタイプは、対応するメタデータテンプレートフィールドのタイプと一致する必要があります。
100
メタデータ検索で使用されている引数の値。
このパラメータのタイプは、対応するメタデータテンプレートフィールドのタイプと一致する必要があります。
amountAsc
このクエリに使用する検索インデックスの名前。10,000個を超えるファイルとフォルダにメタデータテンプレートが割り当てられる場合は検索インデックスが必要です。
検索インデックスを作成する場合は、メタデータクエリチームまでお問い合わせください。
このメタデータクエリと一致するファイルおよびフォルダのリストを返します。
リクエスト本文が無効な場合にエラーを返します。
invalid_query
- 指定した本文パラメータのいずれかが正しくない可能性があります。これは、query
に誤りがあることと、from
値が有効なテンプレートを表していない場合があることを意味します。unexpected_json_type
- query
文字列からの引数がquery_param
に存在しません。たとえば、name = :name
のquery
では、{ "name": "Box, Inc" }
のように、query_param
にname
引数の値を含める必要があります。指定されたscope
とtemplateKey
のメタデータテンプレートが見つからない場合にエラーを返します。エラー応答には追加の詳細が含まれます。
instance_not_found
- テンプレートが見つからない場合に返されます。会社のID (enterprise_12345
など)を含むテンプレートの完全なスコープを必ず使用してください。予期しないクライアントエラー。
curl -X POST https://api.box.com/2.0/metadata_queries/execute_read \
-H 'Authorization: Bearer <ACCESS_TOKEN>" '
-H 'Content-Type: application/json" '
-d '{
"from": "enterprise_123456.contractTemplate",
"query": "amount >= :value",
"query_params": {
"value": 100
},
"ancestor_folder_id": "5555",
"use_index": "amountAsc",
"order_by": [
{
"field_key": "amount",
"direction": "asc"
}
],
"limit": 100
}'
String from = "enterprise_341532.test";
String query = "testfield = :arg";
String ancestorFolderId = "0";
JsonObject queryParameters = new JsonObject().add("arg", "test");
BoxResourceIterable<BoxMetadataQueryItem> results = MetadataTemplate.executeMetadataQuery(api, from, query, queryParameters, ancestorFolderId);
for (BoxMetadataQueryItem r: results) {
String customFieldValue = r.getMetadata().get("enterprise_341532").get(0).get("/customField");
System.out.println(customFieldValue);
}
var from = 'enterprise_12345.someTemplate',
ancestorFolderId = '5555',
options = {
query: 'amount >= :arg',
queryParams: {
arg: 100
},
useIndex: 'amountAsc',
orderBy: [
{
field_key: 'amount',
direction: 'asc'
}
],
limit: 100,
marker: 'AAAAAmVYB1FWec8GH6yWu2nwmanfMh07IyYInaa7DZDYjgO1H4KoLW29vPlLY173OKsci6h6xGh61gG73gnaxoS+o0BbI1/h6le6cikjlupVhASwJ2Cj0tOD9wlnrUMHHw3/ISf+uuACzrOMhN6d5fYrbidPzS6MdhJOejuYlvsg4tcBYzjauP3+VU51p77HFAIuObnJT0ff'
};
client.metadata.query(from, ancestorFolderId, options)
.then(items => {
/* items -> {
"entries": [
{
"item": {
"type": "file",
"id": "1617554169109",
"file_version": {
"type": "file_version",
"id": "1451884469385",
"sha1": "69888bb1bff455d1b2f8afea75ed1ff0b4879bf6"
},
"sequence_id": "0",
"etag": "0",
"sha1": "69888bb1bff455d1b2f8afea75ed1ff0b4879bf6",
"name": "My Contract.docx",
"description": "",
"size": 25600,
"path_collection": {
"total_count": 4,
"entries": [
{
"type": "folder",
"id": "0",
"sequence_id": null,
"etag": null,
"name": "All Files"
},
{
"type": "folder",
"id": "15017998644",
"sequence_id": "0",
"etag": "0",
"name": "Contracts"
},
{
"type": "folder",
"id": "15286891196",
"sequence_id": "1",
"etag": "1",
"name": "North America"
},
{
"type": "folder",
"id": "16125613433",
"sequence_id": "0",
"etag": "0",
"name": "2017"
}
]
},
"created_at": "2017-04-20T12:55:27-07:00",
"modified_at": "2017-04-20T12:55:27-07:00",
"trashed_at": null,
"purged_at": null,
"content_created_at": "2017-01-06T17:59:01-08:00",
"content_modified_at": "2017-01-06T17:59:01-08:00",
"created_by": {
"type": "user",
"id": "193973366",
"name": "Box Admin",
"login": "admin@company.com"
},
"modified_by": {
"type": "user",
"id": "193973366",
"name": "Box Admin",
"login": "admin@company.com"
},
"owned_by": {
"type": "user",
"id": "193973366",
"name": "Box Admin",
"login": "admin@company.com"
},
"shared_link": null,
"parent": {
"type": "folder",
"id": "16125613433",
"sequence_id": "0",
"etag": "0",
"name": "2017"
},
"item_status": "active"
},
"metadata": {
"enterprise_123456": {
"someTemplate": {
"$parent": "file_161753469109",
"$version": 0,
"customerName": "Phoenix Corp",
"$type": "someTemplate-3d5fcaca-f496-4bb6-9046-d25c37bc5594",
"$typeVersion": 0,
"$id": "ba52e2cc-371d-4659-8d53-50f1ac642e35",
"amount": 100,
"claimDate": "2016-04-10T00:00:00Z",
"region": "West",
"$typeScope": "enterprise_123456"
}
}
}
}
],
"next_marker": ""
}
*/
});