Skip to main content

4 posts tagged with "cdk"

View All Tags

Google Play Age Signals v0.0.4 `ageRangeSource` is now accepted

k-ID now accepts the ageRangeSource value from Google Play Age Signals v0.0.4 as the declarationType on a google-play platform age signal.

What's new

  • ageRangeSource on the google-play signal. Google Play Age Signals v0.0.4 replaced userStatus with ageRangeSource. Provide the ageRangeSource value from the Google Play age signals responses as the declarationType on your PlatformAgeSignal when you call the age gate and session endpoints.
  • Deprecated userStatus values still work. k-ID continues to accept the legacy userStatus values for stores still on the earlier schema, so signals from apps that haven't migrated are unaffected.

Documentation

Apple iOS "confirmed" age signals are now accepted

k-ID now accepts Apple's confirmed declaration type as a verified platform age signal for players on iOS 26.5 and later.

What's new

  • confirmed is a verified Apple declaration type. Starting in iOS 26.5, Apple's Age Range Service returns only selfDeclared, guardianDeclared, or confirmed, where confirmed means the age range was set using a scrutinized method such as a credit card or government ID. k-ID treats confirmed as verified, so it can suppress the age gate, satisfy verification thresholds, and record an ageVerification.
  • Deprecated types still work. Apple deprecated paymentChecked, governmentIDChecked, guardianPaymentChecked, and guardianGovernmentIDChecked. k-ID continues to accept these for backwards compatibility, so signals from earlier iOS versions are unaffected.
  • selfDeclared and guardianDeclared remain unverified. They don't bypass age verification requirements.

Documentation

Mobile Integration Guidance for Widgets and Age Verification

We've updated the documentation to clarify how k-ID is best integrated on mobile: for the age gate and consent steps, a natively built UX gives players the most seamless experience, and web embeds such as the age verification and age assurance URLs are displayed through system browser surfaces.

What's New

Mobile Guidance for Age Gate and End-to-End Widgets

The age gate and end-to-end widgets are fully supported on mobile. For the age gate and consent steps, we encourage building the UX natively with the custom workflow, following the CDK UX guidelines, for the most brand-integrated experience.

The age verification and age assurance URLs returned by the k-ID API are displayed the same way. See the mobile apps guide for the specific endpoints and challenge types.

Reworked Mobile Apps Guide

The Mobile apps guide has been re-centered on age verification, the most common web embed on mobile:

Default Browser Method

A default external browser method has been documented under the mobile implementation methods. It works on both Android (Intent.ACTION_VIEW) and iOS (UIApplication.open), fully supports AgeKeys, and returns focus to your app through the redirectUrl callback.

Device Orientation Guidance

Age verification works best in portrait orientation. Because in-app browser surfaces inherit your app's orientation lock, apps with a locked landscape orientation should open the verification URL in the default external browser. The browser manages its own orientation, so users can rotate to portrait, and the redirectUrl callback returns them to your app when the flow completes.

Updated Documentation

Next Steps

  • If you're integrating on mobile, consider building your age gate and consent UX natively using the custom workflow and CDK UX guidelines for the most seamless experience
  • Use the default browser method for landscape-locked apps when displaying verification URLs

Platform age signals documentation

We've published end-to-end documentation for platform age signals: how Apple iOS, Google Play, Xbox, Meta Horizon, and k-ID age data flows into k-ID, when the age gate can be skipped, and how verified versus unverified signals interact with high-risk permissions and age assurance.

What's New

CDK — Platform age signals

  • Platform age signals — Quick integration paths, API map, recommended request sequence, how POST /age-gate/check uses a platform signal, supported platforms and verified declaration types, and verified versus unverified signal behavior.
  • Platform signal details — Per-platform field shapes, how to obtain each native signal, endpoint-by-endpoint notes (get-requirements, check, get-default-permissions, session/get, get-platform-age-range, session/upgrade), validation, age conflicts, and k-id signal rules.

API reference (OpenAPI)

Descriptions for session upgrade, AgeVerification, and platformAgeSignal now use verified platform signal wording consistently with the docs above.

Documentation