From
bafyreihpj3swicwjy7432b5dc5o7xajpbz4huyxymenrxfobedfjmlcw4y
indexed 2026-08-23 12:32 UTC
View this version
To
bafyreihlpdq7gne2vhsurmgohdcyq67irpyx35jyidmpxq5nsmd6xbbd3m
indexed 2026-10-15 15:34 UTC
View this version
Compatibility
backward compatible Backward compatible. 18 non-breaking changes.
Non-breaking changes (18)
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.category.update:input.allowedMembers" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.category.update:input.allowedMembers:items" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.category.update:input.allowedRoles" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.category.update:input.allowedRoles:items" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.category.update:input.ownerOnly" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.category.update:input.visibleToMembers" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.category.update:input.visibleToMembers:items" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.category.update:input.visibleToRoles" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.category.update:input.visibleToRoles:items" }
- AddedEdge AddedEdge { src: "social.colibri.beta.category.update:input", tgt: "social.colibri.beta.category.update:input.allowedMembers", kind: "prop", name: Some("allowedMembers") }
- AddedEdge AddedEdge { src: "social.colibri.beta.category.update:input", tgt: "social.colibri.beta.category.update:input.allowedRoles", kind: "prop", name: Some("allowedRoles") }
- AddedEdge AddedEdge { src: "social.colibri.beta.category.update:input", tgt: "social.colibri.beta.category.update:input.ownerOnly", kind: "prop", name: Some("ownerOnly") }
- AddedEdge AddedEdge { src: "social.colibri.beta.category.update:input", tgt: "social.colibri.beta.category.update:input.visibleToMembers", kind: "prop", name: Some("visibleToMembers") }
- AddedEdge AddedEdge { src: "social.colibri.beta.category.update:input", tgt: "social.colibri.beta.category.update:input.visibleToRoles", kind: "prop", name: Some("visibleToRoles") }
- AddedEdge AddedEdge { src: "social.colibri.beta.category.update:input.allowedMembers", tgt: "social.colibri.beta.category.update:input.allowedMembers:items", kind: "items", name: None }
- AddedEdge AddedEdge { src: "social.colibri.beta.category.update:input.allowedRoles", tgt: "social.colibri.beta.category.update:input.allowedRoles:items", kind: "items", name: None }
- AddedEdge AddedEdge { src: "social.colibri.beta.category.update:input.visibleToMembers", tgt: "social.colibri.beta.category.update:input.visibleToMembers:items", kind: "items", name: None }
- AddedEdge AddedEdge { src: "social.colibri.beta.category.update:input.visibleToRoles", tgt: "social.colibri.beta.category.update:input.visibleToRoles:items", kind: "items", name: None }
Migration guidance
Added
AddedVertex { vertex_id: "social.colibri.beta.category.update:input.allowedMembers" }AddedVertex { vertex_id: "social.colibri.beta.category.update:input.allowedMembers:items" }AddedVertex { vertex_id: "social.colibri.beta.category.update:input.allowedRoles" }AddedVertex { vertex_id: "social.colibri.beta.category.update:input.allowedRoles:items" }AddedVertex { vertex_id: "social.colibri.beta.category.update:input.ownerOnly" }AddedVertex { vertex_id: "social.colibri.beta.category.update:input.visibleToMembers" }AddedVertex { vertex_id: "social.colibri.beta.category.update:input.visibleToMembers:items" }AddedVertex { vertex_id: "social.colibri.beta.category.update:input.visibleToRoles" }AddedVertex { vertex_id: "social.colibri.beta.category.update:input.visibleToRoles:items" }
Notes
- Non-breaking: AddedEdge { src: "social.colibri.beta.category.update:input", tgt: "social.colibri.beta.category.update:input.allowedMembers", kind: "prop", name: Some("allowedMembers") }
- Non-breaking: AddedEdge { src: "social.colibri.beta.category.update:input", tgt: "social.colibri.beta.category.update:input.allowedRoles", kind: "prop", name: Some("allowedRoles") }
- Non-breaking: AddedEdge { src: "social.colibri.beta.category.update:input", tgt: "social.colibri.beta.category.update:input.ownerOnly", kind: "prop", name: Some("ownerOnly") }
- Non-breaking: AddedEdge { src: "social.colibri.beta.category.update:input", tgt: "social.colibri.beta.category.update:input.visibleToMembers", kind: "prop", name: Some("visibleToMembers") }
- Non-breaking: AddedEdge { src: "social.colibri.beta.category.update:input", tgt: "social.colibri.beta.category.update:input.visibleToRoles", kind: "prop", name: Some("visibleToRoles") }
- Non-breaking: AddedEdge { src: "social.colibri.beta.category.update:input.allowedMembers", tgt: "social.colibri.beta.category.update:input.allowedMembers:items", kind: "items", name: None }
- Non-breaking: AddedEdge { src: "social.colibri.beta.category.update:input.allowedRoles", tgt: "social.colibri.beta.category.update:input.allowedRoles:items", kind: "items", name: None }
- Non-breaking: AddedEdge { src: "social.colibri.beta.category.update:input.visibleToMembers", tgt: "social.colibri.beta.category.update:input.visibleToMembers:items", kind: "items", name: None }
- Non-breaking: AddedEdge { src: "social.colibri.beta.category.update:input.visibleToRoles", tgt: "social.colibri.beta.category.update:input.visibleToRoles:items", kind: "items", name: None }
Changes
11
{22
"$type": "com.atproto.lexicon.schema",33
"defs": {44
"main": {5
"description": "Updates a category's name.",5
"description": "Updates a category's name and the permissions its channels inherit.",66
"errors": [77
{88
"description": "The request is missing, malformed, or unverifiable service auth.",99
"name": "AuthRequired"1010
},1111
{12
"description": "The caller lacks the category.update permission.",12
"description": "The caller lacks the category.update permission, or grants visibility to a role at or above their own highest position.",1313
"name": "Forbidden"1414
},1515
{1616
"description": "No community exists at the given DID.",1717
"name": "CommunityNotFound"1818
},1919
{2020
"description": "No category exists at the given record key.",2121
"name": "CategoryNotFound"2222
},2323
{2424
"description": "The AppView cannot act as the community because its stored credentials are missing or unusable.",2525
"name": "CredentialsUnavailable"2626
}2727
],2828
"input": {2929
"encoding": "application/json",3030
"schema": {3131
"properties": {32
"allowedMembers": {33
"description": "Members allowed to post in the category's channels in addition to allowedRoles. Absent leaves the current value unchanged.",34
"items": {35
"description": "A member permitted to post.",36
"format": "did",37
"type": "string"38
},39
"type": "array"40
},41
"allowedRoles": {42
"description": "Roles allowed to post in the category's channels. Absent leaves the current value unchanged.",43
"items": {44
"description": "A role permitted to post.",45
"format": "record-key",46
"type": "string"47
},48
"type": "array"49
},3250
"category": {3351
"description": "The category's record key.",3452
"format": "record-key",3553
"type": "string"3654
},3755
"community": {3856
"description": "The community the category belongs to.",3957
"format": "did",4058
"type": "string"4159
},4260
"name": {4361
"description": "The category's new name.",4462
"maxLength": 32,4563
"minLength": 1,4664
"type": "string"65
},66
"ownerOnly": {67
"description": "Whether only community admins may post in the category's channels. Absent leaves the current value unchanged.",68
"type": "boolean"69
},70
"visibleToMembers": {71
"description": "Members that may read the category's channels in addition to visibleToRoles. Absent leaves the current value unchanged.",72
"items": {73
"description": "A member permitted to read.",74
"format": "did",75
"type": "string"76
},77
"type": "array"78
},79
"visibleToRoles": {80
"description": "Roles that may read the category's channels. Absent leaves the current value unchanged.",81
"items": {82
"description": "A role permitted to read.",83
"format": "record-key",84
"type": "string"85
},86
"type": "array"4787
}4888
},4989
"required": [5090
"community",5191
"category"5292
],5393
"type": "object"5494
}5595
},5696
"output": {5797
"encoding": "application/json",5898
"schema": {5999
"properties": {60100
"category": {61101
"description": "The updated category.",62102
"ref": "social.colibri.beta.community.defs#categoryView",63103
"type": "ref"64104
}65105
},66106
"required": [67107
"category"68108
],69109
"type": "object"70110
}71111
},72112
"type": "procedure"73113
}74114
},75115
"id": "social.colibri.beta.category.update",76116
"lexicon": 177117
}