
Version 2026-11-03 - dernière mise à jour : 03 novembre 2026
Les présentes conditions encadrent l'accès et l'utilisation de l'API et des webhooks de Trail Horizon (les « Services API »), proposés via le site www.trailhorizon.fr et l'espace développeur. Elles s'appliquent à tout compte développeur (le « Compte ») et à toute personne qui utilise une clé API de ce Compte (le « Développeur »). Le Développeur déclare avoir l'autorité d'engager l'entité pour laquelle il agit.
L'acceptation de ces conditions est requise à la première connexion à l'espace du Compte et enregistrée avec la date et la version acceptées. Tant que les conditions n'ont pas été acceptées, l'API refuse les requêtes.
Trail Horizon peut modifier ces conditions. En cas de nouvelle version, le Développeur dispose d'un délai de grâce de 30 jours à compter de la date de la nouvelle version pour l'accepter depuis son espace développeur : pendant ce délai, l'accès au Compte et aux Services API continue de fonctionner et les réponses de l'API signalent la date limite dans l'en-tête X-TrailHorizon-Terms. À l'expiration du délai, l'API peut refuser les requêtes et les envois de webhooks tant que la nouvelle version n'a pas été acceptée.
Trail Horizon concède au Développeur une licence personnelle, non exclusive, non transférable et révocable d'utilisation des données obtenues via les Services API, dont l'étendue dépend de la formule du Compte :
Les champs accessibles et les quotas dépendent de la formule et des réglages du Compte. Un champ non autorisé ne doit pas être déduit, reconstitué ou collecté par un autre moyen.
Le Développeur s'interdit, sauf accord écrit de Trail Horizon :
Les données ne comprennent pas de données personnelles. Les descriptions rédigées par les organisateurs, les images et marques restent la propriété de leurs titulaires ; leur éventuelle mise à disposition ne vaut pas cession de droits.
Chaque course ou ensemble de courses affiché à partir des données doit comporter, de manière visible, la mention « Données : Trail Horizon » accompagnée d'un lien hypertexte vers la fiche de la course (champ url, ou race.url dans les webhooks). Ce lien :
rel="nofollow" ;Cette obligation s'applique à toutes les formules, y compris dans le cadre d'un export ou de webhooks.
Les Services API sont soumis à des quotas (requêtes par jour et par minute, taille de page, nombre d'exports, de clés, de domaines autorisés, de membres et d'endpoints) fixés par la formule et visibles dans l'espace développeur. Ils sont comptés par Compte, toutes clés de production confondues ; les clés de test disposent de quotas distincts. Un dépassement entraîne des réponses 429.
Le Développeur s'engage à un usage raisonnable : mise en cache des réponses, lecture incrémentale à partir de updatedAt plutôt que relecture intégrale permanente, respect de l'en-tête Retry-After. Les quotas peuvent évoluer ; les valeurs en vigueur sont celles du Compte.
Chaque requête du Développeur à l'API de lecture (/api/v1) doit indiquer, dans l'en-tête X-TrailHorizon-Origin, le domaine du site ou du produit qui exploite les données. Ce domaine doit avoir été déclaré au préalable par le Développeur comme « domaine autorisé » depuis l'espace développeur, et rattaché à la clé de production utilisée. Un domaine couvre ses sous-domaines. Le nombre de domaines autorisés dépend de la formule du Compte. Le Développeur dont le produit n'a pas de site déclare le domaine de son produit.
L'API étant utilisée de serveur à serveur, cet en-tête est déclaratif : Trail Horizon ne peut pas le vérifier techniquement et il ne constitue pas une mesure de sécurité. Il engage le Développeur, qui déclare un domaine exact : toute fausse déclaration constitue un manquement aux présentes conditions.
Trail Horizon peut examiner les domaines déclarés, notamment pour vérifier la citation de la source et le respect de la licence. Chaque domaine porte un statut : « À vérifier » à la déclaration, puis « Conforme » ou « Non conforme ». Lorsqu'un domaine est déclaré « Non conforme », Trail Horizon en informe le propriétaire du Compte par email, en indiquant le motif. Les requêtes dont l'origine correspond à ce domaine sont alors refusées, les webhooks dont l'URL correspond à ce domaine sont désactivés, et le domaine ne peut être ni retiré ni déclaré de nouveau.
Lorsque le nombre de domaines autorisés de la formule diminue, seuls les domaines déclarés les plus anciens restent actifs : les autres sont suspendus, sans être supprimés, et réactivés si la limite remonte.
Les clés de test sont réservées au développement local : elles n'acceptent que des origines locales, ont des quotas distincts et ne donnent pas accès à l'export complet.
Pour chaque requête, Trail Horizon enregistre le domaine d'origine déclaré (nom d'hôte normalisé, et non la valeur brute de l'en-tête), avec la date, la route appelée, le statut de la réponse et, le cas échéant, le motif du refus. Ces journaux sont consultables dans l'espace développeur et conservés selon la durée de rétention des logs de la formule du Compte, de 7 à 30 jours, puis supprimés. Un nom d'hôte pouvant, dans certains cas, identifier une personne, ces données sont traitées conformément à la politique de confidentialité.
Les webhooks sont inclus dans les formules qui les prévoient (formules Pro et Partner). Le Développeur crée, active, modifie et désactive lui-même ses endpoints depuis l'espace développeur, dans la limite du nombre d'endpoints de sa formule. Chaque endpoint est une URL en HTTPS sur le port 443 que le Développeur contrôle ; tout autre port, les adresses non publiques et les redirections sont refusés. Les changements sont envoyés par un traitement planifié : un délai de quelques minutes est normal. Le Développeur s'engage à :
En cas d'échecs répétés, Trail Horizon peut relancer l'envoi selon un calendrier dégressif puis abandonner la livraison, et désactiver l'endpoint automatiquement. Trail Horizon ne garantit ni l'ordre ni l'exhaustivité des livraisons : une relecture du catalogue reste possible à tout moment.
Trail Horizon peut, à tout moment et sans préavis en cas de manquement ou de risque pour le service, suspendre un Compte, révoquer des clés API ou un accès aux Services API, notamment en cas de non-respect des présentes conditions (usage commercial en formule Free, absence de citation, revente, origine déclarée inexacte, dépassements abusifs des quotas, atteinte à la sécurité).
Un Compte Partner est suspendu automatiquement à l'échéance de son contrat, sauf renouvellement. Le Développeur peut cesser d'utiliser les Services API à tout moment. À la fin de l'accès, il cesse l'utilisation des clés et supprime les données mises en cache qui ne sont pas couvertes par une autorisation contractuelle contraire.
Les Services API et les données sont fournis « en l'état ». Les informations sur les courses (dates, prix, distances, inscriptions, matériel obligatoire…) proviennent de sources publiques et des organisateurs ; elles peuvent être incomplètes, inexactes ou évoluer. Trail Horizon ne garantit ni leur exactitude, ni la disponibilité continue des Services API. Le Développeur reste responsable de la vérification des informations avant de les présenter à ses propres utilisateurs, et invite ces derniers à se référer au site officiel de la course.
Dans les limites autorisées par la loi, la responsabilité de Trail Horizon ne saurait être engagée pour les dommages indirects, pertes d'exploitation ou de données liés à l'utilisation des Services API. Les stipulations d'un contrat Partner prévalent le cas échéant.
La version /v1 de l'API est stable : l'ajout de champs n'est pas un changement cassant et le Développeur doit ignorer les champs inconnus. Un changement cassant donnera lieu à une nouvelle version. Trail Horizon peut faire évoluer les formules, champs et quotas disponibles.
Les présentes conditions sont soumises au droit français. À défaut de résolution amiable, les tribunaux compétents sont ceux du ressort du siège de Trail Horizon, sous réserve des dispositions impératives applicables.
Pour toute question, demande de compte, de formule Pro ou de partenariat : contact@trailhorizon.fr ou via la page de contact. Voir aussi la présentation de l'API et la documentation.