social.colibri.beta.actor.putSettings
Schema Diff
+7 -4
Compatibility Analysis
Breaking Changes Detected
2 breaking changes, 5 non-breaking changes.
Breaking Changes (2)
- KindChanged KindChanged { vertex_id: "social.colibri.beta.actor.putSettings:input.gifFavorites:items", old_kind: "string", new_kind: "ref" }
- ConstraintAdded ConstraintAdded { vertex_id: "social.colibri.beta.actor.putSettings:input.gifFavorites:items", sort: "ref", value: "social.colibri.beta.embed.defs#gifView" }
Non-Breaking Changes (5)
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.actor.putSettings:input.shareActivity" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.embed.defs#gifView" }
- AddedEdge AddedEdge { src: "social.colibri.beta.actor.putSettings:input", tgt: "social.colibri.beta.actor.putSettings:input.shareActivity", kind: "prop", name: Some("shareActivity") }
- AddedEdge AddedEdge { src: "social.colibri.beta.actor.putSettings:input.gifFavorites:items", tgt: "social.colibri.beta.embed.defs#gifView", kind: "ref", name: None }
- ConstraintRemoved ConstraintRemoved { vertex_id: "social.colibri.beta.actor.putSettings:input.gifFavorites:items", sort: "maxLength" }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "social.colibri.beta.actor.putSettings:input.shareActivity" }AddedVertex { vertex_id: "social.colibri.beta.embed.defs#gifView" }
Constraint Changes
- ConstraintAdded ConstraintAdded { vertex_id: "social.colibri.beta.actor.putSettings:input.gifFavorites:items", sort: "ref", value: "social.colibri.beta.embed.defs#gifView" }
- ConstraintRemoved ConstraintRemoved { vertex_id: "social.colibri.beta.actor.putSettings:input.gifFavorites:items", sort: "maxLength" }
Additional Notes
- Breaking: KindChanged { vertex_id: "social.colibri.beta.actor.putSettings:input.gifFavorites:items", old_kind: "string", new_kind: "ref" }
- Non-breaking: AddedEdge { src: "social.colibri.beta.actor.putSettings:input", tgt: "social.colibri.beta.actor.putSettings:input.shareActivity", kind: "prop", name: Some("shareActivity") }
- Non-breaking: AddedEdge { src: "social.colibri.beta.actor.putSettings:input.gifFavorites:items", tgt: "social.colibri.beta.embed.defs#gifView", kind: "ref", name: None }
1
1
{
2
2
"id": "social.colibri.beta.actor.putSettings",
3
3
"defs": {
4
4
"main": {
5
5
"type": "procedure",
6
6
"input": {
7
7
"schema": {
8
8
"type": "object",
9
9
"properties": {
10
10
"gifFavorites": {
11
11
"type": "array",
12
12
"items": {
13
-
"type": "string",
14
-
"maxLength": 256,
15
-
"description": "A GIF identifier."
13
+
"ref": "social.colibri.beta.embed.defs#gifView",
14
+
"type": "ref"
16
15
},
17
-
"description": "GIFs saved from the picker. Absent leaves the current value unchanged."
16
+
"description": "GIFs saved from the picker, stored whole. Absent leaves the current value unchanged."
17
+
},
18
+
"shareActivity": {
19
+
"type": "boolean",
20
+
"description": "Whether the AppView may show what the user is listening to. Absent leaves the current value unchanged."
18
21
},
19
22
"communityOrder": {
20
23
"type": "array",
21
24
"items": {
22
25
"type": "string",
23
26
"format": "did",
24
27
"description": "A community."
25
28
},
26
29
"description": "Communities in preferred sidebar order. Absent leaves the current value unchanged."
27
30
},
28
31
"notificationLevel": {
29
32
"type": "string",
30
33
"description": "Which messages produce a notification. Absent leaves the current value unchanged.",
31
34
"knownValues": [
32
35
"all",
33
36
"mentionsAndReplies"
34
37
]
35
38
}
36
39
}
37
40
},
38
41
"encoding": "application/json"
39
42
},
40
43
"errors": [
41
44
{
42
45
"name": "AuthRequired",
43
46
"description": "The request has no valid service auth."
44
47
},
45
48
{
46
49
"name": "InvalidRequest",
47
50
"description": "A field is present but does not hold an allowed value."
48
51
}
49
52
],
50
53
"output": {
51
54
"schema": {
52
55
"type": "object",
53
56
"required": [
54
57
"preferences"
55
58
],
56
59
"properties": {
57
60
"preferences": {
58
61
"ref": "social.colibri.beta.actor.defs#preferences",
59
62
"type": "ref",
60
63
"description": "The requesting user's settings, after the update."
61
64
}
62
65
}
63
66
},
64
67
"encoding": "application/json"
65
68
},
66
69
"description": "Pushes the requesting user's social.colibri.beta.actor.settings record to the AppView, so it takes effect immediately instead of waiting for a sync notification. The client writes the record to its own personal space first, then calls this. An absent field leaves the current value unchanged."
67
70
}
68
71
},
69
72
"$type": "com.atproto.lexicon.schema",
70
73
"lexicon": 1
71
74
}