---
title: "Details About the Box API used by Spirion to Search Box Accounts"
url: "https://dm0bkdes5q7a2ls.productfruits.help/en/article/details-about-the-box-api-used-by-spirion-to-search-box-accounts"
language: "en"
last_updated: "2025-11-07T21:07:42.764Z"
---

# Details About the Box API used by Spirion to Search Box Accounts

By Mark Mcclung

## How Spirion Searches Box

Spirion searches files in Box accounts via the Box API.  Each file that is searched requires two API calls.

## Box API Call Limit

All Box Business Plans come with a licensed number of permitted API calls per enterprise per month. The number of API calls per month is listed within the plans here – [Box Plans](https://www.box.com/pricing).  Additional add-on plans or support requests to Box are possible to increase the monthly call limit.

There are currently a few distinct rate limits in place within the Box API:

-   General API calls
-   -   1000 API requests per minute, per user

## Rate Limit Error

When an application hits a rate limit the API will return an API response with an HTTP status code of “429 Too Many Requests.”

## What API Calls are Used?

Here is a list of all the API calls used in the methods implemented in the CBoxSyncCloudScan class with links to the official documentation:

### DownloadFile:

[https://developer.box.com/reference/get-files-id/](https://developer.box.com/reference/get-files-id/)  
SendRequest(response, methods::GET, m\_rootUrl, \_TS("/files/")+fileId+\_TS("/content"), \_TS(""), headerData);

### RenameCloudFile:

[https://developer.box.com/reference/put-files-id/](https://developer.box.com/reference/put-files-id/)

SendRequest(response, methods::PUT, m\_rootUrl, \_TS("/files/")+fileId, SET\_STRING\_WIDTH\_FOR\_IDF(query.serialize()), headerData, \_TS("application/json"));

### GetSpecifiedUserAccounts:

[https://developer.box.com/reference/get-users/](https://developer.box.com/reference/get-users/)

SendRequest(response, methods::GET, m\_rootUrl, \_TS("/users?") + SET\_STRING\_WIDTH\_FOR\_IDF(uriBldr.query()), \_TS(""), headerData);

### GetUserAccountsByPage:

[https://developer.box.com/reference/get-users/](https://developer.box.com/reference/get-users/)

SendRequest(response, methods::GET, m\_rootUrl, \_TS("/users?") + SET\_STRING\_WIDTH\_FOR\_IDF(uriBldr.query()), \_TS(""), headerData);

### GetFolderContents:

[https://developer.box.com/reference/get-folders-id-items/](https://developer.box.com/reference/get-folders-id-items/)

SendRequest(response, methods::GET, m\_rootUrl, \_TS("/folders/")+folderId+\_TS("/items?")+SET\_STRING\_WIDTH\_FOR\_IDF(uriBldr.query()), \_TS(""), headerData);

### GetFileInfo:

[https://developer.box.com/reference/get-files-id/](https://developer.box.com/reference/get-files-id/)

SendRequest(response, methods::GET, m\_rootUrl, \_TS("/files/")+fileId, \_TS(""), headerData);

### GetFolderInfo:

[https://developer.box.com/reference/get-folders-id/](https://developer.box.com/reference/get-folders-id/)

SendRequest(response, methods::GET, m\_rootUrl, \_TS("/folders/") + folderId+\_TS("?") + SET\_STRING\_WIDTH\_FOR\_IDF(uriBldr.query()), \_TS(""), headerData);

### CheckMakeCloudFolder:

[https://developer.box.com/reference/post-folders/](https://developer.box.com/reference/post-folders/)

SendRequest(response, methods::POST, m\_rootUrl, \_TS("/folders"), SET\_STRING\_WIDTH\_FOR\_IDF(query.serialize()), headerData);

UpdateCloudFile:

[https://developer.box.com/reference/post-files-content/](https://developer.box.com/reference/post-files-content/)

SendUploadRequest(FileUploadConfig(fileName), response, methods::POST, m\_contentRootUrl, \_TS("/files/") + fileId + \_TS("/content"), headerData, bodyStrings);

For Box this is the only cloud service where we use the “doDelOrigVersion” to get rid of the original file:

### Get previous versions:

[https://developer.box.com/reference/get-files-id-versions/](https://developer.box.com/reference/get-files-id-versions/)

SendRequest(response, methods::GET, m\_rootUrl, \_TS("/files/") + fileId + \_TS("/versions"), \_TS(""), headerData);

### Delete previous versions:

[https://developer.box.com/reference/delete-files-id-versions-id/](https://developer.box.com/reference/delete-files-id-versions-id/)

SendRequest(response, methods:😀EL, m\_rootUrl, \_TS("/files/") + fileId + \_TS("/versions/") + versionID, \_TS(""), headerData);

## Additional Information

For updated information regarding Box’s API limits please refer to the following article -

[Rate Limits - Box Developer Documentation](https://developer.box.com/guides/api-calls/permissions-and-errors/rate-limits/)
