# Fixture

This documentation describes the complete structure of a Fixture Update message (Type 1) as delivered by TRADE.

{% tabs %}
{% tab title="JSON" %}

```json
{
  "Header": {
    "Type": 1,
    "MsgSeq": 2,
    "MsgGuid": "ea1da91b-fd6b-45ba-a2b2-14e3d771a070",
    "CreationDate": "2024-04-01T18:15:27.3452921Z",
    "ServerTimestamp": 1711995327345
  },
  "Body": {
    "Events": [
      {
        "FixtureId": 16861271,
        "Fixture": {
          "Subscription": {
            "Type": 1,
            "Status": 1
          },
          "Sport": {
            "Id": 6046,
            "Name": "Football"
          },
          "Location": {
            "Id": 248,
            "Name": "England"
          },
          "League": {
            "Id": 36,
            "Name": "Premier League",
            "Tour": {
              "Id": 100,
              "Name": "Matchday 15"
            },
            "AgeCategory": 1,
            "Gender": 1,
            "Type": 1,
            "NumberOfPeriods": 2,
            "SportCategory": {
              "Id": 1,
              "Name": "Men's Football"
            }
          },
          "StartDate": "2025-06-15T18:30:00Z",
          "LastUpdate": "2025-06-15T17:00:00Z",
          "Status": 2,
          "Participants": [
            {
              "Id": 1001,
              "Name": "Manchester United",
              "Position": "1",
              "RotationId": 1,
              "Form": "WWDLW",
              "Formation": "4-3-3",
              "FixturePlayers": [
                {
                  "PlayerId": 50001,
                  "ShirtNumber": "1",
                  "IsCaptain": true,
                  "IsStartingLineup": true,
                  "Position": {
                    "Id": 1,
                    "Name": "Goalkeeper"
                  },
                  "State": {
                    "Id": 1,
                    "Name": "Active"
                  },
                  "Player": {
                    "Id": 50001,
                    "Name": "David de Gea",
                    "TeamId": 1001,
                    "NationalityId": 34,
                    "BirthDate": "1990-11-07T00:00:00",
                    "Type": 1,
                    "NationalityTeamId": 34
                  }
                },
                {
                  "PlayerId": 50002,
                  "ShirtNumber": "7",
                  "IsCaptain": false,
                  "IsStartingLineup": true,
                  "Position": {
                    "Id": 4,
                    "Name": "Forward"
                  },
                  "State": {
                    "Id": 1,
                    "Name": "Active"
                  },
                  "Player": {
                    "Id": 50002,
                    "Name": "Marcus Rashford",
                    "TeamId": 1001,
                    "NationalityId": 44,
                    "BirthDate": "1997-10-31T00:00:00",
                    "Type": 1,
                    "NationalityTeamId": 44
                  }
                }
              ],
              "Gender": 1,
              "AgeCategory": 1,
              "Type": 1
            },
            {
              "Id": 1002,
              "Name": "Liverpool FC",
              "Position": "2",
              "RotationId": 2,
              "Form": "WLWWW",
              "Formation": "4-2-3-1",
              "FixturePlayers": [
                {
                  "PlayerId": 60001,
                  "ShirtNumber": "1",
                  "IsCaptain": false,
                  "IsStartingLineup": true,
                  "Position": {
                    "Id": 1,
                    "Name": "Goalkeeper"
                  },
                  "State": {
                    "Id": 1,
                    "Name": "Active"
                  },
                  "Player": {
                    "Id": 60001,
                    "Name": "Alisson Becker",
                    "TeamId": 1002,
                    "NationalityId": 55,
                    "BirthDate": "1992-10-02T00:00:00",
                    "Type": 1,
                    "NationalityTeamId": 55
                  }
                }
              ],
              "Gender": 1,
              "AgeCategory": 1,
              "Type": 1
            }
          ],
          "FixtureExtraData": [
            {
              "Name": "Attendance",
              "Value": "85000"
            },
            {
              "Name": "Referee",
              "Value": "Michael Oliver"
            },
            {
              "Name": "Weather",
              "Value": "Sunny"
            },
            {
              "Name": "NumberOfPeriods",
              "Value": "2"
            },
            {
              "Name": "TourId",
              "Value": "100"
            },
            {
              "Name": "TourName",
              "Value": "Matchday 15"
            }
          ],
          "ExternalFixtureId": "PROVIDER_FIX_001",
          "Venue": {
            "Id": 100,
            "Name": "Wembley Stadium",
            "Capacity": 90000,
            "Attendance": 85234,
            "CourtSurfaceType": 0,
            "Environment": 1,
            "Assignment": 0,
            "State": {
              "Id": 10,
              "Name": "Greater London"
            },
            "City": {
              "Id": 1,
              "Name": "London"
            }
          },
          "Season": {
            "Id": 2025,
            "Name": "2024/2025"
          },
          "FixtureName": "Team A vs Team B"
        }
      }
    ]
  }
}
```

{% endtab %}

{% tab title="XML" %}

```xml
<Header>
  <Type>1</Type>
  <MsgSeq>2</MsgSeq>
  <MsgGuid>ea1da91b-fd6b-45ba-a2b2-14e3d771a070</MsgGuid>
  <CreationDate>2025-10-08T18:15:27.3452921Z</CreationDate>
  <ServerTimestamp>1759948589998</ServerTimestamp>
</Header>

<Body>
  <Events>
    <FixtureId>16914111</FixtureId>

    <Fixture LastUpdate="2025-10-08T14:18:28.598Z">
      <Subscription>
        <Type>1</Type>
        <Status>1</Status>
      </Subscription>

      <Sport Id="6046" Name="Football"/>
      <Location Id="248" Name="England"/>

      <League Id="36" Name="Premier League">
        <Tour Id="100" Name="Matchday 15"/>
        <AgeCategory>1</AgeCategory>
        <Gender>1</Gender>
        <Type>1</Type>
        <NumberOfPeriods>2</NumberOfPeriods>
        <SportCategory>
          <Id>1</Id>
          <Name>Men's Football</Name>
        </SportCategory>
      </League>

      <StartDate>2025-06-15T18:30:00.000Z</StartDate>
      <Status>2</Status>

      <Participants>
        <Participant Id="1001" Name="Manchester United" Position="1">
          <RotationId>1</RotationId>
          <Form>WWDLW</Form>
          <Formation>4-3-3</Formation>

          <FixturePlayers>
            <FixturePlayer>
              <PlayerId>50001</PlayerId>
              <ShirtNumber>1</ShirtNumber>
              <IsCaptain>true</IsCaptain>
              <IsStartingLineup>true</IsStartingLineup>
              <Position Id="1" Name="Goalkeeper"/>
              <State Id="1" Name="Active"/>
              <Player Id="50001" Name="David de Gea">
                <TeamId>1001</TeamId>
                <NationalityId>34</NationalityId>
                <BirthDate>1990-11-07T00:00:00</BirthDate>
                <Type>Player</Type>
                <NationalityTeamId>34</NationalityTeamId>
              </Player>
            </FixturePlayer>

            <FixturePlayer>
              <PlayerId>50002</PlayerId>
              <ShirtNumber>7</ShirtNumber>
              <IsCaptain>false</IsCaptain>
              <IsStartingLineup>true</IsStartingLineup>
              <Position Id="4" Name="Forward"/>
              <State Id="1" Name="Active"/>
              <Player Id="50002" Name="Marcus Rashford">
                <TeamId>1001</TeamId>
                <NationalityId>44</NationalityId>
                <BirthDate>1997-10-31T00:00:00</BirthDate>
                <Type>Player</Type>
                <NationalityTeamId>44</NationalityTeamId>
              </Player>
            </FixturePlayer>
          </FixturePlayers>

          <Gender>1</Gender>
          <AgeCategory>1</AgeCategory>
          <Type>1</Type>
        </Participant>

        <Participant Id="1002" Name="Liverpool FC" Position="2">
          <RotationId>2</RotationId>
          <Form>WLWWW</Form>
          <Formation>4-2-3-1</Formation>

          <FixturePlayers>
            <FixturePlayer>
              <PlayerId>60001</PlayerId>
              <ShirtNumber>1</ShirtNumber>
              <IsCaptain>false</IsCaptain>
              <IsStartingLineup>true</IsStartingLineup>
              <Position Id="1" Name="Goalkeeper"/>
              <State Id="1" Name="Active"/>
              <Player Id="60001" Name="Alisson Becker">
                <TeamId>1002</TeamId>
                <NationalityId>55</NationalityId>
                <BirthDate>1992-10-02T00:00:00</BirthDate>
                <Type>Player</Type>
                <NationalityTeamId>55</NationalityTeamId>
              </Player>
            </FixturePlayer>
          </FixturePlayers>

          <Gender>1</Gender>
          <AgeCategory>1</AgeCategory>
          <Type>1</Type>
        </Participant>
      </Participants>

      <FixtureExtraData>
        <Data Name="Attendance">85000</Data>
        <Data Name="Referee">Michael Oliver</Data>
        <Data Name="Weather">Sunny</Data>
        <Data Name="NumberOfPeriods">2</Data>
        <Data Name="TourId">100</Data>
        <Data Name="TourName">Matchday 15</Data>
      </FixtureExtraData>

      <ExternalFixtureId>PROVIDER_FIX_001</ExternalFixtureId>

      <Venue Id="100" Name="Wembley Stadium">
        <Capacity>90000</Capacity>
        <Attendance>85234</Attendance>
        <CourtSurfaceType>Grass</CourtSurfaceType>
        <Environment>Outdoors</Environment>
        <Assignment>Home</Assignment>
        <State Id="10" Name="Greater London"/>
        <City Id="1" Name="London"/>
      </Venue>

      <Season Id="2025" Name="2024/2025"/>

      <FixtureName>Team A vs Team B</FixtureName>
    </Fixture>

    <Livescore/>
    <Markets/>
  </Events>
</Body>
```

{% endtab %}
{% endtabs %}

## **Model**

### Events

| **Element** | **Data Type** | **Description**                                                                             |
| ----------- | ------------- | ------------------------------------------------------------------------------------------- |
| FixtureId   | int           | The unique ID of the fixture.                                                               |
| Fixture     | object        | [Fixture](#fixture)                                                                         |
| Livescore   | object        | [Livescore](https://docs.lsports.eu/u/trade/integration/message-structure/livescore)        |
| Markets     | array         | An array of [Markets](https://docs.lsports.eu/u/trade/integration/message-structure/market) |

### **Fixture**

|                   |               |                                                                                                                                 |
| ----------------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| **Element**       | **Data Type** | **Description**                                                                                                                 |
| Subscription      | object        | [Subscription](#subscription)                                                                                                   |
| Sport             | object        | [Sport](#sport)                                                                                                                 |
| Location          | object        | [Location](#location)                                                                                                           |
| League            | object        | [League](#league)                                                                                                               |
| StartDate         | string        | The fixture start date                                                                                                          |
| LastUpdate        | string        | ISO timestamp of the last update to the provider odds                                                                           |
| Status            | enum          | The current [status](https://docs.lsports.eu/u/enumerations/fixture-scoreboard-status#fixture-scoreboard-status) of the fixture |
| Participants      | array         | An array of [Participants](#participants)                                                                                       |
| FixtureExtraData  | array         | An array of [FixtureExtraData](#fixtureextradata)                                                                               |
| ExternalFixtureId | string        | Use to map fixtures to an external provider; to enable this feature, please contact your CSM.                                   |
| Venue             | object        | [Venue](#venue)                                                                                                                 |
| Season            | object        | Season                                                                                                                          |
| FixtureName       | string        | fixture name (e.g. `Team A vs Team B`).                                                                                         |

#### Subscription

|             |               |                                                              |
| ----------- | ------------- | ------------------------------------------------------------ |
| **Element** | **Data Type** | **Description**                                              |
| Type        | enum          | Your package type                                            |
| Status      | enum          | The current subscription status of the event in your package |

#### Sport

|             |               |                            |
| ----------- | ------------- | -------------------------- |
| **Element** | **Data Type** | **Description**            |
| Id          | int           | The unique ID of the sport |
| Name        | string        | The name of the sport      |

#### Location

|             |               |                               |
| ----------- | ------------- | ----------------------------- |
| **Element** | **Data Type** | **Description**               |
| Id          | int           | The unique ID of the location |
| Name        | string        | The name of the location      |

#### League

| **Element**     | **Data Type** | **Description**                                                                                                         |
| --------------- | ------------- | ----------------------------------------------------------------------------------------------------------------------- |
| Id              | int           | The unique ID of the league                                                                                             |
| Name            | string        | The name of the league                                                                                                  |
| Tour            | object        | **OPTIONAL**: Tour or stage within the league (Id, Name)                                                                |
| AgeCategory     | int           | **OPTIONAL**: Age category of the league. 0 = Regular, 1 = Youth, 2 = Reserves                                          |
| Gender          | int           | **OPTIONAL**: Gender of the league. 1 = Men, 2 = Women, 3 = Mix                                                         |
| Type            | int           | **OPTIONAL**: League type. 1 = Club, 2 = National, 3 = Individual, 4 = Virtual, 5 = Esports, 6 = VirtuReal, 7 = Doubles |
| NumberOfPeriods | int           | **OPTIONAL**: Number of match periods in this league                                                                    |
| SportCategory   | object        | **OPTIONAL**: Sport category classification (Id, Name)                                                                  |

### Participants

| **Element**    | **Data Type** | **Description**                                                                                                              |
| -------------- | ------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| Id             | int           | The unique ID of the participant                                                                                             |
| Name           | string        | The name of the participant                                                                                                  |
| Position       | string        | <p>In 2-participant events the positions will be 1 (home) or 2 (away)<br></p>                                                |
| RotationId     | int           | **OPTIONAL**: Rotation identifier for the participant                                                                        |
| IsActive       | bool          | Will only show in outright events.                                                                                           |
| Gender         | int           | **OPTIONAL**: Gender of the participant. 1 = Men, 2 = Women, 3 = Mix                                                         |
| AgeCategory    | int           | **OPTIONAL**: Age category of the participant. 0 = Regular, 1 = Youth, 2 = Reserves                                          |
| Type           | int           | **OPTIONAL**: Participant type. 1 = Club, 2 = National, 3 = Individual, 4 = Virtual, 5 = Esports, 6 = VirtuReal, 7 = Doubles |
| Form           | string        | **OPTIONAL**: Recent form of the participant (e.g. `WWDLW`).                                                                 |
| Formation      | string        | **OPTIONAL**: Tactical formation used by the participant (e.g. `4-3-3`).                                                     |
| FixturePlayers | array         | **OPTIONAL**: Lineup / roster information for the participant. See [FixturePlayers](#fixtureplayers).                        |
| ExtraData      | array         | Array of data [ExtraData](#extradata)                                                                                        |

#### **ExtraData**

| **Element** | **Data Type** | **Description**                   |
| ----------- | ------------- | --------------------------------- |
| Value       | string        | Representing the extra data value |
| Name        | string        | The name of extra data field      |

#### FixturePlayers

| **Element**      | **Data Type** | **Description**                                    |
| ---------------- | ------------- | -------------------------------------------------- |
| PlayerId         | int           | Unique player identifier.                          |
| ShirtNumber      | string        | Player shirt number.                               |
| IsCaptain        | bool          | Indicates if the player is team captain.           |
| IsStartingLineup | bool          | Indicates if the player is in the starting lineup. |
| Position         | object        | Player position metadata (Id, Name).               |
| State            | object        | Player state (e.g. Active, Injured) (Id, Name).    |
| Player           | object        | Full player profile. See [Player](#player).        |

#### Player

| **Element**       | **Data Type** | **Description**                |
| ----------------- | ------------- | ------------------------------ |
| Id                | int           | Unique player identifier       |
| Name              | string        | Player name                    |
| TeamId            | int           | ID of the player's team        |
| NationalityId     | int           | Nationality identifier         |
| BirthDate         | string        | Player birth date (ISO format) |
| Type              | int           | Player type. 0 = Player        |
| NationalityTeamId | int           | National team identifier       |

### FixtureExtraData

| **Element** | **Data Type** | **Description**                   |
| ----------- | ------------- | --------------------------------- |
| Value       | string        | Representing the extra data value |
| Name        | string        | The name of extra data field      |

Common `Name` values include:

| **Name**        | **Description**                           |
| --------------- | ----------------------------------------- |
| Attendance      | Number of spectators at the fixture       |
| Referee         | Name of the match referee                 |
| Weather         | Weather conditions at the fixture         |
| NumberOfPeriods | Number of periods in the match            |
| TourId          | Identifier of the tour/round              |
| TourName        | Name of the tour/round (e.g. Matchday 15) |
| WithLivescore   | Whether livescore data is available       |
| WithInPlay      | Whether in-play markets are available     |

### Venue

| **Element**      | **Data Type** | **Description**                                                                               |
| ---------------- | ------------- | --------------------------------------------------------------------------------------------- |
| Id               | string        | The unique identifier of the venue where the fixture is held                                  |
| Name             | string        | The official name of the venue where the fixture is held                                      |
| Capacity         | int           | The maximum number of spectators that the venue can accommodate.                              |
| Attendance       | int           | The number of spectators present at the fixture.                                              |
| CourtSurfaceType | string        | <p>The surface type for sports like tennis.<br><em>Example: Grass, Clay, Hardcourt</em></p>   |
| Environment      | string        | Indicates if the venue is indoors or outdoors.                                                |
| Assignment       | string        | Specifies whether the venue is assigned as Home, Away, or Neutral                             |
| Country          | object        | Contains the country details where the venue is located. Same values as [Location](#location) |
| State            | object        | Contains the state or region details if applicable.                                           |
| City             | object        | Contains the city details where the venue is located.                                         |

### Country

| **Element** | **Data Type** | **Description**            |
| ----------- | ------------- | -------------------------- |
| ID          | int           | Country unique identifier. |
| Name        | string        | Country name.              |

### State

| **Element** | **Data Type** | **Description**          |
| ----------- | ------------- | ------------------------ |
| ID          | int           | State unique identifier. |
| Name        | string        | State name.              |

### City

| **Element** | **Data Type** | **Description**         |
| ----------- | ------------- | ----------------------- |
| ID          | int           | City unique identifier. |
| Name        | string        | City name.              |

### Stage

| **Element** | **Data Type** | **Description**                                       |
| ----------- | ------------- | ----------------------------------------------------- |
| ID          | int           | Unique identifier representing the competition stage. |
| Name        | string        | The name of the competition phase.                    |

### Round

| **Element** | **Data Type** | **Description**                                                |
| ----------- | ------------- | -------------------------------------------------------------- |
| ID          | int           | Unique identifier representing the round within a competition. |
| Name        | string        | The official name of the round.                                |
