Livescore

This documentation describes the complete structure of a Livescore Update message (Type 2) as delivered by TRADE. The livescore message holds all scores and statistics:

{
  "Header": {
    "Type": 2,
    "MsgSeq": 472,
    "MsgGuid": "c4da9967-68e0-4861-9a46-393e0dc51f56",
    "CreationDate": "2024-04-01T18:12:47.6711892Z",
    "ServerTimestamp": 1711995167671
  },
  "Body": {
    "Events": [
      {
        "FixtureId": 12607769,
        "Fixture": {
          "Subscription": null,
          "Sport": {
            "Id": 35709,
            "Name": "Handball"
          },
          "Location": null,
          "League": null,
          "LastUpdate": "2024-04-01T18:12:47.6711892Z",
          "Participants": [
            {
              "Id": 52324435,
              "Name": "Partizan Tivat",
              "Position": "1"
            },
            {
              "Id": 52324437,
              "Name": "Budvanska",
              "Position": "2"
            }
          ]
        },
        "Livescore": {
          "Scoreboard": {
            "Status": 3,
            "CurrentPeriod": 100,
            "Time": "5401",
            "Results": [
              {
                "Position": "1",
                "Value": "1"
              },
              {
                "Position": "2",
                "Value": "3"
              }
            ],
            "Clock": {
              "Status": 0,
              "Seconds": 0
            }
          },
          "PlayerStatistics": [
            {
              "PlayerId": 12345,
              "Statistics": [
                {
                  "Id": 1,
                  "Name": "Goals",
                  "Value": "2"
                },
                {
                  "Id": 2,
                  "Name": "Assists",
                  "Value": "1"
                }
              ],
              "PlayerName": "Lionel Messi",
              "TeamId": 780,
              "HasPlayed": true
            },
            {
              "PlayerId": 67890,
              "Statistics": [
                {
                  "Id": 1,
                  "Name": "Goals",
                  "Value": "1"
                },
                {
                  "Id": 3,
                  "Name": "Shots",
                  "Value": "5"
                }
              ],
              "PlayerName": "Cristiano Ronaldo",
              "TeamId": 786,
              "HasPlayed": true
            }
          ],
          "Periods": [
            {
              "Type": 100,
              "IsFinished": true,
              "IsConfirmed": false,
              "Results": [
                {
                  "Position": "1",
                  "Value": "1"
                },
                {
                  "Position": "2",
                  "Value": "3"
                }
              ],
              "SequenceNumber": 1
            },
            {
              "Type": 10,
              "IsFinished": true,
              "IsConfirmed": false,
              "Results": [
                {
                  "Position": "1",
                  "Value": "0"
                },
                {
                  "Position": "2",
                  "Value": "1"
                }
              ],
              "Incidents": [
                {
                  "Period": 10,
                  "IncidentType": 27,
                  "Seconds": 1740,
                  "ParticipantPosition": "2",
                  "PlayerId": "315951",
                  "PlayerName": "Yussuf Poulsen ",
                  "Results": [
                    {
                      "Position": "1",
                      "Value": "0"
                    },
                    {
                      "Position": "2",
                      "Value": "1"
                    }
                  ]
                }
              ],
              "SequenceNumber": 2
            },
            {
              "Type": 20,
              "IsFinished": true,
              "IsConfirmed": false,
              "Results": [
                {
                  "Position": "1",
                  "Value": "1"
                },
                {
                  "Position": "2",
                  "Value": "2"
                }
              ],
              "Incidents": [
                {
                  "Period": 20,
                  "IncidentType": 27,
                  "Seconds": 1800,
                  "ParticipantPosition": "2",
                  "PlayerId": "315951",
                  "PlayerName": "Yussuf Poulsen ",
                  "Results": [
                    {
                      "Position": "1",
                      "Value": "0"
                    },
                    {
                      "Position": "2",
                      "Value": "2"
                    }
                  ]
                },
                {
                  "Period": 20,
                  "IncidentType": 27,
                  "Seconds": 1860,
                  "ParticipantPosition": "2",
                  "PlayerId": "315951",
                  "PlayerName": "Yussuf Poulsen ",
                  "Results": [
                    {
                      "Position": "1",
                      "Value": "0"
                    },
                    {
                      "Position": "2",
                      "Value": "3"
                    }
                  ]
                },
                {
                  "Period": 20,
                  "IncidentType": 27,
                  "Seconds": 1920,
                  "ParticipantPosition": "1",
                  "PlayerId": "299559",
                  "PlayerName": "Joachim Low",
                  "Results": [
                    {
                      "Position": "1",
                      "Value": "1"
                    },
                    {
                      "Position": "2",
                      "Value": "3"
                    }
                  ]
                }
              ],
              "SequenceNumber": 3
            }
          ],
          "Statistics": {
            "Statistic": [
              {
                "Value": [
                  "5",
                  "6"
                ],
                "Incidents": {
                  "Incident": [
                    {
                      "Score": [
                        "0",
                        "1"
                      ]
                    },
                    {
                      "Score": [
                        "0",
                        "2"
                      ]
                    },
                    {
                      "Score": [
                        "1",
                        "2"
                      ]
                    },
                    {
                      "Score": [
                        "1",
                        "3"
                      ]
                    },
                    {
                      "Score": [
                        "1",
                        "4"
                      ]
                    },
                    {
                      "Score": [
                        "2",
                        "4"
                      ]
                    },
                    {
                      "Score": [
                        "3",
                        "4"
                      ]
                    },
                    {
                      "Score": [
                        "3",
                        "5"
                      ]
                    },
                    {
                      "Score": [
                        "3",
                        "6"
                      ]
                    },
                    {
                      "Score": [
                        "4",
                        "6"
                      ]
                    },
                    {
                      "Score": [
                        "5",
                        "6"
                      ]
                    }
                  ]
                }
              },
              {
                "Value": [
                  "106",
                  "91"
                ]
              },
              {
                "Value": [
                  "79",
                  "78"
                ]
              },
              {
                "Value": [
                  "2",
                  "1"
                ],
                "Incidents": {
                  "Incident": [
                    {
                      "Score": [
                        "0",
                        "1"
                      ]
                    },
                    {
                      "Score": [
                        "1",
                        "1"
                      ]
                    },
                    {
                      "Score": [
                        "2",
                        "1"
                      ]
                    }
                  ]
                }
              },
              {
                "Value": [
                  "0",
                  "0"
                ]
              },
              {
                "Value": [
                  "0",
                  "0"
                ]
              },
              {
                "Value": [
                  "9",
                  "7"
                ]
              },
              {
                "Value": [
                  "0",
                  "0"
                ]
              },
              {
                "Value": [
                  "0",
                  "0"
                ]
              },
              {
                "Value": [
                  "2",
                  "2"
                ],
                "Incidents": {
                  "Incident": [
                    {
                      "Score": [
                        "0",
                        "1"
                      ]
                    },
                    {
                      "Score": [
                        "1",
                        "1"
                      ]
                    },
                    {
                      "Score": [
                        "1",
                        "2"
                      ]
                    },
                    {
                      "Score": [
                        "2",
                        "2"
                      ]
                    }
                  ]
                }
              },
              {
                "Value": [
                  "4",
                  "4"
                ]
              },
              {
                "Value": [
                  "6",
                  "6"
                ]
              }
            ]
          },
          "LivescoreExtraData": "",
          "CurrentIncident": {
            "Id": "5",
            "Name": "DangerousAttacks",
            "LastUpdate": "2025-02-03T15:54:38.6207474"
          },
          "DangerTriggers": {
            "DangerTrigger": [
              {
                "Type": "1",
                "Status": "1",
                "LastUpdate": "2025-02-03T15:31:15.1049535"
              },
              {
                "Type": "2",
                "Status": "1",
                "LastUpdate": "2025-02-03T15:31:15.104986"
              },
              {
                "Type": "3",
                "Status": "1",
                "LastUpdate": "2025-02-03T15:31:15.1050175"
              }
            ]
          }
        },
        "Markets": null
      }
    ]
  }
}

Model

Events

Element

Data Type

Description

FixtureId

int

The unique ID of the fixture.

Fixture

int

Livescore

int

Markets

int

Fixture

Element

Data Type

Description

Subscription

object

Sport

object

Location

object

League

object

LastUpdate

string

ISO timestamp of the last update to the provider odds

Participants

array

An array of Participants

Participant

Element

Data Type

Description

Id

int

The unique ID of the participant

Name

string

The unique ID of the participant

Position

string

In 2-participant events the positions will be 1 (home) or 2 (away)

Livescore

Element

Data Type

Description

Scoreboard

object

PlayerStatistics

array

Periods

array

Statistics

object

CurrentIncident

object

DangerTriggers

object

LivescoreExtraData

object

Scoreboard

Element

Data Type

Description

Status

enum

The current status of the fixture.

CurrentPeriod

int

The current period or stage of the match.

Time

string

The time elapsed in the current period or stage of the match. Represented in seconds. *Will be depricated

Results

Array

An array containing results specific to the match

Clock

Object

Contains detailed match clock information

Array

An array of extra data

Results

Element

Data Type

Description

Position

string

The position or team identifier associated with the result. In 2-participant events, the positions will be 1 (home) or 2 (away) For outright events, the positions will represent the initial position of the participant

Value

string

The value or score associated with the respective position or team.

Clock

Element

Data Type

Description

Status

int

0 = Stopped, 1 = Running

Seconds

int

The time elapsed in the current period or stage of the match.

Represented in seconds. Available based on LSports’ coverage

PlayerStatistics

Element

Data Type

Description

PlayerId

int

Unique identifier for the player.

PlayerName

string

Name of the player.

TeamId

int

Identifier for the team to which the player belongs.

HasPlayed

boolean

Indicates whether the player participated in the event.

Statistics

array

Array of player-related statistics.

Statistics

Element

Data Type

Description

Id

int

Identifier for the statistic.

Name

String

Name of the statistic

Value

int

The value of the statistic

Periods

Element

Data Type

Description

enum

The type of the period. Describe the nature of the period within the context of the sport (e.g., first half, second half).

IsFinished

bool

Indicates whether the period is finished or not

IsConfirmed

bool

Indicates whether the period and its scores are confirmed

Results

Array

An array containing period-specific results.

SubPeriods

Array

Relevant for tennis only, subperiod is the game inside a set.

SequenceNumber

int

A sequence number assigned to the period for ordering purposes.

Incidents

Array

An array of incidents related to this period.

Note: Delivering the IsFinished as true and the IsConfirmed as false means we couldn't validate the final result of the specific period

Results

Element

Data Type

Description

Position

string

The position or team identifier associated with the result. In 2-participant events, the positions will be 1 (home) or 2 (away) For outright events, the positions will represent the initial position of the participant

Value

string

The value or score associated with the respective position or team.

Incidents

Every period element may contain a list of incidents (e.g. goals that were scored). Incidents will appear as long as we have the information.

Note: Incidents may be sent after a final status had been received.

Element

Data Type

Description

Period

enum

The type of period, in which the incident had occurred

IncidentType

enum

The type of the incident (Values here)

Seconds

bool

Time of incident occurrence

ParticipantPosition

int

In 2-participant events, the positions will be 1 (home) or 2 (away) For outright events, the positions will represent the initial position of the participant

PlayerId

Int

The unique identifier of the player responsible for the incident

PlayerName

string

The name of the player responsible for the incident

Incident.Results

Array

An array containing results specific to the incident

For Cricket Only - SubPeriods represent the number of Runs made within the last Over in addition the number of Overs played so far will be shown under SequenceNumber - as can be seen in the following example Here Note: SequanceNumber is only relevant for Cricket at the moment.

Statistics

Element

Data Type

Description

Statistic

array

An array of statistic

Statistic

Element

Data Type

Description

Value

array

The value or score associated with the respective position or team.

Incidents

object

An object of incidents related to this statistic

Current Incident

The Current Incident provides context on what triggered the Danger Indicator to include the ID and the name of the incident that triggered it.

Element

Data Type

Description

ID

enum

The type of the incident (Values here)

Name

enum

Description of the incident (e.g., Yellow Card).

LastUpdate

Timestamp

The time when the incident occurred.

Danger Trigger

The Danger Trigger Model provides real-time safety status updates for specific market types, ensuring proactive risk management.

For full coverage and functionality, please refer to the detailed documentation.

Element

Data Type

Description

Type

enum

Market type: General (1), Cards (2), Corners (3).

Status

enum

Current market status: Safe (1), Dangerous (2).

LastUpdate

Timestamp

The latest update time for market safety indicators.

Note: To enable DangerTrigger please reach out to support or your CSM.

LivescoreExtraData

Element

Data Type

Description

Value

string

Representing the extra data value

Name

string

The name of extra data field

Livescore important notes

  1. PreMatch package subscribers will only receive the final Livescore after the fixture has ended. Real-time LiveScore updates during an event are exclusive to InPlay package subscribers.

  2. Periods, scores, statistics, and time MAY be reverted due to mistakes made by the data providers.

  3. The current total score of the event can be found under the Scoreboard element. The score for every individual period can be found within the Period elements. Note: Every period contains the score relevant to that period alone

  4. As a part of our data quality improvement, new periods and statistical types may be added all the time. Make sure your system is dynamic enough to cope with unidentified types.

  5. A loss of coverage will occur if we are not able to provide data for an event due to technical difficulties or faulty data. Note: Should a loss of coverage occur – all bets will be suspended.

  6. There are several events where we offer live up to 30 minutes before the event’s actual start time. Those events will be sent with the status “9”, which indicates that the event is about to start. The status is the attribute of the Scoreboard element.

  7. The period type “80” stands for “BreakTime”. This period applies to ANY break during the live event. The type of the break will be in the Description attribute of the Scoreboard element, as seen below:

<Scoreboard Status="2" CurrentPeriod="80" Description=”1” Time="2700">
  <Score Position="1">2</Score>
  <Score Position="2">1</Score>
</Scoreboard>

Football

  • Time

    • Time direction will be ascending until the end of the half.

    • During halftime, the time will always be 2700 seconds.

    • During overtime halftime, the time will always be 6300 seconds.

    • When the event is finished (without overtime), the time will always be 5400 seconds.

    • When the event is finished (after overtime), the time will always be 7200 seconds.

    • During penalties, there will be no time available.

Basketball

  • Time

    • Time direction will always be descending.

    • At the end of every period, the time will be set to 0.

  • Periods

    • During NCAA events (College male basketball), the periods will show as halves (10 – 1st Half, 20 – 2nd Half) instead of quarters as usual.

Tennis

  • Periods

    • When the Tennis match is finished, the period “60” (Game period) will be removed as it is no longer relevant.

    • The serving player will appear under the ExtraData element, within the “Turn” key. The possible values are 1 or 2 (according to the participant's position).

Last updated

Was this helpful?