All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
3.7.1 (2024-08-06)
3.7.0 (2024-07-16)
3.6.0 (2024-05-20)
3.5.1 (2024-05-02)
3.5.0 (2024-02-19)
3.4.2 (2023-11-08)
3.4.1 (2023-11-03)
3.4.0 (2023-11-03)
3.3.0 (2023-10-26)
3.2.1 (2023-10-06)
3.2.0 (2023-09-07)
3.1.1 (2023-07-19)
3.1.0 (2023-06-01)
3.0.0 (2023-05-23)
The most important change in this release is dropping support for Node versions below 12 and changing the support environments from Node 12 to Node 16.
- Removed
use_index
usage. (#812) (d56799a) - Removed deprecated
BoxClient.batch()
andBoxClient.batchExec()
method. - Removed deprecated
CollaborationWhitelist
class, useCollaborationAllowlist
instead. - Removed deprecated
CollaborationAllowlist.getWhitelistedDomain()
method, useCollaborationAllowlist.getAllowlistedDomain()
instead. - Removed deprecated
CollaborationAllowlist.getAllWhitelistedDomains()
method, useCollaborationAllowlist.getAllAllowlistedDomains()
instead. - Remove deprecated
Files.getThumbnail(fileID: string, options?: Record<string, any>, callback?: Function)
method, useFiles.getRepresentationContent( fileID, representationType, options, callback)
instead.
Migration details can be found here
- Bumped
jsonwebtoken
from 8.5.1 to 9.0.0. (#802) (5b1d4e9) - Bumped
vm2
from 3.9.11 to 3.9.19 (#826) (220df76)
2.10.0 (2023-05-11)
- Added support for ethical wall API (#822) (4814af3)
- Added
name
andsignature_color
fields toSignRequest
andSignRequestCreateRequest
types andlogin_required
field toSignRequestCreateSigner
type (#822) (4814af3)
2.9.0 (2023-04-19)
2.8.1 (2023-01-05)
2.8.0 (2022-12-21)
2.7.2 (2022-11-10)
2.7.1 (2022-10-28)
2.7.0 (2022-10-27)
- Add support for modifiable retention policies & enable deleting retention policy assignment (#769) (5e8c776)
2.6.0 (2022-09-23)
- Add
content_type
,redirect_url
field to Sign Request (#758) (8abb9b6) - Add sign request webhook (#760) (e92d1ab)
- Added support for Access Only Collaboration (#759) (dd8261f)
2.5.0 (2022-08-09)
- Fix error while generate token using oauth (#750) (f826291), closes #286
- Fix lint error in test file (#747) (3b1e10d)
2.4.0 (2022-07-13)
- Added support for file requests (#742) (30b2e76)
- Added support of
admin_logs_streaming
stream type (#740) (406950a)
2.3.0 (2022-04-28)
2.2.0 (2022-04-20)
2.1.0 (2022-03-28)
- Client Credentials Grant authentication method (#709) (fbf4e80)
- Deprecating
index_name
when executing metadata query (#686) (e01cc65) - test: add support for testing with Jest (#676) (1a11759)
- Client Credentials Grant authentication method supports token down-scoping (#710) (730368f)
- Fix JWT expiration field being float instead of integer (#715) (7e950f1), closes #713
2.0.0 (2021-09-29)
- Drop support for Node 6,7 (#670)
- Add support for is_external_collab_restricted User property (#668)
- Bump proxy-agent from 4.0.0 to 5.0.0 (#664)
1.39.0 (2021-08-30)
1.38.0 (2021-08-05)
- Add sensitive-language event types for admin invites (#648)
- Use BetterDocs to adapt JSDocs to TypeScript (#646)
- Change ProxyAgent import to be dynamic (#641)
- New API for get files and file versions under retention (#585)
- Deeply freeze Config except Buffers and Readable streams (#651)
- Fix a typo in docs of src/managers/search.ts (#649)
- Update broken documentation link (#647)
- fix type annotations for exchangeToken functions (#645)
- Deprecate files getThumbnail API in favor of getRepresentationContent (#627)
1.37.2 (2021-05-20)
- Fix backwards compatibility issue by moving some TypeScript @types as direct dependencies (#630)
1.37.1 (2021-05-19)
- Insensitive language: replace whitelist with allowlist (#625)
1.37.0 (2021-04-16)
- Add support for copyInstanceOnItemCopy field for metadata templates (#572)
- Fix webhook signature validation (#568)
- Update dependencies to patch security vulnerabilities (#578)
1.36.0 (2021-01-27)
- Update proxy-agent to patch proxy support issue (#563)
- Update dependencies to patch security vulnerabilities (#566)
1.35.0 (2020-11-02)
- Add support for search param to get shared link items (#547)
1.34.3 (2020-10-02)
- Upgrade ajv dependency (#545)
1.34.2 (2020-08-20)
- Make iterator bug fix for uploading files non breaking (#534)
1.34.1 (2020-08-17)
- Fix iterator bug for uploading new file versions (#531)
1.34.0 (2020-08-04)
1.33.0 (2020-06-25)
1.32.0 (2020-04-01)
- Temporarily removed Node 4 and Node 5 builds from Travis, due to tests not passing. Will investigate, going forward (#495).
- Fixed an issue where an error is thrown during a retry when a response is not returned by the previous call (#477).
- Added the ability to query Box items based on their metadata (#487).
1.31.0 (2020-02-13)
- Fixed Authentication Request Retries
- Added marker-based paging for users endpoints
- Added
getNextMarker()
to PagingIterator to get the next marker
1.30.0 (2019-11-21)
- Deprecated Batch API methods
- Added support for token exchange using shared links
1.29.1 (2019-08-22)
- Fixed an issue where JWT authentication requests could fail after being rate limited
1.29.0 (2019-04-25)
1.28.0 (2019-03-28)
- Added methods for moving and copying weblinks, as well as adding or removing from a collection
1.27.0 (2019-02-28)
- Added the trace ID from API response headers to error messages for easier debugging
- Added more safety checks in the error flow to protect against throwing when handling a malformed request
- Added support for retrieving a user's avatar image
1.26.2 (2019-02-22)
- Fixed an error where under high request rates, code in the error handling logic could throw when handling a malformed request
1.26.1 (2019-02-12)
- Fixed an error where some methods could throw an error when constructing an iterator
1.26.0 (2019-02-12)
- Added support for replying to a comment (thanks @jpan-box!)
- Fixed an issue where calling
client.events.get()
could return an iterator that would only iterate over the first chunk of events. This method will now always return the raw JSON data in order to enable manual paging. For automatic paging through events,client.events.getEventStream()
orclient.events.getEnterpriseEventStream()
should be used instead.
1.25.0 (2019-01-24)
- Added the
retryStrategy
config parameter to allow customizing how the SDK retries failing requests
1.24.1 (2019-01-11)
- Fixed an issue where token expiration was not being correctly handled
1.24.0 (2018-12-10)
- Added a configuration option for populating the first-party client analytics header information
1.23.0 (2018-11-21)
- Added an
etag
option to common file and folder methods to allow handling race conditions
1.22.1 (2018-11-15)
- Fixed an issue where retrying JWT auth token requests would sometimes fail due to a non-unique
jti
claim
1.22.0 (2018-09-17)
- Chunked Uploader methods now return promises for simpler handling of chunked uploads
- File attributes to set on the newly-uploaded file can now be
passed via
options.fileAttributes
when creating a Chunked Uploader
1.21.0 (2018-09-13)
- Added the ability to close an Event Stream by calling
eventStream.destroy()
(thanks @boneskull!) - Improved error messages related to certain authentication failure cases
1.20.0 (2018-08-09)
- Added missing values to the
client.webhooks.triggerTypes
enum (thanks @MathersMax!) - Added support for Metadata Cascade Policies
1.19.0 (2018-06-14)
- Added
generateRepresentations
option tofiles.getRepresentationContent()
1.18.0 (2018-05-24)
- Updated dependencies to resolve potential security issues:
request@2.87.0
- Transitive dependencies of
jsonwebtoken@8.2.1
- Added a static
BoxSDK.getBasicClient()
method to enable creating a client without needing to specify a client ID and secret (thanks to @cbetta)
1.17.0 (2018-05-10)
- Updated dependencies:
request@2.85.0
,jsonwebtoken@8.2.1
- Added support for Storage Policies
- Added the option to use a Token Store for caching tokens with App Auth using JWT
1.16.1 (2018-04-26)
- Fixed a bug where metadata template deletion would not properly return results via callback
1.16.0 (2018-04-10)
- Added support for assigning Retention Policies to Metadata Templates
1.15.0 (2018-03-29)
- Fixed [
client.webhooks.validateMessage() and
sdk.validateWebhookMessage()](https://github.com/box/box-node-sdk/blob/main/docs/webhooks.md#validate-a-webhook-message) to accept the request body as an
Object` - Fixed
sdk.configure()
to correct reconfigure all options - Improved error messages for API errors and added the request object as
error.request
for easier debugging
1.14.1 (2018-03-13)
- Fixed a bug when
files.getReadStream()
was called with null options
1.14.0 (2018-03-12)
- Added support for getting a metadata template by ID
- Added a
byteRange
option to file download to support partial file download - Improved error messages when using promises and in authentication flows
1.13.0 (2018-03-01)
- Added support for getting a stream of file representation contents
- Switched to using exponential backoff for request retries
1.12.1 (2018-01-25)
- Fixed an issue where chunked uploader would not work with response streams from the request library (0e7014561f9cd0f7f38f98536b3f0c3946231d2e)
1.12.0 (2018-01-11)
- Added support for metadata template deletion
1.11.0 (2017-12-12)
- Added options to preserve file timestamps on file upload and to rename a file or preserve modification timestamp on new version upload
- Added Collaboration Whitelist functionality to allow enterprise admins to control which external users can collaborate on their content
- Added an option to Token Exchange to generate annotator tokens for use with Box View
1.10.1 (2017-11-28)
- Updated to jsonwebtoken@8.1.0 to fix an issue where some users were getting an error when using App Auth
1.10.0 (2017-01-14)
- Added support for Terms of Service endpoints
- Fixed a bug where receiving a collection without paging parameters from the API
would cause the SDK to throw an exception when using the
iterators
SDK option. Now, this will return an iterator over the items returned by the API. - Fixed a bug in Token Exchange where passing multiple scopes would result in an error
- Added support for getting Representations info on a file
1.9.0 (2017-09-12)
- Fixed token methods to return bluebird Promises instead of native Promises
- Added support for the
notify
andcan_view_path
options on Collaborations
1.8.0 (2017-08-21)
- Added support for Batch API
- Fixed a bug where the Event Stream would make more API calls than necessary, potentially hitting Box API rate limits
- Added Promise support to methods on the SDK object
- Added Node.js version to the User-Agent header that the SDK sends
- Fixed a bug where using multiple Persistent Clients instances could cause some clients to end up with expired tokens
1.7.0 (2017-07-19)
- Add support for passing IP to all token methods, and fixed a bug where a client's IP was not being correctly reported on token refreshes
1.6.0 (2017-06-23)
- Added Recent Items support
- Updated app auth expiration time default value and validation
1.5.1 (2017-06-15)
- Revert deep-freezing Config properties, since it was causing errors
1.5.0 (2017-06-15)
- Added support for Token Exchange, which allows a client to get downscoped tokens suitable for passing to a browser app or worker process.
- Ensured deeply-nested Config properties are immutable
1.4.2 (2017-05-22)
- Fixed
BoxSDK.getPreconfiguredInstance()
to configure webhook keys
1.4.1 (2017-05-22)
- Fixed
BoxSDK.getPreconfiguredInstance()
when app auth setttings are not populated
1.4.0 (2017-05-19)
- Added support for file collaborations. Users can now invite others to collaborate on single files. See the blog post for more information.
- Fixed an issue where users were unable to use JWT Server Auth when their computers' clocks were not synchronized with the Box API servers.
- All asynchronous client methods now return Promises in addition to taking a (now-optional) callback parameter, so you can write more modern JS with the SDK.
- The SDK can now be preconfigured using a JSON blob that can be downloaded in the Box Dev Console for JWT Server Authentication apps, making it easier to get started developing!
- Added support for chunked upload, where a large file can be uploaded one piece at a time. This makes large file uploads much faster and more reliable, since parts can be uploaded in parallel and failed parts can be retried in isolation.
- Added an
is_confirmed
option to email alias creation for admins to auto-confirm the alias. - Added support for the Enterprise Events stream.
- Added an option to have collections methods (e.g.
folders.getItems()
,enterprise.getUsers()
, etc) return async iterators that will automatically page through the collection. This conforms to the proposed async iteration spec, which will eventually allow them to be used in ergonomic for-await-of loop syntax.
1.3.0 (2017-01-24)
- Added
BoxSDK.validateWebhookMessage()
andclient.webhooks.validateMessage()
for validating webhook messages from Box
1.2.0 (2016-12-12)
- Added methods for all API endpoints; we now have full API coverage 🎉
- Added support for renaming a file or folder on copy
- Added
client.asUser(userID)
andclient.asSelf()
to support making calls on behalf of managed users - Fixed event streams so they don't go into an infinite error loop when auth expires
- Fixed an error where App Auth clients would not be able to authorize due to clock skew
- Fixed the
mdfilters
parameter inclient.search.query()
to support metadata search - Cloned options objects to prevent modification of passed-in objects by the SDK
- Added better error messaging to the sample app
1.1.0 (2016-09-27)
- Added endpoint to get a file's tasks
- Fixed issues with stream uploads
- Improved performance of file uploads
- Added endpoints to delete files and folders from trash
- Added endpoint to get a trashed folder
- Upgraded request dependency to fix ReDoS vulnerability
Initial release.