app.didpic.actor.defs
Schema Diff
+31 -2
Compatibility Analysis
Backward Compatible
Backward compatible. 6 non-breaking changes.
Non-Breaking Changes (6)
- AddedVertex AddedVertex { vertex_id: "app.didpic.actor.defs#feedPref" }
- AddedVertex AddedVertex { vertex_id: "app.didpic.actor.defs#feedPref.value" }
- AddedVertex AddedVertex { vertex_id: "app.didpic.actor.defs#labelPrefs" }
- AddedVertex AddedVertex { vertex_id: "app.didpic.actor.defs#labelPrefs.labels" }
- AddedEdge AddedEdge { src: "app.didpic.actor.defs#feedPref", tgt: "app.didpic.actor.defs#feedPref.value", kind: "prop", name: Some("value") }
- AddedEdge AddedEdge { src: "app.didpic.actor.defs#labelPrefs", tgt: "app.didpic.actor.defs#labelPrefs.labels", kind: "prop", name: Some("labels") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "app.didpic.actor.defs#feedPref" }AddedVertex { vertex_id: "app.didpic.actor.defs#feedPref.value" }AddedVertex { vertex_id: "app.didpic.actor.defs#labelPrefs" }AddedVertex { vertex_id: "app.didpic.actor.defs#labelPrefs.labels" }
Additional Notes
- Non-breaking: AddedEdge { src: "app.didpic.actor.defs#feedPref", tgt: "app.didpic.actor.defs#feedPref.value", kind: "prop", name: Some("value") }
- Non-breaking: AddedEdge { src: "app.didpic.actor.defs#labelPrefs", tgt: "app.didpic.actor.defs#labelPrefs.labels", kind: "prop", name: Some("labels") }
1
1
{
2
2
"id": "app.didpic.actor.defs",
3
3
"defs": {
4
+
"feedPref": {
5
+
"type": "object",
6
+
"required": [
7
+
"value"
8
+
],
9
+
"properties": {
10
+
"value": {
11
+
"type": "string",
12
+
"knownValues": [
13
+
"home",
14
+
"discover"
15
+
]
16
+
}
17
+
},
18
+
"description": "Last-selected home feed."
19
+
},
20
+
"labelPrefs": {
21
+
"type": "object",
22
+
"required": [
23
+
"labels"
24
+
],
25
+
"properties": {
26
+
"labels": {
27
+
"type": "unknown",
28
+
"description": "Map of label id to action ('hide' | 'blur' | 'show')."
29
+
}
30
+
},
31
+
"description": "Per-label moderation preferences."
32
+
},
4
33
"profileView": {
5
34
"type": "object",
6
35
"required": [
7
36
"did"
8
37
],
9
38
"properties": {
10
39
"did": {
11
40
"type": "string",
12
41
"format": "did"
13
42
},
14
43
"handle": {
15
44
"type": "string",
16
45
"format": "handle"
17
46
},
18
47
"avatarCid": {
19
48
"type": "string",
20
49
"format": "cid"
21
50
},
22
51
"bannerCid": {
23
52
"type": "string",
24
53
"format": "cid"
25
54
},
26
55
"indexedAt": {
27
56
"type": "string",
28
57
"format": "datetime"
29
58
},
30
59
"likesCount": {
31
60
"type": "integer",
32
61
"minimum": 0
33
62
},
34
63
"postsCount": {
35
64
"type": "integer",
36
65
"minimum": 0
37
66
},
38
67
"description": {
39
68
"type": "string",
40
69
"maxLength": 2560,
41
70
"maxGraphemes": 256
42
71
},
43
72
"displayName": {
44
73
"type": "string",
45
74
"maxLength": 640,
46
75
"maxGraphemes": 64
47
76
},
48
77
"followsCount": {
49
78
"type": "integer",
50
79
"minimum": 0
51
80
},
52
81
"followersCount": {
53
82
"type": "integer",
54
83
"minimum": 0
55
84
},
56
85
"viewerFollowing": {
57
86
"type": "string",
58
87
"format": "at-uri",
59
88
"description": "URI of the viewer's follow record for this actor, if any."
60
89
}
61
90
},
62
-
"description": "Full profile view returned by app.didpic.actor.getProfile."
91
+
"description": "Full profile view."
63
92
},
64
93
"profileBasic": {
65
94
"type": "object",
66
95
"required": [
67
96
"did"
68
97
],
69
98
"properties": {
70
99
"did": {
71
100
"type": "string",
72
101
"format": "did"
73
102
},
74
103
"handle": {
75
104
"type": "string",
76
105
"format": "handle"
77
106
},
78
107
"avatarCid": {
79
108
"type": "string",
80
109
"format": "cid"
81
110
},
82
111
"displayName": {
83
112
"type": "string",
84
113
"maxLength": 640,
85
114
"maxGraphemes": 64
86
115
},
87
116
"viewerFollowing": {
88
117
"type": "string",
89
118
"format": "at-uri",
90
119
"description": "URI of the viewer's follow record for this actor, if any."
91
120
}
92
121
},
93
-
"description": "Minimal profile info embedded inside other views. `viewerFollowing` is populated where the calling endpoint can cheaply join viewer follow state (e.g. graph.getFollows/getFollowers); it may be absent elsewhere. `handle` comes from the user's DID document (kept in sync via jetstream identity events) and is absent only for DIDs we've never been able to resolve."
122
+
"description": "Minimal profile info embedded inside other views."
94
123
}
95
124
},
96
125
"$type": "com.atproto.lexicon.schema",
97
126
"lexicon": 1
98
127
}