social.showcase.profile.profile

lexicons.showcase.social

Documentation

User profile record

main record

User profile record

Record Key literal:self Fixed literal value

Properties

avatar blob Optional

Avatar image blob (1000x1000px max)

maxSize: 1.0 MB
banner blob Optional

Banner image blob (3000x1000px max)

maxSize: 1.0 MB
bio string Optional

Profile description

maxLength: 256 bytes
collectionCount integer Optional

Total number of collections

Default: 0
createdAt string datetime Required

An RFC 3339 formatted timestamp.

did string Required

User's DID

maxLength: 2048 bytes
displayName string Optional

Display name

maxLength: 64 bytes
handle string Required

User's handle

maxLength: 253 bytes
itemCount integer Optional

Total number of items in the user's library

Default: 0
schemaVersion integer Optional

Schema version for migrations (defaults to 1 if missing)

Default: 1
tags array of string Required

Profile tags for discovery (max 10)

maxLength: 10 items
updatedAt string datetime Optional

An RFC 3339 formatted timestamp.

website string uri Optional

External website URL

maxLength: 2048 bytes
View raw schema
{
  "key": "literal:self",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "did",
      "handle",
      "tags",
      "createdAt"
    ],
    "properties": {
      "bio": {
        "type": "string",
        "maxLength": 256,
        "description": "Profile description"
      },
      "did": {
        "type": "string",
        "maxLength": 2048,
        "description": "User's DID"
      },
      "tags": {
        "type": "array",
        "items": {
          "type": "string",
          "maxLength": 64
        },
        "maxLength": 10,
        "description": "Profile tags for discovery (max 10)"
      },
      "avatar": {
        "type": "blob",
        "accept": [
          "image/png",
          "image/jpeg",
          "image/webp"
        ],
        "maxSize": 1000000,
        "description": "Avatar image blob (1000x1000px max)"
      },
      "banner": {
        "type": "blob",
        "accept": [
          "image/png",
          "image/jpeg",
          "image/webp"
        ],
        "maxSize": 1000000,
        "description": "Banner image blob (3000x1000px max)"
      },
      "handle": {
        "type": "string",
        "maxLength": 253,
        "description": "User's handle"
      },
      "website": {
        "type": "string",
        "format": "uri",
        "maxLength": 2048,
        "description": "External website URL"
      },
      "showcase": {
        "type": "array",
        "items": {
          "ref": "social.showcase.defs#showcaseItem",
          "type": "ref"
        },
        "maxLength": 4,
        "description": "Featured showcase items"
      },
      "createdAt": {
        "type": "string",
        "format": "datetime"
      },
      "itemCount": {
        "type": "integer",
        "default": 0,
        "description": "Total number of items in the user's library"
      },
      "updatedAt": {
        "type": "string",
        "format": "datetime"
      },
      "displayName": {
        "type": "string",
        "maxLength": 64,
        "description": "Display name"
      },
      "schemaVersion": {
        "type": "integer",
        "default": 1,
        "description": "Schema version for migrations (defaults to 1 if missing)"
      },
      "collectionCount": {
        "type": "integer",
        "default": 0,
        "description": "Total number of collections"
      }
    }
  },
  "description": "User profile record"
}

Lexicon Garden

@