From
bafyreiecdyonmq2eimqqg2iuilkfcccjrn7hualelxhzmfckxglocbpkiq
indexed 2026-10-15 15:34 UTC
View this version
To
bafyreig7x23r26r7dfrfe77cqarscvqsv6e7pmxar5m36qy5jpnb7vvxea
indexed 2026-10-24 10:36 UTC
View this version
Compatibility
backward compatible Backward compatible. 4 non-breaking changes.
Non-breaking changes (4)
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.community.defs#roleEmojiBadge" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.role.update:input.emojiBadge" }
- AddedEdge AddedEdge { src: "social.colibri.beta.role.update:input", tgt: "social.colibri.beta.role.update:input.emojiBadge", kind: "prop", name: Some("emojiBadge") }
- AddedEdge AddedEdge { src: "social.colibri.beta.role.update:input.emojiBadge", tgt: "social.colibri.beta.community.defs#roleEmojiBadge", kind: "ref", name: None }
Migration guidance
Added
AddedVertex { vertex_id: "social.colibri.beta.community.defs#roleEmojiBadge" }AddedVertex { vertex_id: "social.colibri.beta.role.update:input.emojiBadge" }
Notes
- Non-breaking: AddedEdge { src: "social.colibri.beta.role.update:input", tgt: "social.colibri.beta.role.update:input.emojiBadge", kind: "prop", name: Some("emojiBadge") }
- Non-breaking: AddedEdge { src: "social.colibri.beta.role.update:input.emojiBadge", tgt: "social.colibri.beta.community.defs#roleEmojiBadge", kind: "ref", name: None }
Changes
11
{22
"$type": "com.atproto.lexicon.schema",33
"defs": {44
"main": {55
"description": "Updates a role's settings.",66
"errors": [77
{88
"description": "The request is missing, malformed, or unverifiable service auth.",99
"name": "AuthRequired"1010
},1111
{1212
"description": "The caller lacks the role.manage permission.",1313
"name": "Forbidden"1414
},1515
{1616
"description": "No community exists at the given DID.",1717
"name": "CommunityNotFound"1818
},1919
{2020
"description": "No role exists at the given record key.",2121
"name": "RoleNotFound"2222
},2323
{2424
"description": "The role is marked protected and cannot be modified.",2525
"name": "RoleProtected"2626
},2727
{2828
"description": "The change would place the role at or above the caller's highest role position, or grants a permission the caller does not hold.",2929
"name": "RoleHierarchy"3030
},3131
{3232
"description": "The AppView cannot act as the community because its stored credentials are missing or unusable.",3333
"name": "CredentialsUnavailable"3434
}3535
],3636
"input": {3737
"encoding": "application/json",3838
"schema": {3939
"properties": {4040
"badge": {4141
"description": "An icon badge. Image badges are set with social.colibri.beta.role.putBadgeImage. Takes precedence over removeBadge.",4242
"ref": "social.colibri.beta.community.defs#roleIconBadge",4343
"type": "ref"4444
},4545
"channelOverrides": {4646
"description": "Per-channel overrides.",4747
"items": {4848
"description": "A per-channel permission override.",4949
"ref": "social.colibri.beta.community.defs#roleChannelOverride",5050
"type": "ref"5151
},5252
"type": "array"5353
},5454
"color": {5555
"description": "Hex colour as #rrggbb.",5656
"maxLength": 7,5757
"type": "string"5858
},5959
"community": {6060
"description": "The community the role belongs to.",6161
"format": "did",6262
"type": "string"6363
},64
"emojiBadge": {65
"description": "An emoji badge. Cannot be combined with badge. Takes precedence over removeBadge.",66
"ref": "social.colibri.beta.community.defs#roleEmojiBadge",67
"type": "ref"68
},6469
"hoisted": {6570
"description": "Whether holders are listed separately in the member list.",6671
"type": "boolean"6772
},6873
"mentionable": {6974
"description": "Whether @role mentions resolve to this role.",7075
"type": "boolean"7176
},7277
"name": {7378
"description": "Display name.",7479
"maxLength": 32,7580
"minLength": 1,7681
"type": "string"7782
},7883
"permissions": {7984
"description": "Permissions granted by this role.",8085
"items": {8186
"description": "A namespaced permission identifier.",8287
"type": "string"8388
},8489
"type": "array"8590
},8691
"position": {8792
"description": "Hierarchy position. Higher outranks lower.",8893
"type": "integer"8994
},9095
"removeBadge": {91
"description": "Removes the role's badge, whichever kind it is. Ignored when badge is also given.",96
"description": "Removes the role's badge, whichever kind it is. Ignored when badge or emojiBadge is also given.",9297
"type": "boolean"9398
},9499
"role": {95100
"description": "The role's record key.",96101
"format": "record-key",97102
"type": "string"98103
}99104
},100105
"required": [101106
"community",102107
"role"103108
],104109
"type": "object"105110
}106111
},107112
"output": {108113
"encoding": "application/json",109114
"schema": {110115
"properties": {111116
"role": {112117
"description": "The updated role.",113118
"ref": "social.colibri.beta.community.defs#roleView",114119
"type": "ref"115120
}116121
},117122
"required": [118123
"role"119124
],120125
"type": "object"121126
}122127
},123128
"type": "procedure"124129
}125130
},126131
"id": "social.colibri.beta.role.update",127132
"lexicon": 1128133
}