{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "link": {
      "description": "A linked external account",
      "properties": {
        "icon": {
          "description": "Icon identifier for the linked account",
          "maxLength": 64,
          "type": "string"
        },
        "link": {
          "description": "URL to the linked account",
          "format": "uri",
          "maxLength": 2048,
          "type": "string"
        },
        "name": {
          "description": "Display name of the linked account",
          "maxLength": 256,
          "type": "string"
        },
        "order": {
          "description": "Sort order for displaying linked accounts (lower numbers appear first)",
          "minimum": 0,
          "type": "integer"
        }
      },
      "required": [
        "icon",
        "name",
        "link",
        "order"
      ],
      "type": "object"
    },
    "main": {
      "description": "Mackinac extended profile. Supplements app.bsky.actor.profile with additional fields.",
      "key": "literal:self",
      "record": {
        "properties": {
          "description": {
            "description": "Extended bio content",
            "maxLength": 10000,
            "type": "string"
          },
          "headline": {
            "description": "Short headline for the profile",
            "maxLength": 256,
            "type": "string"
          },
          "links": {
            "description": "Linked external accounts",
            "items": {
              "ref": "#link",
              "type": "ref"
            },
            "maxLength": 20,
            "type": "array"
          },
          "location": {
            "description": "Location or city",
            "maxLength": 256,
            "type": "string"
          },
          "website": {
            "description": "Personal website URL",
            "format": "uri",
            "maxLength": 2048,
            "type": "string"
          }
        },
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "social.mackinac.actor.profile",
  "lexicon": 1
}
