Skip to main content
Logo
Explore APIsContact Us
  • Home
  • Match Preview
  • Tournament Preview
  • Virtual Stadium
  1. Resources
  2. Widgets
  3. Match Preview

Match Preview

Widgets, Engagement Tools
LMT CompactTournament Preview
Last updated 12 days ago
Is this site helpful?
On this page
  • Supported Content and Environment
  • Required Parameters
  • Main Configurable Features
  • API Reference
  • Tabs Identifiers
  • Integration Examples
  • Property Name Transformations

Match Preview widget provides comprehensive pre-match information and statistics across multiple sports through an expandable/collapsible tabbed interface. The widget consolidates essential match context including team form, head-to-head records, lineups, league standings, season leaders, team statistics, and tournament brackets into a single organized component. It supports 16 different sports with sport-specific tab configurations and data presentations. The widget features an expandable interface that allows users to switch between collapsed (compact) and expanded (full-detail) modes, making it suitable for both space-constrained match pages and dedicated pre-match hubs.

Match Preview Full View

Full-height mode displaying complete tab content with all details visible.

Match Preview Collapsed View

Compact mode showing selected tab content only with minimal details.

See the Match Preview widget demo.

#Supported Content and Environment

#Required Parameters

  • widget-name: match.preview
  • matchId: Unique identifier for the match. See Getting Identifiers

Environment Requirements

Supported Browsers

BrowserVersionMobile Support
Chrome60+✅ Chrome Mobile 60+
Firefox55+✅ Firefox Mobile 55+
Safari12+✅ iOS Safari 12+
Edge79+✅ Edge Mobile 79+
Internet ExplorerAll versions❌ Not Supported

Technical Requirements:

Supported Sports

The Match Preview widget supports the following sports, each with sport-specific tab configurations:

  • American Football NFL only (including NCAA)
  • Badminton
  • Baseball & MLB
  • Basketball & NBA (including NCAA)
  • Beach Volleyball
  • Darts
  • Futsal
  • Handball
  • Ice Hockey & NHL
  • Rugby (League & Union)
  • Snooker
  • Soccer
  • Table Tennis
  • Tennis
  • Volleyball

Tab availability varies by competition and data availability. Some tournaments may not have all tabs populated.

#Main Configurable Features

Illustrations of main layout variants and tab configurations with relevant property values below.

Match Preview Full
  • isCollapsed: false

Full-height immersive experience with complete tab details. Ideal for dedicated pre-match pages.

See Match Preview widget demo

#API Reference

PropertyTypeDefaultDescription
matchIdnumberRequiredUnique identifier for the match. See Getting Identifiers
isCollapsedbooleanfalseInitial collapse state. When true, widget displays in compact mode showing selected tab content only. When false, displays expanded mode with full details.
disableExpandButtonbooleanfalseHides the expand/collapse toggle button in footer. When true, users cannot change collapse state after initialization.

#Tabs Identifiers

tabs property is an object with sport IDs as keys and arrays of strings (tab identifiers) as values.

javascript
{
  1: ['matchInfo', 'standings', 'leaders', 'lineups', 'cup', 'playoffs', 'teamStats'], // soccer
  2: ['matchInfo', 'standings', 'leaders', 'lineups'













For every sport you can:

  • re-order tabs by changing order of strings in array,
  • disable tabs by removing specific strings from array
note

Invalid tab IDs are automatically filtered out.

#Example

To only display Match Info and Standings for soccer and Lineups and Match Info (different order) for basketball, the following configuration can be set:

javascript
tabs: {
  1: ['matchInfo', 'standings'], // soccer
  2: ['matchInfo', 'lineups'] // basketball
}

See Match Preview Custom Tabs Order Guide for detailed examples.

#Integration Examples

#Property Name Transformations

Properties do not always transfer from the above table directly into integration code. Properties must be transformed differently for each integration method:

JavaScript/Programmatic Integration

  • Property names remain unchanged in camelCase
  • Properties become members of the 4th parameter object in SIR() call
  • Example: cardVariant: "compact"
info

In javascript integration, the properties go into an object which is passed as the 4th argument of the call ti SIR() function. Please see Global SIR API

HTML/Declarative Integration

  • Convert camelCase to lowercase with dashes, e.g. cardVariant becomes card-variant
  • Add data-sr- prefix
  • Example: cardVariant →
  • JavaScript enabled
  • XMLHttpRequest support for data fetching
  • CSS3 support for styling and animations
tabs
object
See Tabs identifiers
Custom tab selection/order per sport. Invalid tab IDs are automatically filtered out.
disableTabsbooleanfalseHides tab navigation entirely. When true, only the first valid tab content is rendered without tab switcher UI.
s5ClientAliasstringundefinedS5 client alias to be used for direct link to additional statistics (on S5 solution). Required for "More Stats" button to function.
openMoreStatsInNewTabbooleantrueControls "More Stats" link behavior. When true, opens S5 in new tab. When false, navigates current window.
disableMoreStatsbooleanfalseWhen true, "More Stats" button in footer is disabled.
,
'teamStats'
,
'cup'
,
'playoffs'
]
,
// basketball
3: ['matchInfo', 'standings', 'leaders', 'lineups', 'teamStats', 'cup', 'playoffs'], // baseball
4: ['matchInfo', 'standings', 'leaders', 'lineups', 'teamStats', 'cup', 'playoffs'], // ice hockey
5: ['matchInfo', 'playerProfiles', 'standings'], // tennis
6: ['matchInfo', 'standings', 'lineups', 'teamStats', 'cup'], // handball
12: ['matchInfo', 'standings', 'lineups', 'teamStats', 'cup'], // rugby
16: ['matchInfo', 'standings', 'leaders', 'lineups', 'teamstats', 'playoffs'], // american football
19: ['matchInfo', 'standings', 'ranking', 'playerStats', 'cup'], // snooker
20: ['matchInfo', 'standings', 'teamStats', 'cup'], // table tennis
22: ['matchInfo', 'standings', 'ranking', 'teamStats', 'cup'], // darts
23: ['matchInfo', 'standings', 'teamStats', 'cup'], // volleyball
29: ['matchInfo', 'standings', 'lineups', 'teamStats', 'cup'], // futsal
31: ['matchInfo', 'standings', 'ranking', 'teamStats', 'cup'], // badminton
34: ['matchInfo', 'standings', 'teamStats', 'cup'], // beach volleyball
}
data-sr-card-variant
  • Example: filters.sport.hidden → Complex objects must be passed as JSON strings
  • info

    In HTML integration, the properties go into the parent HTML object as object properties, prefixed with data-sr- as explained above.

    Only base property support

    This method supports only simple (base) properties and does not support properties that require functions.

    info

    In all examples replace sportradar in the widgetloader URL path with your clientId.

    Example if your clientId is client1:

    • This URL: https://widgets.sir.sportradar.com/sportradar/widgetloader
    • becomes: https://widgets.sir.sportradar.com/client1/widgetloader

    JavaScript (Programmatic)

    Initialize the widget programmatically using the JavaScript API. The widget renders in the specified container element.

    javascript
    (function(a,b,c,d,e,f,g,h,i){a[e]||(i=a[e]=function(){(a[e].q=a[e].q||[]).push(arguments)},i.l=1*new Date,i.o=f,
    g=b.createElement(c),h=b.getElementsByTagName(c)[0],g.async=1,g.src=d,g.setAttribute("n",e),h.parentNode.insertBefore(g,h)
    )})(window,document,"script","https://widgets.sir.sportradar.com/sportradar/widgetloader","SIR", {
        language: 'en'
    });
    
    // Use PREMATCH match ID
    SIR('addWidget', '#sr-widget', 'match.preview', {
        matchId: 61623696,
        isCollapsed: false // default value, can be omitted
    });
    html
    <div id="sr-widget"></div>

    HTML (Declarative)

    Insert the following HTML code at the target widget location. Complex object properties must be passed as JSON-encoded strings.

    html
    <div id="sr-widget"
            data-sr-widget="match.preview"
            data-sr-match-id="123"
            data-sr-is-collapsed="false">
    </div>
    <script type="application/javascript"
            src="https://widgets.sir.sportradar.com/sportradar/widgetloader"
            async>
    </script>