Configuring hidden achievements
Overview
The AccelByte Gaming Services (AGS) Achievements service allows you to create hidden achievement configurations. A hidden achievement is an achievement that is not shown to the player when they are locked. They are typically kept as a secret and not revealed to the player until they are unlocked.
In this guide, you will learn how to utilize the visibility option to configure hidden achievements in the AGS Admin Portal or with the AGS CLI.

Goals
- Provide an understanding and overview about achievement configurations.
- Provide an understanding of how to utilize visibility options in the achievement configurations for hidden achievements.
Prerequisites
- Access to the AGS Admin Portal.
- Access to AccelByte Achievement API documentation.
- Access to the AccelByte Statistics API to configure the required information (optional).
- To follow the AGS CLI steps, you must have installed the AGS CLI and signed in with an account that has access to these features. See Install and sign in. The examples use a Bash shell.
Configure hidden achievements
To allow you to flexibly choose whether this achievement will be incremental or non-incremental, a hidden achievement is not dependent on the user statistic tracking. If you choose incremental, you can follow the guide for tracking global statistics to set up a statistic configuration to store the attribute you want to track.
You can set up an achievement configuration from the AGS Admin Portal or with the AGS CLI by following the steps below:
- Admin Portal
- AGS CLI
- On the Admin Portal sidebar, go to Online > Achievements > Configuration.

- On the Achievements page, click on the Add Achievement button.
-
On the Add New Achievements form, fill in the required information:
-
Fill in the Code field with information in the allowed format (e.g.,
hero-collector), as well as the achievement Name to make it easier for you to identify the achievement in the future. You are also required to fill in the Description to provide extra information about the achievement you created.
-
Check the Incremental box for an incremental achievement, or leave the box unchecked for a non-incremental achievement. If you're creating an incremental achievement, input the Goal Value and a Statcode of the statistic associated with this achievement.
-
For Hidden Achievement, you need to make sure the Visibility is set to Hidden
- You are also required to add an image for the Locked Icon. This will be displayed for players who do not have this achievement yet.
- Add an Unlocked Icon, which will display when the achievement is unlocked.
- There are also optional fields that you can use such as Tags and Custom Attributes to store additional information for your achievement.
- Click Add. The new achievement is added to the achievements list.
-
Create a JSON file with the achievement's settings. Any file name works. This example uses
achievement.json:{
"achievementCode": "<AchievementCode>",
"defaultLanguage": "en",
"name": { "en": "<AchievementName>" },
"description": { "en": "<AchievementDescription>" },
"hidden": true,
"incremental": false,
"lockedIcons": [{ "slug": "<LockedIconName>", "url": "<LockedIconUrl>" }],
"unlockedIcons": [{ "slug": "<UnlockedIconName>", "url": "<UnlockedIconUrl>" }]
}achievementCode,name, anddescription: the Code, Name, and Description.nameanddescriptiontake one text per language, anddefaultLanguagemust be one of those languages.hidden:truefor a hidden achievement.incremental:falsefor a non-incremental achievement. For an incremental achievement, set it totrueand addstatCodeandgoalValue(at least1) with the Statcode and Goal Value.lockedIconsandunlockedIcons: the Locked Icon and Unlocked Icon. The Admin Portal uploads the image for you. With the AGS CLI, seturlto the address of an image that is already hosted, andslugto a name for the icon.
To set more fields, add them to the file. To see every field, run
ags achievement achievements create --skeleton. These fields match the optional Admin Portal settings:Admin Portal setting Request body field Tags tagsCustom Attributes customAttributes -
Create the achievement. After
@, pass the path to your JSON file:ags achievement achievements create --namespace <YourNamespace> --json @achievement.jsonThe command prints the new achievement.
Next steps
After setting up hidden achievements, you can start integrating them into your game. Refer to the following articles:
- Display player achievements using AGS SDK
- Unlock player achievements using AGS SDK
- Manage player achievements from the Admin Portal
- Group and filter achievements
The Achievements service also supports configuring progressive achievements and global achievements.