social.colibri.beta.role.create

colibri.social

Documentation

Creates a role in a community.

main procedure

Creates a role in a community.

Input

Encodingapplication/json
color string Optional

Hex colour as #rrggbb.

maxLength: 7 bytes
community stringdid Required

The community to create the role in.

hoisted boolean Optional

Whether holders are listed separately in the member list.

mentionable boolean Optional

Whether @role mentions resolve to this role.

name string Required

Display name.

maxLength: 32 bytesminLength: 1 bytes
permissions array Required

Permissions granted by this role.

position integer Optional

Hierarchy position. Higher outranks lower.

Output

Encodingapplication/json

Errors

AuthRequired The request is missing, malformed, or unverifiable service auth.
Forbidden The caller lacks the role.manage permission.
CommunityNotFound No community exists at the given DID.
InvalidRequest The arguments are inconsistent or malformed beyond schema validation.
RoleHierarchy The requested position is at or above the caller's highest role position, or the permissions include one the caller does not hold.
CredentialsUnavailable The AppView cannot act as the community because its stored credentials are missing or unusable.
Try It

Requests are sent directly from your browser. Some servers may block requests due to CORS.

Base URL for XRPC calls (e.g., https://bsky.social)
Enter valid JSON for the request body
View raw schema
{
  "type": "procedure",
  "input": {
    "schema": {
      "type": "object",
      "required": [
        "community",
        "name",
        "permissions"
      ],
      "properties": {
        "name": {
          "type": "string",
          "maxLength": 32,
          "minLength": 1,
          "description": "Display name."
        },
        "color": {
          "type": "string",
          "maxLength": 7,
          "description": "Hex colour as #rrggbb."
        },
        "hoisted": {
          "type": "boolean",
          "description": "Whether holders are listed separately in the member list."
        },
        "position": {
          "type": "integer",
          "description": "Hierarchy position. Higher outranks lower."
        },
        "community": {
          "type": "string",
          "format": "did",
          "description": "The community to create the role in."
        },
        "mentionable": {
          "type": "boolean",
          "description": "Whether @role mentions resolve to this role."
        },
        "permissions": {
          "type": "array",
          "items": {
            "type": "string",
            "description": "A namespaced permission identifier."
          },
          "description": "Permissions granted by this role."
        }
      }
    },
    "encoding": "application/json"
  },
  "errors": [
    {
      "name": "AuthRequired",
      "description": "The request is missing, malformed, or unverifiable service auth."
    },
    {
      "name": "Forbidden",
      "description": "The caller lacks the role.manage permission."
    },
    {
      "name": "CommunityNotFound",
      "description": "No community exists at the given DID."
    },
    {
      "name": "InvalidRequest",
      "description": "The arguments are inconsistent or malformed beyond schema validation."
    },
    {
      "name": "RoleHierarchy",
      "description": "The requested position is at or above the caller's highest role position, or the permissions include one the caller does not hold."
    },
    {
      "name": "CredentialsUnavailable",
      "description": "The AppView cannot act as the community because its stored credentials are missing or unusable."
    }
  ],
  "output": {
    "schema": {
      "type": "object",
      "required": [
        "role"
      ],
      "properties": {
        "role": {
          "ref": "social.colibri.beta.community.defs#roleView",
          "type": "ref",
          "description": "The newly created role."
        }
      }
    },
    "encoding": "application/json"
  },
  "description": "Creates a role in a community."
}

Lexicon Garden

@