ai.newnal.illi.device.link
Schema Diff
+10 -0
Compatibility Analysis
Backward Compatible
Backward compatible. 4 non-breaking changes.
Non-Breaking Changes (4)
- AddedVertex AddedVertex { vertex_id: "ai.newnal.illi.device.link:input.displayName" }
- AddedVertex AddedVertex { vertex_id: "ai.newnal.illi.device.link:input.relationship" }
- AddedEdge AddedEdge { src: "ai.newnal.illi.device.link:input", tgt: "ai.newnal.illi.device.link:input.displayName", kind: "prop", name: Some("displayName") }
- AddedEdge AddedEdge { src: "ai.newnal.illi.device.link:input", tgt: "ai.newnal.illi.device.link:input.relationship", kind: "prop", name: Some("relationship") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "ai.newnal.illi.device.link:input.displayName" }AddedVertex { vertex_id: "ai.newnal.illi.device.link:input.relationship" }
Additional Notes
- Non-breaking: AddedEdge { src: "ai.newnal.illi.device.link:input", tgt: "ai.newnal.illi.device.link:input.displayName", kind: "prop", name: Some("displayName") }
- Non-breaking: AddedEdge { src: "ai.newnal.illi.device.link:input", tgt: "ai.newnal.illi.device.link:input.relationship", kind: "prop", name: Some("relationship") }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"main": {
5
5
"description": "The caller enters the device's onboarding code and becomes the root admin: creates the home and the family sphere on the caller's PDN with parent 1 and the caller as first members (D-27).",
6
6
"errors": [
7
7
{
8
8
"name": "InvalidOnboardingCode"
9
9
},
10
10
{
11
11
"name": "CodeExpired"
12
12
},
13
13
{
14
14
"name": "DeviceAlreadyLinked"
15
15
},
16
16
{
17
17
"name": "ScopeMissing"
18
18
},
19
19
{
20
20
"name": "PdsUnavailable"
21
21
},
22
22
{
23
23
"name": "RateLimitExceeded"
24
24
}
25
25
],
26
26
"input": {
27
27
"encoding": "application/json",
28
28
"schema": {
29
29
"properties": {
30
30
"code": {
31
31
"maxLength": 16,
32
32
"type": "string"
33
33
},
34
+
"displayName": {
35
+
"description": "The root admin's name as the family and the device see it (e.g. 김은수). Required by the family app; optional on the wire for compatibility.",
36
+
"maxLength": 64,
37
+
"type": "string"
38
+
},
34
39
"homeId": {
35
40
"format": "tid",
36
41
"type": "string"
37
42
},
38
43
"homeName": {
39
44
"maxLength": 64,
40
45
"type": "string"
46
+
},
47
+
"relationship": {
48
+
"description": "The root admin's relationship to the parents (e.g. 큰아들).",
49
+
"maxLength": 32,
50
+
"type": "string"
41
51
}
42
52
},
43
53
"required": [
44
54
"code",
45
55
"homeName"
46
56
],
47
57
"type": "object"
48
58
}
49
59
},
50
60
"output": {
51
61
"encoding": "application/json",
52
62
"schema": {
53
63
"properties": {
54
64
"device": {
55
65
"ref": "ai.newnal.illi.home.defs#deviceView",
56
66
"type": "ref"
57
67
},
58
68
"homeId": {
59
69
"format": "tid",
60
70
"type": "string"
61
71
},
62
72
"role": {
63
73
"knownValues": [
64
74
"rootAdmin"
65
75
],
66
76
"type": "string"
67
77
},
68
78
"sphere": {
69
79
"type": "string"
70
80
}
71
81
},
72
82
"required": [
73
83
"homeId",
74
84
"sphere",
75
85
"role",
76
86
"device"
77
87
],
78
88
"type": "object"
79
89
}
80
90
},
81
91
"type": "procedure"
82
92
}
83
93
},
84
94
"id": "ai.newnal.illi.device.link",
85
95
"lexicon": 1
86
96
}