app.atmobb.actor.profile

lexicons.atmobb.app

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "avatarBuilder": {
      "description": "Legacy built avatar as part + colour choices. Kept so existing records stay valid.",
      "properties": {
        "accessory": {
          "ref": "#part",
          "type": "ref"
        },
        "eyebrows": {
          "ref": "#part",
          "type": "ref"
        },
        "eyes": {
          "ref": "#part",
          "type": "ref"
        },
        "facialFeature": {
          "ref": "#part",
          "type": "ref"
        },
        "facialHair": {
          "ref": "#part",
          "type": "ref"
        },
        "hairBack": {
          "ref": "#part",
          "type": "ref"
        },
        "hairFront": {
          "ref": "#part",
          "type": "ref"
        },
        "hat": {
          "ref": "#part",
          "type": "ref"
        },
        "mouth": {
          "ref": "#part",
          "type": "ref"
        },
        "neckwear": {
          "ref": "#garment",
          "type": "ref"
        },
        "nose": {
          "ref": "#part",
          "type": "ref"
        },
        "skin": {
          "description": "Skin tone id; drives body, head, nose and facial-feature colouring.",
          "type": "string"
        },
        "top": {
          "ref": "#garment",
          "type": "ref"
        },
        "v": {
          "description": "Recipe schema version.",
          "minimum": 1,
          "type": "integer"
        }
      },
      "required": [
        "v",
        "skin"
      ],
      "type": "object"
    },
    "garment": {
      "description": "A garment choice: which type (e.g. jacket, tie) in which colour.",
      "properties": {
        "color": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type",
        "color"
      ],
      "type": "object"
    },
    "main": {
      "description": "A user's atmoBB profile, global across all forums. Lives in the user's repo.",
      "key": "literal:self",
      "record": {
        "properties": {
          "avatar": {
            "accept": [
              "image/png",
              "image/jpeg",
              "image/webp",
              "image/gif"
            ],
            "maxSize": 1000000,
            "type": "blob"
          },
          "avatarBuilder": {
            "description": "Legacy layered-avatar recipe from an earlier builder. atmobb ignores it; clients should read the `avatar` blob.",
            "ref": "#avatarBuilder",
            "type": "ref"
          },
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "description": {
            "description": "Free-text bio, shown on the profile's About panel. Global across forums.",
            "maxGraphemes": 256,
            "maxLength": 2560,
            "type": "string"
          },
          "displayName": {
            "maxGraphemes": 64,
            "maxLength": 640,
            "type": "string"
          },
          "pronouns": {
            "maxGraphemes": 64,
            "maxLength": 640,
            "type": "string"
          },
          "signature": {
            "description": "Rendered under every post, phpBB style. Keep it short; clients may truncate.",
            "items": {
              "refs": [
                "app.atmobb.richtext.block#text",
                "app.atmobb.richtext.block#quote",
                "app.atmobb.richtext.block#code",
                "app.atmobb.richtext.block#image"
              ],
              "type": "union"
            },
            "maxLength": 3,
            "type": "array"
          },
          "theme": {
            "description": "Personal color theme across forums. Omit to follow each forum's default styling.",
            "knownValues": [
              "classic",
              "sky",
              "bubblegum",
              "midnight",
              "forest"
            ],
            "maxLength": 64,
            "type": "string"
          },
          "title": {
            "description": "Self-chosen user title, shown under the username where the forum allows it.",
            "maxGraphemes": 64,
            "maxLength": 640,
            "type": "string"
          },
          "website": {
            "format": "uri",
            "type": "string"
          }
        },
        "type": "object"
      },
      "type": "record"
    },
    "part": {
      "description": "A part choice: a shape id and, where the part is colourable, a palette colour id.",
      "properties": {
        "color": {
          "type": "string"
        },
        "shape": {
          "type": "string"
        }
      },
      "required": [
        "shape"
      ],
      "type": "object"
    }
  },
  "id": "app.atmobb.actor.profile",
  "lexicon": 1
}

Validate Record

Validate a record against app.atmobb.actor.profile

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

Metadata

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

Version History (6 versions)

Referenced Schemas (4)

Similar Lexicons

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

Lexicon Garden

@