social.coves.community.defs

coves.social

Documentation

communityStats object

Aggregated statistics for a community

Properties

activePostersCount integer Optional

Number of unique posters in the last 30 days

minimum: 0
activeUserCount integer Optional

Number of users active in the last 30 days

minimum: 0
commentCount integer Optional

Total number of comments across all posts

minimum: 0
memberCount integer Optional

Number of users with formal membership status

minimum: 0
moderatorCount integer Optional

Number of active moderators

minimum: 0
postCount integer Optional

Total number of posts in the community

minimum: 0
subscriberCount integer Optional

Total number of subscribers

minimum: 0
View raw schema
{
  "type": "object",
  "properties": {
    "postCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Total number of posts in the community"
    },
    "memberCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Number of users with formal membership status"
    },
    "commentCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Total number of comments across all posts"
    },
    "moderatorCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Number of active moderators"
    },
    "activeUserCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Number of users active in the last 30 days"
    },
    "subscriberCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Total number of subscribers"
    },
    "activePostersCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Number of unique posters in the last 30 days"
    }
  },
  "description": "Aggregated statistics for a community"
}
communityView object

Basic community view with essential information and basic stats

Properties

avatar string uri Optional

URL to community avatar image

did string did Required

DID of the community

displayName string Optional

Display name for the community

maxLength: 1280 bytesmaxGraphemes: 128 graphemes
handle string handle Optional

Current handle resolved from DID

memberCount integer Optional

Number of users with formal membership status

minimum: 0
name string Required

Short community name

maxLength: 63 bytes
postCount integer Optional

Total number of posts in the community

minimum: 0
subscriberCount integer Optional

Total number of subscribers

minimum: 0
viewer object Optional

Simplified viewer state for list views

visibility string Optional

Community visibility level

maxLength: 64 bytes
Known values: public, unlisted, private
View raw schema
{
  "type": "object",
  "required": [
    "did",
    "name"
  ],
  "properties": {
    "did": {
      "type": "string",
      "format": "did",
      "description": "DID of the community"
    },
    "name": {
      "type": "string",
      "maxLength": 63,
      "description": "Short community name"
    },
    "avatar": {
      "type": "string",
      "format": "uri",
      "description": "URL to community avatar image"
    },
    "handle": {
      "type": "string",
      "format": "handle",
      "description": "Current handle resolved from DID"
    },
    "viewer": {
      "type": "object",
      "properties": {
        "member": {
          "type": "boolean",
          "description": "Whether the viewer has membership status"
        },
        "subscribed": {
          "type": "boolean",
          "description": "Whether the viewer is subscribed"
        }
      },
      "description": "Simplified viewer state for list views"
    },
    "postCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Total number of posts in the community"
    },
    "visibility": {
      "type": "string",
      "maxLength": 64,
      "description": "Community visibility level",
      "knownValues": [
        "public",
        "unlisted",
        "private"
      ]
    },
    "displayName": {
      "type": "string",
      "maxLength": 1280,
      "description": "Display name for the community",
      "maxGraphemes": 128
    },
    "memberCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Number of users with formal membership status"
    },
    "subscriberCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Total number of subscribers"
    }
  },
  "description": "Basic community view with essential information and basic stats"
}
communityViewDetailed object

Detailed community view with stats and viewer state

Properties

avatar string uri Optional

URL to community avatar image

banner string uri Optional

URL to community banner image

contentWarnings array of string Optional

Required content warnings for this community

createdAt string datetime Optional

An RFC 3339 formatted timestamp.

createdBy string did Optional

DID of the user who created this community

description string Optional

Community description with rich text support

maxLength: 10000 bytesmaxGraphemes: 1000 graphemes
did string did Required

DID of the community

displayName string Optional

Display name for the community

maxLength: 1280 bytesmaxGraphemes: 128 graphemes
handle string handle Optional

Current handle resolved from DID

hostedBy string did Optional

DID of the instance hosting this community

moderationType string Optional

Type of moderation system

maxLength: 64 bytes
Known values: moderator, sortition
name string Required

Short community name

maxLength: 63 bytes
viewer ref #viewerState Optional

Viewer's relationship to this community

visibility string Optional

Community visibility level

maxLength: 64 bytes
Known values: public, unlisted, private
View raw schema
{
  "type": "object",
  "required": [
    "did",
    "name"
  ],
  "properties": {
    "did": {
      "type": "string",
      "format": "did",
      "description": "DID of the community"
    },
    "name": {
      "type": "string",
      "maxLength": 63,
      "description": "Short community name"
    },
    "stats": {
      "ref": "#communityStats",
      "type": "ref",
      "description": "Aggregated community statistics"
    },
    "avatar": {
      "type": "string",
      "format": "uri",
      "description": "URL to community avatar image"
    },
    "banner": {
      "type": "string",
      "format": "uri",
      "description": "URL to community banner image"
    },
    "handle": {
      "type": "string",
      "format": "handle",
      "description": "Current handle resolved from DID"
    },
    "viewer": {
      "ref": "#viewerState",
      "type": "ref",
      "description": "Viewer's relationship to this community"
    },
    "hostedBy": {
      "type": "string",
      "format": "did",
      "description": "DID of the instance hosting this community"
    },
    "createdAt": {
      "type": "string",
      "format": "datetime"
    },
    "createdBy": {
      "type": "string",
      "format": "did",
      "description": "DID of the user who created this community"
    },
    "visibility": {
      "type": "string",
      "maxLength": 64,
      "description": "Community visibility level",
      "knownValues": [
        "public",
        "unlisted",
        "private"
      ]
    },
    "description": {
      "type": "string",
      "maxLength": 10000,
      "description": "Community description with rich text support",
      "maxGraphemes": 1000
    },
    "displayName": {
      "type": "string",
      "maxLength": 1280,
      "description": "Display name for the community",
      "maxGraphemes": 128
    },
    "moderationType": {
      "type": "string",
      "maxLength": 64,
      "description": "Type of moderation system",
      "knownValues": [
        "moderator",
        "sortition"
      ]
    },
    "contentWarnings": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 32,
        "knownValues": [
          "nsfw",
          "violence",
          "spoilers"
        ]
      },
      "description": "Required content warnings for this community"
    },
    "createdByProfile": {
      "ref": "social.coves.actor.defs#profileView",
      "type": "ref",
      "description": "Profile of the community creator"
    },
    "descriptionFacets": {
      "type": "array",
      "items": {
        "ref": "social.coves.richtext.facet",
        "type": "ref"
      },
      "description": "Rich text annotations for description"
    }
  },
  "description": "Detailed community view with stats and viewer state"
}
viewerState object

The viewing user's relationship to this community

Properties

banUri string at-uri Optional

AT-URI of the ban record if viewer is banned

banned boolean Optional

Whether the viewer is banned from this community

creator boolean Optional

Whether the viewer created this community

member boolean Optional

Whether the viewer has membership status (AppView-computed)

moderator boolean Optional

Whether the viewer is a moderator of this community

reputation integer Optional

Viewer's reputation in this community

subscribed boolean Optional

Whether the viewer is subscribed to this community

subscriptionUri string at-uri Optional

AT-URI of the viewer's subscription record if subscribed

View raw schema
{
  "type": "object",
  "properties": {
    "banUri": {
      "type": "string",
      "format": "at-uri",
      "description": "AT-URI of the ban record if viewer is banned"
    },
    "banned": {
      "type": "boolean",
      "description": "Whether the viewer is banned from this community"
    },
    "member": {
      "type": "boolean",
      "description": "Whether the viewer has membership status (AppView-computed)"
    },
    "creator": {
      "type": "boolean",
      "description": "Whether the viewer created this community"
    },
    "moderator": {
      "type": "boolean",
      "description": "Whether the viewer is a moderator of this community"
    },
    "reputation": {
      "type": "integer",
      "description": "Viewer's reputation in this community"
    },
    "subscribed": {
      "type": "boolean",
      "description": "Whether the viewer is subscribed to this community"
    },
    "subscriptionUri": {
      "type": "string",
      "format": "at-uri",
      "description": "AT-URI of the viewer's subscription record if subscribed"
    }
  },
  "description": "The viewing user's relationship to this community"
}

Lexicon Garden

@