For the complete documentation index, see llms.txt. This page is also available as Markdown.

Webhooks

Webhooks

Avant les webhooks, le seul moyen de récupérer des données depuis Scoreholio Seasons était de se connecter et d’exécuter un rapport ou un export — une capture manuelle, a posteriori.

Les webhooks inversent la logique. Au lieu que tu viennes chercher les données, Scoreholio te les envoie dès qu’un changement se produit. Tu nous donnes une URL, tu nous dis quels événements t’intéressent, et on appelle cette URL à chaque fois que l’un d’eux se produit.

Ça veut dire que tu peux :

  • Synchroniser les membres dans ton CRM dès qu’ils s’inscrivent — sans export nocturne.

  • Publier dans Slack/Discord/Teams quand un nouveau tournoi est créé.

  • Déclencher un e-mail quand une transaction de saison est enregistrée.

  • Garder un tableau de bord externe ou un tableur à jour en temps réel.

Les webhooks sont actuellement la seule façon de récupérer des données de Seasons de manière programmatique. Il n’existe pas d’API REST publique.

Tu n’as pas de développeur ? Utilise Zapier.

Tu n’as pas besoin d’écrire de code pour utiliser les webhooks. Zapier (et des outils similaires comme Make, n8n ou Pipedream) peut intercepter un webhook Scoreholio et le transformer en presque n’importe quelle action imaginable — ajouter une ligne à Google Sheets, envoyer une campagne Mailchimp, publier dans Slack, créer un contact HubSpot, envoyer un SMS, etc.

Voici comment le connecter dans Zapier :

  1. Dans Zapier, crée un nouveau Zap et choisis Webhooks by Zapier comme déclencheur.

  2. Sélectionne l’événement Catch Hook.

  3. Zapier te donnera une URL qui ressemble à quelque chose comme https://hooks.zapier.com/hooks/catch/12345/abcde/. Copie-la.

  4. Dans Scoreholio, va dans Paramètres → Webhooks → Ajouter un webhook, colle cette URL, puis choisis les événements que tu veux.

  5. Enregistre. Maintenant, fais dans Scoreholio l’action qui doit déclencher l’événement (par ex. ajouter un membre test) pour que Zapier puisse voir à quoi ressemble le payload.

  6. Retourne dans Zapier, clique sur Tester le déclencheur — tu devrais voir l’événement arriver.

  7. Ajoute ensuite l’action que tu veux : Google Sheets, Slack, Mailchimp, Gmail, etc.

Le plan gratuit de Zapier inclut Webhooks by Zapier, mais un gros volume d’événements peut te faire passer à un plan payant. Si tu t’attends à beaucoup d’événements, vérifie les limites de tâches de Zapier.

Le même principe fonctionne avec Make, n8n, Pipedream et d’autres outils no-code — ils ont tous une étape « déclencheur webhook » ou « capter le webhook ».

Qu’est-ce que tu peux surveiller ?

Chaque fois que l’une de ces choses se produit dans ton compte, on enverra un message à ton URL :

  • Saisons — créées, mises à jour, supprimées

  • Tournois — créés, mis à jour, supprimés

  • Membres — créés, mis à jour, supprimés

  • Transactions de saison — créées, mises à jour, supprimées

  • Organisateurs — créés, mis à jour, supprimés

  • Équipes — créées, mises à jour, supprimées (uniquement si les classements par équipes sont activés pour cette saison)

Tu choisis exactement ceux qui t’intéressent — pas besoin de tous les suivre.

Comment en configurer un

  1. Ouvre https://seasons.scoreholio.com et connecte-toi avec ton compte Pro

  2. Va dans Paramètres → Webhooks

  3. Clique sur Ajouter un webhook

  4. Colle l’URL où tu veux qu’on envoie les événements (par ex. https://your-server.com/scoreholio-events, ou ton URL Zapier Catch Hook)

  5. Coche les cases des événements qui t’intéressent

  6. (Facultatif) Choisis des saisons précises à surveiller — laisse vide pour recevoir les événements de toutes les saisons

  7. Clique sur Enregistrer

Quand tu l’enregistres, on te montrera un secret de signature — copie-le dans un endroit sûr. On ne l’affichera qu’une seule fois. Tu en auras besoin pour vérifier que les messages viennent bien de nous (voir ci-dessous).

« Uniquement pour ces saisons » vs « toutes les saisons »

Par défaut, un webhook se déclenche pour chaque saison de ton compte. Si tu t’intéresses seulement, par exemple, à ta ligue du printemps 2026, clique sur Modifier les saisons dans le formulaire et choisis celles que tu veux.

Attention : season.created, season.updated et season.deleted se déclenchent toujours pour chaque saison, quel que soit ce filtre — parce qu’au moment où une saison est créée ou supprimée, le filtre ne s’applique pas encore vraiment.

Comment savoir que c’est vraiment Scoreholio ?

Chaque requête qu’on envoie inclut un en-tête appelé X-Scoreholio-Signature. C’est une empreinte faite à partir de ton secret de signature plus le corps du message.

Quand tu reçois un webhook :

  1. Prends le corps brut de la requête

  2. Calcule la même empreinte en utilisant ton secret de signature

  3. Compare-la à la valeur dans l’en-tête

  4. Si elles correspondent → c’est nous. Si elles ne correspondent pas → jette ça.

Ça empêche des inconnus sur internet d’envoyer des faux événements en POST vers ton URL.

Si tu utilises Zapier (ou un autre outil no-code), tu peux ignorer la vérification de signature — les URL de webhook Zapier sont déjà une longue chaîne aléatoire presque impossible à deviner. La vérification de signature sert surtout quand tu fais tourner ton propre serveur.

Mettre un webhook en pause

Si ton serveur est hors ligne pour maintenance, tu n’as pas besoin de supprimer le webhook — modifie-le simplement et passe Active à Paused. On arrêtera d’envoyer jusqu’à ce que tu le réactives.

Comment savoir que ça marche ?

La liste des webhooks t’affiche, pour chacun :

  • Last — est-ce que la livraison la plus récente était un ✓ ou un ✗

  • When — il y a combien de temps on a essayé d’envoyer pour la dernière fois

Si tu vois toujours des ✗, ton URL ne répond probablement pas avec un code d’état 2xx, ou elle est hors ligne.

Suppression

Clique sur Options → Supprimer sur la ligne. Il cesse immédiatement de recevoir des événements. (Le secret de signature disparaît aussi pour toujours, donc si tu le recrées un jour, tu obtiendras un nouveau secret.)

Mis à jour