Background Football picture


SIQ Technical Documents

router

Realtime Data

SIQ's preferred method of data delivery is via Google's Pub/Sub system. Other options availiable are POST via http, and RabbitMQ. This documentation focuses on Pub/Sub, but data structures are the same for all delivery mechanisms.

The core data types used are: Schedule, Player Props, Outrights, Matchups, Player Props Results, Outrights Results, Matchup Results.

rss_feed

API Access

SIQ provides API access for all necessary data. After being issued your token, you can pull a lists of leagues, teams per league, the current schedule for a league and the markets for a league. With a game ID you can get the current state of the markets, or if the game is over you can pull the settlement for player props and outrights.

account_balance_wallet

Bet Builder / SGP

The Betbuilder documentation is avaliable here.

Realtime Data

  • chevron_right   Schedule

    The schedule data structure has three base elements, league, games, and event_type.

    league

    An object containing information about this league

    id: the integer assigned to this league, unique {1001, 2001, 3001, 4001}

    name: the name of this league {NFL, NBA, NHL, MLB}

    sport: an identifier for the sport {National Football League, National Basketball Association, National Hockey League, Major League Baseball}

    description: a description of the sport {National Football League, National Basketball Association, National Hockey League, Major League Baseball}

    sport_id: the sport's id, unique {1, 2, 3, 4}

    category: the sport's category - always USA

    games

    An array containing objects, each object has the same structure

    id: the UUID assigned to this game, unique

    sr_game_id: an integer assigned to this game, unique

    genius_id: only used for NFL, 0 for all other leagues

    scheduled: date and time, in UTC, of the start time for this game

    time_change: boolean, has the start time for this game been changed

    double_header: boolean, false for all leagues other than MLB, true if this game is part of a double header

    radar_status: Bet Radar's status for this game - see note below for possible values and their meanings

    donbest_status: deprecated, will be removed from message structure

    status : the game's status - see note below for possible values and their meanings

    away / home: two objects representing the team in the game, each of the same structure

    id: the UUID assigned to this team, unique

    sr_team_id: an integer assigned to this team, unique

    name: the team's common name

    full_name: the team's full name

    abbr: the team's abbreviation

    city: the team's city

    pitcher: only used for MLB, an object indicating who is pitching

    id: the UUID assigned to this player, unique

    name: the player's name

    event_type

    Always schedule

    Possible values for radar_status and status, and their meanings

    scheduled The game is scheduled to occur.
    created The game has been created and we have begun logging information.
    inprogress The game is in progress.
    halftime The game is currently at halftime.
    complete The game is over, but stat validation is not complete.
    closed The game is over and the stats have been validated.
    cancelled The game has been cancelled. No makeup game will be played as a result.
    delayed The start of the game is currently delayed or the game has gone from in progress to delayed for some reason.
    postponed The game has been postponed, to be made up at another day and time. Once the makeup game is announced, a new game and ID will be created and scheduled on the announced makeup date.
    time-tbd The game has been scheduled, but a time has yet to be announced.
    if-necessary The game will be scheduled if it is required.
    unnecessary The series game was scheduled to occur, but will not take place due to one team clinching the series early.
    JSON Schema
    JSON Sample
  • chevron_right   Player Props

    The player-props data structure has three base elements, timestamp, entities, and odds.

    timestamp

    When this data was generated

    entities

    An array containing objects, for player-prop messages all objects in the array have the same structure

    entity_type: always player

    entity_index: this objects index in the entitles array

    player_id: the UUID assigned to this player, unique

    sr_player_id: the integer assigned to this player, unique

    player_name: the players name

    sr_team_id: the integer assigned to this player's team, unique

    game_id: the UUID assigned to this game, unique

    sr_game_id: the integer assigned to this game, unique

    genius_game_id: only used for NFL, 0 for all other leagues

    position: this players position on the team

    side: this teams side for the game - either away or home

    team_id: the UUID assigned to this team, unique

    ref: a concatenation of the Don Best Rotation number, zero, and the player's jersey

    odds

    An array containing objects, for player-prop messages all objects in the array have the same structure

    id: an integer assigned to the market, unique

    period: the period of the game this market applies to, for player-prop messages, always CG

    name: the name of this market, unique to the league

    type: the market's type, unique

    stats: this player's stat for this market

    odds_type: the type of odds, for player-props, always player-props

    markets: an array containing objects, for player-props messages all objects in the array have the same structure

    target: the target, or handicap, of this market

    active: boolean, indicates if this market is tradable or not

    live: boolean, indicates if this game has started

    key: TARGET (hyphen) ZERO (hyphen) PERIOD (hyphen) TYPE [NOTE: this is the market's type from the odds structure]

    rnrs: an array containing objects, for player-props messages there will be two objects with the same structure

    t: the target, or handicap, of this market

    p: the decimal price of this side

    us: the US price of this side

    side_type: what side this runner is for - either over or under

    entity_group: an array with a single integer value, indicating which entry in the entities array this market applies to

    prb: the probability of the side

    JSON Schema
    JSON Sample
  • chevron_right   Outrights

    The outrights data structure has three base elements, timestamp, entities, and odds.

    timestamp

    When this data was generated

    entities

    An array containing objects, for outrights messages all objects in the array have the same structure

    entity_type: the type of the entity, either player or, for the NFL, drive

    entity_index: this objects index in the entitles array

    player_id: the UUID assigned to this player, unique

    sr_player_id: the integer assigned to this player, unique

    player_name: the players name

    sr_team_id: the integer assigned to this player's team, unique

    game_id: the UUID assigned to this game, unique

    sr_game_id: the integer assigned to this game, unique

    genius_game_id: only used for NFL, 0 for all other leagues

    position: this players position on the team

    side: this teams side for the game - either away or home

    team_id: the UUID assigned to this team, unique

    odds

    An array containing objects, for outrights messages all objects in the array have the same structure

    id: an integer assigned to the market, unique

    period: the period of the game this market applies to, for outrights messages, always CG

    name: the name of this market, unique to the league

    type: the market's type, unique

    stats: this player's stat for this market

    odds_type: the type of odds, for outrights, always outrights

    markets: an array containing objects, for outrights messages all objects in the array have the same structure

    target: the target, or handicap, of this market

    active: boolean, indicates if this market is tradable or not

    live: boolean, indicates if this game has started

    key: TARGET (hyphen) ZERO (hyphen) PERIOD (hyphen) TYPE [NOTE: this is the market's type from the odds structure]

    rnrs: an array containing objects, for outrights messages there will be one object

    t: the target, or handicap, of this market

    p: the decimal price of this side

    us: the US price of this side

    side_type: what side this runner is for - always over

    entity_group: an array with a single integer value, indicating which entry in the entities array this market applies to

    prb: the probability of the side

    JSON Schema
    JSON Sample
  • chevron_right   Matchups

    NOTE: depending on the league and market, Matchups may be offered as 2-way or 3-way. This example is of a three-way, but the structure of the two-way is the same, but with one fewer entry in the rnrs array.

    The matchups data structure has three base elements, timestamp, entities, and odds.

    timestamp

    When this data was generated

    entities

    An array containing objects, for matchup messages all objects in the array have the same structure

    entity_type: always player

    entity_index: this objects index in the entitles array

    player_id: the UUID assigned to this player, unique

    sr_player_id: the integer assigned to this player, unique

    player_name: the players name

    sr_team_id: the integer assigned to this player's team, unique

    game_id: the UUID assigned to this game, unique

    sr_game_id: the integer assigned to this game, unique

    genius_game_id: only used for NFL, 0 for all other leagues

    position: this players position on the team

    side: this teams side for the game - either away or home

    team_id: the UUID assigned to this team, unique

    ref: a concatenation of the Don Best Rotation number, zero, and the player's jersey

    odds

    An array containing objects, for matchup messages all objects in the array have the same structure

    id: an integer assigned to the market, unique

    period: the period of the game this market applies to, for matchup messages, always CG

    name: the name of this market, unique to the league

    type: the market's type, unique

    stats_s1: s1's stat for this market

    stats_s2: s2's stat for this market

    odds_type: the type of odds, for matchups, always matchups

    markets: an array containing objects, for matchups messages all objects in the array have the same structure

    target: the target, or handicap, of this market

    active: boolean, indicates if this market is tradable or not

    live: boolean, indicates if this game has started

    key: TARGET (hyphen) ZERO (hyphen) PERIOD (hyphen) TYPE [NOTE: this is the market's type from the odds structure]

    rnrs: an array containing objects, for matchups messages there will be two or three objects with the same structure

    t: the target, or handicap, of this market

    p: the decimal price of this side

    us: the US price of this side

    side_type: what side this runner is for - either s1, s2 or x - note that for two-way markets, there is no x side

    entity_group: an array of integers, indicating which entry/entries in the entities array this market applies to

    prb: the probability of the side

    JSON Sample
  • chevron_right   Player Props Results

    The props-result data structure has 8 base elements

    player_id

    The UUID assigned to this player, unique

    sr_player_id

    A string representation of an integer assigned to this player, unique

    sr_team_id

    A string representation of an integer assigned to this player's team, unique

    timestamp

    When this data was generated, UTC

    game_id

    The UUID assigned to this game, unique

    sr_game_id

    A string representing an integer assigned to the game, unique

    odds

    An array containing object with this players results, each object has the same structure

    game_id: the UUID assigned to this game, unique

    sr_game_id: a string representing an integer assigned to this game, unique

    stat: the players stat for this market

    isCancelled: boolean, indicates if these lines have been cancelled or not

    period: what period of the game these results apply to, for player-props always CG

    type: the type for this market, unique to league

    id: an integer assigned to this market, unique

    name: this markets name

    minutes: time this player had on court/field/ice - always zero for MLB

    markets: an array containing objects, all object have the same structure

    rnrs: an array containing two objects representing the sides

    t: the target or handicap

    t2: always zero

    s: the side, either O or U

    result: the result for this side of this line - Won, Lost, Push, Cancelled

    key: TARGET (hyphen) ZERO (hyphen) PERIOD (hyphen) TYPE

    target: the target or handicap

    target2: always zero

    event_type

    Always prop-result

    JSON Schema
    JSON Sample
  • chevron_right   Outrights Results

    The outrights-result data structure has 8 base elements

    game_id

    The UUID assigned to this game, unique

    sr_game_id

    An integer assigned to the game, unique

    id

    An integer assigned to this market, unique

    period

    The period of the game this result applies to, for outrights, always CG

    name

    The name of this market

    type

    The type for this market, unique to league

    markets

    An array containing objects with this market's results, each object has the same structure

    rnrs: an array containing an object representing the side

    player: an object containing player information

    player_id: the UUID assigned to this player, unique

    sr_player_id: an integer assigned to this player, unique

    minutes: time this player had on court/field/ice - always zero for MLB

    stat: the player's stat for this market

    t: the target or handicap

    target: the target or handicap

    s: the player's name

    result: the result for this side of this line - Won, Lost, Push, Cancelled

    event_type

    Always outrights-result

    JSON Schema
    JSON Sample
  • chevron_right  Matchup Results

    The matchup-results data structure is an array of objects, each with the same structure

    game_id

    The UUID assigned to this game, unique

    sr_game_id

    An integer assigned to the game, unique

    id

    An integer assigned to this market, unique

    period

    The period of the game this result applies to, for outrights, always CG

    name

    The name of this market

    type

    The type for this market, unique to league

    markets

    An array containing objects with this market's results, each object has the same structure

    rnrs: an array of objects representing a matchup's results, for a two-way matchup there will be two objects, and three for a three-way matchup

    s1: an array of entities for this side

    player_id: he UUID assigned to this player, unique

    sr_player_id: An integer assigned to this player, unique

    minutes: how long this player played, always 0 for MLB

    stat: this player's stat for this market

    s2: an array of entities for this side

    player_id: he UUID assigned to this player, unique

    sr_player_id: An integer assigned to this player, unique

    minutes: how long this player played, always 0 for MLB

    stat: this player's stat for this market

    target: the target for this market, 0 for Moneyline

    s: what side this runner represents, s1, s2, or x - note that for two-way matchups there is no x side

    t: the target for this market, 0 for Moneyline

    result: the result for this side of this line - Won, Lost, Push, Cancelled

    JSON Sample