Données & sources
Comment nous obtenons les cotes
Nous lisons les interfaces publiées par les opérateurs agréés ADM — les endpoints qui alimentent leurs propres programmes — et les exposons normalisées dans un schéma unique. Une partie du catalogue (dont bet365 et Pinnacle) provient de fournisseurs de données tiers sous licence, pas de l'opérateur. Chaque cote reste attribuée au book auquel elle appartient, avec son last_update.
Vérifiable par deux lectures différentes, qui ne donnent pas le même chiffre : GET /api/v1/bookmakers (clé API requise) liste les clés actives dans le flux avec country, playable_it, is_exchange et source — combien de clés vous pouvez interroger, en comptant à part les voies de marché dédiées comme <marque>-corners ; GET /api/v1/coverage (public, sans clé) compte les marques par région — combien d'enseignes vous couvrez, les voies étant regroupées sous la leur. Aucune correspondance un-à-un entre les deux comptages : ils mesurent des choses différentes.
Comment nous les normalisons
- event_id déterministe : la même rencontre a le même id sur tous les marchés et pendant toute la fenêtre pré-match — c'est ainsi que nous comparons les books entre eux (matching non heuristique).
- Schéma stable et versionné (OpenAPI 3.1) : la forme interne du moteur n'arrive jamais au client.
- Capture complète des marchés : pour chaque événement nous exposons tous les marchés que le book cote (résultat, plus/moins, handicap, score exact, mi-temps/fin de match, combinaisons et marchés propres au book comme
other:<label>), pas seulement les principaux. - Aucune fusion arbitraire des books : chaque clé du flux reste une clé et la réponse ne fusionne pas des marques différentes en une seule ligne — si vous devez les regrouper, c'est vous qui décidez. Le seul regroupement est dans les comptages par marque de GET /api/v1/coverage, où les voies de marché dédiées (
<marque>-corners) sont rangées sous leur enseigne.
Vérifiable : GET /api/v1/leagues montre sport → ligues avec le nombre d'événements et de books au programme actuel.
Fraîcheur et exactitude
- Chaque cote porte son
last_update(ISO) — l'horodatage est celui de la dernière lecture réussie : un book en erreur n'affiche jamais une donnée périmée avec un horodatage récent. - La distribution réelle de l'ancienneté (p50/p95/p99 sur 24 h, par book) est publique sur la status page. Mesurée, pas déclarée.
- Nous n'inventons pas de données : une ligne/un handicap dont le signe ne peut pas être déduit avec certitude est écarté, pas deviné (cela évite de faux arbitrages).
- Les marchés non comparables d'un book à l'autre (
other:*, par joueur, totaux asiatiques) sont exposés comme donnée mais jamais promus en arbitrage. - Nous n'appliquons pas de filtres qui n'existent pas : un paramètre de requête inconnu répond
400avec la liste de ceux acceptés sur cet endpoint (et la suggestion, s'il s'agit d'une faute de frappe), jamais200avec le flux non filtré. L'erreur ne consomme pas de quota.
Couverture et saisonnalité
Nous n'avons pas de liste de ligues suivies ou exclues : si un book cote un événement, nous le voyons. L'apparition des marchés dépend de la saison — championnats à l'arrêt, le programme football est réduit (matchs amicaux), et il se remplit de nouveau à la reprise. Le comptage réel, à chaque instant, est sur /api/v1/leagues et sur la status page.
Licence et redistribution
Usage interne inclus dans tous les plans : vos modèles, bots, analyses, outils.
Redistribution aux utilisateurs finaux (afficher les cotes dans un produit/SaaS à vous : recherche pré-match, comparaison, calculateurs, workflows) → exige la licence Enterprise / de redistribution, pas les plans Starter/Pro standard. C'est une contrainte centrale pour un SaaS, pas une note de bas de page. Texte complet dans les Conditions et dans la licence Enterprise.
Assistance
Écrivez-nous à [email protected] ou via le petit robot du site. Un problème grave est pris en charge sous 4 heures ouvrées (objectif) ; les plans payants sont prioritaires.