API WebSocket

Ce WebSocket fournit des mises à jour en temps réel pour les changements sur des matchs individuels.

Détails de connexion

  • Endpoint: wss://api.oddspapi.io/v4/ws?apiKey=YOUR_API_KEY
  • Direction: Unidirectionnel (serveur → client)
  • Authentification: API Key — YOUR_API_KEY

Structure des données

Tous les messages incluent fixtureId. Seules les valeurs modifiées sont transmises, sauf pour les players objets complets.

{
  "fixtureId": "string",
  "betradarId": "number?",
  "startTime": "number?",
  "participant1Id": "number?",
  "participant2Id": "number?",
  "sportId": "number?",
  "updatedAt": "string?",
  "tournamentId": "number?",
  "seasonId": "number|null",
  "sofascoreId": "number|null",
  "betgeniusId": "number|null",
  "flashscoreId": "string|null",
  "statusId": "number|null",
  "bookmakerOdds": {
    "bookmaker": {
      "bookmakerFixtureId": "string|null",
      "fixturePath": "string|null",
      "markets": {
        "marketId": {
          "bookmakerMarketId": "string|null",
          "outcomes": {
            "outcomeId": {
              "players": {
                "playerId": {
                  "limit": "number|null",
                  "price": "number",
                  "active": "boolean",
                  "oddsId": "string|null",
                  "betslip": "any|null",
                  "playerId": "number",
                  "changedAt": "string",
                  "playerName": "string|null",
                  "exchangeMeta": "any|null"
                }
              }
            }
          }
        }
      }
    }
  }
}

Fonctionnalités clés

  • Mises à jour partielles: Seules les valeurs modifiées sont envoyées
  • Objets joueur complets: L’objet complet du joueur est retransmis si une valeur change
  • Mises à jour par bookmaker unique: Chaque message ne contient des mises à jour que pour un seul bookmaker
  • Horodatage: updatedAt change à chaque mise à jour d’un champ de premier niveau

Exemples

Exemple 1 : Mise à jour des métadonnées du match

{
  "fixtureId": "id2704726161008023",
  "statusId": 1,
  "updatedAt": "2025-06-11T16:55:28.415401+00:00"
}

Exemple 2 : Mise à jour des cotes d’un joueur

{
  "fixtureId": "id1100097561092987",
  "bookmakerOdds": {
    "starcasino.be": {
      "markets": {
        "111": {
          "outcomes": {
            "111": {
              "players": {
                "0": {
                  "active": true,
                  "betslip": null,
                  "bookmakerOutcomeId": "2535416646",
                  "changedAt": "2025-06-11T16:55:30.284055+00:00",
                  "limit": null,
                  "playerName": null,
                  "price": 1.345,
                  "exchangeMeta": {},
                  "playerId": 0
                }
              }
            }
          }
        }
      }
    }
  }
}

Exemple 3 : Mise à jour des informations du bookmaker

{
  "fixtureId": "id1100023561139799",
  "bookmakerOdds": {
    "22bet": {
      "bookmakerFixtureId": "265591179",
      "fixturePath": "https://22bets.com/line/basketball/5226-e/265591179-kk-partizan-buducnost-podgorica"
    }
  }
}

Exemple 4 : Mise à jour de plusieurs marchés

{
  "fixtureId": "id1001509158796975",
  "bookmakerOdds": {
    "stake": {
      "markets": {
        "101": {
          "outcomes": {
            "101": {
              "players": {
                "0": {
                  "active": true,
                  "betslip": null,
                  "bookmakerOutcomeId": "2535416646",
                  "changedAt": "2025-06-11T16:55:30.284055+00:00",
                  "limit": null,
                  "playerName": null,
                  "price": 1.345,
                  "exchangeMeta": {},
                  "playerId": 0
                }
              }
            },
            "102": {
              "players": {
                "0": {
                  "active": true,
                  "betslip": null,
                  "bookmakerOutcomeId": "2535416646",
                  "changedAt": "2025-06-11T16:55:30.284055+00:00",
                  "limit": null,
                  "playerName": null,
                  "price": 1.345,
                  "exchangeMeta": {},
                  "playerId": 0
                }
              }
            }
          }
        }
      }
    }
  }
}

Exemple 5 : Mise à jour du score

{
  "fixtureId": "id1000085362245214",
  "scores": {
    "periods": {
      "2": {
        "participant1Score": 0,
        "participant2Score": 0,
        "updatedAt": "2025-07-23T16:56:37.122614+00:00"
      }
    }
  }
}
Page précédenteGET scores
Signaler un problème
Sélectionnez-en un