Get the age policy
GET /v1/age-policy · permission identity-settings:read
Returns the environment's age policy (one resource per environment; there are no per-application overrides). If the policy was never written, the table defaults are returned (mode: off, min_age: 16, empty country table) with ETag: "0" and updated_at: null. The ETag response header carries the version to send as If-Match on PUT. Uses the identity settings permissions, since the age policy is part of the environment identity settings.
Request
This operation takes no path, query or body fields. The environment comes from the credential.
Response
200 OK with the policy and the ETag header.
{
"mode": "attestation",
"min_age": 16,
"country_min_age": {"DE": 16, "FR": 15, "IT": 14},
"country_source": "ip",
"under_age_action": "block",
"parental_consent_below": null,
"pending_consent_action": "block_sign_in",
"store_birthdate": false,
"applies_to": "self_signup",
"updated_at": "2026-10-05T09:30:00.123456Z"
}
Errors
| HTTP | code | When |
|---|---|---|
| 401 | unauthenticated |
The credential is missing, invalid or revoked. |
| 403 | insufficient_permissions |
The credential lacks the required permission. |
| 429 | rate_limited |
The rate limit was exceeded; retry after the Retry-After period. |
| 503 | service_unavailable |
A dependency is temporarily unavailable; retry after the Retry-After period. |
Example
curl https://api.eu.keenauth.com/v1/age-policy \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY"