ai.newnal.illi.account.getAttestationNonce
Issue a server nonce (5 minutes) that a client binds into its attestation before calling account.requestPDNCreationGrant, account.parent.signIn, account.family.signIn or device.requestOnboardingCode. The nonce is an attestation session: the attestation bound to it may be presented again for the same client kind and subject until it expires; a failed verification ends the session. Devices put it in the Android key-attestation challenge of a key provisioned through Newnal's RKP; family apps pass it to Play Integrity or App Attest. No session required.
Details · procedure
| Kind | procedure |
|---|---|
| Authority | account.illi.newnal.ai |
| Indexed |
Checks
Validunlimited-stringdefs.main.input.schema.properties.clientNo maxLength, maxGraphemes or format limits this string.unlimited-stringdefs.main.output.schema.properties.nonceNo maxLength, maxGraphemes or format limits this string.
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "Issue a server nonce (5 minutes) that a client binds into its attestation before calling account.requestPDNCreationGrant, account.parent.signIn, account.family.signIn or device.requestOnboardingCode. The nonce is an attestation session: the attestation bound to it may be presented again for the same client kind and subject until it expires; a failed verification ends the session. Devices put it in the Android key-attestation challenge of a key provisioned through Newnal's RKP; family apps pass it to Play Integrity or App Attest. No session required.",
"errors": [
{
"name": "RateLimitExceeded"
}
],
"input": {
"encoding": "application/json",
"schema": {
"properties": {
"client": {
"knownValues": [
"device",
"familyApp"
],
"type": "string"
},
"deviceId": {
"maxLength": 64,
"type": "string"
}
},
"required": [
"client"
],
"type": "object"
}
},
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"expiresAt": {
"format": "datetime",
"type": "string"
},
"nonce": {
"description": "base64url, 32 random bytes",
"type": "string"
}
},
"required": [
"nonce",
"expiresAt"
],
"type": "object"
}
},
"type": "procedure"
}
},
"id": "ai.newnal.illi.account.getAttestationNonce",
"lexicon": 1
}