December 2025 Release
Production Release Date: December 17
Rest APIs
The following API change is documented on https://api.bunchball.com/docs.
-
/challenges - Added the visibility parameter for an upcoming feature.
-
The visibility parameter can be set to not_hidden, hidden_until_earned, hidden_until_unlocked, or always_hidden.
-
The visibility parameter replaces the hidden parameter. If both hidden and visibility are set, visibility always overrides hidden.
-
For existing missions where hidden is true, the mission is hidden until earned.
-
Product Updates
Users View Filters and Log Action
We've redesigned the Users View Actions tab for readability, added the ability to log an action, and added filters you can use to narrow the list of results by action name(s) and/or date.
When manually logging an action, the action is logged at the current time in the administrator's timezone unless you choose to backdate it.
|
|
|
Levels View Redesign
The Levels view has been redesigned for a more modern look. The view now features a side panel for creating and editing levels which replaces the previous popup modal. The new view also allows you to upload a level image or link to an image on an external server.
Localization
The Localization view has been redesigned and includes new file requirements. Now, localization files must be in JSON format, aligning with other areas of the platform. No migration of existing files is required. When updating existing files for new missions, leaderboards, or other program elements, you will:
-
Download the existing translation file for each active locale. Files will download in JSON format.
-
Update the file with any new mission/leaderboard/etc. translations.
-
Upload the modified translation file in Nitro Studio.
Product Fixes
-
Fixed an issue in the mission builder where you could create missions with circular dependencies (mission A is a prerequisite of B which is a prerequisite of A). Now, an error message prevents you from saving missions with a circular dependency.
-
Fixed an issue where revisiting a task's URL in a completed mission caused a token error instead of reopening the link.
**Legacy OAuth Token Discontinuation Notice**
Effective with the June 2026 release, legacy OAuth tokens used with blocks will be deprecated.
What this means for you?
-
Impact and Recognitions blocks will require a JWT gamification token from the /gamification-token API.
-
Legacy OAuth tokens will no longer be supported for blocks, and new features released in blocks may not work with the old token.
-
If your program uses both blocks and web components, you must use two separate tokens:
-
A JWT gamification token for blocks
-
A legacy OAuth token for web components
-
To prepare for the upcoming token deprecation, you should take the following steps before June 2026.
-
Review the token used in your Impact block to ensure you’re using a JWT gamification token.
-
Review the token used in your Recognitions block to ensure you’re using a JWT gamification token.
-
Update your embed code to use a correct token if you're not using a JWT gamification token in all of your blocks. Use the steps detailed here to update.
-
Ensure you have two tokens enabled if you have both web components and blocks in the same environment:
-
A JWT gamification token for blocks
-
A legacy token for web components
-
Legacy OAuth tokens used in web components will continue to be supported until the official end-of-life date for web components is announced.
See also