com.professorbutts.sports.game

Record key is a stable game slug, e.g. 'nfl-2026-11-09-cin-pit'.

Repository @professorbutts.com did:plc:x6njyeyi47bqs2kueuv3mrg5 not from the namespace authority
Details · record, key any
Kindrecord
Record keyany
Authoritysports.professorbutts.com
Indexed
cid bafyreiejvpnmdq23gse53mwdfhupvgxymzukgduch3ycnurk66s4i3mpta

Checks

Valid
  • unlimited-string defs.main.record.properties.conferenceNo maxLength, maxGraphemes or format limits this string.
  • unlimited-string defs.main.record.properties.roundNo maxLength, maxGraphemes or format limits this string.
  • unlimited-string defs.main.record.properties.statusNo maxLength, maxGraphemes or format limits this string.
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Record key is a stable game slug, e.g. 'nfl-2026-11-09-cin-pit'.",
      "key": "any",
      "record": {
        "properties": {
          "away": {
            "ref": "com.professorbutts.sports.defs#competitor",
            "type": "ref"
          },
          "clock": {
            "description": "Display clock, e.g. '4:32'. Omitted when not applicable.",
            "maxLength": 16,
            "type": "string"
          },
          "conference": {
            "description": "Conference for playoff games before the Super Bowl.",
            "knownValues": [
              "AFC",
              "NFC"
            ],
            "type": "string"
          },
          "home": {
            "ref": "com.professorbutts.sports.defs#competitor",
            "type": "ref"
          },
          "league": {
            "description": "League short code, e.g. NFL, NBA, MLS.",
            "maxLength": 32,
            "type": "string"
          },
          "period": {
            "ref": "com.professorbutts.sports.defs#period",
            "type": "ref"
          },
          "round": {
            "description": "Stage of the season. Playoff rounds get a badge on the card.",
            "knownValues": [
              "preseason",
              "regular",
              "wildcard",
              "divisional",
              "conference",
              "superbowl"
            ],
            "type": "string"
          },
          "season": {
            "maxLength": 32,
            "type": "string"
          },
          "situation": {
            "description": "Sport-specific live detail. Each value carries its $type.",
            "refs": [
              "com.professorbutts.sports.defs#footballSituation",
              "com.professorbutts.sports.defs#baseballSituation",
              "com.professorbutts.sports.defs#basketballSituation",
              "com.professorbutts.sports.defs#hockeySituation",
              "com.professorbutts.sports.defs#soccerSituation"
            ],
            "type": "union"
          },
          "source": {
            "description": "Where the data came from.",
            "format": "uri",
            "type": "string"
          },
          "sport": {
            "knownValues": [
              "football",
              "basketball",
              "baseball",
              "hockey",
              "soccer"
            ],
            "maxLength": 64,
            "type": "string"
          },
          "startsAt": {
            "format": "datetime",
            "type": "string"
          },
          "stats": {
            "description": "Optional stats blocks (line score, box score). The only thing that may make the card taller.",
            "items": {
              "description": "Optional extra detail. Viewers keep the card one fixed size unless they draw stats.",
              "refs": [
                "com.professorbutts.sports.defs#lineScore",
                "com.professorbutts.sports.defs#footballBoxScore",
                "com.professorbutts.sports.defs#baseballBoxScore",
                "com.professorbutts.sports.defs#basketballBoxScore"
              ],
              "type": "union"
            },
            "maxLength": 4,
            "type": "array"
          },
          "status": {
            "knownValues": [
              "scheduled",
              "live",
              "halftime",
              "final",
              "postponed",
              "canceled"
            ],
            "type": "string"
          },
          "updatedAt": {
            "format": "datetime",
            "type": "string"
          },
          "venue": {
            "maxLength": 256,
            "type": "string"
          }
        },
        "required": [
          "sport",
          "league",
          "status",
          "home",
          "away",
          "startsAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "description": "A single sporting event and its current state. One record per game, updated in place as the game progresses.",
  "id": "com.professorbutts.sports.game",
  "lexicon": 1
}