API de Rally Ligues
Lis et écris les données de tes ligues depuis ton propre logiciel. L’API couvre les ligues, les saisons, les catégories, les classements, les rencontres, les effectifs et les événements.
Pas de bac à sable
Serveur à serveur seulement
Forfait Ligues requis
L’essentiel
- Adresse
- Toutes les opérations partent de
https://gorally.games/v1. - Clé
- Envoie-la dans l’en-tête
Authorization: Bearer rk_live_…, jamais dans l’adresse. - Format
- Requêtes et réponses en JSON. Une erreur rend
error,codeetrequest_id. - Suivi
- Chaque réponse porte
X-Request-Id. Recopie-le quand tu nous écris.
Guides
Pour brancher ton logiciel pas à pas, de la première clé aux webhooks.
- Démarrage rapide
Crée une clé dans l’écran Intégrations, fais ton premier appel à l’API Rally Ligues, puis lis le classement d’une catégorie en curl, JavaScript ou Python.
- Authentification et scopes
Envoie ta clé rk_live_ dans l’en-tête Authorization, choisis les scopes read, write, members:read et members:write, puis fais tourner ou révoque ta clé.
- Webhooks
Reçois les événements des ligues par webhook : les 20 types, la signature Standard Webhooks à vérifier, les relances et le rattrapage par GET /v1/events.
- Erreurs
Le format des erreurs de l’API Rally Ligues, ses 16 codes stables avec leur cause et quoi faire, et les en-têtes X-Request-Id et Retry-After à lire.
- Idempotence
Envoie une Idempotency-Key sur chaque POST pour renvoyer une écriture sans doublon pendant 24 heures, et protège tes PATCH par la révision attendue.
- Pagination
Parcours les listes de l’API Rally Ligues avec le curseur after, limit de 25 à 100 et l’enveloppe list avec has_more, sans sauter ni doubler un élément.
- Limites
Le quota de 120 requêtes par minute et 3 000 par heure de ta clé, l’en-tête Retry-After à respecter, le délai de 10 secondes et le corps limité à 16 Kio.
Ce que fait l’API
Les opérations sont regroupées en quatre familles.
- Compétition
Ligues, saisons, catégories, classements.
- Résultats
Rencontres et saisie de résultat.
- Effectifs
Sous scopes
members:*uniquement — la seule surface qui porte des noms de personnes. - Événements
Le même flux que les webhooks, relisible et rejouable.
Référence complète
Chaque opération avec son scope, ses paramètres, ses schémas, ses exemples et ses codes d’erreur.
Le contrat OpenAPI
La référence est générée depuis ce contrat OpenAPI 3.1. Il se lit sans clé.
Générer un client
Pas de SDK officiel pour l’instant. Génère plutôt un client typé depuis le contrat.
TypeScript, avec openapi-typescript et openapi-fetch
npx openapi-typescript https://gorally.games/v1/openapi.json -o rally.d.ts
npm install openapi-fetchimport createClient from 'openapi-fetch';
import type { paths } from './rally';
const rally = createClient<paths>({
baseUrl: 'https://gorally.games/v1',
headers: { Authorization: `Bearer ${process.env.RALLY_API_KEY}` },
});
const { data, error } = await rally.GET('/leagues');Python, avec openapi-python-client
pipx run openapi-python-client generate --url https://gorally.games/v1/openapi.jsonimport os
from rally_leagues_api_client import AuthenticatedClient
from rally_leagues_api_client.api.competition import lister_ligues
client = AuthenticatedClient(
base_url="https://gorally.games/v1",
token=os.environ["RALLY_API_KEY"],
)
ligues = lister_ligues.sync(client=client)