social.coves.aggregator.defs

coves.social

Documentation

aggregatorStats object

Statistics about an aggregator's usage

Properties

communitiesUsing integer Required

Number of communities that have authorized this aggregator

minimum: 0
postsCreated integer Required

Total number of posts created by this aggregator

minimum: 0
View raw schema
{
  "type": "object",
  "required": [
    "communitiesUsing",
    "postsCreated"
  ],
  "properties": {
    "postsCreated": {
      "type": "integer",
      "minimum": 0,
      "description": "Total number of posts created by this aggregator"
    },
    "communitiesUsing": {
      "type": "integer",
      "minimum": 0,
      "description": "Number of communities that have authorized this aggregator"
    }
  },
  "description": "Statistics about an aggregator's usage"
}
aggregatorView object

Detailed view of an aggregator service

Properties

avatar string uri Optional

URL to avatar image

configSchema unknown Optional

JSON Schema describing config options for this aggregator

createdAt string datetime Required

An RFC 3339 formatted timestamp.

description string Optional

Description of what this aggregator does

maxLength: 3000 bytesmaxGraphemes: 300 graphemes
did string did Required

DID of the aggregator service

displayName string Required

Human-readable name (e.g., 'RSS News Aggregator')

maxLength: 640 bytesmaxGraphemes: 64 graphemes
maintainer string did Optional

DID of person/organization maintaining this aggregator

recordUri string at-uri Optional

AT-URI of the service declaration record

sourceUrl string uri Optional

URL to aggregator's source code (for transparency)

View raw schema
{
  "type": "object",
  "required": [
    "did",
    "displayName",
    "createdAt"
  ],
  "properties": {
    "did": {
      "type": "string",
      "format": "did",
      "description": "DID of the aggregator service"
    },
    "avatar": {
      "type": "string",
      "format": "uri",
      "description": "URL to avatar image"
    },
    "createdAt": {
      "type": "string",
      "format": "datetime"
    },
    "recordUri": {
      "type": "string",
      "format": "at-uri",
      "description": "AT-URI of the service declaration record"
    },
    "sourceUrl": {
      "type": "string",
      "format": "uri",
      "description": "URL to aggregator's source code (for transparency)"
    },
    "maintainer": {
      "type": "string",
      "format": "did",
      "description": "DID of person/organization maintaining this aggregator"
    },
    "description": {
      "type": "string",
      "maxLength": 3000,
      "description": "Description of what this aggregator does",
      "maxGraphemes": 300
    },
    "displayName": {
      "type": "string",
      "maxLength": 640,
      "description": "Human-readable name (e.g., 'RSS News Aggregator')",
      "maxGraphemes": 64
    },
    "configSchema": {
      "type": "unknown",
      "description": "JSON Schema describing config options for this aggregator"
    }
  },
  "description": "Detailed view of an aggregator service"
}
aggregatorViewDetailed object

Detailed view of an aggregator with stats

Properties

avatar string uri Optional

A valid URI.

configSchema unknown Optional

No description available.

createdAt string datetime Required

An RFC 3339 formatted timestamp.

description string Optional

No description available.

maxLength: 3000 bytesmaxGraphemes: 300 graphemes
did string did Required

A decentralized identifier (DID).

displayName string Required

No description available.

maxLength: 640 bytesmaxGraphemes: 64 graphemes
maintainer string did Optional

A decentralized identifier (DID).

recordUri string at-uri Optional

An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).

sourceUrl string uri Optional

A valid URI.

View raw schema
{
  "type": "object",
  "required": [
    "did",
    "displayName",
    "createdAt",
    "stats"
  ],
  "properties": {
    "did": {
      "type": "string",
      "format": "did"
    },
    "stats": {
      "ref": "#aggregatorStats",
      "type": "ref"
    },
    "avatar": {
      "type": "string",
      "format": "uri"
    },
    "createdAt": {
      "type": "string",
      "format": "datetime"
    },
    "recordUri": {
      "type": "string",
      "format": "at-uri"
    },
    "sourceUrl": {
      "type": "string",
      "format": "uri"
    },
    "maintainer": {
      "type": "string",
      "format": "did"
    },
    "description": {
      "type": "string",
      "maxLength": 3000,
      "maxGraphemes": 300
    },
    "displayName": {
      "type": "string",
      "maxLength": 640,
      "maxGraphemes": 64
    },
    "configSchema": {
      "type": "unknown"
    }
  },
  "description": "Detailed view of an aggregator with stats"
}
apiKeyView object

View of an API key's metadata. The actual key value is never returned after initial creation.

Properties

createdAt string datetime Required

When the key was created

isRevoked boolean Required

Whether the key has been revoked

lastUsedAt string datetime Optional

When the key was last used for authentication

prefix string Required

First 12 characters of the key (e.g., 'ckapi_ab12cd') for identification in logs and UI

maxLength: 64 bytes
revokedAt string datetime Optional

When the key was revoked

View raw schema
{
  "type": "object",
  "required": [
    "prefix",
    "createdAt",
    "isRevoked"
  ],
  "properties": {
    "prefix": {
      "type": "string",
      "maxLength": 64,
      "description": "First 12 characters of the key (e.g., 'ckapi_ab12cd') for identification in logs and UI"
    },
    "createdAt": {
      "type": "string",
      "format": "datetime",
      "description": "When the key was created"
    },
    "isRevoked": {
      "type": "boolean",
      "description": "Whether the key has been revoked"
    },
    "revokedAt": {
      "type": "string",
      "format": "datetime",
      "description": "When the key was revoked"
    },
    "lastUsedAt": {
      "type": "string",
      "format": "datetime",
      "description": "When the key was last used for authentication"
    }
  },
  "description": "View of an API key's metadata. The actual key value is never returned after initial creation."
}
authorizationView object

View of an aggregator authorization for a community

Properties

aggregatorDid string did Required

DID of the authorized aggregator

communityDid string did Required

DID of the community

communityHandle string handle Optional

Handle of the community

communityName string Optional

Display name of the community

maxLength: 1280 bytes
config unknown Optional

Aggregator-specific configuration

createdAt string datetime Required

An RFC 3339 formatted timestamp.

createdBy string did Optional

DID of moderator who authorized this aggregator

disabledAt string datetime Optional

When this authorization was disabled (if enabled=false)

disabledBy string did Optional

DID of moderator who disabled this aggregator

enabled boolean Required

Whether this aggregator is currently active

recordUri string at-uri Optional

AT-URI of the authorization record

View raw schema
{
  "type": "object",
  "required": [
    "aggregatorDid",
    "communityDid",
    "enabled",
    "createdAt"
  ],
  "properties": {
    "config": {
      "type": "unknown",
      "description": "Aggregator-specific configuration"
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether this aggregator is currently active"
    },
    "createdAt": {
      "type": "string",
      "format": "datetime"
    },
    "createdBy": {
      "type": "string",
      "format": "did",
      "description": "DID of moderator who authorized this aggregator"
    },
    "recordUri": {
      "type": "string",
      "format": "at-uri",
      "description": "AT-URI of the authorization record"
    },
    "disabledAt": {
      "type": "string",
      "format": "datetime",
      "description": "When this authorization was disabled (if enabled=false)"
    },
    "disabledBy": {
      "type": "string",
      "format": "did",
      "description": "DID of moderator who disabled this aggregator"
    },
    "communityDid": {
      "type": "string",
      "format": "did",
      "description": "DID of the community"
    },
    "aggregatorDid": {
      "type": "string",
      "format": "did",
      "description": "DID of the authorized aggregator"
    },
    "communityName": {
      "type": "string",
      "maxLength": 1280,
      "description": "Display name of the community"
    },
    "communityHandle": {
      "type": "string",
      "format": "handle",
      "description": "Handle of the community"
    }
  },
  "description": "View of an aggregator authorization for a community"
}
communityAuthView object

Aggregator's view of authorization for a community (used by aggregators querying their authorizations)

Properties

config unknown Optional

Community-specific configuration for this aggregator

createdAt string datetime Required

An RFC 3339 formatted timestamp.

enabled boolean Required

Whether this authorization is currently active

recordUri string at-uri Optional

An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).

View raw schema
{
  "type": "object",
  "required": [
    "aggregator",
    "enabled",
    "createdAt"
  ],
  "properties": {
    "config": {
      "type": "unknown",
      "description": "Community-specific configuration for this aggregator"
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether this authorization is currently active"
    },
    "createdAt": {
      "type": "string",
      "format": "datetime"
    },
    "recordUri": {
      "type": "string",
      "format": "at-uri"
    },
    "aggregator": {
      "ref": "#aggregatorView",
      "type": "ref",
      "description": "The aggregator service details"
    }
  },
  "description": "Aggregator's view of authorization for a community (used by aggregators querying their authorizations)"
}

Lexicon Garden

@