🌐 API REST - Documentation
Introduction
L'API REST BetTracker Pro vous permet d'accéder à toutes vos données de paris depuis n'importe quelle application. Authentifiez-vous avec votre clé API et commencez à construire !
🔑 Authentification
Toutes les requêtes nécessitent une clé API dans le header :
X-API-Key: btk_votre_clé_ici
Générez votre clé API dans Paramètres > Clé API.
📡 Endpoints Disponibles
Base URL
https://bettracker.io/api/v1
Deux endpoints :
POST /tools/execute— exécuter un outilGET /tools/list— lister les outils disponibles et leurs paramètres
ℹ️ Les outils orientés courses et pronostics (courses du jour, pronostics IA, analyse de course, notifications…) ne sont pas exposés par l'API REST : ils sont disponibles via le serveur MCP.
📊 Statistiques & Paris
Obtenir les statistiques utilisateur
POST /tools/execute
{
"tool": "get_user_stats",
"arguments": { "period": "month" }
}
period : all (défaut), month ou week.
Réponse :
{
"success": true,
"tool": "get_user_stats",
"data": {
"period": "month",
"total_bets": 45,
"won": 23,
"lost": 18,
"pending": 4,
"win_rate": "56.1%",
"total_stake": "450.00€",
"total_profit": "125.50€",
"roi": "27.9%"
}
}
Lister les paris récents
POST /tools/execute
{
"tool": "get_recent_bets",
"arguments": { "limit": 10 }
}
limit : nombre de paris (défaut 5, maximum 10).
État du budget
POST /tools/execute
{
"tool": "get_budget_status",
"arguments": {}
}
Paramètres du compte
POST /tools/execute
{
"tool": "get_user_settings",
"arguments": {}
}
🏇 Statistiques hippiques (sur VOS paris)
Statistiques PMU globales
POST /tools/execute
{
"tool": "get_pmu_stats",
"arguments": {}
}
Mes hippodromes
POST /tools/execute
{
"tool": "get_my_hippodromes",
"arguments": {}
}
Statistiques d'un hippodrome
POST /tools/execute
{
"tool": "get_hippodrome_stats",
"arguments": { "code": "VIN" }
}
code : code de l'hippodrome (requis), tel que renvoyé par get_my_hippodromes.
Performances de mes chevaux
POST /tools/execute
{
"tool": "get_my_bet_horses",
"arguments": {}
}
Statistiques de mes jockeys
POST /tools/execute
{
"tool": "get_my_jockey_stats",
"arguments": {}
}
Meilleures combinaisons cheval-jockey
POST /tools/execute
{
"tool": "get_my_horse_jockey_combinations",
"arguments": {}
}
Statistiques croisées
POST /tools/execute
{
"tool": "get_my_cross_stats",
"arguments": {}
}
📝 Exemples de Code
JavaScript / Node.js
const API_KEY = 'btk_votre_clé';
const API_URL = 'https://bettracker.io/api/v1';
async function executeTool(tool, args = {}) {
const response = await fetch(`${API_URL}/tools/execute`, {
method: 'POST',
headers: {
'X-API-Key': API_KEY,
'Content-Type': 'application/json'
},
body: JSON.stringify({ tool, arguments: args })
});
return response.json();
}
// Exemple d'utilisation
const stats = await executeTool('get_user_stats', { period: 'month' });
console.log('Statistiques:', stats.data);
const bets = await executeTool('get_recent_bets', { limit: 10 });
console.log('Derniers paris:', bets.data);
Python
import requests
API_KEY = 'btk_votre_clé'
API_URL = 'https://bettracker.io/api/v1'
def execute_tool(tool: str, arguments: dict = None):
response = requests.post(
f'{API_URL}/tools/execute',
headers={'X-API-Key': API_KEY},
json={'tool': tool, 'arguments': arguments or {}}
)
return response.json()
# Exemple d'utilisation
stats = execute_tool('get_user_stats', {'period': 'month'})
print('Statistiques:', stats['data'])
bets = execute_tool('get_recent_bets', {'limit': 10})
print('Derniers paris:', bets['data'])
cURL
curl -X POST https://bettracker.io/api/v1/tools/execute \
-H "X-API-Key: btk_votre_clé" \
-H "Content-Type: application/json" \
-d '{
"tool": "get_user_stats",
"arguments": {"period": "month"}
}'
🛡️ Sécurité
- ✅ Ne partagez jamais votre clé API
- ✅ Utilisez HTTPS en production (fourni par défaut)
- ✅ Révoquez les clés compromises immédiatement
- ✅ Régénérez vos clés régulièrement
🔄 Codes d'erreur
| Code | Description | |------|-------------| | 200 | Succès | | 400 | Requête invalide (outil inconnu, argument manquant) | | 401 | Clé API invalide ou manquante | | 500 | Erreur serveur |