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:
updatedAtchange à 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
