me.linkna.linkinbio

lexicon.store View official

{
  "id": "me.linkna.linkinbio",
  "defs": {
    "main": {
      "key": "literal:self",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "cards"
        ],
        "properties": {
          "cards": {
            "type": "array",
            "items": {
              "refs": [
                "#linkCard",
                "#headerCard",
                "#widgetGoodreads",
                "#widgetGithub",
                "#widgetTealfm",
                "#widgetLastfm",
                "#widgetClock",
                "#widgetYoutube",
                "#widgetPatreon",
                "#widgetSubstack",
                "#widgetBeehiiv",
                "#widgetVideo",
                "#widgetTwitch",
                "#widgetDiscord",
                "#widgetReddit",
                "#widgetMedium",
                "#widgetMap"
              ],
              "type": "union"
            },
            "description": "Ordered list of cards on the page."
          },
          "theme": {
            "type": "string",
            "description": "Deprecated: use themeConfig instead."
          },
          "socialIcons": {
            "type": "array",
            "items": {
              "ref": "#socialIcon",
              "type": "ref"
            },
            "description": "Social media icons displayed on the profile."
          },
          "themeConfig": {
            "ref": "#themeConfig",
            "type": "ref"
          },
          "connectedServices": {
            "ref": "#connectedServices",
            "type": "ref"
          }
        }
      },
      "description": "A user's link-in-bio page containing cards, theme configuration, and social icons."
    },
    "linkCard": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "url": {
          "type": "string",
          "format": "uri",
          "description": "URL the card links to."
        },
        "text": {
          "type": "string",
          "maxLength": 100,
          "description": "Display text for the card (falls back to URL domain if empty)."
        },
        "type": {
          "type": "string",
          "description": "Card type discriminator. Value: 'link' or absent for link cards."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the card is visible on the public page. Defaults to true."
        },
        "highlighted": {
          "type": "boolean",
          "description": "Whether the card is visually highlighted."
        }
      },
      "description": "A standard link card."
    },
    "widgetMap": {
      "type": "object",
      "required": [
        "id",
        "type",
        "locationName",
        "latitude",
        "longitude"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2",
            "2x1"
          ]
        },
        "type": {
          "type": "string",
          "const": "map",
          "description": "Card type discriminator."
        },
        "zoom": {
          "type": "integer",
          "description": "Map zoom level (1-18). Default: 12."
        },
        "style": {
          "type": "string",
          "description": "Map style. Default: light.",
          "knownValues": [
            "light",
            "dark"
          ]
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "latitude": {
          "type": "number",
          "description": "Latitude coordinate."
        },
        "longitude": {
          "type": "number",
          "description": "Longitude coordinate."
        },
        "locationName": {
          "type": "string",
          "description": "Display name for the location."
        }
      },
      "description": "A map location widget card."
    },
    "headerCard": {
      "type": "object",
      "required": [
        "id",
        "type",
        "text"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "text": {
          "type": "string",
          "maxLength": 100,
          "description": "Header text displayed as a section divider."
        },
        "type": {
          "type": "string",
          "const": "header",
          "description": "Card type discriminator."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the header is visible on the public page. Defaults to true."
        },
        "alignment": {
          "enum": [
            "left",
            "center",
            "right"
          ],
          "type": "string",
          "description": "Text alignment for the header. Defaults to the user's button alignment."
        }
      },
      "description": "A section header/divider card."
    },
    "redditPost": {
      "type": "object",
      "required": [
        "title",
        "subreddit",
        "url",
        "score",
        "numComments"
      ],
      "properties": {
        "url": {
          "type": "string",
          "description": "Post URL."
        },
        "score": {
          "type": "integer",
          "description": "Post score."
        },
        "title": {
          "type": "string",
          "description": "Post title."
        },
        "subreddit": {
          "type": "string",
          "description": "Subreddit name."
        },
        "numComments": {
          "type": "integer",
          "description": "Number of comments."
        }
      },
      "description": "A Reddit post."
    },
    "socialIcon": {
      "type": "object",
      "required": [
        "id",
        "platform",
        "url"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the icon."
        },
        "url": {
          "type": "string",
          "format": "uri",
          "description": "URL to the user's profile on this platform."
        },
        "platform": {
          "type": "string",
          "description": "Platform identifier (e.g., 'bluesky', 'twitter', 'instagram')."
        }
      },
      "description": "A social media icon link."
    },
    "tealfmPlay": {
      "type": "object",
      "required": [
        "trackName",
        "artistName"
      ],
      "properties": {
        "coverUrl": {
          "type": "string",
          "description": "URL to the album cover image (from Cover Art Archive)."
        },
        "originUrl": {
          "type": "string",
          "description": "URL to the track on the original music service."
        },
        "trackName": {
          "type": "string",
          "description": "Track/song name."
        },
        "artistName": {
          "type": "string",
          "description": "Artist name(s)."
        },
        "playedTime": {
          "type": "string",
          "format": "datetime",
          "description": "When the track was played."
        },
        "releaseName": {
          "type": "string",
          "description": "Album/release name."
        }
      },
      "description": "A recently played track from teal.fm."
    },
    "themeConfig": {
      "type": "object",
      "properties": {
        "preset": {
          "type": "string",
          "description": "Theme preset ID (e.g., 'custom', 'agate', 'air', 'astrid', 'aura')."
        },
        "fontSize": {
          "type": "string",
          "description": "Font size. Default: md.",
          "knownValues": [
            "sm",
            "md",
            "lg"
          ]
        },
        "particles": {
          "type": "string",
          "description": "Background particle effect. Default: none.",
          "knownValues": [
            "none",
            "white",
            "blue",
            "leaves",
            "grid-sm",
            "grid-lg"
          ]
        },
        "cardShadow": {
          "type": "string",
          "description": "Card/button shadow intensity.",
          "knownValues": [
            "none",
            "sm",
            "md",
            "lg",
            "xl"
          ]
        },
        "fontFamily": {
          "type": "string",
          "description": "Font family for the page."
        },
        "cursorStyle": {
          "type": "string",
          "description": "Custom cursor style. Default: default.",
          "knownValues": [
            "default",
            "hello-kitty"
          ]
        },
        "showBranding": {
          "type": "boolean",
          "description": "Whether Linkname branding is visible. Default: true."
        },
        "cardTextColor": {
          "type": "string",
          "description": "Card/button text color."
        },
        "cardHoverColor": {
          "type": "string",
          "description": "Card/button border color on hover."
        },
        "cursorSparkles": {
          "type": "boolean",
          "description": "Whether cursor has sparkle trail. Default: false."
        },
        "backgroundColor": {
          "type": "string",
          "description": "Page background color."
        },
        "backgroundImage": {
          "type": "blob",
          "accept": [
            "image/png",
            "image/jpeg",
            "image/webp"
          ],
          "maxSize": 10000000,
          "description": "Background wallpaper image blob."
        },
        "buttonAlignment": {
          "type": "string",
          "description": "Button content alignment. Default: left.",
          "knownValues": [
            "left",
            "right"
          ]
        },
        "buttonHoverGlow": {
          "type": "boolean",
          "description": "Whether buttons glow on hover. Default: false."
        },
        "cardBorderColor": {
          "type": "string",
          "description": "Card/button border color."
        },
        "cardBorderRadius": {
          "type": "string",
          "description": "Card/button border radius.",
          "knownValues": [
            "none",
            "sm",
            "md",
            "lg",
            "full"
          ]
        },
        "contentCardColor": {
          "type": "string",
          "description": "Card container background color."
        },
        "profileAlignment": {
          "type": "string",
          "description": "Profile section alignment. Default: center.",
          "knownValues": [
            "left",
            "center",
            "right"
          ]
        },
        "profileTextColor": {
          "type": "string",
          "description": "Profile section text color."
        },
        "socialIconsColor": {
          "type": "string",
          "description": "Social icons color."
        },
        "socialIconsShape": {
          "type": "string",
          "description": "Social icons container shape. Default: dock.",
          "knownValues": [
            "dock",
            "sphere"
          ]
        },
        "backgroundGradient": {
          "type": "string",
          "description": "CSS gradient for the page background."
        },
        "profilePictureSize": {
          "type": "string",
          "description": "Profile picture size. Default: sm.",
          "knownValues": [
            "sm",
            "md",
            "lg"
          ]
        },
        "cardBackgroundColor": {
          "type": "string",
          "description": "Individual card/button background color."
        },
        "profilePictureShape": {
          "type": "string",
          "description": "Profile picture shape. Default: circle.",
          "knownValues": [
            "circle",
            "rounded",
            "square"
          ]
        },
        "buttonHoverGlowColor": {
          "type": "string",
          "description": "Color for the button hover glow effect."
        },
        "backgroundImageCredit": {
          "type": "string",
          "format": "uri",
          "description": "Optional credit URL for the wallpaper image artist. Stored for attribution purposes only, not displayed on the public page."
        },
        "socialIconsShapeColor": {
          "type": "string",
          "description": "Background color for social icons dock/sphere."
        },
        "socialIconsBorderColor": {
          "type": "string",
          "description": "Border color for social icons dock/sphere."
        }
      },
      "description": "Theme configuration for the page appearance."
    },
    "widgetClock": {
      "type": "object",
      "required": [
        "id",
        "type",
        "mode"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "mode": {
          "type": "string",
          "description": "Widget mode: clock (timezone display), countdown (to a target date), or timer (interactive stopwatch).",
          "knownValues": [
            "clock",
            "countdown",
            "timer"
          ]
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2",
            "2x1"
          ]
        },
        "type": {
          "type": "string",
          "const": "clock",
          "description": "Card type discriminator."
        },
        "label": {
          "type": "string",
          "maxLength": 100,
          "description": "Optional display label for the widget."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "timezone": {
          "type": "string",
          "description": "IANA timezone identifier for clock mode (e.g. 'America/New_York')."
        },
        "targetDate": {
          "type": "string",
          "format": "datetime",
          "description": "ISO 8601 target date for countdown mode."
        }
      },
      "description": "A clock, countdown, or stopwatch timer widget card."
    },
    "widgetVideo": {
      "type": "object",
      "required": [
        "id",
        "type",
        "videoBlobRef",
        "did"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "alt": {
          "type": "string",
          "maxLength": 1000,
          "description": "Alt text for accessibility."
        },
        "did": {
          "type": "string",
          "description": "Author DID for constructing PDS blob URLs."
        },
        "loop": {
          "type": "boolean",
          "description": "Whether the video loops. Defaults to true."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2",
            "2x1"
          ]
        },
        "type": {
          "type": "string",
          "const": "video",
          "description": "Card type discriminator."
        },
        "muted": {
          "type": "boolean",
          "description": "Whether the video is muted. Defaults to true."
        },
        "title": {
          "type": "string",
          "maxLength": 100,
          "description": "Video title overlay."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "createdAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the video was uploaded."
        },
        "aspectRatio": {
          "ref": "#videoAspectRatio",
          "type": "ref",
          "description": "Video aspect ratio."
        },
        "showOverlay": {
          "type": "boolean",
          "description": "Whether to show the title overlay. Defaults to false."
        },
        "videoBlobRef": {
          "type": "blob",
          "description": "Reference to the uploaded video blob."
        }
      },
      "description": "A video widget card."
    },
    "widgetGithub": {
      "type": "object",
      "required": [
        "id",
        "type",
        "githubUsername",
        "contributions"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2"
          ]
        },
        "type": {
          "type": "string",
          "const": "github",
          "description": "Card type discriminator."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "lastSyncedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the contribution data was last fetched from GitHub."
        },
        "contributions": {
          "type": "array",
          "items": {
            "ref": "#githubContributionDay",
            "type": "ref"
          },
          "description": "Contribution data for the last year."
        },
        "githubUsername": {
          "type": "string",
          "description": "GitHub username."
        },
        "totalContributions": {
          "type": "integer",
          "description": "Total number of contributions in the last year."
        }
      },
      "description": "A GitHub contributions graph widget card."
    },
    "widgetLastfm": {
      "type": "object",
      "required": [
        "id",
        "type",
        "lastfmUsername",
        "plays"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2"
          ]
        },
        "type": {
          "type": "string",
          "const": "lastfm",
          "description": "Card type discriminator."
        },
        "plays": {
          "type": "array",
          "items": {
            "ref": "#tealfmPlay",
            "type": "ref"
          },
          "description": "Recently played tracks from Last.fm."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "lastSyncedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the play data was last fetched from Last.fm."
        },
        "coverArtNotice": {
          "type": "string",
          "description": "Copyright notice for cover art images."
        },
        "lastfmUsername": {
          "type": "string",
          "description": "Last.fm username for fetching scrobbles."
        }
      },
      "description": "A Last.fm recently played tracks widget card."
    },
    "widgetMedium": {
      "type": "object",
      "required": [
        "id",
        "type",
        "username",
        "profileUrl"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "bio": {
          "type": "string",
          "description": "Medium bio."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2",
            "2x1"
          ]
        },
        "type": {
          "type": "string",
          "const": "medium",
          "description": "Card type discriminator."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "articles": {
          "type": "array",
          "items": {
            "ref": "#mediumArticle",
            "type": "ref"
          },
          "description": "Recent articles."
        },
        "username": {
          "type": "string",
          "description": "Medium username."
        },
        "profileUrl": {
          "type": "string",
          "description": "Medium profile URL."
        },
        "displayName": {
          "type": "string",
          "description": "Medium display name."
        },
        "lastSyncedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the Medium data was last fetched."
        },
        "followerCount": {
          "type": "integer",
          "description": "Number of followers."
        }
      },
      "description": "A Medium profile widget card."
    },
    "widgetReddit": {
      "type": "object",
      "required": [
        "id",
        "type",
        "username",
        "profileUrl"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2",
            "2x1"
          ]
        },
        "type": {
          "type": "string",
          "const": "reddit",
          "description": "Card type discriminator."
        },
        "karma": {
          "type": "integer",
          "description": "Total karma."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "username": {
          "type": "string",
          "description": "Reddit username."
        },
        "avatarUrl": {
          "type": "string",
          "description": "Reddit avatar URL."
        },
        "linkKarma": {
          "type": "integer",
          "description": "Link karma."
        },
        "profileUrl": {
          "type": "string",
          "description": "Reddit profile URL."
        },
        "recentPosts": {
          "type": "array",
          "items": {
            "ref": "#redditPost",
            "type": "ref"
          },
          "description": "Recent posts."
        },
        "commentKarma": {
          "type": "integer",
          "description": "Comment karma."
        },
        "lastSyncedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the Reddit data was last fetched."
        }
      },
      "description": "A Reddit profile widget card."
    },
    "widgetTealfm": {
      "type": "object",
      "required": [
        "id",
        "type",
        "plays"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2"
          ]
        },
        "type": {
          "type": "string",
          "const": "tealfm",
          "description": "Card type discriminator."
        },
        "plays": {
          "type": "array",
          "items": {
            "ref": "#tealfmPlay",
            "type": "ref"
          },
          "description": "Recently played tracks."
        },
        "source": {
          "type": "string",
          "description": "Data source for the widget. 'lastfm' for imported Last.fm scrobbles, 'tealfm' (default) for native AT Protocol plays.",
          "knownValues": [
            "tealfm",
            "lastfm"
          ]
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "lastSyncedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the play data was last fetched from the PDS."
        },
        "coverArtNotice": {
          "type": "string",
          "description": "Copyright notice for cover art images."
        }
      },
      "description": "A teal.fm recently played tracks widget card."
    },
    "widgetTwitch": {
      "type": "object",
      "required": [
        "id",
        "type",
        "username"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2",
            "2x1"
          ]
        },
        "type": {
          "type": "string",
          "const": "twitch",
          "description": "Card type discriminator."
        },
        "isLive": {
          "type": "boolean",
          "description": "Whether the channel is currently live."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "username": {
          "type": "string",
          "description": "Twitch username."
        },
        "streamGame": {
          "type": "string",
          "description": "Current stream game/category."
        },
        "displayName": {
          "type": "string",
          "description": "Twitch display name."
        },
        "streamTitle": {
          "type": "string",
          "description": "Current stream title."
        },
        "viewerCount": {
          "type": "integer",
          "description": "Current viewer count."
        },
        "lastSyncedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the channel data was last fetched."
        },
        "profileImageUrl": {
          "type": "string",
          "description": "Twitch profile image URL."
        }
      },
      "description": "A Twitch channel widget card."
    },
    "youtubeVideo": {
      "type": "object",
      "required": [
        "videoId",
        "title",
        "publishedAt"
      ],
      "properties": {
        "title": {
          "type": "string",
          "description": "Video title."
        },
        "isShort": {
          "type": "boolean",
          "description": "Whether this is a YouTube Short."
        },
        "videoId": {
          "type": "string",
          "description": "YouTube video ID."
        },
        "publishedAt": {
          "type": "string",
          "description": "When the video was published."
        }
      },
      "description": "A YouTube video."
    },
    "goodreadsBook": {
      "type": "object",
      "required": [
        "title",
        "author"
      ],
      "properties": {
        "link": {
          "type": "string",
          "description": "URL to the book on Goodreads."
        },
        "title": {
          "type": "string",
          "description": "Book title."
        },
        "author": {
          "type": "string",
          "description": "Book author."
        },
        "rating": {
          "type": "integer",
          "maximum": 5,
          "minimum": 0,
          "description": "User's rating (1-5), or absent if unrated."
        },
        "coverUrl": {
          "type": "string",
          "description": "URL to the book cover image."
        }
      },
      "description": "A book from a Goodreads shelf."
    },
    "mediumArticle": {
      "type": "object",
      "required": [
        "title",
        "url",
        "publishedAt",
        "claps"
      ],
      "properties": {
        "url": {
          "type": "string",
          "description": "Article URL."
        },
        "claps": {
          "type": "integer",
          "description": "Number of claps."
        },
        "title": {
          "type": "string",
          "description": "Article title."
        },
        "subtitle": {
          "type": "string",
          "description": "Article subtitle."
        },
        "publishedAt": {
          "type": "string",
          "description": "When the article was published."
        },
        "readingTime": {
          "type": "integer",
          "description": "Estimated reading time in minutes."
        }
      },
      "description": "A Medium article."
    },
    "widgetBeehiiv": {
      "type": "object",
      "required": [
        "id",
        "type",
        "publicationId",
        "publicationName",
        "publicationUrl"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2",
            "2x1"
          ]
        },
        "type": {
          "type": "string",
          "const": "beehiiv",
          "description": "Card type discriminator."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "imageUrl": {
          "type": "string",
          "description": "Publication image URL."
        },
        "description": {
          "type": "string",
          "description": "Publication description."
        },
        "lastSyncedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the publication data was last fetched."
        },
        "publicationId": {
          "type": "string",
          "description": "Beehiiv publication ID."
        },
        "publicationUrl": {
          "type": "string",
          "description": "URL to the Beehiiv publication."
        },
        "publicationName": {
          "type": "string",
          "description": "Beehiiv publication name."
        }
      },
      "description": "A Beehiiv publication widget card."
    },
    "widgetDiscord": {
      "type": "object",
      "required": [
        "id",
        "type",
        "serverId",
        "serverName",
        "inviteUrl"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2",
            "2x1"
          ]
        },
        "type": {
          "type": "string",
          "const": "discord",
          "description": "Card type discriminator."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "iconUrl": {
          "type": "string",
          "description": "Server icon URL."
        },
        "serverId": {
          "type": "string",
          "description": "Discord server ID."
        },
        "bannerUrl": {
          "type": "string",
          "description": "Server banner URL."
        },
        "inviteUrl": {
          "type": "string",
          "description": "Discord invite URL."
        },
        "serverName": {
          "type": "string",
          "description": "Discord server name."
        },
        "description": {
          "type": "string",
          "description": "Server description."
        },
        "memberCount": {
          "type": "integer",
          "description": "Total member count."
        },
        "lastSyncedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the server data was last fetched."
        },
        "presenceCount": {
          "type": "integer",
          "description": "Online member count."
        }
      },
      "description": "A Discord server widget card."
    },
    "widgetPatreon": {
      "type": "object",
      "required": [
        "id",
        "type",
        "campaignId",
        "creatorName",
        "campaignUrl"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2",
            "2x1"
          ]
        },
        "type": {
          "type": "string",
          "const": "patreon",
          "description": "Card type discriminator."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "imageUrl": {
          "type": "string",
          "description": "Campaign image URL."
        },
        "postCount": {
          "type": "integer",
          "description": "Number of posts."
        },
        "campaignId": {
          "type": "string",
          "description": "Patreon campaign ID."
        },
        "campaignUrl": {
          "type": "string",
          "description": "URL to the Patreon campaign."
        },
        "creatorName": {
          "type": "string",
          "description": "Patreon creator name."
        },
        "patronCount": {
          "type": "integer",
          "description": "Number of patrons."
        },
        "creationName": {
          "type": "string",
          "description": "Name of the creation/project."
        },
        "lastSyncedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the campaign data was last fetched."
        }
      },
      "description": "A Patreon campaign widget card."
    },
    "widgetYoutube": {
      "type": "object",
      "required": [
        "id",
        "type",
        "channelId",
        "channelName",
        "channelUrl"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2",
            "2x1"
          ]
        },
        "type": {
          "type": "string",
          "const": "youtube",
          "description": "Card type discriminator."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "channelId": {
          "type": "string",
          "description": "YouTube channel ID."
        },
        "channelUrl": {
          "type": "string",
          "description": "URL to the YouTube channel."
        },
        "channelName": {
          "type": "string",
          "description": "YouTube channel name."
        },
        "latestVideo": {
          "ref": "#youtubeVideo",
          "type": "ref",
          "description": "The latest video from the channel."
        },
        "lastSyncedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the video data was last fetched."
        }
      },
      "description": "A YouTube channel widget card."
    },
    "widgetSubstack": {
      "type": "object",
      "required": [
        "id",
        "type",
        "publicationId",
        "publicationName",
        "publicationUrl"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2",
            "2x1"
          ]
        },
        "type": {
          "type": "string",
          "const": "substack",
          "description": "Card type discriminator."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "imageUrl": {
          "type": "string",
          "description": "Publication image URL."
        },
        "postCount": {
          "type": "integer",
          "description": "Number of posts."
        },
        "authorName": {
          "type": "string",
          "description": "Author name."
        },
        "description": {
          "type": "string",
          "description": "Publication description."
        },
        "lastSyncedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the publication data was last fetched."
        },
        "coverImageUrl": {
          "type": "string",
          "description": "Publication cover image URL."
        },
        "publicationId": {
          "type": "string",
          "description": "Substack publication ID."
        },
        "publicationUrl": {
          "type": "string",
          "description": "URL to the Substack publication."
        },
        "publicationName": {
          "type": "string",
          "description": "Substack publication name."
        },
        "subscriberCount": {
          "type": "integer",
          "description": "Number of subscribers."
        }
      },
      "description": "A Substack publication widget card."
    },
    "widgetGoodreads": {
      "type": "object",
      "required": [
        "id",
        "type",
        "goodreadsUserId",
        "shelf",
        "books"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the card."
        },
        "size": {
          "type": "string",
          "description": "Widget display size. Default: 1x1.",
          "knownValues": [
            "1x1",
            "1x2",
            "2x2"
          ]
        },
        "type": {
          "type": "string",
          "const": "goodreads",
          "description": "Card type discriminator."
        },
        "books": {
          "type": "array",
          "items": {
            "ref": "#goodreadsBook",
            "type": "ref"
          },
          "description": "Books on the currently-reading shelf."
        },
        "shelf": {
          "type": "string",
          "description": "Shelf name (currently-reading, read, or to-read)."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether the widget is visible on the public page. Defaults to true."
        },
        "readBooks": {
          "type": "array",
          "items": {
            "ref": "#goodreadsBook",
            "type": "ref"
          },
          "description": "Books on the read shelf (used by 1x2 size)."
        },
        "lastSyncedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When the book data was last fetched from Goodreads."
        },
        "goodreadsUserId": {
          "type": "string",
          "description": "Goodreads numeric user ID."
        }
      },
      "description": "A Goodreads bookshelf widget card."
    },
    "videoAspectRatio": {
      "type": "object",
      "required": [
        "width",
        "height"
      ],
      "properties": {
        "width": {
          "type": "integer",
          "description": "Video width."
        },
        "height": {
          "type": "integer",
          "description": "Video height."
        }
      },
      "description": "Video aspect ratio dimensions."
    },
    "connectedServices": {
      "type": "object",
      "properties": {
        "githubUsername": {
          "type": "string",
          "description": "GitHub username."
        },
        "lastfmUsername": {
          "type": "string",
          "description": "Last.fm username."
        },
        "goodreadsUserId": {
          "type": "string",
          "description": "Goodreads numeric user ID."
        }
      },
      "description": "Saved service credentials/identifiers for pre-filling widget forms."
    },
    "githubContributionDay": {
      "type": "object",
      "required": [
        "date",
        "count",
        "level"
      ],
      "properties": {
        "date": {
          "type": "string",
          "description": "Date in YYYY-MM-DD format."
        },
        "count": {
          "type": "integer",
          "description": "Number of contributions on this day."
        },
        "level": {
          "type": "integer",
          "maximum": 4,
          "minimum": 0,
          "description": "Contribution intensity level (0=none, 4=highest)."
        }
      },
      "description": "A single day's contribution data from GitHub."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}

Validate Record

Validate a record against me.linkna.linkinbio

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:web:lexicon.store
CID
bafyreiaslbzydhq53myanukimmhlqjms3baptnv6h4x3vpfgx44erpyf3e
Indexed At
2026-03-20 15:55 UTC
AT-URI
at://did:web:lexicon.store/com.atproto.lexicon.schema/me.linkna.linkinbio

Lexicon Garden

@