app.atmobb.forum.membership

lexicons.atmobb.app

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "closedPeriod": {
      "description": "A span the guestbook was closed. With no end it is closed still.",
      "properties": {
        "from": {
          "format": "datetime",
          "type": "string"
        },
        "to": {
          "format": "datetime",
          "type": "string"
        }
      },
      "required": [
        "from"
      ],
      "type": "object"
    },
    "main": {
      "description": "Declares membership in a forum. Lives in the member's own repo, pointing at the forum's DID — joining is an act of the member, leaving is deleting this record.",
      "key": "tid",
      "record": {
        "properties": {
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "forum": {
            "format": "did",
            "type": "string"
          },
          "guestbook": {
            "description": "Whether the member's guestbook on this forum is open for signing. Absent means closed.",
            "type": "boolean"
          },
          "guestbookBlocked": {
            "description": "Signers the member blocked from their guestbook; none of their entries show.",
            "items": {
              "format": "did",
              "type": "string"
            },
            "maxLength": 500,
            "type": "array"
          },
          "guestbookClosed": {
            "description": "Periods the guestbook was closed; an entry indexed during one never shows. Turning the guestbook on records the end of the current closed period (or, the first time, a period from the beginning of time to now); turning it off starts a new one. Past 20, the oldest periods merge into one, so nothing they covered resurfaces.",
            "items": {
              "ref": "#closedPeriod",
              "type": "ref"
            },
            "maxLength": 20,
            "type": "array"
          },
          "guestbookHidden": {
            "description": "At-uris of guestbook entries the member hid.",
            "items": {
              "format": "at-uri",
              "type": "string"
            },
            "maxLength": 500,
            "type": "array"
          },
          "pinned": {
            "description": "At-uris of the member's own topics on this forum, pinned to their profile page in order.",
            "items": {
              "format": "at-uri",
              "type": "string"
            },
            "maxLength": 4,
            "type": "array"
          },
          "wearing": {
            "description": "Stamp ids the member wears on this forum, in order: an admin stamp's at-uri, or the fixed id of a generated stamp (atmobb:board:<board at-uri>, atmobb:arrival, atmobb:first-light, atmobb:early-days).",
            "items": {
              "maxLength": 300,
              "type": "string"
            },
            "maxLength": 6,
            "type": "array"
          }
        },
        "required": [
          "forum"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "app.atmobb.forum.membership",
  "lexicon": 1
}

Validate Record

Validate a record against app.atmobb.forum.membership

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:dqnwiguwsbb6uwrm7a2rsff2
CID
bafyreieynmww352hkuyw56ywzyboygsbbjgux4pbe2dxzousnouan7tzlq
Indexed At
2026-10-07 04:30 UTC
AT-URI
at://did:plc:dqnwiguwsbb6uwrm7a2rsff2/com.atproto.lexicon.schema/app.atmobb.forum.membership

Version History (3 versions)

Similar Lexicons

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

  • A guestbook entry: a short note signed on a member's profile page on one forum. Lives in the signer's own repo — signing is an act of the signer, taking it back is deleting this record. The profile owner decides what …

  • One account's membership standing with a gated forum: whether the forum has accepted them, since when, who sponsored them, and whom they have sponsored. Derived from the forum's public acceptMember and revokeMember acti…

  • A forum's stamps: the admin-defined stamp records plus the generated network set. With actor, also that member's tray (every stamp they hold on this forum), the ids they currently wear, in order, and the topics they pin…

  • The entries signed in one member's guestbook on one forum, newest first by index time. Nothing while the owner keeps it closed or is banned; entries indexed while it was closed, by signers banned or shut out by a closed…

  • A forum's identity and configuration. Lives in the forum account's repo; the forum's DID is the forum's identity.

Lexicon Garden

@