com.getorbyt.community.declaration

getorbyt.com

Documentation

The canonical public descriptor for an Orbyt Community, and the record that declares the Community exists. Its AT-URI is the Community's identity everywhere else in the protocol. The record key is a TID, including for the replacement declaration an accepted ownership transfer produces: the recipient mints it before accepting and names it to the AppView, which stores it as the only URI the continuation may be written at. Every Community is public: the record is world-readable, and the directory and feed are open. Only posting is gated, by postPolicy.

main record

The canonical public descriptor for an Orbyt Community, and the record that declares the Community exists. Its AT-URI is the Community's identity everywhere else in the protocol. The record key is a TID, including for the replacement declaration an accepted ownership transfer produces: the recipient mints it before accepting and names it to the AppView, which stores it as the only URI the continuation may be written at. Every Community is public: the record is world-readable, and the directory and feed are open. Only posting is gated, by postPolicy.

Record Key tid Timestamp-based ID

Properties

accentColor string Optional

A CSS-style hex colour, for example #D07EA2. Free-form so a client may carry a richer value later; a value this service cannot parse is ignored rather than rejected.

maxLength: 32 bytes
avatar blob Optional

Community image artwork for avatars and Explore tiles. Animated GIFs loop in supporting clients. It may use a square crop independent of avatarVideo.

maxSize: 3.0 MB
avatarFallback blob Optional

Optional still rendition of avatar for constrained or reduced-data connections. New clients export it from the same square crop as avatar. Clients prefer avatar for animation and use this only when animation or video should not be loaded.

maxSize: 3.0 MB
avatarVideo blob Optional

Optional silent H.264 MP4 header with even dimensions, yuv420p and the moov atom first. New clients export a square crop positioned independently from avatar; older aspect ratios remain valid. Supply an image avatar alongside video for image-only surfaces.

maxSize: 3.0 MB
continuationOf string at-uri Optional

The stable Community AT-URI this declaration continues after an accepted ownership transfer. The service ignores this field unless a matching accepted transfer authorizes this repository.

createdAt string datetime Required

An RFC 3339 formatted timestamp.

description string Optional

No description available.

maxLength: 2000 bytes
labels union Optional

Self-applied content labels, spelled as on app.bsky.feed.post. A Community carrying an adult label is hidden from viewers whose adult-content preference is off, exactly as a labeled post is.

name string Required

The globally unique lowercase Community name. Clients render it with a leading slash, for example /funny.

maxLength: 63 bytesminLength: 2 bytes
postPolicy string Optional

Who may link a post to this Community. Absent means anyone. A value this service does not know is treated as the most restrictive policy rather than the least.

Known values: anyone, members, moderators
updatedAt string datetime Optional

An RFC 3339 formatted timestamp.

View raw schema
{
  "description": "The canonical public descriptor for an Orbyt Community, and the record that declares the Community exists. Its AT-URI is the Community's identity everywhere else in the protocol. The record key is a TID, including for the replacement declaration an accepted ownership transfer produces: the recipient mints it before accepting and names it to the AppView, which stores it as the only URI the continuation may be written at. Every Community is public: the record is world-readable, and the directory and feed are open. Only posting is gated, by postPolicy.",
  "key": "tid",
  "record": {
    "properties": {
      "accentColor": {
        "description": "A CSS-style hex colour, for example #D07EA2. Free-form so a client may carry a richer value later; a value this service cannot parse is ignored rather than rejected.",
        "maxLength": 32,
        "type": "string"
      },
      "avatar": {
        "accept": [
          "image/gif",
          "image/png",
          "image/jpeg",
          "image/webp"
        ],
        "description": "Community image artwork for avatars and Explore tiles. Animated GIFs loop in supporting clients. It may use a square crop independent of avatarVideo.",
        "maxSize": 3000000,
        "type": "blob"
      },
      "avatarFallback": {
        "accept": [
          "image/jpeg",
          "image/webp"
        ],
        "description": "Optional still rendition of avatar for constrained or reduced-data connections. New clients export it from the same square crop as avatar. Clients prefer avatar for animation and use this only when animation or video should not be loaded.",
        "maxSize": 3000000,
        "type": "blob"
      },
      "avatarVideo": {
        "accept": [
          "video/mp4"
        ],
        "description": "Optional silent H.264 MP4 header with even dimensions, yuv420p and the moov atom first. New clients export a square crop positioned independently from avatar; older aspect ratios remain valid. Supply an image avatar alongside video for image-only surfaces.",
        "maxSize": 3000000,
        "type": "blob"
      },
      "continuationOf": {
        "description": "The stable Community AT-URI this declaration continues after an accepted ownership transfer. The service ignores this field unless a matching accepted transfer authorizes this repository.",
        "format": "at-uri",
        "type": "string"
      },
      "createdAt": {
        "format": "datetime",
        "type": "string"
      },
      "description": {
        "maxLength": 2000,
        "type": "string"
      },
      "labels": {
        "description": "Self-applied content labels, spelled as on app.bsky.feed.post. A Community carrying an adult label is hidden from viewers whose adult-content preference is off, exactly as a labeled post is.",
        "refs": [
          "com.atproto.label.defs#selfLabels"
        ],
        "type": "union"
      },
      "name": {
        "description": "The globally unique lowercase Community name. Clients render it with a leading slash, for example /funny.",
        "maxLength": 63,
        "minLength": 2,
        "type": "string"
      },
      "postPolicy": {
        "description": "Who may link a post to this Community. Absent means anyone. A value this service does not know is treated as the most restrictive policy rather than the least.",
        "knownValues": [
          "anyone",
          "members",
          "moderators"
        ],
        "type": "string"
      },
      "rules": {
        "items": {
          "ref": "com.getorbyt.community.defs#rule",
          "type": "ref"
        },
        "maxLength": 20,
        "type": "array"
      },
      "updatedAt": {
        "format": "datetime",
        "type": "string"
      }
    },
    "required": [
      "name",
      "createdAt"
    ],
    "type": "object"
  },
  "type": "record"
}

Lexicon Garden

@