StorytellerContent API

Item types

The generic envelope and the NBA content definitions.

Use both definitionKey and definitionVersion to select a renderer. The envelope stays generic; the definition controls content. A definition in the schema need not appear in the samples or be enabled for your feed.

The listed samples contain Player Performance version 2. Portland contains the nine original NBA types at version 1. Run Momentum is a later definition, with no public example. Team Performance version 2 and Four Factors version 2 also have no public examples. The served OpenAPI item union covers fewer variants than the NBA schema; this inventory comes from the schema itself.

Generic snapshot

FieldRequiredType / valuesConstraints
fixtureIdYesstringminLength: 1
feedKeyYesstringpattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$
snapshotAtYesstringformat: date-time
itemsYesarray of contentItem

The snapshot, item, entity and asset objects reject additional properties. The generic content object is open; the NBA definition supplies its fields. The API validates published envelopes against the generic schema; the NBA schema is the integration’s typed reference.

contentItem

FieldRequiredType / valuesConstraints
idYesstringminLength: 1
fixtureIdYesstringminLength: 1
definitionKeyYesstringpattern: ^[a-z0-9]+(?:[.-][a-z0-9-]+)+$
definitionVersionYesintegerminimum: 1
revisionYesintegerminimum: 1
effectiveAtYesstringformat: date-time
asOfYesstringformat: date-time
publishedAtYesstringformat: date-time
entitiesYesarray of entity
contentYesobject
assetsYesarray of asset
Complete generic schema
{
  "type": "object",
  "required": [
    "id",
    "fixtureId",
    "definitionKey",
    "definitionVersion",
    "revision",
    "effectiveAt",
    "asOf",
    "publishedAt",
    "entities",
    "content",
    "assets"
  ],
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1
    },
    "fixtureId": {
      "type": "string",
      "minLength": 1
    },
    "definitionKey": {
      "type": "string",
      "pattern": "^[a-z0-9]+(?:[.-][a-z0-9-]+)+$"
    },
    "definitionVersion": {
      "type": "integer",
      "minimum": 1
    },
    "revision": {
      "type": "integer",
      "minimum": 1
    },
    "effectiveAt": {
      "type": "string",
      "format": "date-time"
    },
    "asOf": {
      "type": "string",
      "format": "date-time"
    },
    "publishedAt": {
      "type": "string",
      "format": "date-time"
    },
    "entities": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/entity"
      }
    },
    "content": {
      "type": "object"
    },
    "assets": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/asset"
      }
    }
  },
  "additionalProperties": false
}

entity

FieldRequiredType / valuesConstraints
idYesstringminLength: 1
kindYesstringminLength: 1
displayNameYesstringminLength: 1
Complete generic schema
{
  "type": "object",
  "required": [
    "id",
    "kind",
    "displayName"
  ],
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1
    },
    "kind": {
      "type": "string",
      "minLength": 1
    },
    "displayName": {
      "type": "string",
      "minLength": 1
    }
  },
  "additionalProperties": false
}

asset

FieldRequiredType / valuesConstraints
idYesstringminLength: 1
kindYesstringminLength: 1
hrefYesstringformat: uri-reference
mediaTypeYesstringminLength: 1
altTextYesstringminLength: 1
Complete generic schema
{
  "type": "object",
  "required": [
    "id",
    "kind",
    "href",
    "mediaType",
    "altText"
  ],
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1
    },
    "kind": {
      "type": "string",
      "minLength": 1
    },
    "href": {
      "type": "string",
      "format": "uri-reference"
    },
    "mediaType": {
      "type": "string",
      "minLength": 1
    },
    "altText": {
      "type": "string",
      "minLength": 1
    }
  },
  "additionalProperties": false
}

fixtureIndex

FieldRequiredType / valuesConstraints
fixturesYesarray of object
Complete generic schema
{
  "description": "Response of GET /v1/fixtures. Each entry names a fixture and the feed keys it serves; an integration view defines the entry's descriptive fields.",
  "type": "object",
  "required": [
    "fixtures"
  ],
  "properties": {
    "fixtures": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "fixtureId",
          "feeds"
        ],
        "properties": {
          "fixtureId": {
            "type": "string",
            "minLength": 1
          },
          "feeds": {
            "type": "array",
            "minItems": 1,
            "uniqueItems": true,
            "items": {
              "type": "string",
              "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
            }
          }
        }
      }
    }
  },
  "additionalProperties": false
}

NBA definition versions and real items

nba.initial-game-entry-summary (version 1)

Content shape: initialGameEntryContent.

FieldRequiredType / valuesConstraints
headlineYesstringminLength: 1
summaryYesstringminLength: 1
supportingContextYesarray of stringmaxItems: 3
gameStateYesgameState
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.initial-game-entry-summary"
        },
        "definitionVersion": {
          "const": 1
        },
        "content": {
          "$ref": "#/$defs/initialGameEntryContent"
        }
      }
    }
  ]
}
Real item from fixture 0022501147
{
  "id": "0022501147-initial-game-entry",
  "fixtureId": "0022501147",
  "definitionKey": "nba.initial-game-entry-summary",
  "definitionVersion": 1,
  "revision": 14,
  "effectiveAt": "2026-04-07T01:15:55.000Z",
  "asOf": "2026-04-07T03:45:45Z",
  "publishedAt": "2026-04-07T03:46:05.000Z",
  "entities": [
    {
      "id": "1610612757",
      "kind": "team",
      "displayName": "Portland Trail Blazers"
    },
    {
      "id": "1610612743",
      "kind": "team",
      "displayName": "Denver Nuggets"
    }
  ],
  "content": {
    "headline": "Denver seizes control of overtime",
    "summary": "The Nuggets lead 135–128 with 2:01 left in OT after Jamal Murray's drive extends the gap to seven.",
    "supportingContext": [
      "Nikola Jokić has 35 points and 13 assists."
    ],
    "gameState": {
      "period": 5,
      "periodLabel": "OT1",
      "clock": "PT02M01.00S",
      "awayTeamId": "1610612757",
      "awayScore": 128,
      "homeTeamId": "1610612743",
      "homeScore": 135
    }
  },
  "assets": []
}

nba.post-game-summary (version 1)

Content shape: postGameContent.

FieldRequiredType / valuesConstraints
headlineYesstringminLength: 1
summaryYesstringminLength: 1
supportingContextYesarray of stringmaxItems: 3
finalScoreYesscore
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.post-game-summary"
        },
        "definitionVersion": {
          "const": 1
        },
        "content": {
          "$ref": "#/$defs/postGameContent"
        }
      }
    }
  ]
}
Real item from fixture 0022501147
{
  "id": "0022501147-post-game",
  "fixtureId": "0022501147",
  "definitionKey": "nba.post-game-summary",
  "definitionVersion": 1,
  "revision": 1,
  "effectiveAt": "2026-04-07T03:48:44Z",
  "asOf": "2026-04-07T03:48:44Z",
  "publishedAt": "2026-04-07T03:48:54.000Z",
  "entities": [
    {
      "id": "1610612757",
      "kind": "team",
      "displayName": "Portland Trail Blazers"
    },
    {
      "id": "1610612743",
      "kind": "team",
      "displayName": "Denver Nuggets"
    },
    {
      "id": "203999",
      "kind": "player",
      "displayName": "Nikola Jokić"
    },
    {
      "id": "1641739",
      "kind": "player",
      "displayName": "Toumani Camara"
    }
  ],
  "content": {
    "headline": "Nuggets finish the comeback in overtime",
    "summary": "Denver erased a 16-point fourth-quarter deficit and won the extra period 12–7 to beat Portland 137–132. Nikola Jokić finished with 35 points, 14 rebounds and 13 assists.",
    "supportingContext": [
      "Toumani Camara scored 30 as Portland made 25 of 52 threes.",
      "Denver outscored Portland 66–32 in the paint and 30–15 on second chances.",
      "Jokić and Matisse Thybulle each recorded five steals."
    ],
    "finalScore": {
      "awayTeamId": "1610612757",
      "awayScore": 132,
      "homeTeamId": "1610612743",
      "homeScore": 137,
      "periodsPlayed": 5
    }
  },
  "assets": []
}

nba.pre-game-summary (version 1)

Content shape: preGameContent.

FieldRequiredType / valuesConstraints
headlineYesstringminLength: 1
summaryYesstringminLength: 1
supportingContextYesarray of stringmaxItems: 3
scheduledTipoffYesstringformat: date-time
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.pre-game-summary"
        },
        "definitionVersion": {
          "const": 1
        },
        "content": {
          "$ref": "#/$defs/preGameContent"
        }
      }
    }
  ]
}
Real item from fixture 0022501147
{
  "id": "0022501147-pre-game",
  "fixtureId": "0022501147",
  "definitionKey": "nba.pre-game-summary",
  "definitionVersion": 1,
  "revision": 2,
  "effectiveAt": "2026-04-06T01:00:00Z",
  "asOf": "2026-04-05T23:59:59Z",
  "publishedAt": "2026-04-06T23:00:10.000Z",
  "entities": [
    {
      "id": "1610612757",
      "kind": "team",
      "displayName": "Portland Trail Blazers"
    },
    {
      "id": "1610612743",
      "kind": "team",
      "displayName": "Denver Nuggets"
    }
  ],
  "content": {
    "headline": "Can Portland's volume crack Denver's efficiency?",
    "summary": "Portland's 42.2 three-point attempts per game test a Denver team making 39.6% from deep. Extra possessions are the Trail Blazers' clearest counterweight.",
    "supportingContext": [
      "Denver averages 121.6 points; Portland averages 115.4.",
      "Portland averages 18.5 second-chance points.",
      "Jokić enters at 27.9 points, 12.9 rebounds and 10.9 assists per game."
    ],
    "scheduledTipoff": "2026-04-07T01:00:00Z"
  },
  "assets": []
}

nba.timeout-quarter-halftime-summary (version 1)

Content shape: breakContent.

FieldRequiredType / valuesConstraints
headlineYesstringminLength: 1
keyTakeawaysYesarray of stringminItems: 1
whatToWatchNextYesstringminLength: 1
breakYesbreak
gameStateYesgameState
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.timeout-quarter-halftime-summary"
        },
        "definitionVersion": {
          "const": 1
        },
        "content": {
          "$ref": "#/$defs/breakContent"
        }
      }
    }
  ]
}
Real item from fixture 0022501147
{
  "id": "0022501147-break-a746",
  "fixtureId": "0022501147",
  "definitionKey": "nba.timeout-quarter-halftime-summary",
  "definitionVersion": 1,
  "revision": 1,
  "effectiveAt": "2026-04-07T03:42:44Z",
  "asOf": "2026-04-07T03:42:44Z",
  "publishedAt": "2026-04-07T03:42:54.000Z",
  "entities": [
    {
      "id": "1610612757",
      "kind": "team",
      "displayName": "Portland Trail Blazers"
    },
    {
      "id": "1610612743",
      "kind": "team",
      "displayName": "Denver Nuggets"
    }
  ],
  "content": {
    "headline": "Denver protects a five-point OT lead",
    "keyTakeaways": [
      "The Nuggets lead 133–128 with 2:11 left in overtime.",
      "Portland has not scored since cutting Denver's lead to 131–128."
    ],
    "whatToWatchNext": "Portland needs a stop and a clean scoring possession immediately.",
    "break": {
      "kind": "timeout",
      "period": 5,
      "clock": "PT02M11.00S"
    },
    "gameState": {
      "period": 5,
      "periodLabel": "OT1",
      "clock": "PT02M11.00S",
      "awayTeamId": "1610612757",
      "awayScore": 128,
      "homeTeamId": "1610612743",
      "homeScore": 133
    }
  },
  "assets": []
}

nba.player-performance-summary (version 1)

Content shape: playerPerformanceContent.

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
playerIdYesstringminLength: 1
gameStateYesgameState
gameStatisticsYesarray of statistic
seasonAveragesYesarray of statistic
recentGamesYesarray of recentPerformance
comparisonsYesarray of statistic
shotChartAssetIdNostringminLength: 1
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.player-performance-summary"
        },
        "definitionVersion": {
          "const": 1
        },
        "content": {
          "$ref": "#/$defs/playerPerformanceContent"
        }
      }
    }
  ]
}
Real item from fixture 0022501147
{
  "id": "0022501147-player-203999",
  "fixtureId": "0022501147",
  "definitionKey": "nba.player-performance-summary",
  "definitionVersion": 1,
  "revision": 3,
  "effectiveAt": "2026-04-07T02:55:55.000Z",
  "asOf": "2026-04-07T03:46:46Z",
  "publishedAt": "2026-04-07T03:47:05.000Z",
  "entities": [
    {
      "id": "1610612757",
      "kind": "team",
      "displayName": "Portland Trail Blazers"
    },
    {
      "id": "1610612743",
      "kind": "team",
      "displayName": "Denver Nuggets"
    },
    {
      "id": "203999",
      "kind": "player",
      "displayName": "Nikola Jokić"
    },
    {
      "id": "1610612759",
      "kind": "team",
      "displayName": "San Antonio Spurs"
    },
    {
      "id": "1610612762",
      "kind": "team",
      "displayName": "Utah Jazz"
    },
    {
      "id": "1610612744",
      "kind": "team",
      "displayName": "Golden State Warriors"
    }
  ],
  "content": {
    "summary": "Jokić has 35 points, 12 rebounds and 13 assists with Denver in control late in overtime.",
    "playerId": "203999",
    "gameState": {
      "period": 5,
      "periodLabel": "OT1",
      "clock": "PT01M26.00S",
      "awayTeamId": "1610612757",
      "awayScore": 130,
      "homeTeamId": "1610612743",
      "homeScore": 137
    },
    "gameStatistics": [
      {
        "key": "points",
        "label": "Points",
        "unit": "points",
        "values": [
          {
            "label": "Current game",
            "entityId": "203999",
            "scope": "currentGame",
            "value": 35,
            "displayValue": "35"
          }
        ]
      },
      {
        "key": "rebounds",
        "label": "Rebounds",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "203999",
            "scope": "currentGame",
            "value": 12,
            "displayValue": "12"
          }
        ]
      },
      {
        "key": "assists",
        "label": "Assists",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "203999",
            "scope": "currentGame",
            "value": 13,
            "displayValue": "13"
          }
        ]
      },
      {
        "key": "steals",
        "label": "Steals",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "203999",
            "scope": "currentGame",
            "value": 5,
            "displayValue": "5"
          }
        ]
      },
      {
        "key": "blocks",
        "label": "Blocks",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "203999",
            "scope": "currentGame",
            "value": 2,
            "displayValue": "2"
          }
        ]
      },
      {
        "key": "threePointersMade",
        "label": "Three-pointers made",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "203999",
            "scope": "currentGame",
            "value": 1,
            "displayValue": "1"
          }
        ]
      },
      {
        "key": "threePointersAttempted",
        "label": "Three-pointers attempted",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "203999",
            "scope": "currentGame",
            "value": 5,
            "displayValue": "5"
          }
        ]
      }
    ],
    "seasonAverages": [
      {
        "key": "points",
        "label": "Points",
        "unit": "points",
        "values": [
          {
            "label": "Season average",
            "entityId": "203999",
            "scope": "seasonAverage",
            "value": 27.9,
            "displayValue": "27.9"
          }
        ]
      },
      {
        "key": "assists",
        "label": "Assists",
        "unit": "count",
        "values": [
          {
            "label": "Season average",
            "entityId": "203999",
            "scope": "seasonAverage",
            "value": 10.9,
            "displayValue": "10.9"
          }
        ]
      }
    ],
    "recentGames": [
      {
        "fixtureId": "0022501130",
        "fixtureDate": "2026-04-04",
        "opponentEntityId": "1610612759",
        "statistics": [
          {
            "key": "points",
            "label": "Points",
            "unit": "points",
            "values": [
              {
                "label": "Game",
                "entityId": "203999",
                "scope": "recentGame",
                "value": 40,
                "displayValue": "40"
              }
            ]
          },
          {
            "key": "rebounds",
            "label": "Rebounds",
            "unit": "count",
            "values": [
              {
                "label": "Game",
                "entityId": "203999",
                "scope": "recentGame",
                "value": 8,
                "displayValue": "8"
              }
            ]
          },
          {
            "key": "assists",
            "label": "Assists",
            "unit": "count",
            "values": [
              {
                "label": "Game",
                "entityId": "203999",
                "scope": "recentGame",
                "value": 13,
                "displayValue": "13"
              }
            ]
          }
        ]
      },
      {
        "fixtureId": "0022501112",
        "fixtureDate": "2026-04-01",
        "opponentEntityId": "1610612762",
        "statistics": [
          {
            "key": "points",
            "label": "Points",
            "unit": "points",
            "values": [
              {
                "label": "Game",
                "entityId": "203999",
                "scope": "recentGame",
                "value": 15,
                "displayValue": "15"
              }
            ]
          },
          {
            "key": "rebounds",
            "label": "Rebounds",
            "unit": "count",
            "values": [
              {
                "label": "Game",
                "entityId": "203999",
                "scope": "recentGame",
                "value": 17,
                "displayValue": "17"
              }
            ]
          },
          {
            "key": "assists",
            "label": "Assists",
            "unit": "count",
            "values": [
              {
                "label": "Game",
                "entityId": "203999",
                "scope": "recentGame",
                "value": 12,
                "displayValue": "12"
              }
            ]
          }
        ]
      },
      {
        "fixtureId": "0022501090",
        "fixtureDate": "2026-03-29",
        "opponentEntityId": "1610612744",
        "statistics": [
          {
            "key": "points",
            "label": "Points",
            "unit": "points",
            "values": [
              {
                "label": "Game",
                "entityId": "203999",
                "scope": "recentGame",
                "value": 25,
                "displayValue": "25"
              }
            ]
          },
          {
            "key": "rebounds",
            "label": "Rebounds",
            "unit": "count",
            "values": [
              {
                "label": "Game",
                "entityId": "203999",
                "scope": "recentGame",
                "value": 15,
                "displayValue": "15"
              }
            ]
          },
          {
            "key": "assists",
            "label": "Assists",
            "unit": "count",
            "values": [
              {
                "label": "Game",
                "entityId": "203999",
                "scope": "recentGame",
                "value": 8,
                "displayValue": "8"
              }
            ]
          }
        ]
      }
    ],
    "comparisons": [
      {
        "key": "assists",
        "label": "Assists",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "203999",
            "scope": "currentGame",
            "value": 13,
            "displayValue": "13"
          },
          {
            "label": "Season average",
            "entityId": "203999",
            "scope": "seasonAverage",
            "value": 10.9,
            "displayValue": "10.9"
          }
        ]
      }
    ]
  },
  "assets": []
}

nba.player-performance-summary (version 2)

Content shape: playerPerformanceContentV2.

FieldRequiredType / valuesConstraints
headlineYesstringminLength: 1
summaryYesstringminLength: 1
statLineYesstringminLength: 1
playerIdYesstringminLength: 1
actionNumberYesintegerminimum: 0
gameStateYesgameState
gameStatisticsYesarray of statisticV2
seasonAveragesYesarray of statisticV2
recentGamesYesarray of recentPerformanceV2
comparisonsYesarray of statisticV2
shotChartAssetIdNostringminLength: 1
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.player-performance-summary"
        },
        "definitionVersion": {
          "const": 2
        },
        "content": {
          "$ref": "#/$defs/playerPerformanceContentV2"
        }
      }
    }
  ]
}
Real item from fixture 0042500405
{
  "id": "0042500405-player-1642844-774",
  "fixtureId": "0042500405",
  "definitionKey": "nba.player-performance-summary",
  "definitionVersion": 2,
  "revision": 1,
  "effectiveAt": "2026-06-14T03:27:56Z",
  "asOf": "2026-06-14T03:27:56Z",
  "publishedAt": "2026-06-14T03:27:56Z",
  "entities": [
    {
      "id": "1642844",
      "kind": "player",
      "displayName": "Dylan Harper"
    },
    {
      "id": "1610612752",
      "kind": "team",
      "displayName": "New York Knicks"
    },
    {
      "id": "1610612759",
      "kind": "team",
      "displayName": "San Antonio Spurs"
    }
  ],
  "content": {
    "headline": "Harper misses both free throws with 8.5 seconds left",
    "summary": "Dylan Harper misses two free throws with 8.5 seconds left and San Antonio down 93-90, and OG Anunoby's rebound gives New York the ball. Harper has 25 points, the most for the Spurs tonight.",
    "statLine": "25 PTS · 3-6 FT",
    "playerId": "1642844",
    "actionNumber": 774,
    "gameState": {
      "period": 4,
      "periodLabel": "Q4",
      "clock": "PT00M08.50S",
      "awayTeamId": "1610612752",
      "awayScore": 93,
      "homeTeamId": "1610612759",
      "homeScore": 90
    },
    "gameStatistics": [
      {
        "key": "points",
        "label": "Points",
        "unit": "points",
        "values": [
          {
            "label": "Current game",
            "entityId": "1642844",
            "scope": "currentGame",
            "value": 25,
            "displayValue": "25"
          }
        ]
      },
      {
        "key": "rebounds",
        "label": "Rebounds",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "1642844",
            "scope": "currentGame",
            "value": 5,
            "displayValue": "5"
          }
        ]
      },
      {
        "key": "assists",
        "label": "Assists",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "1642844",
            "scope": "currentGame",
            "value": 4,
            "displayValue": "4"
          }
        ]
      },
      {
        "key": "freeThrowsMade",
        "label": "Free throws made",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "1642844",
            "scope": "currentGame",
            "value": 3,
            "displayValue": "3"
          }
        ]
      },
      {
        "key": "freeThrowsAttempted",
        "label": "Free throws attempted",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "1642844",
            "scope": "currentGame",
            "value": 6,
            "displayValue": "6"
          }
        ]
      }
    ],
    "seasonAverages": [
      {
        "key": "points",
        "label": "Points",
        "unit": "points",
        "values": [
          {
            "label": "2026 playoff average (22 games)",
            "entityId": "1642844",
            "scope": "postseasonAverage",
            "value": 13.6,
            "displayValue": "13.6"
          },
          {
            "label": "2025-26 regular season average (69 games)",
            "entityId": "1642844",
            "scope": "seasonAverage",
            "value": 11.8,
            "displayValue": "11.8"
          }
        ]
      },
      {
        "key": "rebounds",
        "label": "Rebounds",
        "unit": "count",
        "values": [
          {
            "label": "2026 playoff average (22 games)",
            "entityId": "1642844",
            "scope": "postseasonAverage",
            "value": 5.6,
            "displayValue": "5.6"
          },
          {
            "label": "2025-26 regular season average (69 games)",
            "entityId": "1642844",
            "scope": "seasonAverage",
            "value": 3.4,
            "displayValue": "3.4"
          }
        ]
      },
      {
        "key": "assists",
        "label": "Assists",
        "unit": "count",
        "values": [
          {
            "label": "2026 playoff average (22 games)",
            "entityId": "1642844",
            "scope": "postseasonAverage",
            "value": 2.6,
            "displayValue": "2.6"
          },
          {
            "label": "2025-26 regular season average (69 games)",
            "entityId": "1642844",
            "scope": "seasonAverage",
            "value": 3.9,
            "displayValue": "3.9"
          }
        ]
      }
    ],
    "recentGames": [
      {
        "fixtureDate": "2026-06-10",
        "opponentEntityId": "1610612752",
        "statistics": [
          {
            "key": "points",
            "label": "Points",
            "unit": "points",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 21,
                "displayValue": "21"
              }
            ]
          },
          {
            "key": "rebounds",
            "label": "Rebounds",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 4,
                "displayValue": "4"
              }
            ]
          },
          {
            "key": "assists",
            "label": "Assists",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 3,
                "displayValue": "3"
              }
            ]
          },
          {
            "key": "threePointersMade",
            "label": "Three-pointers made",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 3,
                "displayValue": "3"
              }
            ]
          }
        ]
      },
      {
        "fixtureDate": "2026-06-08",
        "opponentEntityId": "1610612752",
        "statistics": [
          {
            "key": "points",
            "label": "Points",
            "unit": "points",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 13,
                "displayValue": "13"
              }
            ]
          },
          {
            "key": "rebounds",
            "label": "Rebounds",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 9,
                "displayValue": "9"
              }
            ]
          },
          {
            "key": "assists",
            "label": "Assists",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 4,
                "displayValue": "4"
              }
            ]
          },
          {
            "key": "threePointersMade",
            "label": "Three-pointers made",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 1,
                "displayValue": "1"
              }
            ]
          }
        ]
      },
      {
        "fixtureDate": "2026-06-05",
        "opponentEntityId": "1610612752",
        "statistics": [
          {
            "key": "points",
            "label": "Points",
            "unit": "points",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 15,
                "displayValue": "15"
              }
            ]
          },
          {
            "key": "rebounds",
            "label": "Rebounds",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 6,
                "displayValue": "6"
              }
            ]
          },
          {
            "key": "assists",
            "label": "Assists",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 3,
                "displayValue": "3"
              }
            ]
          },
          {
            "key": "threePointersMade",
            "label": "Three-pointers made",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 0,
                "displayValue": "0"
              }
            ]
          }
        ]
      },
      {
        "fixtureDate": "2026-06-03",
        "opponentEntityId": "1610612752",
        "statistics": [
          {
            "key": "points",
            "label": "Points",
            "unit": "points",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 16,
                "displayValue": "16"
              }
            ]
          },
          {
            "key": "rebounds",
            "label": "Rebounds",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 8,
                "displayValue": "8"
              }
            ]
          },
          {
            "key": "assists",
            "label": "Assists",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 1,
                "displayValue": "1"
              }
            ]
          },
          {
            "key": "threePointersMade",
            "label": "Three-pointers made",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 1,
                "displayValue": "1"
              }
            ]
          }
        ]
      },
      {
        "fixtureDate": "2026-05-30",
        "opponentEntityId": "1610612760",
        "statistics": [
          {
            "key": "points",
            "label": "Points",
            "unit": "points",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 12,
                "displayValue": "12"
              }
            ]
          },
          {
            "key": "rebounds",
            "label": "Rebounds",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 7,
                "displayValue": "7"
              }
            ]
          },
          {
            "key": "assists",
            "label": "Assists",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 3,
                "displayValue": "3"
              }
            ]
          },
          {
            "key": "threePointersMade",
            "label": "Three-pointers made",
            "unit": "count",
            "values": [
              {
                "label": "Recent game",
                "entityId": "1642844",
                "scope": "recentGame",
                "value": 2,
                "displayValue": "2"
              }
            ]
          }
        ]
      }
    ],
    "comparisons": [
      {
        "key": "points",
        "label": "Points",
        "unit": "points",
        "values": [
          {
            "label": "Current game",
            "entityId": "1642844",
            "scope": "currentGame",
            "value": 25,
            "displayValue": "25"
          },
          {
            "label": "2026 playoff high",
            "entityId": "1642844",
            "scope": "postseasonHigh",
            "value": 27,
            "displayValue": "27"
          },
          {
            "label": "Career playoff high",
            "entityId": "1642844",
            "scope": "careerPlayoffHigh",
            "value": 27,
            "displayValue": "27"
          },
          {
            "label": "2025-26 regular season high",
            "entityId": "1642844",
            "scope": "seasonHigh",
            "value": 24,
            "displayValue": "24"
          },
          {
            "label": "Career high (regular season)",
            "entityId": "1642844",
            "scope": "careerHigh",
            "value": 24,
            "displayValue": "24"
          }
        ]
      }
    ]
  },
  "assets": []
}

nba.team-performance-summary (version 1)

Content shape: teamPerformanceContent.

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
teamIdYesstringminLength: 1
gameStateYesgameState
gameStatisticsYesarray of statistic
seasonAveragesYesarray of statistic
comparisonsYesarray of statistic
shotChartAssetIdNostringminLength: 1
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.team-performance-summary"
        },
        "definitionVersion": {
          "const": 1
        },
        "content": {
          "$ref": "#/$defs/teamPerformanceContent"
        }
      }
    }
  ]
}
Real item from fixture 0022501147
{
  "id": "0022501147-team-1610612757-three-point-volume",
  "fixtureId": "0022501147",
  "definitionKey": "nba.team-performance-summary",
  "definitionVersion": 1,
  "revision": 5,
  "effectiveAt": "2026-04-07T01:35:55.000Z",
  "asOf": "2026-04-07T03:40:24Z",
  "publishedAt": "2026-04-07T03:41:07.000Z",
  "entities": [
    {
      "id": "1610612757",
      "kind": "team",
      "displayName": "Portland Trail Blazers"
    },
    {
      "id": "1610612743",
      "kind": "team",
      "displayName": "Denver Nuggets"
    }
  ],
  "content": {
    "summary": "Portland's 25th three is a franchise game high, according to the NBA alert feed, and accounts for 75 of its first 128 points.",
    "teamId": "1610612757",
    "gameState": {
      "period": 5,
      "periodLabel": "OT1",
      "clock": "PT03M04.00S",
      "awayTeamId": "1610612757",
      "awayScore": 128,
      "homeTeamId": "1610612743",
      "homeScore": 131
    },
    "gameStatistics": [
      {
        "key": "threePointersMade",
        "label": "Three-pointers made",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 25,
            "displayValue": "25"
          }
        ]
      },
      {
        "key": "threePointersAttempted",
        "label": "Three-pointers attempted",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 51,
            "displayValue": "51"
          }
        ]
      },
      {
        "key": "threePointPercentage",
        "label": "Three-point percentage",
        "unit": "percent",
        "values": [
          {
            "label": "Current game",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 49.01960784313725,
            "displayValue": "49.0%"
          }
        ]
      }
    ],
    "seasonAverages": [
      {
        "key": "threePointersMade",
        "label": "Three-pointers made",
        "unit": "count",
        "values": [
          {
            "label": "Season average",
            "entityId": "1610612757",
            "scope": "seasonAverage",
            "value": 14.4,
            "displayValue": "14.4"
          }
        ]
      },
      {
        "key": "threePointPercentage",
        "label": "Three-point percentage",
        "unit": "percent",
        "values": [
          {
            "label": "Season average",
            "entityId": "1610612757",
            "scope": "seasonAverage",
            "value": 34.1,
            "displayValue": "34.1%"
          }
        ]
      }
    ],
    "comparisons": [
      {
        "key": "threePointersMade",
        "label": "Three-pointers made",
        "unit": "count",
        "values": [
          {
            "label": "Current game",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 25,
            "displayValue": "25"
          },
          {
            "label": "Season average",
            "entityId": "1610612757",
            "scope": "seasonAverage",
            "value": 14.4,
            "displayValue": "14.4"
          }
        ]
      }
    ],
    "shotChartAssetId": "0022501147-team-1610612757-three-point-volume-shot-chart-r5"
  },
  "assets": [
    {
      "id": "0022501147-team-1610612757-three-point-volume-shot-chart-r5",
      "kind": "shot-chart",
      "href": "../assets/0022501147-team-1610612757-three-point-volume-shot-chart-r5.svg",
      "mediaType": "image/svg+xml",
      "altText": "Portland three-point shot chart. 25 makes and 26 misses through the stated checkpoint."
    }
  ]
}

nba.team-performance-summary (version 2)

Content shape: teamPerformanceContentV2.

FieldRequiredType / valuesConstraints
headlineYesstringminLength: 1
summaryYesstringminLength: 1
teamIdYesstringminLength: 1
gameStateYesgameState
gameStatisticsYesarray of statistic
seasonAveragesYesarray of statistic
comparisonsYesarray of statistic
shotChartAssetIdNostringminLength: 1
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.team-performance-summary"
        },
        "definitionVersion": {
          "const": 2
        },
        "content": {
          "$ref": "#/$defs/teamPerformanceContentV2"
        }
      }
    }
  ]
}

No item in the public fixtures demonstrates this definition version. Its schema is shown here.

nba.four-factors (version 1)

Content shape: fourFactorsContent.

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
descriptorYesstringminLength: 1
focusFactorKeyYes"effectiveFieldGoalPercentage", "turnoverPercentage", "offensiveReboundPercentage", "freeThrowRate"
gameStateYesgameState
factorsYesarray of statisticminItems: 4; maxItems: 4
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.four-factors"
        },
        "definitionVersion": {
          "const": 1
        },
        "content": {
          "$ref": "#/$defs/fourFactorsContent"
        }
      }
    }
  ]
}
Real item from fixture 0022501147
{
  "id": "0022501147-four-factors-q4",
  "fixtureId": "0022501147",
  "definitionKey": "nba.four-factors",
  "definitionVersion": 1,
  "revision": 1,
  "effectiveAt": "2026-04-07T03:34:24Z",
  "asOf": "2026-04-07T03:34:24Z",
  "publishedAt": "2026-04-07T03:34:35.000Z",
  "entities": [
    {
      "id": "1610612757",
      "kind": "team",
      "displayName": "Portland Trail Blazers"
    },
    {
      "id": "1610612743",
      "kind": "team",
      "displayName": "Denver Nuggets"
    }
  ],
  "content": {
    "summary": "Free-throw rate is the widest Four Factors gap: Portland leads 33.7% to 23.4%.",
    "descriptor": "Four Factors compare shooting efficiency, ball security, offensive rebounding and free-throw pressure.",
    "focusFactorKey": "freeThrowRate",
    "gameState": {
      "period": 4,
      "periodLabel": "Q4",
      "clock": "PT00M00.00S",
      "awayTeamId": "1610612757",
      "awayScore": 125,
      "homeTeamId": "1610612743",
      "homeScore": 125
    },
    "factors": [
      {
        "key": "effectiveFieldGoalPercentage",
        "label": "Effective field-goal percentage",
        "unit": "percent",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 61.4,
            "displayValue": "61.4%"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 56.4,
            "displayValue": "56.4%"
          }
        ]
      },
      {
        "key": "turnoverPercentage",
        "label": "Turnover percentage",
        "unit": "percent",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 16.5,
            "displayValue": "16.5%"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 12.4,
            "displayValue": "12.4%"
          }
        ]
      },
      {
        "key": "offensiveReboundPercentage",
        "label": "Offensive-rebound percentage",
        "unit": "percent",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 39.6,
            "displayValue": "39.6%"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 43.5,
            "displayValue": "43.5%"
          }
        ]
      },
      {
        "key": "freeThrowRate",
        "label": "Free-throw rate",
        "unit": "percent",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 33.7,
            "displayValue": "33.7%"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 23.4,
            "displayValue": "23.4%"
          }
        ]
      }
    ]
  },
  "assets": []
}

nba.four-factors (version 2)

Content shape: fourFactorsContentV2.

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
descriptorYesstringminLength: 1
focusFactorKeyYes"effectiveFieldGoalPercentage", "turnoverPercentage", "offensiveReboundPercentage", "freeThrowRate"
gameStateYesgameState
factorsYesarray of statisticminItems: 2; maxItems: 4
unavailableFactorKeysYesarray of "effectiveFieldGoalPercentage", "turnoverPercentage", "offensiveReboundPercentage", "freeThrowRate"maxItems: 2
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.four-factors"
        },
        "definitionVersion": {
          "const": 2
        },
        "content": {
          "$ref": "#/$defs/fourFactorsContentV2"
        }
      }
    }
  ]
}

No item in the public fixtures demonstrates this definition version. Its schema is shown here.

nba.point-breakdown (version 1)

Content shape: pointBreakdownContent.

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
descriptorYesstringminLength: 1
focusCategoryKeyYes"fastBreakPoints", "pointsInPaint", "pointsOffTurnovers", "secondChancePoints"
gameStateYesgameState
categoriesYesarray of statisticminItems: 4; maxItems: 4
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.point-breakdown"
        },
        "definitionVersion": {
          "const": 1
        },
        "content": {
          "$ref": "#/$defs/pointBreakdownContent"
        }
      }
    }
  ]
}
Real item from fixture 0022501147
{
  "id": "0022501147-point-breakdown-q4",
  "fixtureId": "0022501147",
  "definitionKey": "nba.point-breakdown",
  "definitionVersion": 1,
  "revision": 1,
  "effectiveAt": "2026-04-07T03:34:24Z",
  "asOf": "2026-04-07T03:34:24Z",
  "publishedAt": "2026-04-07T03:34:36.000Z",
  "entities": [
    {
      "id": "1610612757",
      "kind": "team",
      "displayName": "Portland Trail Blazers"
    },
    {
      "id": "1610612743",
      "kind": "team",
      "displayName": "Denver Nuggets"
    }
  ],
  "content": {
    "summary": "Denver's 62–28 edge in points in the paint is the largest scoring-source gap.",
    "descriptor": "Points Breakdown compares fast-break, paint, off-turnover and second-chance scoring; categories can overlap.",
    "focusCategoryKey": "pointsInPaint",
    "gameState": {
      "period": 4,
      "periodLabel": "Q4",
      "clock": "PT00M00.00S",
      "awayTeamId": "1610612757",
      "awayScore": 125,
      "homeTeamId": "1610612743",
      "homeScore": 125
    },
    "categories": [
      {
        "key": "fastBreakPoints",
        "label": "Fast-break points",
        "unit": "points",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 16,
            "displayValue": "16"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 13,
            "displayValue": "13"
          }
        ]
      },
      {
        "key": "pointsInPaint",
        "label": "Points in the paint",
        "unit": "points",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 28,
            "displayValue": "28"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 62,
            "displayValue": "62"
          }
        ]
      },
      {
        "key": "pointsOffTurnovers",
        "label": "Points off turnovers",
        "unit": "points",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 16,
            "displayValue": "16"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 18,
            "displayValue": "18"
          }
        ]
      },
      {
        "key": "secondChancePoints",
        "label": "Second-chance points",
        "unit": "points",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 15,
            "displayValue": "15"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 30,
            "displayValue": "30"
          }
        ]
      }
    ]
  },
  "assets": []
}

nba.defensive-summary (version 1)

Content shape: defensiveContent.

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
focusStatisticKeysYesarray of "offensiveRebounds", "defensiveRebounds", "turnovers", "blocks", "steals"minItems: 1; uniqueItems: true
gameStateYesgameState
statisticsYesarray of statisticminItems: 5; maxItems: 5
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.defensive-summary"
        },
        "definitionVersion": {
          "const": 1
        },
        "content": {
          "$ref": "#/$defs/defensiveContent"
        }
      }
    }
  ]
}
Real item from fixture 0022501147
{
  "id": "0022501147-defensive-q4",
  "fixtureId": "0022501147",
  "definitionKey": "nba.defensive-summary",
  "definitionVersion": 1,
  "revision": 1,
  "effectiveAt": "2026-04-07T03:34:24Z",
  "asOf": "2026-04-07T03:34:24Z",
  "publishedAt": "2026-04-07T03:34:37.000Z",
  "entities": [
    {
      "id": "1610612757",
      "kind": "team",
      "displayName": "Portland Trail Blazers"
    },
    {
      "id": "1610612743",
      "kind": "team",
      "displayName": "Denver Nuggets"
    }
  ],
  "content": {
    "summary": "The largest defensive-breakdown gap is offensive rebounds: Portland 11, Denver 17.",
    "focusStatisticKeys": [
      "offensiveRebounds"
    ],
    "gameState": {
      "period": 4,
      "periodLabel": "Q4",
      "clock": "PT00M00.00S",
      "awayTeamId": "1610612757",
      "awayScore": 125,
      "homeTeamId": "1610612743",
      "homeScore": 125
    },
    "statistics": [
      {
        "key": "offensiveRebounds",
        "label": "Offensive rebounds",
        "unit": "count",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 11,
            "displayValue": "11"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 17,
            "displayValue": "17"
          }
        ]
      },
      {
        "key": "defensiveRebounds",
        "label": "Defensive rebounds",
        "unit": "count",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 25,
            "displayValue": "25"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 25,
            "displayValue": "25"
          }
        ]
      },
      {
        "key": "turnovers",
        "label": "Turnovers forced",
        "unit": "count",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 12,
            "displayValue": "12"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 16,
            "displayValue": "16"
          }
        ]
      },
      {
        "key": "blocks",
        "label": "Blocks",
        "unit": "count",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 5,
            "displayValue": "5"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 5,
            "displayValue": "5"
          }
        ]
      },
      {
        "key": "steals",
        "label": "Steals",
        "unit": "count",
        "values": [
          {
            "label": "Portland Trail Blazers",
            "entityId": "1610612757",
            "scope": "currentGame",
            "value": 8,
            "displayValue": "8"
          },
          {
            "label": "Denver Nuggets",
            "entityId": "1610612743",
            "scope": "currentGame",
            "value": 10,
            "displayValue": "10"
          }
        ]
      }
    ]
  },
  "assets": []
}

nba.run-momentum (version 1)

Content shape: runMomentumContent.

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
teamIdYesstringminLength: 1
actionNumberYesintegerminimum: 0
runYesobject
contributorsYesarray of objectmaxItems: 4
turnoversForcedYesintegerminimum: 0
pointsOffTurnoversYesintegerminimum: 0
answersItemIdNostringminLength: 1
gameStateYesgameState
Complete item schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/contentItem"
    },
    {
      "type": "object",
      "properties": {
        "definitionKey": {
          "const": "nba.run-momentum"
        },
        "definitionVersion": {
          "const": 1
        },
        "content": {
          "$ref": "#/$defs/runMomentumContent"
        }
      }
    }
  ]
}

No item in the public fixtures demonstrates this definition version. Its schema is shown here.

NBA shared structures

References in the tables link here. Complete excerpts retain composition, required fields, bounds and additional-property rules.

statisticValue

FieldRequiredType / valuesConstraints
labelYesstringminLength: 1
entityIdYesstringminLength: 1
scopeYes"currentGame", "seasonAverage", "recentGame"
valueYesone of: number / string / boolean
displayValueYesstring
Complete schema
{
  "type": "object",
  "required": [
    "label",
    "entityId",
    "scope",
    "value",
    "displayValue"
  ],
  "properties": {
    "label": {
      "type": "string",
      "minLength": 1
    },
    "entityId": {
      "type": "string",
      "minLength": 1
    },
    "scope": {
      "enum": [
        "currentGame",
        "seasonAverage",
        "recentGame"
      ]
    },
    "value": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string"
        },
        {
          "type": "boolean"
        }
      ]
    },
    "displayValue": {
      "type": "string"
    }
  },
  "additionalProperties": false
}

statistic

FieldRequiredType / valuesConstraints
keyYesstringpattern: ^[a-z][A-Za-z0-9]*$
labelYesstringminLength: 1
unitYes"count", "points", "percent"
valuesYesarray of statisticValueminItems: 1
Complete schema
{
  "type": "object",
  "required": [
    "key",
    "label",
    "unit",
    "values"
  ],
  "properties": {
    "key": {
      "type": "string",
      "pattern": "^[a-z][A-Za-z0-9]*$"
    },
    "label": {
      "type": "string",
      "minLength": 1
    },
    "unit": {
      "enum": [
        "count",
        "points",
        "percent"
      ]
    },
    "values": {
      "type": "array",
      "minItems": 1,
      "items": {
        "$ref": "#/$defs/statisticValue"
      }
    }
  },
  "additionalProperties": false
}

statisticValueV2

Version 2 statistic value: the version 1 shape with a wider scope set. seasonAverage and seasonHigh cover the regular season, postseasonAverage and postseasonHigh this postseason, lastSeasonAverage the previous regular season, careerHigh regular-season games and careerPlayoffHigh playoff games; averages and highs are before the current game.

FieldRequiredType / valuesConstraints
labelYesstringminLength: 1
entityIdYesstringminLength: 1
scopeYes"currentGame", "seasonAverage", "postseasonAverage", "lastSeasonAverage", "recentGame", "seasonHigh", "postseasonHigh", "careerHigh", "careerPlayoffHigh"
valueYesone of: number / string / boolean
displayValueYesstring
Complete schema
{
  "description": "Version 2 statistic value: the version 1 shape with a wider scope set. seasonAverage and seasonHigh cover the regular season, postseasonAverage and postseasonHigh this postseason, lastSeasonAverage the previous regular season, careerHigh regular-season games and careerPlayoffHigh playoff games; averages and highs are before the current game.",
  "type": "object",
  "required": [
    "label",
    "entityId",
    "scope",
    "value",
    "displayValue"
  ],
  "properties": {
    "label": {
      "type": "string",
      "minLength": 1
    },
    "entityId": {
      "type": "string",
      "minLength": 1
    },
    "scope": {
      "enum": [
        "currentGame",
        "seasonAverage",
        "postseasonAverage",
        "lastSeasonAverage",
        "recentGame",
        "seasonHigh",
        "postseasonHigh",
        "careerHigh",
        "careerPlayoffHigh"
      ]
    },
    "value": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string"
        },
        {
          "type": "boolean"
        }
      ]
    },
    "displayValue": {
      "type": "string"
    }
  },
  "additionalProperties": false
}

statisticV2

FieldRequiredType / valuesConstraints
keyYesstringpattern: ^[a-z][A-Za-z0-9]*$
labelYesstringminLength: 1
unitYes"count", "points", "percent"
valuesYesarray of statisticValueV2minItems: 1
Complete schema
{
  "type": "object",
  "required": [
    "key",
    "label",
    "unit",
    "values"
  ],
  "properties": {
    "key": {
      "type": "string",
      "pattern": "^[a-z][A-Za-z0-9]*$"
    },
    "label": {
      "type": "string",
      "minLength": 1
    },
    "unit": {
      "enum": [
        "count",
        "points",
        "percent"
      ]
    },
    "values": {
      "type": "array",
      "minItems": 1,
      "items": {
        "$ref": "#/$defs/statisticValueV2"
      }
    }
  },
  "additionalProperties": false
}

gameState

FieldRequiredType / valuesConstraints
periodYesintegerminimum: 1
periodLabelYesstringminLength: 1
clockYesstringminLength: 1
awayTeamIdYesstringminLength: 1
awayScoreYesintegerminimum: 0
homeTeamIdYesstringminLength: 1
homeScoreYesintegerminimum: 0
Complete schema
{
  "type": "object",
  "required": [
    "period",
    "periodLabel",
    "clock",
    "awayTeamId",
    "awayScore",
    "homeTeamId",
    "homeScore"
  ],
  "properties": {
    "period": {
      "type": "integer",
      "minimum": 1
    },
    "periodLabel": {
      "type": "string",
      "minLength": 1
    },
    "clock": {
      "type": "string",
      "minLength": 1
    },
    "awayTeamId": {
      "type": "string",
      "minLength": 1
    },
    "awayScore": {
      "type": "integer",
      "minimum": 0
    },
    "homeTeamId": {
      "type": "string",
      "minLength": 1
    },
    "homeScore": {
      "type": "integer",
      "minimum": 0
    }
  },
  "additionalProperties": false
}

recentPerformance

FieldRequiredType / valuesConstraints
fixtureIdYesstringminLength: 1
fixtureDateYesstringformat: date
opponentEntityIdYesstringminLength: 1
statisticsYesarray of statistic
Complete schema
{
  "type": "object",
  "required": [
    "fixtureId",
    "fixtureDate",
    "opponentEntityId",
    "statistics"
  ],
  "properties": {
    "fixtureId": {
      "type": "string",
      "minLength": 1
    },
    "fixtureDate": {
      "type": "string",
      "format": "date"
    },
    "opponentEntityId": {
      "type": "string",
      "minLength": 1
    },
    "statistics": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statistic"
      }
    }
  },
  "additionalProperties": false
}

recentPerformanceV2

Version 2 recent game. fixtureId is present only when the recent game's NBA game ID is known.

FieldRequiredType / valuesConstraints
fixtureIdNostringminLength: 1
fixtureDateYesstringformat: date
opponentEntityIdYesstringminLength: 1
statisticsYesarray of statisticV2
Complete schema
{
  "description": "Version 2 recent game. fixtureId is present only when the recent game's NBA game ID is known.",
  "type": "object",
  "required": [
    "fixtureDate",
    "opponentEntityId",
    "statistics"
  ],
  "properties": {
    "fixtureId": {
      "type": "string",
      "minLength": 1
    },
    "fixtureDate": {
      "type": "string",
      "format": "date"
    },
    "opponentEntityId": {
      "type": "string",
      "minLength": 1
    },
    "statistics": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statisticV2"
      }
    }
  },
  "additionalProperties": false
}

score

FieldRequiredType / valuesConstraints
awayTeamIdYesstringminLength: 1
awayScoreYesintegerminimum: 0
homeTeamIdYesstringminLength: 1
homeScoreYesintegerminimum: 0
periodsPlayedYesintegerminimum: 1
Complete schema
{
  "type": "object",
  "required": [
    "awayTeamId",
    "awayScore",
    "homeTeamId",
    "homeScore",
    "periodsPlayed"
  ],
  "properties": {
    "awayTeamId": {
      "type": "string",
      "minLength": 1
    },
    "awayScore": {
      "type": "integer",
      "minimum": 0
    },
    "homeTeamId": {
      "type": "string",
      "minLength": 1
    },
    "homeScore": {
      "type": "integer",
      "minimum": 0
    },
    "periodsPlayed": {
      "type": "integer",
      "minimum": 1
    }
  },
  "additionalProperties": false
}

break

FieldRequiredType / valuesConstraints
kindYes"timeout", "quarter", "halftime", "overtime"
periodYesintegerminimum: 1
clockYesstringminLength: 1
Complete schema
{
  "type": "object",
  "required": [
    "kind",
    "period",
    "clock"
  ],
  "properties": {
    "kind": {
      "enum": [
        "timeout",
        "quarter",
        "halftime",
        "overtime"
      ]
    },
    "period": {
      "type": "integer",
      "minimum": 1
    },
    "clock": {
      "type": "string",
      "minLength": 1
    }
  },
  "additionalProperties": false
}

initialGameEntryContent

FieldRequiredType / valuesConstraints
headlineYesstringminLength: 1
summaryYesstringminLength: 1
supportingContextYesarray of stringmaxItems: 3
gameStateYesgameState
Complete schema
{
  "type": "object",
  "required": [
    "headline",
    "summary",
    "supportingContext",
    "gameState"
  ],
  "properties": {
    "headline": {
      "type": "string",
      "minLength": 1
    },
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "supportingContext": {
      "type": "array",
      "maxItems": 3,
      "items": {
        "type": "string",
        "minLength": 1
      }
    },
    "gameState": {
      "$ref": "#/$defs/gameState"
    }
  },
  "additionalProperties": false
}

postGameContent

FieldRequiredType / valuesConstraints
headlineYesstringminLength: 1
summaryYesstringminLength: 1
supportingContextYesarray of stringmaxItems: 3
finalScoreYesscore
Complete schema
{
  "type": "object",
  "required": [
    "headline",
    "summary",
    "supportingContext",
    "finalScore"
  ],
  "properties": {
    "headline": {
      "type": "string",
      "minLength": 1
    },
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "supportingContext": {
      "type": "array",
      "maxItems": 3,
      "items": {
        "type": "string",
        "minLength": 1
      }
    },
    "finalScore": {
      "$ref": "#/$defs/score"
    }
  },
  "additionalProperties": false
}

preGameContent

FieldRequiredType / valuesConstraints
headlineYesstringminLength: 1
summaryYesstringminLength: 1
supportingContextYesarray of stringmaxItems: 3
scheduledTipoffYesstringformat: date-time
Complete schema
{
  "type": "object",
  "required": [
    "headline",
    "summary",
    "supportingContext",
    "scheduledTipoff"
  ],
  "properties": {
    "headline": {
      "type": "string",
      "minLength": 1
    },
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "supportingContext": {
      "type": "array",
      "maxItems": 3,
      "items": {
        "type": "string",
        "minLength": 1
      }
    },
    "scheduledTipoff": {
      "type": "string",
      "format": "date-time"
    }
  },
  "additionalProperties": false
}

breakContent

FieldRequiredType / valuesConstraints
headlineYesstringminLength: 1
keyTakeawaysYesarray of stringminItems: 1
whatToWatchNextYesstringminLength: 1
breakYesbreak
gameStateYesgameState
Complete schema
{
  "type": "object",
  "required": [
    "headline",
    "keyTakeaways",
    "whatToWatchNext",
    "break",
    "gameState"
  ],
  "properties": {
    "headline": {
      "type": "string",
      "minLength": 1
    },
    "keyTakeaways": {
      "type": "array",
      "minItems": 1,
      "items": {
        "type": "string",
        "minLength": 1
      }
    },
    "whatToWatchNext": {
      "type": "string",
      "minLength": 1
    },
    "break": {
      "$ref": "#/$defs/break"
    },
    "gameState": {
      "$ref": "#/$defs/gameState"
    }
  },
  "additionalProperties": false
}

playerPerformanceContent

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
playerIdYesstringminLength: 1
gameStateYesgameState
gameStatisticsYesarray of statistic
seasonAveragesYesarray of statistic
recentGamesYesarray of recentPerformance
comparisonsYesarray of statistic
shotChartAssetIdNostringminLength: 1
Complete schema
{
  "type": "object",
  "required": [
    "summary",
    "playerId",
    "gameState",
    "gameStatistics",
    "seasonAverages",
    "recentGames",
    "comparisons"
  ],
  "properties": {
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "playerId": {
      "type": "string",
      "minLength": 1
    },
    "gameState": {
      "$ref": "#/$defs/gameState"
    },
    "gameStatistics": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statistic"
      }
    },
    "seasonAverages": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statistic"
      }
    },
    "recentGames": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/recentPerformance"
      }
    },
    "comparisons": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statistic"
      }
    },
    "shotChartAssetId": {
      "type": "string",
      "minLength": 1
    }
  },
  "additionalProperties": false
}

playerPerformanceContentV2

FieldRequiredType / valuesConstraints
headlineYesstringminLength: 1
summaryYesstringminLength: 1
statLineYesstringminLength: 1
playerIdYesstringminLength: 1
actionNumberYesintegerminimum: 0
gameStateYesgameState
gameStatisticsYesarray of statisticV2
seasonAveragesYesarray of statisticV2
recentGamesYesarray of recentPerformanceV2
comparisonsYesarray of statisticV2
shotChartAssetIdNostringminLength: 1
Complete schema
{
  "type": "object",
  "required": [
    "headline",
    "summary",
    "statLine",
    "playerId",
    "actionNumber",
    "gameState",
    "gameStatistics",
    "seasonAverages",
    "recentGames",
    "comparisons"
  ],
  "properties": {
    "headline": {
      "type": "string",
      "minLength": 1
    },
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "statLine": {
      "type": "string",
      "minLength": 1
    },
    "playerId": {
      "type": "string",
      "minLength": 1
    },
    "actionNumber": {
      "type": "integer",
      "minimum": 0
    },
    "gameState": {
      "$ref": "#/$defs/gameState"
    },
    "gameStatistics": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statisticV2"
      }
    },
    "seasonAverages": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statisticV2"
      }
    },
    "recentGames": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/recentPerformanceV2"
      }
    },
    "comparisons": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statisticV2"
      }
    },
    "shotChartAssetId": {
      "type": "string",
      "minLength": 1
    }
  },
  "additionalProperties": false
}

teamPerformanceContent

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
teamIdYesstringminLength: 1
gameStateYesgameState
gameStatisticsYesarray of statistic
seasonAveragesYesarray of statistic
comparisonsYesarray of statistic
shotChartAssetIdNostringminLength: 1
Complete schema
{
  "type": "object",
  "required": [
    "summary",
    "teamId",
    "gameState",
    "gameStatistics",
    "seasonAverages",
    "comparisons"
  ],
  "properties": {
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "teamId": {
      "type": "string",
      "minLength": 1
    },
    "gameState": {
      "$ref": "#/$defs/gameState"
    },
    "gameStatistics": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statistic"
      }
    },
    "seasonAverages": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statistic"
      }
    },
    "comparisons": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statistic"
      }
    },
    "shotChartAssetId": {
      "type": "string",
      "minLength": 1
    }
  },
  "additionalProperties": false
}

teamPerformanceContentV2

FieldRequiredType / valuesConstraints
headlineYesstringminLength: 1
summaryYesstringminLength: 1
teamIdYesstringminLength: 1
gameStateYesgameState
gameStatisticsYesarray of statistic
seasonAveragesYesarray of statistic
comparisonsYesarray of statistic
shotChartAssetIdNostringminLength: 1
Complete schema
{
  "type": "object",
  "required": [
    "headline",
    "summary",
    "teamId",
    "gameState",
    "gameStatistics",
    "seasonAverages",
    "comparisons"
  ],
  "properties": {
    "headline": {
      "type": "string",
      "minLength": 1
    },
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "teamId": {
      "type": "string",
      "minLength": 1
    },
    "gameState": {
      "$ref": "#/$defs/gameState"
    },
    "gameStatistics": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statistic"
      }
    },
    "seasonAverages": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statistic"
      }
    },
    "comparisons": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/statistic"
      }
    },
    "shotChartAssetId": {
      "type": "string",
      "minLength": 1
    }
  },
  "additionalProperties": false
}

fourFactorsContent

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
descriptorYesstringminLength: 1
focusFactorKeyYes"effectiveFieldGoalPercentage", "turnoverPercentage", "offensiveReboundPercentage", "freeThrowRate"
gameStateYesgameState
factorsYesarray of statisticminItems: 4; maxItems: 4
Complete schema
{
  "type": "object",
  "required": [
    "summary",
    "descriptor",
    "focusFactorKey",
    "gameState",
    "factors"
  ],
  "properties": {
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "descriptor": {
      "type": "string",
      "minLength": 1
    },
    "focusFactorKey": {
      "enum": [
        "effectiveFieldGoalPercentage",
        "turnoverPercentage",
        "offensiveReboundPercentage",
        "freeThrowRate"
      ]
    },
    "gameState": {
      "$ref": "#/$defs/gameState"
    },
    "factors": {
      "type": "array",
      "minItems": 4,
      "maxItems": 4,
      "items": {
        "$ref": "#/$defs/statistic"
      }
    }
  },
  "additionalProperties": false
}

fourFactorsContentV2

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
descriptorYesstringminLength: 1
focusFactorKeyYes"effectiveFieldGoalPercentage", "turnoverPercentage", "offensiveReboundPercentage", "freeThrowRate"
gameStateYesgameState
factorsYesarray of statisticminItems: 2; maxItems: 4
unavailableFactorKeysYesarray of "effectiveFieldGoalPercentage", "turnoverPercentage", "offensiveReboundPercentage", "freeThrowRate"maxItems: 2
Complete schema
{
  "type": "object",
  "required": [
    "summary",
    "descriptor",
    "focusFactorKey",
    "gameState",
    "factors",
    "unavailableFactorKeys"
  ],
  "properties": {
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "descriptor": {
      "type": "string",
      "minLength": 1
    },
    "focusFactorKey": {
      "enum": [
        "effectiveFieldGoalPercentage",
        "turnoverPercentage",
        "offensiveReboundPercentage",
        "freeThrowRate"
      ]
    },
    "gameState": {
      "$ref": "#/$defs/gameState"
    },
    "factors": {
      "type": "array",
      "minItems": 2,
      "maxItems": 4,
      "items": {
        "$ref": "#/$defs/statistic"
      }
    },
    "unavailableFactorKeys": {
      "type": "array",
      "maxItems": 2,
      "items": {
        "enum": [
          "effectiveFieldGoalPercentage",
          "turnoverPercentage",
          "offensiveReboundPercentage",
          "freeThrowRate"
        ]
      }
    }
  },
  "additionalProperties": false
}

pointBreakdownContent

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
descriptorYesstringminLength: 1
focusCategoryKeyYes"fastBreakPoints", "pointsInPaint", "pointsOffTurnovers", "secondChancePoints"
gameStateYesgameState
categoriesYesarray of statisticminItems: 4; maxItems: 4
Complete schema
{
  "type": "object",
  "required": [
    "summary",
    "descriptor",
    "focusCategoryKey",
    "gameState",
    "categories"
  ],
  "properties": {
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "descriptor": {
      "type": "string",
      "minLength": 1
    },
    "focusCategoryKey": {
      "enum": [
        "fastBreakPoints",
        "pointsInPaint",
        "pointsOffTurnovers",
        "secondChancePoints"
      ]
    },
    "gameState": {
      "$ref": "#/$defs/gameState"
    },
    "categories": {
      "type": "array",
      "minItems": 4,
      "maxItems": 4,
      "items": {
        "$ref": "#/$defs/statistic"
      }
    }
  },
  "additionalProperties": false
}

defensiveContent

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
focusStatisticKeysYesarray of "offensiveRebounds", "defensiveRebounds", "turnovers", "blocks", "steals"minItems: 1; uniqueItems: true
gameStateYesgameState
statisticsYesarray of statisticminItems: 5; maxItems: 5
Complete schema
{
  "type": "object",
  "required": [
    "summary",
    "focusStatisticKeys",
    "gameState",
    "statistics"
  ],
  "properties": {
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "focusStatisticKeys": {
      "type": "array",
      "minItems": 1,
      "uniqueItems": true,
      "items": {
        "enum": [
          "offensiveRebounds",
          "defensiveRebounds",
          "turnovers",
          "blocks",
          "steals"
        ]
      }
    },
    "gameState": {
      "$ref": "#/$defs/gameState"
    },
    "statistics": {
      "type": "array",
      "minItems": 5,
      "maxItems": 5,
      "items": {
        "$ref": "#/$defs/statistic"
      }
    }
  },
  "additionalProperties": false
}

runScore

FieldRequiredType / valuesConstraints
awayYesintegerminimum: 0
homeYesintegerminimum: 0
Complete schema
{
  "type": "object",
  "required": [
    "away",
    "home"
  ],
  "properties": {
    "away": {
      "type": "integer",
      "minimum": 0
    },
    "home": {
      "type": "integer",
      "minimum": 0
    }
  },
  "additionalProperties": false
}

runMomentumContent

FieldRequiredType / valuesConstraints
summaryYesstringminLength: 1
teamIdYesstringminLength: 1
actionNumberYesintegerminimum: 0
runYesobject
contributorsYesarray of objectmaxItems: 4
turnoversForcedYesintegerminimum: 0
pointsOffTurnoversYesintegerminimum: 0
answersItemIdNostringminLength: 1
gameStateYesgameState
Complete schema
{
  "type": "object",
  "required": [
    "summary",
    "teamId",
    "actionNumber",
    "run",
    "contributors",
    "turnoversForced",
    "pointsOffTurnovers",
    "gameState"
  ],
  "properties": {
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "teamId": {
      "type": "string",
      "minLength": 1
    },
    "actionNumber": {
      "type": "integer",
      "minimum": 0
    },
    "run": {
      "type": "object",
      "required": [
        "teamId",
        "pointsFor",
        "pointsAgainst",
        "unanswered",
        "startActionNumber",
        "lastActionNumber",
        "startScore",
        "endScore",
        "periods"
      ],
      "properties": {
        "teamId": {
          "type": "string",
          "minLength": 1
        },
        "pointsFor": {
          "type": "integer",
          "minimum": 1
        },
        "pointsAgainst": {
          "type": "integer",
          "minimum": 0
        },
        "unanswered": {
          "type": "boolean"
        },
        "startActionNumber": {
          "type": "integer",
          "minimum": 0
        },
        "lastActionNumber": {
          "type": "integer",
          "minimum": 0
        },
        "startScore": {
          "$ref": "#/$defs/runScore"
        },
        "endScore": {
          "$ref": "#/$defs/runScore"
        },
        "periods": {
          "type": "array",
          "minItems": 1,
          "items": {
            "type": "integer",
            "minimum": 1
          }
        }
      },
      "additionalProperties": false
    },
    "contributors": {
      "type": "array",
      "maxItems": 4,
      "items": {
        "type": "object",
        "required": [
          "playerId",
          "points",
          "assists",
          "steals"
        ],
        "properties": {
          "playerId": {
            "type": "string",
            "minLength": 1
          },
          "points": {
            "type": "integer",
            "minimum": 0
          },
          "assists": {
            "type": "integer",
            "minimum": 0
          },
          "steals": {
            "type": "integer",
            "minimum": 0
          }
        },
        "additionalProperties": false
      }
    },
    "turnoversForced": {
      "type": "integer",
      "minimum": 0
    },
    "pointsOffTurnovers": {
      "type": "integer",
      "minimum": 0
    },
    "answersItemId": {
      "type": "string",
      "minLength": 1
    },
    "gameState": {
      "$ref": "#/$defs/gameState"
    }
  },
  "additionalProperties": false
}

playerPerformanceItemVersions

Complete schema
{
  "oneOf": [
    {
      "$ref": "#/$defs/playerPerformanceItem"
    },
    {
      "$ref": "#/$defs/playerPerformanceItemV2"
    }
  ]
}

teamPerformanceItemVersions

Complete schema
{
  "oneOf": [
    {
      "$ref": "#/$defs/teamPerformanceItem"
    },
    {
      "$ref": "#/$defs/teamPerformanceItemV2"
    }
  ]
}

fourFactorsItemVersions

Complete schema
{
  "oneOf": [
    {
      "$ref": "#/$defs/fourFactorsItem"
    },
    {
      "$ref": "#/$defs/fourFactorsItemV2"
    }
  ]
}

nbaContentItem

Complete schema
{
  "oneOf": [
    {
      "$ref": "#/$defs/initialGameEntryItem"
    },
    {
      "$ref": "#/$defs/postGameItem"
    },
    {
      "$ref": "#/$defs/preGameItem"
    },
    {
      "$ref": "#/$defs/breakItem"
    },
    {
      "$ref": "#/$defs/playerPerformanceItemVersions"
    },
    {
      "$ref": "#/$defs/teamPerformanceItemVersions"
    },
    {
      "$ref": "#/$defs/fourFactorsItemVersions"
    },
    {
      "$ref": "#/$defs/pointBreakdownItem"
    },
    {
      "$ref": "#/$defs/defensiveItem"
    },
    {
      "$ref": "#/$defs/runMomentumItem"
    }
  ]
}

team

FieldRequiredType / valuesConstraints
idYesstringminLength: 1
nameYesstringminLength: 1
tricodeYesstringpattern: ^[A-Z]{3}$
Complete schema
{
  "type": "object",
  "required": [
    "id",
    "name",
    "tricode"
  ],
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1
    },
    "name": {
      "type": "string",
      "minLength": 1
    },
    "tricode": {
      "type": "string",
      "pattern": "^[A-Z]{3}$"
    }
  },
  "additionalProperties": false
}

fixtureIndexEntry

FieldRequiredType / valuesConstraints
fixtureIdYesstringminLength: 1
keyYesstringpattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$
labelYesone of: string / nulldescription: Tells games between the same teams apart, for example Finals Game 1; null when the sample game has none.
dateYesstringformat: date
seasonTypeYes"Regular Season", "Playoffs"
awayTeamYesteam
homeTeamYesteam
firstEventAtYesstringformat: date-time
feedsYesarray of stringminItems: 1; uniqueItems: true
itemCountYesintegerminimum: 0
Complete schema
{
  "type": "object",
  "required": [
    "fixtureId",
    "key",
    "label",
    "date",
    "seasonType",
    "awayTeam",
    "homeTeam",
    "firstEventAt",
    "feeds",
    "itemCount"
  ],
  "properties": {
    "fixtureId": {
      "type": "string",
      "minLength": 1
    },
    "key": {
      "type": "string",
      "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
    },
    "label": {
      "description": "Tells games between the same teams apart, for example Finals Game 1; null when the sample game has none.",
      "oneOf": [
        {
          "type": "string",
          "minLength": 1
        },
        {
          "type": "null"
        }
      ]
    },
    "date": {
      "type": "string",
      "format": "date"
    },
    "seasonType": {
      "enum": [
        "Regular Season",
        "Playoffs"
      ]
    },
    "awayTeam": {
      "$ref": "#/$defs/team"
    },
    "homeTeam": {
      "$ref": "#/$defs/team"
    },
    "firstEventAt": {
      "type": "string",
      "format": "date-time"
    },
    "feeds": {
      "type": "array",
      "minItems": 1,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
      }
    },
    "itemCount": {
      "type": "integer",
      "minimum": 0
    }
  },
  "additionalProperties": false
}

fixtureIndex

Complete schema
{
  "allOf": [
    {
      "$ref": "content-feed.schema.json#/$defs/fixtureIndex"
    },
    {
      "type": "object",
      "properties": {
        "fixtures": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/fixtureIndexEntry"
          }
        }
      }
    }
  ]
}

On this page