cv.atmos.club.postV2

lexicons.atmos.cv

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A post made into a club. Lives in the author's own repo and is public like every record there; apps that do not know this type do not show it, so it does not appear on Bluesky. The author's claim that the post is in the club named by community; the club's own cv.atmos.club.admission record (in the club's repo) is what makes a top-level post part of the club. Treat a top-level post as in the club only while the admission exists and points at this record's current URI and CID. A reply is in the club when its root is a cv.atmos.club.postV2 admitted to the same club as this record's community, and its author is a member of the club; a reply whose community differs from its root's is in no club.",
      "key": "tid",
      "record": {
        "properties": {
          "community": {
            "description": "DID of the club account the post was made into.",
            "format": "did",
            "type": "string"
          },
          "createdAt": {
            "description": "When the post was made.",
            "format": "datetime",
            "type": "string"
          },
          "embed": {
            "closed": false,
            "description": "Images or a link card. Open, so other media can be added later.",
            "refs": [
              "app.bsky.embed.images",
              "app.bsky.embed.external"
            ],
            "type": "union"
          },
          "facets": {
            "description": "Annotations of the text (mentions, links, tags), byte-offset indexed.",
            "items": {
              "ref": "app.bsky.richtext.facet",
              "type": "ref"
            },
            "maxLength": 500,
            "type": "array"
          },
          "labels": {
            "description": "Self-applied labels, such as a content warning.",
            "refs": [
              "com.atproto.label.defs#selfLabels"
            ],
            "type": "union"
          },
          "langs": {
            "description": "Languages the post is written in.",
            "items": {
              "format": "language",
              "type": "string"
            },
            "maxLength": 3,
            "type": "array"
          },
          "reply": {
            "ref": "#replyRef",
            "type": "ref"
          },
          "tags": {
            "description": "Additional hashtags, in addition to any in the text and facets.",
            "items": {
              "maxGraphemes": 64,
              "maxLength": 640,
              "type": "string"
            },
            "maxLength": 8,
            "type": "array"
          },
          "text": {
            "description": "The post text. Mentions, links and tags are marked by facets.",
            "maxGraphemes": 3000,
            "maxLength": 30000,
            "type": "string"
          }
        },
        "required": [
          "community",
          "text",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "replyRef": {
      "properties": {
        "parent": {
          "ref": "com.atproto.repo.strongRef",
          "type": "ref"
        },
        "root": {
          "ref": "com.atproto.repo.strongRef",
          "type": "ref"
        }
      },
      "required": [
        "root",
        "parent"
      ],
      "type": "object"
    }
  },
  "id": "cv.atmos.club.postV2",
  "lexicon": 1
}

Validate Record

Validate a record against cv.atmos.club.postV2

Validation Options
Automatically resolve and include external schemas for full validation
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:phscmolkgirxzzjoatkfd5xx
CID
bafyreibeb7hexcu2mqqcwm6h4czvtzpa26kmsyiydaibwffv2dpcgfdbmm
Indexed At
2026-10-30 20:50 UTC
AT-URI
at://did:plc:phscmolkgirxzzjoatkfd5xx/com.atproto.lexicon.schema/cv.atmos.club.postV2

Referenced Schemas (4)

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • Deprecated: legacy club posts only; new club posts use cv.atmos.club.postV2. Tags a post with the club it was posted into. Lives in the author's repo under the same record key as the app.bsky.feed.post it points at, so …

  • A post that can be created in the world of Anisota

  • A post authored by a user, living in the author's repository. Successor to the deprecated social.coves.community.post: authorship is derived from the repository the record lives in, so there is no in-record author field…

  • A post in a Coves community. Posts live in community repositories and persist independently of the author. DEPRECATED: no new records are written to this collection. Successor: social.coves.community.postv2, which lives…

  • Record containing a Bluesky post.

Lexicon Garden

@