GCE 2.14 Release Notes

Product API: Webhooks for Primary Verification

We’ve made improvements to how verification events are handled during API calls to reduce confusion and ensure smoother integration. 🔥 Here’s what you need to know:

How Age Verification API Worked Previously

Previously, when an Age Verification API call was initiated, a unique verificationId was generated for each request. In flows involving parental attestation, the parent might also need to complete a verification step. This process therefore potentially triggered two Verification.Result webhook events:

  • One for the main (child) verification, and

  • Another for the parent verification.

To manage this, you had to filter webhook events to match the verificationId of the main verification and ignore the parent-related event. However, we realised that non-matching results created ambiguity — it was tricky to determine whether the issue stemmed from a database failure or an unmapped parent verification flow.

What has Changed — Age Verification Flows

For Age Verification flows, you will now receive only one Verification.Result webhook event 🪝— the one associated with the main verification. The Verification.Result event for the parent verification (if applicable) will no longer be sent, simplifying the process for you. 👍 Now, it’s easier than ever to correlate verification events!

To test the new Age Verification flow, first ensure that your webhook is configured in your Product. Then, make an API call to /age-verification/perform-access-age-verification. Upon completion of the parental attestation flow, you will receive two webhook events: Challenge.StateChange and a single Verification.Result.

What has Changed — VPC Flows

For Verifiable Parental Consent (VPC) flows, the Verification.Result webhook event 🪝 has been removed entirely. Now, you’ll only receive the Challenge.StateChange and Session.ChangePermissions webhook events, further streamlining your API calls. 📈

To test the new VPC flow, start by ensuring your webhook is properly configured in your Product. Next, make an API call to /age-gate/check. Upon completion of the VPC flow, you will receive 3 webhook events: 2 Challenge.StateChange events and 1 Session.ChangePermissions event. Now, we do not expect to see any Verification.Result event.

These updates eliminate ambiguity and ensure you receive only necessary and relevant data, creating a more consistent and streamlined experience for you.

Family Portal: Age Attestation Enhancement

Age verification gets a precision upgrade ✨ with the new Claimed Date of Birth (DOB) feature in Parental Attestation. Here's what you can do with this new functionality:

Pass DOB Directly Through the Age Verification Flow

You can now pass a user's claimed DOB as an alternative to Claimed Age in the Age Verification flow. This means that in scenarios where Parental Attestation is included as a verification method, the attestation claim can now include the user's DOB.

Enable More Precise Age Verification

With this enhancement, users that go through Parental Attestation can "age up" on their actual birthdate rather than relying on a generic “default date” like January 1st. This provides higher precision and confidence 💪 in the Age Verification flow. We’re thrilled to make age verification smarter, more accurate, and better suited to meet global compliance needs. 🎉

On that note, this improvement is particularly valuable for:

  • South Korean Compliance: In South Korea, one of the regulator-recommended methods for age verification is collecting users’ legal date of birth (an age gate slider, for example, generally wouldn’t be considered sufficient). The Claimed DOB feature aligns perfectly with this compliance requirement.

  • Age-Restricted Content Providers: For services offering age-restricted content, this feature delivers more precise and trustworthy age verification.

Test the new Claimed DOB feature by making an API call to /age-verification/perform-access-age-verification. Delete“claimedAge”, use a “claimedDateOfBirth” that is below the Civil Age for the selected country to trigger Parental Attestation, then select either “age” or “age category” criteria. A successful Code 200 response will include a URL link to complete the parental approval flow. For complete API testing instructions, visit docs.k-id.com

More ways we're making things better

This week, we resolved several issues in the Family Portal to enhance functionality and improve user experience. Here’s what we fixed:

Improved Scrolling Behaviour in Permissions Modal 🐭

We’ve fixed a minor issue where scrolling could get a bit wonky in the Manage Permissions modal on Mac Chrome. Now, you can scroll up to the last permission item without any extra scrolling below the “Confirm” and “Cancel” buttons.

Streamlined Parental Age Re-Verification for Different Markets 🌎

We’ve made it easier for parents to manage consent across different markets. If a parent has verified their age in one market and wants to grant consent to another child in a market with a higher civil age, they’ll now be prompted to re-verify their age. For example, if a parent verified their age to grant permission for their first child in Canada (civil age: 18), and later wants to verify another child in British Columbia (civil age: 19), they’ll need to re-verify their age before proceeding.

Fixed "Application Error" in Germany & Denmark 🛠️

We’ve fixed an issue that caused an "Application Error" when parents tried to complete verification in Germany or Denmark if they were already verified in another jurisdiction.

Resolved Freezing Issue with "Manage Permission" Button 🔓

We’ve resolved a bug that caused the "Manage Permission" button to freeze after consecutive edits in Family Management. Now, parents can edit permissions as many times as they need without any hiccups!