{ "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "API attestation for Party authentication v2", "type": "object", "additionalProperties": false, "required": ["iss", "aud", "jti", "login_attempt_id", "oidc_issuer", "oidc_subject", "auth_time", "iat", "exp"], "properties": { "iss": {"const": "api"}, "aud": {"const": "party_governance.authentication.v2"}, "jti": {"$ref": "#/$defs/UUID"}, "login_attempt_id": {"$ref": "#/$defs/UUID"}, "oidc_issuer": {"type": "string", "minLength": 1, "maxLength": 2048}, "oidc_subject": {"type": "string", "minLength": 1, "maxLength": 2048}, "auth_time": {"type": "integer", "minimum": 0, "maximum": 9007199254740991}, "iat": {"type": "integer", "minimum": 0, "maximum": 9007199254740991}, "exp": {"type": "integer", "minimum": 1, "maximum": 9007199254740991}, "name": {"type": "string", "minLength": 1, "maxLength": 1024}, "email": {"type": "string", "format": "email", "maxLength": 320}, "email_verified": {"const": true}, "preferred_username": {"type": "string", "minLength": 1, "maxLength": 256} }, "dependentRequired": { "email": ["email_verified"], "email_verified": ["email"] }, "$defs": { "UUID": { "type": "string", "format": "uuid", "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$" }, "ProtectedHeader": { "type": "object", "additionalProperties": false, "required": ["alg", "typ", "kid"], "properties": { "alg": {"const": "EdDSA"}, "typ": {"const": "pharos-party-authentication-v2+jwt"}, "kid": {"type": "string", "minLength": 1, "maxLength": 128} } } } }