social.colibri.community.defs

colibri.social

Schema Diff

+6 -0

From

CID
bafyreie76f7eaxm...
Indexed At
2026-07-29 16:12 UTC
View this version

To

CID
bafyreif6plmc24j...
Indexed At
2026-08-15 22:24 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 4 non-breaking changes.

Non-Breaking Changes (4)
  • AddedVertex AddedVertex { vertex_id: "social.colibri.community.defs#channelView.linkEmbeds" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.community.defs#communityInfo.linkEmbeds" }
  • AddedEdge AddedEdge { src: "social.colibri.community.defs#channelView", tgt: "social.colibri.community.defs#channelView.linkEmbeds", kind: "prop", name: Some("linkEmbeds") }
  • AddedEdge AddedEdge { src: "social.colibri.community.defs#communityInfo", tgt: "social.colibri.community.defs#communityInfo.linkEmbeds", kind: "prop", name: Some("linkEmbeds") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "social.colibri.community.defs#channelView.linkEmbeds" }
  • AddedVertex { vertex_id: "social.colibri.community.defs#communityInfo.linkEmbeds" }

Additional Notes

  • Non-breaking: AddedEdge { src: "social.colibri.community.defs#channelView", tgt: "social.colibri.community.defs#channelView.linkEmbeds", kind: "prop", name: Some("linkEmbeds") }
  • Non-breaking: AddedEdge { src: "social.colibri.community.defs#communityInfo", tgt: "social.colibri.community.defs#communityInfo.linkEmbeds", kind: "prop", name: Some("linkEmbeds") }
1 1
{
2 2
  "id": "social.colibri.community.defs",
3 3
  "defs": {
4 4
    "roleView": {
5 5
      "type": "object",
6 6
      "required": [
7 7
        "uri",
8 8
        "name",
9 9
        "permissions",
10 10
        "position"
11 11
      ],
12 12
      "properties": {
13 13
        "uri": {
14 14
          "type": "string",
15 15
          "format": "at-uri"
16 16
        },
17 17
        "name": {
18 18
          "type": "string"
19 19
        },
20 20
        "color": {
21 21
          "type": "string"
22 22
        },
23 23
        "hoisted": {
24 24
          "type": "boolean"
25 25
        },
26 26
        "position": {
27 27
          "type": "integer"
28 28
        },
29 29
        "protected": {
30 30
          "type": "boolean"
31 31
        },
32 32
        "mentionable": {
33 33
          "type": "boolean"
34 34
        },
35 35
        "permissions": {
36 36
          "type": "array",
37 37
          "items": {
38 38
            "type": "string"
39 39
          }
40 40
        },
41 41
        "channelOverrides": {
42 42
          "type": "array",
43 43
          "items": {
44 44
            "ref": "lex:social.colibri.community.defs#channelOverrideView",
45 45
            "type": "ref"
46 46
          }
47 47
        }
48 48
      }
49 49
    },
50 50
    "memberView": {
51 51
      "type": "object",
52 52
      "required": [
53 53
        "did",
54 54
        "handle",
55 55
        "roles",
56 56
        "data"
57 57
      ],
58 58
      "properties": {
59 59
        "vc": {
60 60
          "type": "string",
61 61
          "format": "at-uri",
62 62
          "description": "AT-URI of the voice channel the member is currently connected to, if any."
63 63
        },
64 64
        "did": {
65 65
          "type": "string",
66 66
          "format": "did"
67 67
        },
68 68
        "data": {
69 69
          "ref": "lex:social.colibri.actor.defs#actorData",
70 70
          "type": "ref"
71 71
        },
72 72
        "roles": {
73 73
          "type": "array",
74 74
          "items": {
75 75
            "type": "string",
76 76
            "format": "at-uri"
77 77
          }
78 78
        },
79 79
        "handle": {
80 80
          "type": "string",
81 81
          "format": "handle"
82 82
        },
83 83
        "vcMuted": {
84 84
          "type": "boolean",
85 85
          "description": "Whether the member's microphone is muted in the voice channel."
86 86
        },
87 87
        "vcDeafened": {
88 88
          "type": "boolean",
89 89
          "description": "Whether the member is deafened in the voice channel."
90 90
        },
91 91
        "vcServerMuted": {
92 92
          "type": "boolean",
93 93
          "description": "Whether the member has been server-muted by a moderator in the voice channel."
94 94
        },
95 95
        "vcServerDeafened": {
96 96
          "type": "boolean",
97 97
          "description": "Whether the member has been server-deafened by a moderator in the voice channel."
98 98
        }
99 99
      },
100 100
      "description": "A community member, hydrated with their actor data."
101 101
    },
102 102
    "channelView": {
103 103
      "type": "object",
104 104
      "required": [
105 105
        "uri",
106 106
        "name",
107 107
        "type",
108 108
        "category"
109 109
      ],
110 110
      "properties": {
111 111
        "uri": {
112 112
          "type": "string",
113 113
          "format": "at-uri"
114 114
        },
115 115
        "name": {
116 116
          "type": "string"
117 117
        },
118 118
        "type": {
119 119
          "type": "string",
120 120
          "format": "nsid"
121 121
        },
122 122
        "category": {
123 123
          "type": "string",
124 124
          "format": "at-uri"
125 125
        },
126 126
        "ownerOnly": {
127 127
          "type": "boolean"
128 128
        },
129 +
        "linkEmbeds": {
130 +
          "type": "boolean"
131 +
        },
129 132
        "description": {
130 133
          "type": "string"
131 134
        },
132 135
        "allowedRoles": {
133 136
          "type": "array",
134 137
          "items": {
135 138
            "type": "string",
136 139
            "format": "at-uri"
137 140
          }
138 141
        },
139 142
        "allowedMembers": {
140 143
          "type": "array",
141 144
          "items": {
142 145
            "type": "string",
143 146
            "format": "did"
144 147
          }
145 148
        }
146 149
      }
147 150
    },
148 151
    "categoryView": {
149 152
      "type": "object",
150 153
      "required": [
151 154
        "uri",
152 155
        "name",
153 156
        "channelOrder"
154 157
      ],
155 158
      "properties": {
156 159
        "uri": {
157 160
          "type": "string",
158 161
          "format": "at-uri"
159 162
        },
160 163
        "name": {
161 164
          "type": "string"
162 165
        },
163 166
        "channelOrder": {
164 167
          "type": "array",
165 168
          "items": {
166 169
            "type": "string",
167 170
            "format": "at-uri"
168 171
          }
169 172
        }
170 173
      }
171 174
    },
172 175
    "communityInfo": {
173 176
      "type": "object",
174 177
      "required": [
175 178
        "uri",
176 179
        "name",
177 180
        "description",
178 181
        "categoryOrder",
179 182
        "requiresApprovalToJoin",
180 183
        "appview"
181 184
      ],
182 185
      "properties": {
183 186
        "uri": {
184 187
          "type": "string",
185 188
          "format": "at-uri"
186 189
        },
187 190
        "name": {
188 191
          "type": "string"
189 192
        },
190 193
        "banner": {
191 194
          "type": "blob"
192 195
        },
193 196
        "appview": {
194 197
          "type": "string",
195 198
          "format": "did"
196 199
        },
197 200
        "picture": {
198 201
          "type": "blob"
199 202
        },
203 +
        "linkEmbeds": {
204 +
          "type": "boolean"
205 +
        },
200 206
        "description": {
201 207
          "type": "string"
202 208
        },
203 209
        "categoryOrder": {
204 210
          "type": "array",
205 211
          "items": {
206 212
            "type": "string",
207 213
            "format": "at-uri"
208 214
          }
209 215
        },
210 216
        "requiresApprovalToJoin": {
211 217
          "type": "boolean"
212 218
        }
213 219
      },
214 220
      "description": "Core community record data, hydrated with its AT-URI."
215 221
    },
216 222
    "invitationView": {
217 223
      "type": "object",
218 224
      "required": [
219 225
        "code",
220 226
        "community",
221 227
        "createdBy",
222 228
        "active"
223 229
      ],
224 230
      "properties": {
225 231
        "code": {
226 232
          "type": "string"
227 233
        },
228 234
        "active": {
229 235
          "type": "boolean"
230 236
        },
231 237
        "community": {
232 238
          "type": "string",
233 239
          "format": "at-uri"
234 240
        },
235 241
        "createdBy": {
236 242
          "type": "string",
237 243
          "format": "did"
238 244
        }
239 245
      },
240 246
      "description": "An invitation with its creator as a bare DID."
241 247
    },
242 248
    "applicationView": {
243 249
      "type": "object",
244 250
      "required": [
245 251
        "did",
246 252
        "handle",
247 253
        "membership",
248 254
        "createdAt",
249 255
        "data"
250 256
      ],
251 257
      "properties": {
252 258
        "did": {
253 259
          "type": "string",
254 260
          "format": "did"
255 261
        },
256 262
        "data": {
257 263
          "ref": "lex:social.colibri.actor.defs#actorData",
258 264
          "type": "ref"
259 265
        },
260 266
        "handle": {
261 267
          "type": "string",
262 268
          "format": "handle"
263 269
        },
264 270
        "createdAt": {
265 271
          "type": "string",
266 272
          "format": "datetime"
267 273
        },
268 274
        "membership": {
269 275
          "type": "string",
270 276
          "format": "at-uri"
271 277
        }
272 278
      },
273 279
      "description": "A pending or dismissed membership application."
274 280
    },
275 281
    "channelOverrideView": {
276 282
      "type": "object",
277 283
      "required": [
278 284
        "channel"
279 285
      ],
280 286
      "properties": {
281 287
        "deny": {
282 288
          "type": "array",
283 289
          "items": {
284 290
            "type": "string"
285 291
          }
286 292
        },
287 293
        "allow": {
288 294
          "type": "array",
289 295
          "items": {
290 296
            "type": "string"
291 297
          }
292 298
        },
293 299
        "channel": {
294 300
          "type": "string",
295 301
          "format": "at-uri"
296 302
        }
297 303
      }
298 304
    },
299 305
    "invitationProfileView": {
300 306
      "type": "object",
301 307
      "required": [
302 308
        "code",
303 309
        "community",
304 310
        "createdBy",
305 311
        "active"
306 312
      ],
307 313
      "properties": {
308 314
        "code": {
309 315
          "type": "string"
310 316
        },
311 317
        "active": {
312 318
          "type": "boolean"
313 319
        },
314 320
        "community": {
315 321
          "type": "string",
316 322
          "format": "at-uri"
317 323
        },
318 324
        "createdBy": {
319 325
          "ref": "lex:social.colibri.actor.defs#actorView",
320 326
          "type": "ref"
321 327
        }
322 328
      },
323 329
      "description": "An invitation with its creator hydrated as an actor."
324 330
    },
325 331
    "resolvedInvitationView": {
326 332
      "type": "object",
327 333
      "required": [
328 334
        "code",
329 335
        "community",
330 336
        "createdBy",
331 337
        "active",
332 338
        "name",
333 339
        "memberCount",
334 340
        "onlineCount",
335 341
        "requiresApprovalToJoin"
336 342
      ],
337 343
      "properties": {
338 344
        "code": {
339 345
          "type": "string"
340 346
        },
341 347
        "name": {
342 348
          "type": "string"
343 349
        },
344 350
        "active": {
345 351
          "type": "boolean"
346 352
        },
347 353
        "banner": {
348 354
          "type": "blob"
349 355
        },
350 356
        "picture": {
351 357
          "type": "blob"
352 358
        },
353 359
        "community": {
354 360
          "type": "string",
355 361
          "format": "at-uri"
356 362
        },
357 363
        "createdBy": {
358 364
          "type": "string",
359 365
          "format": "did"
360 366
        },
361 367
        "memberCount": {
362 368
          "type": "integer"
363 369
        },
364 370
        "onlineCount": {
365 371
          "type": "integer"
366 372
        },
367 373
        "requiresApprovalToJoin": {
368 374
          "type": "boolean"
369 375
        }
370 376
      },
371 377
      "description": "An invitation hydrated with its community's public details, for the invite accept screen."
372 378
    }
373 379
  },
374 380
  "$type": "com.atproto.lexicon.schema",
375 381
  "lexicon": 1
376 382
}

Compare Other Versions

Lexicon Garden

@