billing
team

Auth Age Check

Server-side age verification (COUNSEL-C5).

2026-05-28 (H-14 SECURITY_AUDIT P3): response shape narrowed to {minor, blocked, consent_required} ONLY — no exact age. The prior {"age": <int>} payload made this endpoint a DOB-oracle (~365 requests via binary search confirm any birthdate). Audit trail hash upgraded from Python hash() (non-cryptographic, trivially-reversible across a 36k-day search space) to sha256(dob).hexdigest(). Audit §H-14 lines 209-215.

Returns {minor: bool, consent_required: bool, blocked: bool}

Called pre-registration from the DOB field in the signup modal, so cannot require auth. Rate-limited per IP (10/min) to block DOB enumeration / date-oracle attacks. CISO P1-1.

get/api/auth/age-check

Request

  • Base URL: https://www.oxfordledge.com (the document declares no server; this is the origin it was published from)
  • URL: https://www.oxfordledge.com/api/auth/age-check
  • Auth: none declared

Query parameters

dobstring

Response

Successful Response

AuthActionResponse required

Loose response_model for auth routes (signin/register/oauth callbacks). Multi-shape success vs error envelopes; FE branches on specific keys via the public typed wrappers.

Changes

No recorded changes to this operation across all 1 revision of this API.