Box · Capability
Box Platform API — Files
Box Platform API — Files. 6 operations. Lead operation: Box Preflight check before upload. Self-contained Naftiko capability covering one Box business surface.
What You Can Do
OPTIONS
Optionsfilescontent
— Box Preflight check before upload
/v1/files/content
GET
Getfilesid
— Box Get file information
/v1/files/{file-id}
PUT
Putfilesid
— Box Update file
/v1/files/{file-id}
DELETE
Deletefilesid
— Box Delete file
/v1/files/{file-id}
POST
Postfilesidcopy
— Box Copy file
/v1/files/{file-id}/copy
GET
Getfilesidthumbnailid
— Box Get file thumbnail
/v1/files/{file-id}/thumbnail-extension
MCP Tools
box-preflight-check-before-upload
Box Preflight check before upload
box-get-file-information
Box Get file information
read-only
idempotent
box-update-file
Box Update file
idempotent
box-delete-file
Box Delete file
idempotent
box-copy-file
Box Copy file
box-get-file-thumbnail
Box Get file thumbnail
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Box Platform API — Files
description: 'Box Platform API — Files. 6 operations. Lead operation: Box Preflight check before upload. Self-contained
Naftiko capability covering one Box business surface.'
tags:
- Box
- Files
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
BOX_API_KEY: BOX_API_KEY
capability:
consumes:
- type: http
namespace: box-files
baseUri: https://api.box.com/2.0
description: Box Platform API — Files business capability. Self-contained, no shared references.
resources:
- name: files-content
path: /files/content
operations:
- name: optionsfilescontent
method: OPTIONS
description: Box Preflight check before upload
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: files-file_id
path: /files/{file_id}
operations:
- name: getfilesid
method: GET
description: Box Get file information
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: file_id
in: path
type: string
description: The unique identifier that represents a file.
required: true
- name: fields
in: query
type: array
description: A comma-separated list of attributes to include in the
- name: if-none-match
in: header
type: string
description: Ensures an item is only returned if it has changed.
- name: boxapi
in: header
type: string
description: The URL, and optional password, for the shared link of this item.
- name: x-rep-hints
in: header
type: string
description: A header required to request specific `representations`
- name: putfilesid
method: PUT
description: Box Update file
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: file_id
in: path
type: string
description: The unique identifier that represents a file.
required: true
- name: fields
in: query
type: array
description: A comma-separated list of attributes to include in the
- name: if-match
in: header
type: string
description: Ensures this item hasn't recently changed before
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: deletefilesid
method: DELETE
description: Box Delete file
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: file_id
in: path
type: string
description: The unique identifier that represents a file.
required: true
- name: if-match
in: header
type: string
description: Ensures this item hasn't recently changed before
- name: files-file_id-copy
path: /files/{file_id}/copy
operations:
- name: postfilesidcopy
method: POST
description: Box Copy file
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: file_id
in: path
type: string
description: The unique identifier that represents a file.
required: true
- name: fields
in: query
type: array
description: A comma-separated list of attributes to include in the
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: files-file_id-thumbnail.{extension}
path: /files/{file_id}/thumbnail.{extension}
operations:
- name: getfilesidthumbnailid
method: GET
description: Box Get file thumbnail
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: file_id
in: path
type: string
description: The unique identifier that represents a file.
required: true
- name: extension
in: path
type: string
description: The file format for the thumbnail
required: true
- name: min_height
in: query
type: integer
description: The minimum height of the thumbnail
- name: min_width
in: query
type: integer
description: The minimum width of the thumbnail
- name: max_height
in: query
type: integer
description: The maximum height of the thumbnail
- name: max_width
in: query
type: integer
description: The maximum width of the thumbnail
authentication:
type: bearer
token: '{{env.BOX_API_KEY}}'
exposes:
- type: rest
namespace: box-files-rest
port: 8080
description: REST adapter for Box Platform API — Files. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/files/content
name: files-content
description: REST surface for files-content.
operations:
- method: OPTIONS
name: optionsfilescontent
description: Box Preflight check before upload
call: box-files.optionsfilescontent
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/files/{file-id}
name: files-file-id
description: REST surface for files-file_id.
operations:
- method: GET
name: getfilesid
description: Box Get file information
call: box-files.getfilesid
with:
file_id: rest.file_id
fields: rest.fields
if-none-match: rest.if-none-match
boxapi: rest.boxapi
x-rep-hints: rest.x-rep-hints
outputParameters:
- type: object
mapping: $.
- method: PUT
name: putfilesid
description: Box Update file
call: box-files.putfilesid
with:
file_id: rest.file_id
fields: rest.fields
if-match: rest.if-match
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deletefilesid
description: Box Delete file
call: box-files.deletefilesid
with:
file_id: rest.file_id
if-match: rest.if-match
outputParameters:
- type: object
mapping: $.
- path: /v1/files/{file-id}/copy
name: files-file-id-copy
description: REST surface for files-file_id-copy.
operations:
- method: POST
name: postfilesidcopy
description: Box Copy file
call: box-files.postfilesidcopy
with:
file_id: rest.file_id
fields: rest.fields
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/files/{file-id}/thumbnail-extension
name: files-file-id-thumbnail-extension
description: REST surface for files-file_id-thumbnail.{extension}.
operations:
- method: GET
name: getfilesidthumbnailid
description: Box Get file thumbnail
call: box-files.getfilesidthumbnailid
with:
file_id: rest.file_id
extension: rest.extension
min_height: rest.min_height
min_width: rest.min_width
max_height: rest.max_height
max_width: rest.max_width
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: box-files-mcp
port: 9090
transport: http
description: MCP adapter for Box Platform API — Files. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: box-preflight-check-before-upload
description: Box Preflight check before upload
hints:
readOnly: false
destructive: false
idempotent: false
call: box-files.optionsfilescontent
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: box-get-file-information
description: Box Get file information
hints:
readOnly: true
destructive: false
idempotent: true
call: box-files.getfilesid
with:
file_id: tools.file_id
fields: tools.fields
if-none-match: tools.if-none-match
boxapi: tools.boxapi
x-rep-hints: tools.x-rep-hints
outputParameters:
- type: object
mapping: $.
- name: box-update-file
description: Box Update file
hints:
readOnly: false
destructive: false
idempotent: true
call: box-files.putfilesid
with:
file_id: tools.file_id
fields: tools.fields
if-match: tools.if-match
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: box-delete-file
description: Box Delete file
hints:
readOnly: false
destructive: true
idempotent: true
call: box-files.deletefilesid
with:
file_id: tools.file_id
if-match: tools.if-match
outputParameters:
- type: object
mapping: $.
- name: box-copy-file
description: Box Copy file
hints:
readOnly: false
destructive: false
idempotent: false
call: box-files.postfilesidcopy
with:
file_id: tools.file_id
fields: tools.fields
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: box-get-file-thumbnail
description: Box Get file thumbnail
hints:
readOnly: true
destructive: false
idempotent: true
call: box-files.getfilesidthumbnailid
with:
file_id: tools.file_id
extension: tools.extension
min_height: tools.min_height
min_width: tools.min_width
max_height: tools.max_height
max_width: tools.max_width
outputParameters:
- type: object
mapping: $.