# com.professorbutts.sports.scoreboard

> Field on app.bsky.feed.post (key 'com.professorbutts.sports.scoreboard') that points the post at a live game record. Sits beside a normal app.bsky.embed.external link card, which is what clients without scoreboard support show. Supporting clients show the snapshot first and reveal the live game on tap. Replaces com.professorbutts.sports.attachment.

- Kind: object
- Authority: sports.professorbutts.com
- Lexicon: 1
- Published by [professorbutts.com](https://lexicon.garden/identity/did:plc:x6njyeyi47bqs2kueuv3mrg5), the NSID's authority

## Links

- [Documentation](https://lexicon.garden/lexicon/did:plc:x6njyeyi47bqs2kueuv3mrg5/com.professorbutts.sports.scoreboard)
- [Schema JSON](https://lexicon.garden/lexicon/did:plc:x6njyeyi47bqs2kueuv3mrg5/com.professorbutts.sports.scoreboard/schema.json)
- [Analytics](https://lexicon.garden/lexicon/did:plc:x6njyeyi47bqs2kueuv3mrg5/com.professorbutts.sports.scoreboard/analytics)

## Object (`com.professorbutts.sports.scoreboard`)

Type: object

### Properties

- `alt` (string): Full text description of the scoreboard at the snapshot moment.
  - Constraints: maxLength: 3000, maxGraphemes: 1000
- `game` (string · at-uri, required): at:// URI of a com.professorbutts.sports.game, .leaderboard or .standings record. Not a strongRef: these records are updated in place.
- `highlight` (array): Leaderboards and standings: names of entrants the post is about, to highlight. A highlighted constructor shows its members.
  - Constraints: maxLength: 5
  - `items` (string)
    - Constraints: maxLength: 128
- `snapshot` (union, required): State when the post was made: a game snapshot or a leaderboard snapshot. Older posts have a game snapshot with no $type.
  - One of: `com.professorbutts.sports.defs#snapshot`, `com.professorbutts.sports.defs#leaderboardSnapshot`

## Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "properties": {
        "alt": {
          "description": "Full text description of the scoreboard at the snapshot moment.",
          "maxGraphemes": 1000,
          "maxLength": 3000,
          "type": "string"
        },
        "game": {
          "description": "at:// URI of a com.professorbutts.sports.game, .leaderboard or .standings record. Not a strongRef: these records are updated in place.",
          "format": "at-uri",
          "type": "string"
        },
        "highlight": {
          "description": "Leaderboards and standings: names of entrants the post is about, to highlight. A highlighted constructor shows its members.",
          "items": {
            "maxLength": 128,
            "type": "string"
          },
          "maxLength": 5,
          "type": "array"
        },
        "snapshot": {
          "description": "State when the post was made: a game snapshot or a leaderboard snapshot. Older posts have a game snapshot with no $type.",
          "refs": [
            "com.professorbutts.sports.defs#snapshot",
            "com.professorbutts.sports.defs#leaderboardSnapshot"
          ],
          "type": "union"
        }
      },
      "required": [
        "game",
        "snapshot"
      ],
      "type": "object"
    }
  },
  "description": "Field on app.bsky.feed.post (key 'com.professorbutts.sports.scoreboard') that points the post at a live game record. Sits beside a normal app.bsky.embed.external link card, which is what clients without scoreboard support show. Supporting clients show the snapshot first and reveal the live game on tap. Replaces com.professorbutts.sports.attachment.",
  "id": "com.professorbutts.sports.scoreboard",
  "lexicon": 1
}
```
