social.coves.community.create
Create a new community. Requires authentication.
Details · procedure
| Kind | procedure |
|---|---|
| Authority | community.coves.social |
| Indexed |
Checks
Validlarge-stringdefs.main.input.schema.properties.avatarBlobmaxLength is over 20 KB. Use a blob for content that large.large-stringdefs.main.input.schema.properties.bannerBlobmaxLength is over 20 KB. Use a blob for content that large.
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "Create a new community. Requires authentication.",
"errors": [
{
"description": "Community name is already taken",
"name": "NameTaken"
},
{
"description": "User has reached the maximum number of communities they can create",
"name": "TooManyCommunities"
}
],
"input": {
"encoding": "application/json",
"schema": {
"properties": {
"allowExternalDiscovery": {
"default": true,
"description": "Whether other Coves instances can index and discover this community",
"type": "boolean"
},
"avatarBlob": {
"description": "Base64-encoded avatar image data (png, jpeg, or webp)",
"maxLength": 1400000,
"type": "string"
},
"avatarMimeType": {
"description": "MIME type of the avatar image (image/png, image/jpeg, image/webp)",
"maxLength": 128,
"type": "string"
},
"bannerBlob": {
"description": "Base64-encoded banner image data (png, jpeg, or webp)",
"maxLength": 2800000,
"type": "string"
},
"bannerMimeType": {
"description": "MIME type of the banner image (image/png, image/jpeg, image/webp)",
"maxLength": 128,
"type": "string"
},
"categories": {
"description": "Community categories for discovery",
"items": {
"maxLength": 50,
"type": "string"
},
"maxLength": 3,
"type": "array"
},
"description": {
"description": "Community description",
"maxGraphemes": 1000,
"maxLength": 10000,
"type": "string"
},
"displayName": {
"description": "Display name for the community",
"maxGraphemes": 128,
"maxLength": 1280,
"type": "string"
},
"language": {
"description": "Primary language of the community",
"format": "language",
"type": "string"
},
"membershipThreshold": {
"default": 100,
"description": "Reputation threshold required for membership",
"maximum": 10000,
"minimum": 0,
"type": "integer"
},
"name": {
"description": "Short community name used as the local part of the handle (e.g., 'gaming'). Must be a valid DNS label: ASCII letters, digits, and hyphens only.",
"maxLength": 63,
"type": "string"
},
"rules": {
"description": "Community rules",
"items": {
"maxGraphemes": 200,
"maxLength": 2000,
"type": "string"
},
"maxLength": 10,
"type": "array"
},
"visibility": {
"default": "public",
"description": "Community visibility level",
"knownValues": [
"public",
"unlisted",
"private"
],
"maxLength": 64,
"type": "string"
}
},
"required": [
"name",
"description"
],
"type": "object"
}
},
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"cid": {
"description": "CID of the created community profile",
"format": "cid",
"type": "string"
},
"did": {
"description": "DID of the created community",
"format": "did",
"type": "string"
},
"handle": {
"description": "Scoped handle of the created community (~name@instance)",
"maxLength": 512,
"type": "string"
},
"uri": {
"description": "AT-URI of the created community profile",
"format": "at-uri",
"type": "string"
}
},
"required": [
"uri",
"cid",
"did",
"handle"
],
"type": "object"
}
},
"type": "procedure"
}
},
"id": "social.coves.community.create",
"lexicon": 1
}