town.muni.arbiter.setSpaceMemberAccess
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "Set the access of a member in a space.\n\nThis is also how you add a new member to the space.",
"errors": [
{
"description": "The specified arbiter does not exist on this server.",
"name": "ErrArbiterNotExists"
},
{
"description": "The specified space does not exist on this arbiter.",
"name": "ErrSpaceNotExists"
},
{
"description": "The requesting user is not allowed to make the request.",
"name": "ErrPermissionDenied"
},
{
"description": "The config was changed by another request during the execution of this request.\n\nThe action should be retried if still applicable.",
"name": "ErrRaceCondition"
},
{
"description": "The specified member is not in the space.",
"name": "ErrMemberNotInSpace"
},
{
"description": "The config provided is invalid for some reason other than it being an unsupported\nlexicon.",
"name": "ErrInvalidConfig"
}
],
"input": {
"encoding": "application/json",
"schema": {
"properties": {
"access": {
"description": "The updated access configuration for the member.",
"refs": [],
"type": "union"
},
"arbiterDid": {
"description": "The DID of the arbiter that the space is in.",
"format": "did",
"type": "string"
},
"member": {
"description": "The member to set the access of.",
"refs": [
"town.muni.arbiter.defs#memberDid",
"town.muni.arbiter.defs#memberLocalSpace",
"town.muni.arbiter.defs#memberRemoteSpace"
],
"type": "union"
},
"resolverDepth": {
"description": "The maximum depth to allow when doing remote resolutions.\n\nBecause spaces are allowed to have members resolved from remote spaces,\nall of the arbiter endpoints have an optional resolution depth parameter\nthat can be used to limit how many chained remote calls can be resolved.\n\nThis applies both to queries and procedures. Queries may need to resolve\nexternal members to complete the member list, and procedures may need\nto resolve external members if the requesting member is not in the local\nmember list, to see if the member has access through a remote list.",
"type": "integer"
},
"spaceKey": {
"description": "The key of the space to configure.",
"maxLength": 1024,
"type": "string"
}
},
"required": [
"arbiterDid",
"spaceKey",
"member",
"access"
],
"type": "object"
}
},
"output": {
"encoding": "application/json",
"schema": {
"refs": [],
"type": "union"
}
},
"type": "procedure"
}
},
"id": "town.muni.arbiter.setSpaceMemberAccess",
"lexicon": 1
}
Metadata
- DID
-
did:plc:ulg2bzgrgs7ddjjlmhtegk3v - CID
-
bafyreia4c5v5ypfkhiihstaikp2qt5vyj2xchyjbnczjpywq3qvub2mlra - Indexed At
- 2026-05-19 22:18 UTC
- AT-URI
-
at://did:plc:ulg2bzgrgs7ddjjlmhtegk3v/com.atproto.lexicon.schema/town.muni.arbiter.setSpaceMemberAccess
Version History (2 versions)
Referenced Schemas (3)
Similar Lexicons
Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
town.muni.arbiter.removeSpaceMember procedure
Remove a member's access from a space.
-
town.muni.arbiter.setSpaceConfig procedure
Configure a space on the arbiter.
-
Get the members that have been assigned to the space. This is not a flat membership list, but a list of the direct members of the space, including DIDs, local spaces, and remote spaces that have been added as members, …
-
Get the flattened, resolved list of members for a space. This member list will be the same as what the server is expected to return as the space host, but it will additionally contain a member config object for each me…
-
town.muni.arbiter.setArbiterConfig procedure
Set the config object for an arbiter.