social.colibri.beta.channel.create

Creates a channel. This creates a space for the channel, then writes the channel's configuration record at key 'self' inside that space.

Repository @colibri.social did:plc:mprdjqjluoswa7awzggaggj3 namespace authority
Details · procedure
Kindprocedure
Authoritychannel.beta.colibri.social
Indexed

Procedure

procedure · POST

Input

application/json

Members allowed to post here in addition to allowedRoles.

itemsstring · did

A member permitted to post.

Roles allowed to post here.

itemsstring · record-key

A role permitted to post.

category

requiredstring · record-key

The category to list the channel under.

community

requiredstring · did

The community the channel belongs to.

The channel's topic.

  • maxLength: 256

name

requiredstring

The channel's name.

  • minLength: 1
  • maxLength: 32

ownerOnly

boolean

Whether only community admins may post.

type

requiredstring · nsid

The channel's space type.

  • knownValues: social.colibri.beta.channel.text | social.colibri.beta.channel.voice

Members that may read this channel beyond visibleToRoles.

itemsstring · did

A member.

Roles that may read this channel. Empty means every member may.

itemsstring · record-key

A role.

Output

application/json

channel

requiredref

The newly created channel.

Errors

AuthRequired

The request has no valid service auth.

Forbidden

The requesting user lacks the channel.create permission.

CommunityNotFound

No community matches the given DID.

CategoryNotFound

No category matches the given record key.

RoleHierarchy

The requesting user cannot grant a role that outranks their own.

InvalidRequest

The arguments are inconsistent or malformed beyond schema validation.

CredentialsUnavailable

The AppView cannot act as the community because its stored credentials are missing or unusable.

PdsUnavailable

The community's PDS is unreachable or the AppView has no administrative access to it.

UpstreamFailure

The community's PDS failed while creating the channel's space.

Similar lexicons

semantic match

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • Creates a channel in a category of a community.

  • Creates a category in a community.

  • A channel's configuration. Lives at key 'self' in the channel's own space. The space type says whether it is a text or voice channel, and the space key is the channel's identity.

  • Provisions a new community: an account on the AppView's PDS, its four spaces, an owner role, and a starter layout of two categories holding one text channel and one voice channel between them. This call runs long enough that progress is also emitted over social.colibri.beta.sync.subscribeEvents.

  • social.colibri.beta.thread.create

    procedure not from the namespace authority

    Opens a thread beside a text channel. This creates a space for the thread, then writes the thread's configuration record at key 'self' inside it. The anchor message is referenced rather than copied, so it stays in its author's repo in the channel where it was written.