Impactful changesAPI
Blank OAuth 2 redirect URI change
On September 28th, 2020 we announced upcoming changes to our security requirements for OAuth 2 app redirect URIs. As of today, applications that use a blank redirect URI will no longer be permitted, and will begin to produce an error statingredirect_uri missing
when attempting to redirect the user, stating that there is a mismatched URI.Impacted applications will have received multiple emails to the developer email
address associated with the application and account, and are part of a small
subset of applications that were grandfathered in to allow the functionality to
persist.New applications, or any OAuth 2 applications that have a redirect URI
specified are not impacted.How to update your OAuth 2 app redirect URI
If your OAuth 2 application has started to produce an error during the redirect phase, you may be impacted by this change. To update your application(s), use the following steps:- Go to the Box developer console as the user who owns the application(s).
- From the top navigation, click on Configuration.
- Scroll down to the OAuth 2.0 Redirect URI section.
- For any application where this URI is blank, add the URI that is being used in the application code when redirecting the user back to your application from the Box auth step, as is described in this guide.
API
New type field in search API responses
A new field,type, has been introduced in the
search result response object for returned shared
link items.This response object format is only returned when making calls to the
content search endpoint with the
include_recent_shared_links query parameter set to true.There is no impact to existing applications that are currently consuming this
response object.Updates
Prior to this release, the return object for shared link search results included two objects:accessible_via_shared_link: The shared link which the item is accessible from.item: The file, folder, or web link that matched the search query.
type field, which is a string that will always
be set to search_result.New featuresCLI
New featuresJavaSDKs
New featuresAPI
Announcing Client Credentials Grant authentication
A new method for authenticating your JWT applications is now released. This new method, Client Credentials Grant, does not impact existing applications but offers an easier way to authenticate for new apps. Prior to today, we required a public/private key pair and assertion to verify an application’s identity and retrieve an Access Token. Now, you can request a token using only your client ID and client secret.Updates
- Added client credentials grant as an auth option for new applications
- Added 2FA requirement to copy/view client secret
- Added selected authentication method in the Enterprise Authorization request
- Removed the ability to change authentication type
New featuresiOSSDKs
JavaSDKs
New featuresUI Elements
Box Content Preview v2.57.0 released
New Features and Enhancements
- Add react versions of core control components (#1282)
- Add react versions of existing control icons (#1280)
- Add react versions of fullscreen and zoom controls (#1283)
- Add react versions of text viewer controls (#1284)
- Add instrumentation for annotation creation (#1275)
- Upgrade
reactandreact-domto^16.9.0(#1278)
Bug Fixes
API
Simplified App Creation Flow
A new, simplified app creation flow is now available in the Box Developer Console. The three types of applications are Custom Apps, Limited Access Apps, and Box Custom Skills.We added plain language to describe exactly when to select each app type and links to relevant documentation if you require additional information to help with your selection. The application type you select impacts which authentication methods are available.Most notably, is our new app type, Limited Access Apps. Select this app type if you’d like to leverage Box View or Box’s preview services within another application. This app type only provides access to app token authentication, which has restricted API capabilities. For full details, please visit our guide on selecting an app type.New featuresCLI
New featuresNodeSDKs
New featuresJavaSDKs
New featuresAPI
New Folder Lock APIs now available
A new collections of APIs have been released to allow developers to lock move and delete operations on folders. New API reference and guides have been made available to help create and manage you folder locks.To create a lock on a folder to prevent it from being moved or deleted, supply the ID of a folder to thefolder_locks endpoint.- Create a folder lock: Guide | API Reference
- List all locks on a folder: Guide | API Reference
- Delete a folder lock: Guide | API Reference
New featuresAPI
New Folder Lock APIs now available
A new collections of APIs have been released to permit the restriction of move and delete actions on folders. New API reference and guides have been made available to help create and manage you folder locks.To create a lock on a folder to prevent it from being moved or deleted, supply the ID of a folder to thePOST /folder_locks/ endpoint.- Create a folder lock: Guide | API Reference
- List all locks on a folder: Guide | API Reference
- Remove a folder lock: Guide | API Reference
API
Metadata Cascade Policies API leaves Beta
The Metadata Cascade Policies API is now generally available to all and no longer in Beta.Over the past years, we’ve made a lot of technical improvements to our metadata infrastructure and we’re happy to announce that we’ve now gotten to the moment where the Metadata Cascade Policies API is leaving Beta. This release does not involve any breaking changes and any existing application should not see any impact from this release.Since we initially launched, Metadata Cascade Policies has become over 10 times faster when applying metadata to new instances. Additionally, we’ve also made significant strides in reliability and observability to ensure a top-notch API experience, in line with the rest of our API suite.For more details about metadata, and metadata cascade policies, please visit the Metadata guides and our dedicated Metadata Cascade Policies reference documentation.Box Windows SDK v3.25.0 released
New Features and Enhancements
- Add support for filtering when getting Groups (#703)
- Add zip functionality (#700)
- Deprecate one of the overloaded
ExecuteMetadataQueryAsync()methods (#699) - Add support for
copyInstanceOnItemCopyfield for metadata templates (#698)
Bug Fixes
- Fix bug with JWT Authentication automatic retry (#697)
www.nuget.org/packages/Box.V2/3.25.0
www.nuget.org/packages/Box.V2.Core/3.25.0New featuresAPI
Search API adds support for Shared Links
The Search API now supports returning files, folders and web links that the user has recently accessed through a shared link.Shared items can be requested by calling theGET /search API with the new
include_recent_shared_links query parameter set to true.Change in response format
Wheninclude_recent_shared_links is set to true, the
response has slightly changed to allow for the additional
information to be returned. Rather than returning a direct list
of files, folders, and web links the API now returns a list of
objects containing an item and an accessible_via_shared_link
property.- Without
New featuresAPI
New File Request APIs available
A new collection of APIs are now available that allows developers to create and update File Requests. We’ve updated the reference documentation and added new guides to help you manage your file requests.To create a copy of an existing file request, all you need is the unique ID of an existing file request, and the ID of the folder to apply the new request to.- Create a template file request: Guide
- Create a copy of a file request: Guide | API Reference
- Get information about a file request: Guide | API Reference
- Update a file request’s configuration: Guide | API Reference
- Delete a file request: Guide | API Reference
PythonSDKs
Impactful changesAPI
Change to OAuth 2 app redirect URI requirements
On October 29th, 2020, Box will begin employing stricter requirements for redirect URIs used within new and existing OAuth 2-based Box integrations that may affect your application.Existing application owners that currently use a blank redirect URI in their application configuration, as described here, will need to update the redirect URI to match the redirect used within the code redirect step, described here.On October 29th, 2020, applications that are still configured with a blank URI will begin returning an error when the user is redirected back to your application if URI adjustments aren’t made.All impacted application owners and collaborators have been notified via the email address associated with their developer account.How to validate and make the change
To validate your redirect URI and update your application(s) if they are affected, take the following steps:- Go to the Box developer console as the user who owns the application(s).
- For each Custom App using OAuth 2 (client-side authentication) click on the application to open it.
- From the left navigation, click on Configuration.
- Scroll down to the OAuth 2.0 Redirect URI section.
- For any application where this URI is blank, add the URI that is being used in the application code when redirecting the user back to your application from the Box auth step, as is described in this guide.
New featuresAPI
Search API adds support for Shared Links
The Search API now supports returning files, folders and web links that the user has recently accessed through a shared link.Shared items can be requested by calling theGET /search API with the new
include_recent_shared_links query parameter set to true.Change in response format
Wheninclude_recent_shared_links is set to true, the
response has slightly changed to allow for the additional
information to be returned. Rather than returning a direct list
of files, folders, and web links the API now returns a list of
objects containing an item and an accessible_via_shared_link
property.- Without
New featuresAPI
Group API adds new filter and permissions
TheGET /groups API now supports
filtering groups by name using a new filter_term field.permissions
field, which currently has one attribute defining
if the authenticated user can invite the group to any item.Group API documentation.New featuresAPI
New multiSelect metadata support in search API
Starting today, the Search API adds support for matching items by multiple values of amultiSelect metadata field. Before this
change, it was not possible to find items by the value of a multiSelect field.To perform a search for items where a metadata field matches
multiple values, the mdfilters parameter now supports a list of values.mdfilters query parameter contains one filter with a
scope, a templateKey, and a set of filters. Here is the same filter
in a more readable format.products filter now performs a match on multiple
values, only returning files and folders for which the template has a products
value of either shield or platform. The value of the field can contain
multiple values and only match on one of the values specified in the filter.
For example ["shield", "governance"] will be a match for the filter
["shield", "platform"] as shield is included in the filter.New featuresCLI
Box CLI v2.6.0 released
CHANGELOG- Add zip functionality (#203)
1953639 - Add proxy support for
http,https,socksandpacprotocols. Proxy settings can be found underbox configure:settings(#202)21671c8 - Fix filename issue when saving reports on Windows (#195)
31853d3
NodeSDKs
Box Node SDK v1.34.2 released
https://github.com/box/box-node-sdk/compare/v1.34.1…v1.34.2JavaSDKs
NodeSDKs
Box Node SDK v1.34.1 released
https://github.com/box/box-node-sdk/compare/v1.34.0…v1.34.1New featuresNodeSDKs
New featuresAPI
Updates to Search Relevance & Performance
In January, updates were released to Box’s search tokenizer, improving the relevancy of search results and performance. This change does not effect how metadata is tokenized.Notable changes to the API-initiated searches include:- The ability to use “stop words”, for example (“the”), (“is”), (“at”), (“which”), and (“on”).
- Improved Japanese text tokenization and improved search results.
New featuresAPI
New Zip Download APIs available
A new collection of APIs are now available that allows developers to create a Zip file containing a specified list of files and folders. We’ve updated the reference documentation for this Zip Download API. SDK support for these new endpoints is currently in development and scheduled to be released in the next 3 months.New featuresWindowsSDKs
Box Windows SDK v3.24.0 released
See Changelog for details.Commits: https://github.com/box/box-windows-sdk-v2/compare/v3.23.0…v3.24.0nuget.org/packages/Box.V2/3.24.0
nuget.org/packages/Box.V2.Core/3.24.0New featuresJavaSDKs
New featuresAPI
Change to enterprise events for content access
Starting today, the enterprise event stream will begin producing new content access events.A newCONTENT_ACCESS event is triggered when a file was accessed by an
authorized user or programmatically by a Box application.See the enterprise events documentation
for more information on other event types.New featuresImpactful changesAPI
Changes to Metadata Query API syntax
The Metadata Query API has been updated to require explicitly defined response fields.field array - as well as any base fields - are returned in the response.Legacy syntax
For reference, the API would previously return all standard fields for an item as well as the matched metadata.item and a metadata instance.New featuresNodeSDKs
New featuresJavaSDKs
Box Java SDK v2.48.0 released
v2.48.0- Add ability to get groups by name with fields option (#789)
- Add shared link downscoping (#785)
- Deprecate the use of float for Metadata values, in preference of the underlying value (double) (#811)
- Add iterator support for group collaborations (#813)
- Add ability to set the filename when uploading a new version of a file (#810)
- Add support for the classification field for Files and Folders (#809)
- Add support for setting Tracking Codes (#766)
- Fix issue for
getIsExternallyOwned()for Files and Folders (#808)
New featuresPythonSDKs
Box Python SDK v2.9.0 released
- Fix exception handling for OAuth
- Fix path parameter sanitization
New featuresImpactful changesAPI
Change to enterprise events for tasks
Starting today, the enterprise event stream will begin producing new task and task assignment events, and some existing task events will return additional fields.New events
- A new
TASK_UPDATEevent is triggered when a task is updated - A new
TASK_ASSIGNMENT_DELETEevent is triggered when a task is unassigned from a user
Updated events
Changes to TASK_CREATE
When a task is created, the event now includes the task’s ID (task.id), the ID
of the user who created the task (task.created_by.id), the task’s description
(task.message), and the optional due date of the task (task.due_date)
within the additional_details object.Changes to TASK_ASSIGNMENT_CREATE and TASK_ASSIGNMENT_UPDATE
When a task assignment is created or updated, the event now includes the task’s
ID (task.id), the ID of the assigned user (task_assignment.assigned_to.id)
and their login (task_assignment.assigned_to.login), the task’s description
(task.message), and the optional due date of the task (task.due_date) within
the additional_details object.New featuresiOSSDKs
Box iOS SDK v4.1.0 released
Breaking Changes:New Features and Enhancements:- Add ability to cancel uploads and downloads
- Add support for the uploader display name field for Files and File Versions
- Add support for the classification field for Files and Folders
- Add path parameter sanitization
- Fix logging of API responses
New featuresWindowsSDKs
Windows .NET SDK v3.23.0 released
See Changelog for details Commits:v3.22.0...v3.23.0nuget.org/packages/Box.V2/3.23.0
nuget.org/packages/Box.V2.Core/3.23.0New featuresAPI
New shield alert events
As of today, Box Shield will begin producing new security events within the enterprise event stream for Shield customers who are configured to listen for the new events.The possible incident events produced by Shield are:- Suspicious locations
- Suspicious sessions
- Anomalous download
- Malicious content
New featuresPythonSDKs
Python SDK v2.8.0 released
- Added support for token exchange using shared links
- Added the ability to pass in a SHA1 value for file uploads
New featuresAPI
New classification field for Files
A new optional field has been made available within theField object,
classification. This field represents the classification that is currently
applied to a file.The classification can be requested via any endpoint that returns a file, like
the Get file information and supports requesting
additional fields.New featuresJavaSDKs
New featuresAPI
Add new uploader_display_name field to file and file versions
A new field,uploader_display_name has been added to both file and file
version resources. This field provides the name of the user at the time of
upload.fields query parameter, for example:Someone.New featuresAPI
New Metadata Query APIs available
A new API is now available that allows developers to query files and folders by the metadata attached to them. We’ve updated the reference documentation for this Metadata Query API, as well as released some brand new guides and an update to the metadata quick start guide.New featuresCLI
Box CLI v2.5.1 released
CHANGELOG- Added
--quietflag to suppress any non-error output tostderr(#167)27045c6 - Fixed a bug for the
--restrict-collaborationflag forbox folders:updatewhere previously the flag would not restrict the collaborations when passed as true and would restrict collaborations when passed as false (#175)e6e1120 - Added
box trash:restoreto restore a trashed item andbox trash:getto get information on a trashed item (#179)74db947 - Fixed a bug where flags that can be specified multiple times in a single command could not be passed through the command line for bulk commands (#183)
63db0ac - Note: Skipped version 2.5.0 due to development of new release process
v2.4.0...v2.5.1New featuresJavaSDKs
New featuresJavaSDKs
New featuresNodeSDKs
Node SDK v1.32.0 released
- Temporarily removed Node 4 and Node 5 builds from Travis, due to tests not passing. Will investigate, going forward (#495).
dc558e9 - Fixed an issue where an error is thrown during a retry when a response is not returned by the previous call (#477).
f1b3449 - Added the ability to query Box items based on their metadata (#487).
6f08931
v1.31.0...v1.32.0Impactful changesAPI
Potential impactful changes to format of Metadata date fields
As part of ongoing improvements to our Metadata infrastructure we will be rolling out three potential impactful changes to the format ofdate fields in
metadata templates. These changes make the format our API returns more
consistent between API calls.The first change affects the usage of time zone offsets in dates. Previously,
the API would inconsistently return dates with and without timezone offsets if a
date was set to include one. From now on all dates are converted to UTC /
Zulu-time, removing the timezone offset.For example:- Assume a date was set to
2020-02-20T12:00:00.000-01:00 - Previously the API would return
2020-02-20T12:00:00.000-01:00(the original value) or2020-02-20T13:00:00.000Z(the UTC adjusted value) - From now on it will always return
2020-02-20T13:00:00.000Z(the UTC adjusted value)
- Previously the API might return
2020-02-20T12:00:00Z,2020-02-20T12:00:00.0Z,2020-02-20T12:00:00.00Zor2020-02-20T12:00:00.000Z - From now on it will always return
2020-02-20T12:00:00.000Z
test operation when updating a
metadata instance. Previously the test would compare the date-time values using
the literal string value. After this update they are compared using their UNIX
timestamp in milliseconds.For example:- Previously
2020-01-21T19:20:00.123-08:00would not be equivalent to2020-01-22T03:20:00.123Z - From now on
2020-01-21T19:20:00.123-08:00is equivalent to2020-01-22T03:20:00.123Z
How this can affect an application
Any application that implementsRFC3339-compliant date-time parsing will not
need to perform any action as these are all valid RFC3339 values representing
the same dates. Any application that does not implement RFC3339 compliant
date-time parsing should be updated to do so.All official Box SDKs support RFC3339-compliant date-time parsing, so any
application using an up-to-date version of an official Box SDK would not require
any update.What do if this affected your application
Roll-out of this change will be performed gradually over the next few weeks. Although the metadata team will be monitoring potential impact, please reach out to your customer success manager or our support channels if you find yourself impacted.Impactful changesAPI
Change to metadata instance version
As part of ongoing improvements to our Metadata infrastructure we will be rolling out a small change to theversion value
of a metadata Instance.Previously, the version number associated with a metadata instance would be
incremented if a field on the associated metadata template was deleted, or if an
enum field’s option was deleted on the associated metadata template.Going forward, these changes will not increment the version number of a metadata
instance.This behavior has always been implicit and we recognize that very little value
can be derived form to the metadata instance version. Therefore we do not expect
this change to have any impact on any of our customers. Regardless, please reach
out to your customer success manager or our support channels if you find
yourself impacted.New featuresWindowsSDKs
Windows .NET SDK v3.22.0 Released
See Changelog for details Commits:v3.21.0...v3.22.0nuget.org/packages/Box.V2/3.22.0
nuget.org/packages/Box.V2.Core/3.22.0New featuresNodeSDKs
JavaSDKs
New featuresImpactful changesiOSSDKs
Box iOS SDK v4.0.0 released
Breaking Changes:- Change
statusfield for task assignments from a String to an Enum - Remove
macOS,tvOS, andwatchOSsupport
- Make authentication session classes
OAuth2Session,SingleTokenSession, andDelegatedAuthSessionpublic
SDKsContent preview
Preview SDK v2.34.0 released
Version2.34.0 of the Preview SDK has been released. New JavaScript and CSS
Preview files have been made available. To adopt new changes, please see the
UI Elements manual installation links for Content
Preview.Please see the v2.34.0 release notes for a list
of all feature changes.PythonSDKs
Python SDK v2.7.1 released
- Fixed bug in
_get_retry_request_callableintroduced in release 2.7.0 which caused chunked uploads to fail
SDKsContent preview
Preview SDK v2.33.1 released
Version2.33.1 of the Preview SDK has been released. New JavaScript and CSS
Preview files have been made available. To adopt new changes, please see the
UI Elements manual installation links for Content
Preview.Please see the v2.33.1 release notes for a list
of all feature changes.Postman
Refreshed Postman Collection & Quick Start
The Box Postman collection has been updated with new features and an integrated quick-start guide. Key features include:- An end-to-end Postman quick-start guide that helps users to install Postman, set up a Box App, and load their API credentials into Postman.
- A restructured Postman collection for the Box APIs that automatically detects when API credentials have expired and offers integrated solutions for refreshing these credentials when needed.
New featuresPythonSDKs
Python SDK v2.7.0 released
- Fixed bug in
get_admin_eventsfunction which caused errors when the optionalevent_typesparameter was omitted. - Add marker based pagination for listing users.
- Added support for more attribute parameters when uploading new files and new versions of existing files.
- Combined preflight check and lookup of accelerator URL into a single request for uploads.
- Fixed JWT retry logic so a new JTI claim is generated on each retry.
- Fixed bug where JWT authentication requests returned incorrect error codes.
- Fixed retry logic so when a Retry-After header is passed back from the API, the SDK waits for the amount of time specified in the header before retrying.
