rip.pds.account.defs
Schema Diff
+18 -2
Compatibility Analysis
Breaking Changes Detected
1 breaking change, 10 non-breaking changes.
Breaking Changes (1)
- RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "rip.pds.account.defs#accountView", src: "rip.pds.account.defs#accountView", tgt: "rip.pds.account.defs#accountView.expiresAt", kind: "prop", name: Some("expiresAt") }
Non-Breaking Changes (10)
- AddedVertex AddedVertex { vertex_id: "rip.pds.account.defs#accountView.labelKey" }
- AddedVertex AddedVertex { vertex_id: "rip.pds.account.defs#accountView.services" }
- AddedVertex AddedVertex { vertex_id: "rip.pds.account.defs#accountView.services:items" }
- AddedVertex AddedVertex { vertex_id: "rip.pds.account.defs#accountView.servicesUpdatedAt" }
- AddedVertex AddedVertex { vertex_id: "rip.pds.account.putServices#serviceEntry" }
- AddedEdge AddedEdge { src: "rip.pds.account.defs#accountView", tgt: "rip.pds.account.defs#accountView.labelKey", kind: "prop", name: Some("labelKey") }
- AddedEdge AddedEdge { src: "rip.pds.account.defs#accountView", tgt: "rip.pds.account.defs#accountView.services", kind: "prop", name: Some("services") }
- AddedEdge AddedEdge { src: "rip.pds.account.defs#accountView", tgt: "rip.pds.account.defs#accountView.servicesUpdatedAt", kind: "prop", name: Some("servicesUpdatedAt") }
- AddedEdge AddedEdge { src: "rip.pds.account.defs#accountView.services", tgt: "rip.pds.account.defs#accountView.services:items", kind: "items", name: None }
- AddedEdge AddedEdge { src: "rip.pds.account.defs#accountView.services:items", tgt: "rip.pds.account.putServices#serviceEntry", kind: "ref", name: None }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "rip.pds.account.defs#accountView.labelKey" }AddedVertex { vertex_id: "rip.pds.account.defs#accountView.services" }AddedVertex { vertex_id: "rip.pds.account.defs#accountView.services:items" }AddedVertex { vertex_id: "rip.pds.account.defs#accountView.servicesUpdatedAt" }AddedVertex { vertex_id: "rip.pds.account.putServices#serviceEntry" }
Additional Notes
- Breaking: RequiredEdgeRemoved { vertex_id: "rip.pds.account.defs#accountView", src: "rip.pds.account.defs#accountView", tgt: "rip.pds.account.defs#accountView.expiresAt", kind: "prop", name: Some("expiresAt") }
- Non-breaking: AddedEdge { src: "rip.pds.account.defs#accountView", tgt: "rip.pds.account.defs#accountView.labelKey", kind: "prop", name: Some("labelKey") }
- Non-breaking: AddedEdge { src: "rip.pds.account.defs#accountView", tgt: "rip.pds.account.defs#accountView.services", kind: "prop", name: Some("services") }
- Non-breaking: AddedEdge { src: "rip.pds.account.defs#accountView", tgt: "rip.pds.account.defs#accountView.servicesUpdatedAt", kind: "prop", name: Some("servicesUpdatedAt") }
- Non-breaking: AddedEdge { src: "rip.pds.account.defs#accountView.services", tgt: "rip.pds.account.defs#accountView.services:items", kind: "items", name: None }
- Non-breaking: AddedEdge { src: "rip.pds.account.defs#accountView.services:items", tgt: "rip.pds.account.putServices#serviceEntry", kind: "ref", name: None }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"accountView": {
5
5
"description": "An ephemeral account minted on this server.",
6
6
"properties": {
7
7
"createdAt": {
8
8
"format": "datetime",
9
9
"type": "string"
10
10
},
11
11
"deletedAt": {
12
12
"format": "datetime",
13
13
"type": "string"
14
14
},
15
15
"did": {
16
16
"format": "did",
17
17
"type": "string"
18
18
},
19
19
"didMethod": {
20
20
"description": "Which identity method the account uses.",
21
21
"knownValues": [
22
22
"plc",
23
23
"web"
24
24
],
25
25
"type": "string"
26
26
},
27
27
"expiresAt": {
28
-
"description": "When the account is deleted and its identity retired.",
28
+
"description": "When the account is deleted and its identity retired. Absent when the account never expires, which is true only for a permanent account an operator issued.",
29
29
"format": "datetime",
30
30
"type": "string"
31
31
},
32
32
"extensions": {
33
33
"description": "How many times the lifetime has already been extended.",
34
34
"type": "integer"
35
35
},
36
36
"handle": {
37
37
"format": "handle",
38
38
"type": "string"
39
39
},
40
+
"labelKey": {
41
+
"description": "Public multikey published as #atproto_label, when one is set.",
42
+
"type": "string"
43
+
},
44
+
"services": {
45
+
"description": "Service entries on the account's DID document. Present only for did:web accounts, whose document this server serves.",
46
+
"items": {
47
+
"ref": "rip.pds.account.putServices#serviceEntry",
48
+
"type": "ref"
49
+
},
50
+
"type": "array"
51
+
},
52
+
"servicesUpdatedAt": {
53
+
"description": "When the service entries last changed. Resolvers cache documents well past this server's max-age, so a recent change may not be visible downstream yet.",
54
+
"format": "datetime",
55
+
"type": "string"
56
+
},
40
57
"status": {
41
58
"description": "Why the PDS considers this account inactive: takendown, suspended, deactivated. Absent when the account is live.",
42
59
"type": "string"
43
60
}
44
61
},
45
62
"required": [
46
63
"did",
47
64
"handle",
48
65
"didMethod",
49
66
"createdAt",
50
-
"expiresAt",
51
67
"extensions"
52
68
],
53
69
"type": "object"
54
70
}
55
71
},
56
72
"id": "rip.pds.account.defs",
57
73
"lexicon": 1
58
74
}