ai.newnal.illi.account.parent.signIn

illi-service.newnal.id

Schema Diff

+2 -2

From

CID
bafyreihimz7k7xg...
Indexed At
2026-10-21 04:16 UTC
View this version

To

CID
bafyreiaozlj6yzl...
Indexed At
2026-10-23 07:24 UTC
View this version

Compatibility Analysis

Backward Compatible

No changes detected.

1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "main": {
5 -
      "description": "Sign a parent account in to ILLI from the device without a screen: the device presents the parent's scoped deviceApp app password (which it keeps) and its attestation; the Service Node opens the delegated session, joins the account to the service sphere on first use and returns the device-app session. Used at first connection and at every re-login (D-62).",
5 +
      "description": "Sign a parent account in to ILLI from the device without a screen: the device presents the parent's scoped deviceApp app password (which it keeps) and its attestation; the Service Agent Node opens the delegated session, joins the account to the service sphere on first use and returns the device-app session. Used at first connection and at every re-login.",
6 6
      "errors": [
7 7
        {
8 8
          "name": "InvalidAppPassword"
9 9
        },
10 10
        {
11 11
          "name": "WrongScope"
12 12
        },
13 13
        {
14 14
          "name": "InvalidAttestation"
15 15
        },
16 16
        {
17 17
          "name": "DeviceRevoked"
18 18
        },
19 19
        {
20 20
          "name": "ParentLimitReached"
21 21
        },
22 22
        {
23 23
          "name": "ParentAlreadyLinked"
24 24
        },
25 25
        {
26 26
          "name": "RateLimitExceeded"
27 27
        }
28 28
      ],
29 29
      "input": {
30 30
        "encoding": "application/json",
31 31
        "schema": {
32 32
          "properties": {
33 33
            "appPassword": {
34 34
              "type": "string"
35 35
            },
36 36
            "attestation": {
37 -
              "description": "Device attestation (D-63): production = an Android key-attestation statement whose certificate chain roots at Newnal's RKP CA and whose challenge is the nonce from account.getAttestationNonce, encoded as described in dev-spec 06 ยง4; PoC = mock:device:<secret>.",
37 +
              "description": "Device attestation: production = an Android key-attestation statement whose certificate chain roots at Newnal's RKP CA and whose challenge is the nonce from account.getAttestationNonce, as a compact JWS with the x5c certificate chain; PoC = mock:device:<secret>.",
38 38
              "type": "string"
39 39
            },
40 40
            "deviceId": {
41 41
              "maxLength": 64,
42 42
              "type": "string"
43 43
            },
44 44
            "did": {
45 45
              "format": "did",
46 46
              "type": "string"
47 47
            },
48 48
            "slot": {
49 49
              "maximum": 2,
50 50
              "minimum": 1,
51 51
              "type": "integer"
52 52
            }
53 53
          },
54 54
          "required": [
55 55
            "deviceId",
56 56
            "did",
57 57
            "appPassword",
58 58
            "attestation"
59 59
          ],
60 60
          "type": "object"
61 61
        }
62 62
      },
63 63
      "output": {
64 64
        "encoding": "application/json",
65 65
        "schema": {
66 66
          "properties": {
67 67
            "deviceStatus": {
68 68
              "knownValues": [
69 69
                "registered",
70 70
                "awaitingLink",
71 71
                "active",
72 72
                "unlinked",
73 73
                "retired"
74 74
              ],
75 75
              "type": "string"
76 76
            },
77 77
            "did": {
78 78
              "format": "did",
79 79
              "type": "string"
80 80
            },
81 81
            "expiresAt": {
82 82
              "format": "datetime",
83 83
              "type": "string"
84 84
            },
85 85
            "handle": {
86 86
              "format": "handle",
87 87
              "type": "string"
88 88
            },
89 89
            "token": {
90 90
              "description": "The device-app session token for native clients; web clients receive it as the illi_session cookie.",
91 91
              "type": "string"
92 92
            }
93 93
          },
94 94
          "required": [
95 95
            "did",
96 96
            "handle"
97 97
          ],
98 98
          "type": "object"
99 99
        }
100 100
      },
101 101
      "type": "procedure"
102 102
    }
103 103
  },
104 104
  "id": "ai.newnal.illi.account.parent.signIn",
105 105
  "lexicon": 1
106 106
}

Compare Other Versions

Lexicon Garden

@