Iframe Parameters

All widget configuration is passed via query parameters on the iframe src URL. Parameters fall into these categories: theme, display, filters (chips and pass-through), entity scoping, date filters, hit-rate / probability thresholds, betting-market identifiers, operator filters, and display toggles.

Most non-theme parameters are forwarded to the backend /v1/trends/mixed-flows endpoint to pre-filter the feed before the first paint. See the API reference for the corresponding request body fields.

Basic Embed

<iframe
  src="https://widget.example.com/?preset=brand_dark_v2"
  width="100%"
  height="480"
  frameborder="0"
  style="border: none;"
></iframe>

Theme Parameters

Control the visual appearance of the widget.

ParameterTypeDescription
presetstringName of the preset JSON file to load (without .json). The widget fetches it from your configured preset hosting location.
bgstringPage background color - hex value without # (e.g., bg=1e293b). Defaults to 0a0a1a. If the loaded preset also contains a pageBgHex field, the preset value takes precedence.
<iframe
  src="https://widget.example.com/?preset=brand_dark_v2&bg=1e293b"
  width="100%"
  height="480"
  frameborder="0"
  style="border: none;"
></iframe>
📘

Tip

Setting backgroundColor on the <iframe> element itself does not affect content inside the frame. Use the bg query parameter instead.

Language

ParameterTypeDefaultDescription
langstringen-USUI language for filter labels, button text, etc.

Supported values:

CodeLanguage
en-USEnglish
de-DEGerman
es-ESSpanish
it-ITItalian
nl-NLDutch
<iframe
  src="https://widget.example.com/?preset=brand_dark_v2&lang=it-IT"
  ...
></iframe>

Priority: ?lang= query param overrides the default language. Falls back to en-US.

Unsupported codes fall back to en-US.

📘

Info

The lang parameter controls UI labels only (filter names, button text, etc.).

Odds & Currency Parameters

Override the odds format and currency set by the preset. These take precedence over preset values.

ParameterTypeDefaultDescription
oddsFormatstringamericanOdds display format
currencystringUSDCurrency code for betslip amounts

Supported oddsFormat values:

ValueDisplayExample
americanAmerican odds (default)+150, -200
decimalDecimal odds2.50, 1.50
fractionalFractional odds3/2, 1/2
probabilityImplied probability %40.0%, 66.7%

The probability format computes implied probability from decimal odds: (1 / decimalOdds) × 100. This is useful for prediction market integrations.

<!-- Prediction market style: probability odds in euros -->
<iframe
  src="https://widget.example.com/?preset=brand_dark_v2&oddsFormat=probability&currency=EUR"
  width="100%"
  height="480"
  frameborder="0"
  style="border: none;"
></iframe>

Priority: defaults → preset → iframe params. If the preset sets oddsType: "decimal" but the iframe URL has ?oddsFormat=probability, probability wins.

📘

Tip

The oddsFormat and currency parameters are applied after the preset loads, so they always override preset values regardless of timing.

Filter Parameters

Pre-set the widget's initial filter state. These control which flows are fetched from the API.

ParameterUI FilterValid Values
flowTypeContextfact, fun, plain
betTypeWager Typesingles, parlay, same_game_parlay
bettingMarketEntityTypeMarket Typeplayer, team, event
likelihoodTypeProbabilitylikely, possible, longshot
splitTypeBet Typeovers, unders
factFlowTypeFact Flow Displaybase, expanded
<!-- Show only fact flows with singles bets, overs only -->
<iframe
  src="https://widget.example.com/?preset=brand_dark_v2&flowType=fact&betType=singles&splitType=overs"
  width="100%"
  height="480"
  frameborder="0"
  style="border: none;"
></iframe>

How Filters Work

  1. Server-side rendering - filter params are parsed from the URL and included in the initial API call, so the first page load already returns filtered data.
  2. Client hydration - the filter UI reflects the iframe params immediately after hydration.
  3. Subsequent fetches - pagination and user-initiated filter changes use the current filter state (seeded from iframe params).

Filter Locking

When the preset includes allowOverrideIframeFilters: false, filter categories set via iframe params are locked in the UI - they show locked chip styling and their options are disabled. Filters not set via iframe remain editable.

When allowOverrideIframeFilters: true (default), users can freely change all filters, including those initially set via iframe params.

Interaction with Presets

  • Iframe filter params always take precedence over preset values.
  • Presets never contain filter state - filter state is controlled exclusively by iframe params and user interaction.
  • Exception: factFlowType is stored in presets but can also be set via iframe params. The iframe param wins during initial state seeding.

Entity Parameters

Narrow the widget feed to a specific event, league, sport, player, or team. All are optional and can be combined.

ParameterTypeAPI FieldDescription
eventIdnumberevent_idFilter by specific event ID
leagueIdnumberleague_idFilter by league ID
leagueKeystringleague_keyFilter by league key (e.g. nba, united-states.nba)
sportIdnumbersport_idFilter by sport ID
sportKeystringsport_keyFilter by sport key (e.g. american-football)
playerIdnumberplayer_idFilter by player ID
playerKeystringplayer_keyFilter by player key (e.g. nikola-vucevic, nba.boston-celtics.nikola-vucevic)
teamIdnumberteam_idFilter by team ID
teamKeystringteam_keyFilter by team key (e.g. new-england-patriots, nfl.new-england-patriots)
<!-- NFL only, scoped to a specific team -->
<iframe
  src="https://widget.example.com/?preset=brand_dark_v2&leagueKey=nfl&teamKey=chiefs"
  width="100%"
  height="480"
  frameborder="0"
  style="border: none;"
></iframe>

Entity parameters are forwarded to the backend on every API call (both SSR and client-side). Only parameters present in the URL are included - omitted parameters have no effect. Integer parameters that cannot be parsed are silently ignored. When both an ID and a key are supplied for the same entity (e.g. leagueId and leagueKey), the ID takes precedence.

Date Filters

Restrict the feed to events starting within a date window.

ParameterTypeAPI FieldDescription
eventStartDateFromstringevent_start_date_fromFilter events starting on or after this value. Accepts a date (2026-04-19) or a full ISO 8601 timestamp (2026-04-19T00:00:00Z).
eventStartDateTostringevent_start_date_toFilter events starting on or before this value. Accepts a date (2026-04-26) or a full ISO 8601 timestamp (2026-04-26T23:59:59Z).
<!-- Only events between April 19 and April 26, 2026 -->
<iframe
  src="https://widget.example.com/?preset=brand_dark_v2&eventStartDateFrom=2026-04-19&eventStartDateTo=2026-04-26"
  ...
></iframe>

Hit Rate & Probability Thresholds

Filter flows by historical hit rate or implied probability of the underlying bet.

ParameterTypeAPI FieldDescription
minHitRateThresholdnumbermin_hit_rate_thresholdMinimum hit rate (integer 0–100).
maxHitRateThresholdnumbermax_hit_rate_thresholdMaximum hit rate (integer 0–100).
minImpliedProbabilityThresholdnumbermin_implied_probability_thresholdMinimum implied probability (decimal, e.g. 0.5 for 50%).
maxImpliedProbabilityThresholdnumbermax_implied_probability_thresholdMaximum implied probability (decimal).
<!-- Only flows that have hit at least 70% of the time -->
<iframe
  src="https://widget.example.com/?preset=brand_dark_v2&minHitRateThreshold=70"
  ...
></iframe>

Betting Market Identifiers

Scope the feed to specific betting-market categories, positions, or markets. IDs come from the corresponding reference endpoints.

ParameterTypeAPI FieldDescription
bettingMarketCategoryIdnumberbetting_market_category_idFilter by betting market category ID. See /v1/references/betting-market-categories.
bettingMarketPositionIdnumberbetting_market_position_idFilter by a specific betting market position ID. See /v1/references/betting-market-positions.
bettingMarketIdsnumber[]betting_market_idsComma-separated list of betting market IDs. See /v1/references/betting-markets.
focusEntityTypeIdnumberfocus_entity_type_idFilter by focus entity type ID.
<!-- Limit to a specific category, e.g. player props -->
<iframe
  src="https://widget.example.com/?preset=brand_dark_v2&bettingMarketCategoryId=12&bettingMarketIds=101,102,103"
  ...
></iframe>

Operator Filters

Restrict odds (and deeplinks) to specific sportsbook operators.

ParameterTypeAPI FieldDescription
operatorIdsnumber[]operator_idsComma-separated list of operator IDs.
operatorKeysstring[]operator_keysComma-separated list of operator external keys (e.g. draftkings). Resolved IDs are merged with operatorIds.
<!-- Odds from DraftKings and FanDuel only -->
<iframe
  src="https://widget.example.com/?preset=brand_dark_v2&operatorKeys=draftkings,fanduel"
  ...
></iframe>

See /v1/references/operators for the full operator catalog.

Display Toggles

Boolean flags that change which flows are returned or what extra fields are included.

ParameterAPI FieldDescription
startingSoonstarting_soonWhen true, only return flows for events starting soon.
fullHitRatefull_hit_rateWhen true, include full hit-rate data in the response.
includeAltLinesinclude_alt_linesWhen false, exclude alt lines. Defaults to true.
includeDeeplinksinclude_deeplinksWhen true, returns operator-specific odds and deeplink URLs (bet_ios_deep_link_url, bet_android_deep_link_url, bet_web_deep_link_url) for each flow. Requires exactly one operator ID in operatorIds.
includeOnlyBasicTrendsinclude_only_basic_trendsWhen true, return only basic trends (omit fact flows with conditions).
includeStarSignContentinclude_star_sign_contentWhen true, include star-sign / horoscope content in flows.
<!-- Feed shows only starting-soon events, with deeplinks to DraftKings -->
<iframe
  src="https://widget.example.com/?preset=brand_dark_v2&startingSoon=true&operatorIds=10&includeDeeplinks=true"
  ...
></iframe>

Misc

ParameterTypeAPI FieldDescription
teamSplitstringteam_splitTeam split filter value.

URL Encoding Rules

TypeURL formParsed value
string?key=valueNon-empty string. Empty values are dropped.
int?key=42parseInt(v, 10). NaN is dropped.
float?key=0.75parseFloat(v). NaN is dropped.
boolean?key=true / ?key=1 / ?key=false / ?key=0true / false. Case-insensitive. Anything else is dropped.
intArray?ids=1,2,3[1, 2, 3]. NaN entries dropped; empty list dropped.
stringArray?keys=a,b,c["a", "b", "c"]. Whitespace trimmed; empty list dropped.

Repeated keys (?ids=1&ids=2&ids=3) are also accepted for array types if your embedder prefers HTML-form-style encoding.

Complete Example

Combining several parameter categories in a single embed:

<iframe
  src="https://widget.example.com/?preset=brand_dark_v2&bg=1e293b&lang=it-IT&oddsFormat=probability&currency=EUR&flowType=fact&betType=singles&splitType=overs&leagueKey=nfl&bettingMarketEntityType=player&eventStartDateFrom=2026-01-01&minHitRateThreshold=70&operatorIds=10,20,30"
  width="100%"
  height="480"
  frameborder="0"
  style="border: none;"
></iframe>

This embed:

  • Loads the brand_dark_v2 theme preset
  • Sets the page background to #1e293b
  • Displays UI labels in Italian
  • Shows odds as implied probability percentages
  • Uses EUR currency for betslip amounts
  • Shows only fact flows with singles bets and overs
  • Scopes to NFL content and the player market type
  • Restricts events to those starting on or after Jan 1 2026
  • Hides any flow that hasn't hit at least 70% of the time
  • Limits odds to operators 10, 20, and 30

API Parameter Mapping

For reference, here is how iframe parameters map to the backend /v1/trends/mixed-flows request body:

Iframe ParameterAPI Parameter (snake_case)
flowTypeflow_type
betTypebet_type
bettingMarketEntityTypebetting_market_entity_type
likelihoodTypelikelihood_type
splitTypesplit_type
factFlowTypefact_flow_type
eventIdevent_id
leagueIdleague_id
leagueKeyleague_key
sportIdsport_id
sportKeysport_key
playerIdplayer_id
playerKeyplayer_key
teamIdteam_id
teamKeyteam_key
eventStartDateFromevent_start_date_from
eventStartDateToevent_start_date_to
minHitRateThresholdmin_hit_rate_threshold
maxHitRateThresholdmax_hit_rate_threshold
minImpliedProbabilityThresholdmin_implied_probability_threshold
maxImpliedProbabilityThresholdmax_implied_probability_threshold
bettingMarketCategoryIdbetting_market_category_id
bettingMarketPositionIdbetting_market_position_id
bettingMarketIdsbetting_market_ids
focusEntityTypeIdfocus_entity_type_id
operatorIdsoperator_ids
operatorKeysoperator_keys
startingSoonstarting_soon
fullHitRatefull_hit_rate
includeAltLinesinclude_alt_lines
includeDeeplinksinclude_deeplinks
includeOnlyBasicTrendsinclude_only_basic_trends
includeStarSignContentinclude_star_sign_content
teamSplitteam_split

Next Steps