Skip to main content
Enterprise file storage and content management API for reading, writing, searching, and sharing files and folders in a user’s Box account. Best for workflows that need to persist documents, pull file content into downstream tools, or automate collaboration invites. Unlike Google Drive, Box is tuned for regulated enterprise content with granular collaboration roles and compliance-grade audit trails. 10 example endpoints available through Lava’s AI Gateway. See the Box API docs for full documentation.
This provider requires your own credentials — connect your API key or OAuth account before use.
This is a catch-all provider — any valid URL under https://api.box.com is supported. Any Box REST API endpoint under https://api.box.com/2.0/. Common resources: /2.0/users/me, /2.0/folders/ and /2.0/folders//items, /2.0/files/, /2.0/search, /2.0/collaborations. File uploads use a separate host (https://upload.box.com/api/2.0/files/content) and are not currently proxied via the api.box.com catch-all — use download + metadata endpoints for the common agent workflows. Pagination is offset-based (offset, limit query params) with marker-based pagination available on large collections (marker + usemarker=true). Rate limit: 1000 requests/minute per user. See https://developer.box.com/reference/ for the full API reference. The endpoints below are curated examples.

Endpoints

Return the profile of the currently authenticated Box user.

GET https://api.box.com/2.0/users/me — Free
const data = await lava.gateway('https://api.box.com/2.0/users/me', { method: 'GET' });

List items inside a folder. Use folder id “0” for the root folder. Supports offset/limit pagination and fields param for sparse fieldsets.

GET https://api.box.com/2.0/folders/0/items?offset=0&limit=100 — Free
const data = await lava.gateway('https://api.box.com/2.0/folders/0/items?offset=0&limit=100', { method: 'GET' });

Retrieve metadata for a folder.

GET https://api.box.com/2.0/folders/{folder_id} — Free
const data = await lava.gateway('https://api.box.com/2.0/folders/{folder_id}', { method: 'GET' });

Create a new folder under a specified parent folder.

POST https://api.box.com/2.0/folders — Free
const data = await lava.gateway('https://api.box.com/2.0/folders', { body: {"name":"New Folder","parent":{"id":"0"}} });
GET https://api.box.com/2.0/files/{file_id} — Free
const data = await lava.gateway('https://api.box.com/2.0/files/{file_id}', { method: 'GET' });

Download file content. Returns 302 redirect to a signed CDN URL with the file body.

GET https://api.box.com/2.0/files/{file_id}/content — Free
const data = await lava.gateway('https://api.box.com/2.0/files/{file_id}/content', { method: 'GET' });

Move a file to trash (soft delete).

DELETE https://api.box.com/2.0/files/{file_id} — Free
const data = await lava.gateway('https://api.box.com/2.0/files/{file_id}', { method: 'DELETE' });

Copy a file to a different folder.

POST https://api.box.com/2.0/files/{file_id}/copy — Free
const data = await lava.gateway('https://api.box.com/2.0/files/{file_id}/copy', { body: {"parent":{"id":"0"}} });
GET https://api.box.com/2.0/search?query=quarterly+report — Free
const data = await lava.gateway('https://api.box.com/2.0/search?query=quarterly+report', { method: 'GET' });

Invite a user (by email or Box user id) to collaborate on a file or folder with a specified role.

POST https://api.box.com/2.0/collaborations — Free
const data = await lava.gateway('https://api.box.com/2.0/collaborations', {
  body: {
"item": {
  "type": "folder",
  "id": "0"
},
"accessible_by": {
  "type": "user",
  "login": "collaborator@example.com"
},
"role": "editor"
},
});

Next Steps

All Providers

Browse all supported AI providers

Forward Proxy

Learn how to construct proxy URLs and authenticate requests