Box API

By Abhishek Kumar
4 min read
Leverage the Box API to integrate advanced file management, collaboration, and data protection features into your applications. Access comprehensive REST APIs, real-time webhooks, and robust security measures. Streamline your content management with Box’s powerful platform.

Table of Contents

Box empowers your teams by making it easy to work with people inside and outside your organization, protect your valuable content, and connect all your apps.

API Overview

Box is a cloud-based content management platform that enables businesses to securely store, share, and collaborate on files. It offers a range of features, including file sharing, document editing, collaboration tools, and data protection. Box integrates with various productivity tools and business applications, allowing users to access and manage their content from anywhere. The platform provides enterprise-grade security measures, ensuring the confidentiality and integrity of sensitive data. Box also offers customizable options to meet the specific needs of different organizations.

Box API Overview:The Box API provides developers with a comprehensive set of REST APIs to programmatically interact with Box. The API documentation is extensive and well-organized, making it easy for developers to find the information they need. The REST APIs cover a wide range of functionality, including file management, collaboration, metadata management, and user management. Box also supports webhooks, which allow developers to receive real-time notifications of events that occur within their Box account. To ensure the stability and performance of the platform, Box implements rate limits on API requests. Developers can find detailed information about rate limits in the API documentation.

API Request Limits

Free

1000 requests per minute

Personal Pro

1500 requests per minute

Business Starter

2000 requests per minute

Business

3000 requests per minute

Enterprise

5000 requests per minute

APIs

Collaboration

Method: POST

Description: Invite a collaborator to an item..

Endpoint: /2.0/collaborations

Parameters: item_id,accessible_by,role,notify

Collaboration

Method: GET

Description: Get a specific collaboration between two users..

Endpoint: /2.0/collaborations/{collab_id}

Parameters: collab_id

Collaboration

Method: DELETE

Description: Remove a collaborator as an item collaborator..

Endpoint: /2.0/collaborations/{collab_id}

Parameters: collab_id

Collaboration

Method: PUT

Description: Update the status of a collaborator..

Endpoint: /2.0/collaborations/{collab_id}

Parameters: collab_id,status

Collaboration

Method: GET

Description: Get a list of all collaborations for an item..

Endpoint: /2.0/items/{item_id}/collaborations

Parameters: item_id,fields

File

Method: POST

Description: Upload a file to a folder and optionally process the file (e.g., extract text or create a preview)..

Endpoint: /2.0/files/content

Parameters: folder_id,name,parent_id,share_link,fields

File

Method: GET

Description: Download the content of a file..

Endpoint: /2.0/files/{file_id}/content

Parameters: file_id

File

Method: PUT

Description: Update metadata of a file..

Endpoint: /2.0/files/{file_id}

Parameters: file_id,name,description,parent_id

File

Method: DELETE

Description: Delete a file permanently..

Endpoint: /2.0/files/{file_id}

Parameters: file_id

File

Method: POST

Description: Create a new file within an existing folder..

Endpoint: /2.0/folders/{folder_id}/files

Parameters: folder_id,name,parent_id,share_link

Folder

Method: POST

Description: Create a folder..

Endpoint: /2.0/folders

Parameters: name,parent

Folder

Method: GET

Description: Get a folder..

Endpoint: /2.0/folders/{folder_id}

Parameters: folder_id

Folder

Method: PUT

Description: Update the folder..

Endpoint: /2.0/folders/{folder_id}

Parameters: folder_id,name,parent

Folder

Method: DELETE

Description: Delete a folder..

Endpoint: /2.0/folders/{folder_id}

Parameters: folder_id

Folder

Method: GET

Description: List the subfolders within a given parent folder..

Endpoint: /2.0/folders/{folder_id}/folders

Parameters: folder_id

Folder

Method: GET

Description: List the items in a folder..

Endpoint: /2.0/folders/{folder_id}/items

Parameters: folder_id

File

Method: POST

Description: Copy a file..

Endpoint: /2.0/files/{file_id}/copy

Parameters: file_id,parent_id,name,notify

File

Method: POST

Description: Move a file..

Endpoint: /2.0/files/{file_id}/move

Parameters: file_id,parent_id,notify

FAQ

How do I authenticate to the Box APIs?

You can authenticate to the Box APIs using OAuth 2.0. You will need to create a developer account and obtain a client ID and client secret.

What are the rate limits for the Box APIs?

The rate limits for the Box APIs vary depending on the API endpoint. You can find the rate limits for each endpoint in the API documentation.

How do I create a sandbox account?

You can create a sandbox account by signing up for a free developer account. Sandbox accounts allow you to test your integrations without affecting your production data.

How do I get access to the Box APIs?

You can access the Box APIs by creating a developer account. Once you have a developer account, you can create an app and obtain a client ID and client secret.

What is the difference between a developer account and a production account?

A developer account is used for testing and development purposes. A production account is used for running your production applications.

Last Update: September 13, 2024