{
"id": "social.colibri.channel.create",
"defs": {
"main": {
"type": "procedure",
"errors": [
{
"name": "AppViewNotAuthorized",
"description": "The acting account has not published this AppView as authorized to act for it."
},
{
"name": "AuthRequired",
"description": "Missing, malformed, or unverifiable service auth."
},
{
"name": "CommunityCredentialsUnrecoverable",
"description": "The AppView cannot write to the community's repo and could not repair its own access."
},
{
"name": "Forbidden",
"description": "The caller lacks the permission this method requires."
},
{
"name": "InvalidRequest",
"description": "A parameter or body field was missing or malformed."
},
{
"name": "NotCommunityHub",
"description": "This AppView does not administer the community; the hub field names the one that does."
},
{
"name": "PdsUnavailable",
"description": "The PDS this operation needs is unreachable or is not a PDS."
},
{
"name": "UpstreamFailure",
"description": "A service outside this AppView failed."
}
],
"output": {
"schema": {
"type": "object",
"required": [
"uri"
],
"properties": {
"uri": {
"type": "string",
"format": "at-uri"
}
}
},
"encoding": "application/json"
},
"parameters": {
"type": "params",
"required": [
"community",
"category",
"name",
"type"
],
"properties": {
"name": {
"type": "string"
},
"type": {
"type": "string",
"format": "nsid",
"description": "The channel type, e.g. social.colibri.channel.text."
},
"category": {
"type": "string",
"format": "at-uri"
},
"community": {
"type": "string",
"format": "at-uri"
},
"description": {
"type": "string"
},
"allowedRoles": {
"type": "array",
"items": {
"type": "string",
"format": "record-key"
}
},
"allowedMembers": {
"type": "array",
"items": {
"type": "string",
"format": "did"
}
}
}
},
"description": "Creates a channel in a category of a community."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}