social.colibri.channel
Schema Diff
+5 -1
Compatibility Analysis
Backward Compatible
Backward compatible. 2 non-breaking changes.
Non-Breaking Changes (2)
- AddedVertex AddedVertex { vertex_id: "social.colibri.channel:body.linkEmbeds" }
- AddedEdge AddedEdge { src: "social.colibri.channel:body", tgt: "social.colibri.channel:body.linkEmbeds", kind: "prop", name: Some("linkEmbeds") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "social.colibri.channel:body.linkEmbeds" }
Additional Notes
- Non-breaking: AddedEdge { src: "social.colibri.channel:body", tgt: "social.colibri.channel:body.linkEmbeds", kind: "prop", name: Some("linkEmbeds") }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"main": {
5
5
"description": "A channel that belongs to a category on Colibri.",
6
6
"key": "tid",
7
7
"record": {
8
8
"properties": {
9
9
"$type": {
10
10
"description": "The type of the record.",
11
11
"format": "nsid",
12
12
"type": "string"
13
13
},
14
14
"allowedMembers": {
15
15
"description": "Member DIDs explicitly allowed to post in this channel, in addition to allowedRoles.",
16
16
"items": {
17
17
"format": "did",
18
18
"type": "string"
19
19
},
20
20
"type": "array"
21
21
},
22
22
"allowedRoles": {
23
23
"description": "Role record-keys allowed to post in this channel. Empty/absent means no role restriction.",
24
24
"items": {
25
25
"format": "record-key",
26
26
"type": "string"
27
27
},
28
28
"type": "array"
29
29
},
30
30
"category": {
31
31
"description": "The category this channel belongs to.",
32
32
"format": "record-key",
33
33
"type": "string"
34
34
},
35
35
"community": {
36
36
"description": "The record key of the community this channel belongs to.",
37
37
"format": "record-key",
38
38
"type": "string"
39
39
},
40
40
"description": {
41
41
"default": "",
42
42
"description": "A description of the channel.",
43
43
"maxLength": 256,
44
44
"type": "string"
45
45
},
46
+
"linkEmbeds": {
47
+
"description": "Whether link previews are displayed in this channel. Absent means the community default applies.",
48
+
"type": "boolean"
49
+
},
46
50
"migratedFrom": {
47
51
"description": "Set on a channel created by migrating a legacy community. Points at the legacy channel record this one replaces, so message history for the old channel can be surfaced here.",
48
52
"format": "at-uri",
49
53
"type": "string"
50
54
},
51
55
"name": {
52
56
"default": "New channel",
53
57
"description": "The name of the channel.",
54
58
"maxLength": 32,
55
59
"minLength": 1,
56
60
"type": "string"
57
61
},
58
62
"ownerOnly": {
59
63
"default": false,
60
64
"description": "Whether the owner of the community is the only one allowed to post in the channel or not.",
61
65
"type": "boolean"
62
66
},
63
67
"type": {
64
68
"description": "The type of the channel. Colibri provides social.colibri.channel.text, social.colibri.channel.forum, social.colibri.channel.link, and social.colibri.channel.voice.",
65
69
"format": "nsid",
66
70
"type": "string"
67
71
}
68
72
},
69
73
"required": [
70
74
"name",
71
75
"type",
72
76
"category",
73
77
"community"
74
78
],
75
79
"type": "object"
76
80
},
77
81
"type": "record"
78
82
}
79
83
},
80
84
"id": "social.colibri.channel",
81
85
"lexicon": 1,
82
-
"revision": 4
86
+
"revision": 5
83
87
}