Join BoxWorks 2024 to discover what's possible with content and AI!
Register now!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"
}
]
}
]
}