fyi.opensocial.createGroup
Schema Diff
+9 -1
Compatibility Analysis
Backward Compatible
Backward compatible. 4 non-breaking changes.
Non-Breaking Changes (4)
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.createGroup:input.stewards" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.createGroup:input.stewards:items" }
- AddedEdge AddedEdge { src: "fyi.opensocial.createGroup:input", tgt: "fyi.opensocial.createGroup:input.stewards", kind: "prop", name: Some("stewards") }
- AddedEdge AddedEdge { src: "fyi.opensocial.createGroup:input.stewards", tgt: "fyi.opensocial.createGroup:input.stewards:items", kind: "items", name: None }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "fyi.opensocial.createGroup:input.stewards" }AddedVertex { vertex_id: "fyi.opensocial.createGroup:input.stewards:items" }
Additional Notes
- Non-breaking: AddedEdge { src: "fyi.opensocial.createGroup:input", tgt: "fyi.opensocial.createGroup:input.stewards", kind: "prop", name: Some("stewards") }
- Non-breaking: AddedEdge { src: "fyi.opensocial.createGroup:input.stewards", tgt: "fyi.opensocial.createGroup:input.stewards:items", kind: "items", name: None }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"main": {
5
-
"description": "Host-level: create a new group on this host. Authenticated as the founder (service auth from their PDS); the founder becomes the first admin. Mints the group DID, creates the about and members spaces, writes the bootstrap records and a declaration.",
5
+
"description": "Host-level: create a new group on this host. Authenticated as the founder (service auth from their PDS). The founder and any listed stewards become its first admins. Mints the group DID, creates the meta and members spaces, writes the bootstrap records and, for a discoverable group, a declaration. Modality spaces are left to the apps that use them (createSpace).",
6
6
"errors": [
7
7
{
8
8
"name": "HandleTaken"
9
9
}
10
10
],
11
11
"input": {
12
12
"encoding": "application/json",
13
13
"schema": {
14
14
"properties": {
15
15
"description": {
16
16
"maxGraphemes": 300,
17
17
"maxLength": 3000,
18
18
"type": "string"
19
19
},
20
20
"displayName": {
21
21
"maxGraphemes": 64,
22
22
"maxLength": 640,
23
23
"type": "string"
24
24
},
25
25
"handle": {
26
26
"format": "handle",
27
27
"type": "string"
28
28
},
29
29
"joinPolicy": {
30
30
"knownValues": [
31
31
"fyi.opensocial.profile#open",
32
32
"fyi.opensocial.profile#request",
33
33
"fyi.opensocial.profile#invite"
34
34
],
35
35
"type": "string"
36
36
},
37
37
"metaReadableBy": {
38
38
"description": "Defaults to ['public'].",
39
39
"items": {
40
40
"type": "string"
41
41
},
42
42
"type": "array"
43
+
},
44
+
"stewards": {
45
+
"description": "Accounts that run the group alongside the founder, as admins from the start.",
46
+
"items": {
47
+
"format": "did",
48
+
"type": "string"
49
+
},
50
+
"type": "array"
43
51
}
44
52
},
45
53
"required": [
46
54
"handle",
47
55
"displayName"
48
56
],
49
57
"type": "object"
50
58
}
51
59
},
52
60
"output": {
53
61
"encoding": "application/json",
54
62
"schema": {
55
63
"properties": {
56
64
"did": {
57
65
"format": "did",
58
66
"type": "string"
59
67
},
60
68
"members": {
61
69
"format": "space-ref",
62
70
"type": "string"
63
71
},
64
72
"meta": {
65
73
"format": "space-ref",
66
74
"type": "string"
67
75
}
68
76
},
69
77
"required": [
70
78
"did",
71
79
"meta",
72
80
"members"
73
81
],
74
82
"type": "object"
75
83
}
76
84
},
77
85
"type": "procedure"
78
86
}
79
87
},
80
88
"id": "fyi.opensocial.createGroup",
81
89
"lexicon": 1
82
90
}