Référence API
EnterpriseIntègre les données de ton organisation avec des outils externes, des plateformes d'analyse et des applications personnalisées grâce à l'API REST Enkelt.ai.
URL de base
https://enkelt.ai/api/public/v1Toutes les requêtes API doivent être adressées à cette URL de base. HTTPS est requis.
Aperçu rapide
L'API Enkelt.ai fournit un accès programmatique aux données de ton organisation. Utilise-la pour créer des intégrations personnalisées, synchroniser des données avec des systèmes externes ou créer des workflows automatisés.
Authentification Bearer
Authentifie-toi avec des clés API via l'en-tête Authorization.
Limitation de débit
Les requêtes sont limitées selon la formule. Enterprise dispose de 1 000 req/min.
Format JSON
Toutes les requêtes et réponses utilisent JSON. L'encodage UTF-8 est requis.
Authentification
Toutes les requêtes API nécessitent une authentification via un token Bearer. Génère des clés API depuis la section Conformité > Clés API de ton tableau de bord.
En-tête Authorization
Authorization: Bearer sk_live_your_api_key_hereExemple de requête
curl -X GET "https://enkelt.ai/api/public/v1/players" \
-H "Authorization: Bearer sk_live_your_api_key" \
-H "Content-Type: application/json"Garde ta clé API sécurisée
Limitation de débit
Les requêtes API sont limitées en débit pour garantir un usage équitable et la stabilité du système. Les limites s'appliquent par clé API et se réinitialisent sur une fenêtre glissante.
En-têtes de limitation de débit
Chaque réponse inclut des en-têtes indiquant ton statut actuel de limitation de débit :
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 987
X-RateLimit-Reset: 1703275200Points de terminaison disponibles
L'API donne accès aux ressources suivantes. Tous les points de terminaison nécessitent une authentification et respectent les permissions attribuées à ta clé API.
Joueurs
/api/public/v1/playersListe tous les joueurs de ton organisation/api/public/v1/playersplayers:read/api/public/v1/players/{id}Récupère un joueur spécifique par ID/api/public/v1/players/{id}players:read/api/public/v1/playersCrée un nouveau joueur/api/public/v1/playersplayers:write/api/public/v1/players/{id}Met à jour un joueur existant/api/public/v1/players/{id}players:writeValidation du rôle
Le champ rôle doit être un rôle valide pour le jeu de l'équipe. Si aucune équipe n'est assignée, les rôles sont validés par rapport aux rôles du jeu "Other".
Équipes et planning
/api/public/v1/teamsListe toutes les équipes de ton organisation/api/public/v1/teamsteams:read/api/public/v1/rosterRécupère les informations de roster/api/public/v1/rosterroster:read/api/public/v1/scheduleRécupère le planning et les matchs à venir/api/public/v1/scheduleschedule:readEspoirs
/api/public/v1/prospectsListe tous les espoirs de ton pipeline/api/public/v1/prospectsprospects:read/api/public/v1/prospects/{id}Récupère un espoir spécifique/api/public/v1/prospects/{id}prospects:read/api/public/v1/prospectsAjoute un nouvel espoir/api/public/v1/prospectsprospects:write/api/public/v1/prospects/{id}Met à jour les détails d'un espoir/api/public/v1/prospects/{id}prospects:writeContrats
/api/public/v1/contractsListe tous les contrats/api/public/v1/contractscontracts:read/api/public/v1/contracts/{id}Récupère les détails d'un contrat/api/public/v1/contracts/{id}contracts:read/api/public/v1/contracts/expiringRécupère les contrats arrivant bientôt à expiration/api/public/v1/contracts/expiringcontracts:readFormat de réponse
Toutes les réponses de l'API suivent une structure JSON cohérente. Les réponses réussies incluent les données et les métadonnées, tandis que les erreurs incluent des codes et messages d'erreur.
Réponse de succès
{
"success": true,
"data": {
"id": "player_abc123",
"ign": "TenZ",
"realName": "Tyson Ngo",
"role": "Duelist",
"teamId": "team_xyz789",
"contractStatus": "active",
"joinDate": 1705314600000
},
"meta": {
"count": 1,
"requestId": "req_xyz789",
"timestamp": "2024-01-15T10:30:00Z"
}
}Réponse d'erreur
{
"success": false,
"error": {
"code": "RATE_LIMIT_EXCEEDED",
"message": "Rate limit exceeded",
"status": 429
},
"meta": {
"requestId": "req_xyz789",
"timestamp": "2024-01-15T10:30:00Z"
}
}Codes d'erreur
Quand une erreur survient, l'API renvoie un code de statut HTTP approprié et un corps JSON avec les détails de l'erreur.
INVALID_API_KEY401La clé API est manquante ou mal formée
KEY_REVOKED403La clé API a été révoquée
KEY_EXPIRED403La clé API a expiré
INSUFFICIENT_PERMISSIONS403La clé API ne dispose pas des permissions requises pour ce point de terminaison
VALIDATION_ERROR400Le corps de la requête manque de champs requis ou contient des valeurs invalides
INVALID_PARAMETER400Un paramètre de requête a une valeur invalide
INVALID_ROLE400Le rôle n'est pas valide pour le jeu de l'équipe. Voir les rôles valides par jeu
RATE_LIMIT_EXCEEDED429Trop de requêtes. Attends et réessaie
NOT_FOUND404La ressource demandée n'a pas été trouvée
INTERNAL_ERROR500Une erreur serveur inattendue s'est produite
Permissions et scopes
Les clés API peuvent se voir attribuer des permissions spécifiques pour limiter les données auxquelles elles peuvent accéder. Utilise toujours les permissions minimales requises pour ton intégration.
players:readVoir les profils de joueurs, statistiques et informations de base
players:writeCréer et mettre à jour les profils de joueurs
prospects:readVoir les espoirs de ton pipeline de recrutement
prospects:writeAjouter et mettre à jour des espoirs
contracts:readVoir les détails des contrats et les dates d'expiration
teams:readVoir les équipes et leurs détails
roster:readVoir les informations de roster et les affectations de joueurs
schedule:readVoir le planning à venir, les matchs et les événements
Exemples de code
Voici des exemples d'utilisation de l'API dans des langages de programmation populaires.
JavaScript / Node.js
const response = await fetch('https://enkelt.ai/api/public/v1/players', {
headers: {
'Authorization': 'Bearer sk_live_your_api_key',
'Content-Type': 'application/json'
}
});
const { data } = await response.json();
console.log(data); // Array of playersPython
import requests
response = requests.get(
'https://enkelt.ai/api/public/v1/players',
headers={
'Authorization': 'Bearer sk_live_your_api_key',
'Content-Type': 'application/json'
}
)
data = response.json()
print(data['data']) # List of playersBonnes pratiques
- Utilise des variables d'environnement pour stocker ta clé API, ne la code jamais en dur
- Implémente un backoff exponentiel quand tu reçois des erreurs de limitation de débit (429)
- Mets en cache les réponses quand c'est possible pour réduire le nombre d'appels API
- Utilise les permissions minimales requises pour ta clé API
- Fais tourner tes clés API périodiquement pour une meilleure sécurité
- Surveille ton utilisation de l'API dans le tableau de bord pour éviter d'atteindre les limites
Besoin d'aide ?