処理サービスによってファイルのメタデータが特定されたら、アプリケーションはそのデータをBoxに保存されているファイルにメタデータとして書き戻すことができます。
このプロセスには、以下の手順が含まれます。
- スキルカードのメタデータの準備
- ファイルへのメタデータの書き込み
スキルカードのメタデータの準備
Skillsメタデータは、グローバルに利用可能なboxSkillsCardsという名前のメタデータテンプレートを使用します。このテンプレートは、関連ファイルに保存されるJSON構造の特定の形式に従います。
Boxでは現在、4種類のカードがサポートされています。
| | |
|---|
| キーワード | ファイルの横にキーワードのリストを表示します。 | |
| タイムライン | 一連のテキスト/画像を表示します。それらの画像がタイムラインに表示される時刻は、クリックすると表示されます。 | |
| トランスクリプト | トランスクリプトと、それに対応するタイムスタンプを表示します。 | |
| ステータス | ユーザーにステータスを表示します。これは、ファイルの処理中にスキルのステータスをユーザーに通知するために使用できます。 | |
ファイルへのメタデータカードの書き込み
ファイルに1つ以上のカードを書き込むには、POST /files/:id/metadata/global/boxSkillsCards APIを使用して、Box Skill cardsのリストを渡します。
curl -X POST https://api.box.com/2.0/files/12345/metadata/global/boxSkillsCards \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"cards": [{
"type": "skill_card",
"skill_card_type": "keyword",
"skill_card_title": {
"code": "license-plates",
"message": "Licence Plates"
},
"skill": {
"type": "service"
"id": "license-plates-service"
},
"invocation": {
"type": "skill_invocation"
"id": "license-plates-service-123"
},
"entries": {
{ "text": "DD-26-YT" },
{ "text": "DN86 BOX" }
}
}],
}'
Box Skillカードがすでにこのファイルに適用されている場合は、このAPIコールによって、HTTPステータスコード409とともにエラーが返されます。
ファイルのメタデータカードの更新
Box Skillカードがすでにファイルに適用されている場合、PUT /files/:id/metadata/global/boxSkillsCards APIを使用して更新することができます。このAPIは、実行する多数の操作 (op) を受け取り、各操作を使用すると、特定の位置 (path) のカードを置き換えることができます。
curl -X PUT https://api.box.com/2.0/files/12345/metadata/global/boxSkillsCards \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'Content-Type: application/json-patch+json' \
-d '[
"op": "replace",
"path": "/cards/0",
"value": {
"type": "skill_card",
"skill_card_type": "keyword",
"skill_card_title": {
"code": "license-plates",
"message": "Licence Plates"
},
"skill": {
"type": "service"
"id": "license-plates-service"
},
"invocation": {
"type": "skill_invocation"
"id": "license-plates-service-123"
},
"entries": {
{ "text": "DD-26-YT" },
{ "text": "DN86 BOX" }
}
}
]'