Add the power of the Box AI API to your custom apps at Content Cloud Summit on May 15
Learn more and register!Updates one or more Box Skills metadata cards to a file.
12345
The unique identifier that represents a file.
The ID for any file can be determined
by visiting a file in the web application
and copying the ID from the URL. For example,
for the URL https://*.app.box.com/files/123
the file_id
is 123
.
A JSON-Patch specification for the changes to make to the metadata template.
The changes are represented as a JSON array of operation objects.
"replace"
replace
Value is always replace
"/cards/0"
The JSON Path that represents the card to replace. In most cases
this will be in the format /cards/{index}
where index
is the
zero-indexed position of the card in the list of cards.
The card to insert into the list of cards at the
position defined by path
.
Returns the updated metadata template, with the custom template data included.
The requested file could not be found
An unexpected client error.
curl -i -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" }
}
}
]'
await client.skills.updateBoxSkillCardsOnFile(file.id, [
{
op: 'replace' as UpdateBoxSkillCardsOnFileRequestBodyOpField,
path: '/cards/0',
value: new KeywordSkillCard({
type: 'skill_card' as KeywordSkillCardTypeField,
skillCardType: 'keyword' as KeywordSkillCardSkillCardTypeField,
skillCardTitle: {
code: 'license-plates',
message: updatedTitleMessage,
} satisfies KeywordSkillCardSkillCardTitleField,
skill: new KeywordSkillCardSkillField({
id: skillId,
type: 'service' as KeywordSkillCardSkillTypeField,
}),
invocation: new KeywordSkillCardInvocationField({
id: invocationId,
type: 'skill_invocation' as KeywordSkillCardInvocationTypeField,
}),
entries: [{ text: 'DN86 BOX' } satisfies KeywordSkillCardEntriesField],
}),
} satisfies UpdateBoxSkillCardsOnFileRequestBody,
]);
client.skills.update_box_skill_cards_on_file(file.id, [UpdateBoxSkillCardsOnFileRequestBody(op=UpdateBoxSkillCardsOnFileRequestBodyOpField.REPLACE.value, path='/cards/0', value=KeywordSkillCard(type=KeywordSkillCardTypeField.SKILL_CARD.value, skill_card_type=KeywordSkillCardSkillCardTypeField.KEYWORD.value, skill_card_title=KeywordSkillCardSkillCardTitleField(code='license-plates', message=updated_title_message), skill=KeywordSkillCardSkillField(id=skill_id, type=KeywordSkillCardSkillTypeField.SERVICE.value), invocation=KeywordSkillCardInvocationField(id=invocation_id, type=KeywordSkillCardInvocationTypeField.SKILL_INVOCATION.value), entries=[KeywordSkillCardEntriesField(text='DN86 BOX')]))])
{
"$canEdit": true,
"$id": "01234500-12f1-1234-aa12-b1d234cb567e",
"$parent": "folder_59449484661,",
"$scope": "enterprise_27335",
"$template": "properties",
"$type": "properties-6bcba49f-ca6d-4d2a-a758-57fe6edf44d0",
"$typeVersion": 2,
"$version": 1,
"cards": [
{
"created_at": "2018-04-13T13:53:23-07:00",
"type": "skill_card",
"skill_card_type": "keyword",
"skill_card_title": {
"code": "labels",
"message": "Labels"
},
"skill": {
"type": "service",
"id": "image-recognition-service"
},
"invocation": {
"type": "skill_invocation",
"id": "image-recognition-service-123"
},
"entries": [
{
"text": "keyword1"
}
]
}
]
}