Box API client for Node.JS
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Box API Node.JS Client


npm install nodejs-box


First, you need to go through the OAuth2 process with, so that you can receive an access token. I recommend the box-passport module to help with this.

var Box = require('nodejs-box');

var box = new Box({
  access_token: 'YOUR_ACCESS_TOKEN_GOES_HERE',

Example Usage

Working with files

Once you've creted a Box instance (see above section) you can act on file resources by calling functions on box.files.

Uploading a file

There are two ways to upload a file:

  • If the file has a custom filename

box.files.upload(filepath, filename, folderId, callback);

  • If the file does not have a custom filename

box.files.upload(filepath, folderId, callback);

Create and view information about a file

Get information about a file:, fields, callback);

Create metadata for a file:

box.files.createMetadata(fileId, metadata, callback);

Get all metadata for a file

box.files.getAllMetadata(fileId, callback);

Get specific metadata for a file. The path parameter is a combination of the scope and template attributes on the api, so will look like enterprise/marketingCollateral. For more detail, see the api docs

box.files.getMetadata(fileId, path, callback);

Download links

There are two ways to get a download link for a file:

  • Retrieve a download link for the given file without a shared item:, callback);

  • Retrieve a download link for the given file from a shared item:, shareLink, callback);

Creating a shared link

Create a shared link:

box.files.createSharedLink(file, sharedLinkSettings, callback);