📄️ Workflow
The flow chart below shows a view of the k-ID Engine workflow. API calls are identified at the points in the workflow where they are used.
📄️ Managing Sessions
The k-ID `Session contains the collection of permissions and age status for the current player and location. Every player requires an active Session. The game should consult the active Session` to determine whether features are enabled or disabled in the game.
📄️ Getting the Player's Age
Jurisdictional Requirements for Age Collection
📄️ Age Verification
k-ID provides a set of APIs to verify the age of users for the following scenarios.
📄️ Implementing Age Assurance
Age Assurance is defined to be the overall process that proves the age of a user for various purposes, including access to a game, app or content within an app. Depending on the jurisdiction and how risky the feature is that you want to verify age for, different methods can apply. The Global Compliance Engine provides an overall workflow process, driven by APIs, that is configurable per jurisdiction and customizable for the unique needs of the game or app.
📄️ Checking the Age for Access
If an age gate was presented to the user and the user provided an age, an API call to /age-gate/check now must be made to determine the next step in the workflow. If the player’s age is below the minimum age for the game configured in the Developer Portal, the returned status field will be PROHIBITED. At this point, the player should be blocked from continuing in the game. If the player gave a date of birth that requires verifiable parental consent in the current location, then the status field will have the value CHALLENGE and an ID to a new Consent Challenge will be returned in a field called challengeID. The game must then ask the player to seek parental consent. Finally, if the status value is PASS, then the player can continue into the game.
📄️ Seeking Parental Consent
In the case where the value CHALLENGE is returned in the status field of the /age-gate/check, the challengeId field in the response contains the ID of the Consent Challenge in the k-ID Engine. A window should now be shown that allows the player to seek parental consent.
📄️ Using Session Permissions
Once the user passes the age gate check, either because they are of age to proceed or consent has been granted by a parent, then the game can retrieve all of the jurisdiction-specific permissions for the current player. This is done either from the result of the /age-gate/check call when the status field is PASS, or, if the Session was previously created and cached, invoking /session/get.
📄️ Requesting Consent For New Permissions
After a player has received a session with permissions, they may want to enable additional permissions. Permissions may be disabled for reasons such as
📄️ Account System Integration
Some studios have a common Account system that spans across multiple games. It is often desirable in these situations to integrate an age gate and to handle Verifiable Parental Consent (VPC) directly in the Account creation flow so that players are asked for their age only once for all games from the same publisher.
📄️ Multi-Product Approval
k-ID supports the ability to present multiple products for parents to approve at the same time in the consent workflow, reducing friction in the approval process so that kids can more easily experience multiple games or apps from the same publisher.
📄️ Webhooks
Webhooks let you subscribe to events happening in the k-ID Engine as they