app.atmobb.forum.getStamps

lexicons.atmobb.app

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "generatedStamp": {
      "description": "A stamp the network generates rather than an admin defining. Its id is fixed: atmobb:board:<board at-uri>, atmobb:arrival, atmobb:first-light, or atmobb:early-days.",
      "properties": {
        "board": {
          "description": "For a board stamp: the board it marks.",
          "format": "at-uri",
          "type": "string"
        },
        "id": {
          "maxLength": 300,
          "type": "string"
        },
        "look": {
          "ref": "app.atmobb.forum.stamp#look",
          "type": "ref"
        },
        "name": {
          "maxGraphemes": 24,
          "maxLength": 240,
          "type": "string"
        },
        "sponsor": {
          "description": "For an arrival stamp: who brought the member in.",
          "format": "did",
          "type": "string"
        },
        "via": {
          "description": "For an arrival stamp: how the member was accepted.",
          "knownValues": [
            "invite",
            "application",
            "founding"
          ],
          "maxLength": 32,
          "type": "string"
        }
      },
      "required": [
        "id",
        "name",
        "look"
      ],
      "type": "object"
    },
    "main": {
      "description": "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) and the ids they currently wear, in order.",
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "network": {
              "description": "The fixed network stamps every forum on this appview offers (first light, early days). Board and arrival defaults are per member and appear in the tray.",
              "items": {
                "ref": "#generatedStamp",
                "type": "ref"
              },
              "type": "array"
            },
            "stamps": {
              "description": "Stamps the forum defined, as app.atmobb.forum.stamp records.",
              "items": {
                "ref": "#stampView",
                "type": "ref"
              },
              "type": "array"
            },
            "tray": {
              "description": "Every stamp the actor holds on this forum. Present only when actor is given.",
              "items": {
                "ref": "#trayEntry",
                "type": "ref"
              },
              "type": "array"
            },
            "worn": {
              "description": "Ids from the tray the actor wears, in order. Present only when actor is given.",
              "items": {
                "maxLength": 300,
                "type": "string"
              },
              "maxLength": 3,
              "type": "array"
            }
          },
          "required": [
            "stamps",
            "network"
          ],
          "type": "object"
        }
      },
      "parameters": {
        "properties": {
          "actor": {
            "description": "A member whose tray and worn list to include.",
            "format": "did",
            "type": "string"
          },
          "forum": {
            "format": "did",
            "type": "string"
          }
        },
        "required": [
          "forum"
        ],
        "type": "params"
      },
      "type": "query"
    },
    "stampView": {
      "description": "An admin-defined stamp. uri and cid let a by-hand award build its strongRef.",
      "properties": {
        "cid": {
          "format": "cid",
          "type": "string"
        },
        "createdAt": {
          "format": "datetime",
          "type": "string"
        },
        "look": {
          "ref": "app.atmobb.forum.stamp#look",
          "type": "ref"
        },
        "name": {
          "maxGraphemes": 24,
          "maxLength": 240,
          "type": "string"
        },
        "trigger": {
          "ref": "app.atmobb.forum.stamp#trigger",
          "type": "ref"
        },
        "uri": {
          "format": "at-uri",
          "type": "string"
        }
      },
      "required": [
        "uri",
        "cid",
        "name",
        "look",
        "trigger",
        "createdAt"
      ],
      "type": "object"
    },
    "trayEntry": {
      "description": "One stamp a member holds. id is the stamp record's at-uri for an admin stamp or the fixed id of a generated one. uri, cid, and look are present for admin stamps and look for network stamps; a board default carries the board and its color so the app can draw it, and an arrival default carries via and sponsor.",
      "properties": {
        "board": {
          "description": "For a board stamp: the board it marks.",
          "format": "at-uri",
          "type": "string"
        },
        "boardColor": {
          "description": "For a board stamp: the board's six-digit hex color, when it has one.",
          "maxLength": 7,
          "type": "string"
        },
        "cid": {
          "format": "cid",
          "type": "string"
        },
        "id": {
          "maxLength": 300,
          "type": "string"
        },
        "look": {
          "ref": "app.atmobb.forum.stamp#look",
          "type": "ref"
        },
        "name": {
          "maxGraphemes": 24,
          "maxLength": 240,
          "type": "string"
        },
        "source": {
          "description": "How the member came to hold it: an admin-defined trigger, a default every member gets, the network set, or a by-hand award.",
          "knownValues": [
            "admin",
            "default",
            "network",
            "byHand"
          ],
          "maxLength": 32,
          "type": "string"
        },
        "sponsor": {
          "description": "For an arrival stamp: who brought the member in.",
          "format": "did",
          "type": "string"
        },
        "uri": {
          "format": "at-uri",
          "type": "string"
        },
        "via": {
          "description": "For an arrival stamp: how the member was accepted.",
          "knownValues": [
            "invite",
            "application",
            "founding"
          ],
          "maxLength": 32,
          "type": "string"
        }
      },
      "required": [
        "id",
        "name",
        "source"
      ],
      "type": "object"
    }
  },
  "id": "app.atmobb.forum.getStamps",
  "lexicon": 1
}

Validate Record

Validate a record against app.atmobb.forum.getStamps

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

Metadata

DID
did:plc:dqnwiguwsbb6uwrm7a2rsff2
CID
bafyreih7dmk4cqh3stre6cqphzjh45rvevneh2ystkwjo4m7oydniw74be
Indexed At
2026-09-13 23:12 UTC
AT-URI
at://did:plc:dqnwiguwsbb6uwrm7a2rsff2/com.atproto.lexicon.schema/app.atmobb.forum.getStamps

Version History (2 versions)

Referenced Schemas (2)

Similar Lexicons

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

  • Members of a forum ordered by arrival, with atmobb profiles and the stamps they wear.

  • 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 stamp a forum awards for belonging: being somewhere or arriving at some time, never for how much someone has posted. Lives in the forum account's repo. Members choose which awarded stamps to wear via the wearing list …

  • 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.

Lexicon Garden

@