API REST - Documentation

Documentation complète et exemples pratiques

🌐 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

📊 Statistiques & Paris

Obtenir les statistiques utilisateur

POST /tools/execute
{
  "tool": "get_user_stats",
  "arguments": { "period": "month" }
}

Réponse :

{
  "success": true,
  "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,
    "status": "won",
    "mode": "real"
  }
}

Évolution de la bankroll

POST /tools/execute
{
  "tool": "get_bankroll_history",
  "arguments": { "days": 30 }
}

État du budget

POST /tools/execute
{
  "tool": "get_budget_status",
  "arguments": {}
}

🏇 Courses & Pronostics

Courses du jour

POST /tools/execute
{
  "tool": "get_today_races",
  "arguments": {}
}

Pronostics IA

POST /tools/execute
{
  "tool": "get_ai_pronostics",
  "arguments": { "status": "validated" }
}

Rechercher des courses

POST /tools/execute
{
  "tool": "search_races",
  "arguments": {
    "hippodrome_code": "M3",
    "date": "2025-01-15"
  }
}

Analyser une course

POST /tools/execute
{
  "tool": "get_pmu_race_analysis",
  "arguments": {
    "hippodrome_code": "M3",
    "race_number": 5,
    "date": "2025-01-15"
  }
}

👤 Compte & Notifications

Informations abonnement

POST /tools/execute
{
  "tool": "get_subscription_info",
  "arguments": {}
}

Notifications

POST /tools/execute
{
  "tool": "get_notifications",
  "arguments": { "unread_only": true }
}

Chatbot IA

POST /tools/execute
{
  "tool": "ask_ai_chat",
  "arguments": {
    "message": "Analyse mes derniers paris"
  }
}

📝 Exemples de Code

JavaScript / Node.js

const API_KEY = 'btk_votre_clé';
const API_URL = 'https://bettracker.io/api';

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 races = await executeTool('get_today_races');
console.log('Courses du jour:', races.data);

Python

import requests

API_KEY = 'btk_votre_clé'
API_URL = 'https://bettracker.io/api'

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'])

races = execute_tool('get_today_races')
print('Courses du jour:', races['data'])

cURL

curl -X POST https://bettracker.io/api/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

📊 Limites

  • Rate limit : 100 requêtes / minute
  • Timeout : 30 secondes par requête
  • Taille max : 1 MB par requête

🔄 Codes d'erreur

| Code | Description | |------|-------------| | 200 | Succès | | 400 | Requête invalide | | 401 | Clé API invalide ou manquante | | 404 | Outil non trouvé | | 429 | Trop de requêtes (rate limit dépassé) | | 500 | Erreur serveur |

📚 Ressources

💡 Besoin d'aide ?

Consultez notre chatbot IA pour une assistance personnalisée

Ouvrir le chatbot →

🔑 Clé API

Générez votre clé API pour utiliser ces intégrations

Gérer mes clés →

📊 Statistiques

Explorez vos données PMU et paris hippiques

Voir mes stats →