Tu veux connecter ton application à l’écosystème Strava, analyser tes données sportives ou créer le prochain outil fitness qui va cartonner ? L’API Strava V3 est l’une des plus riches du secteur du sport connecté — mais elle a ses règles, ses pièges et ses zones d’ombre que la doc officielle n’explique pas toujours clairement.
Ce guide couvre tout : l’accès, l’authentification OAuth, les endpoints essentiels, les limites de taux, et surtout les erreurs que les développeurs font systématiquement (et comment les éviter).
L’essentiel en 30 secondes :
L’API Strava V3 est gratuite et publiquement accessible
Elle utilise OAuth 2.0 pour l’authentification
Limite par défaut : 100 requêtes / 15 min, 1 000 / jour
Mode sandbox : 100 athlètes max (passage en production sur demande)
Plus de 1 000 apps tierces utilisent déjà cette API
Comprendre l’API Strava V3 : les bases
L’API Strava V3 est l’interface publique officielle qui donne accès aux données des athlètes Strava. Des millions d’activités sont uploadées chaque jour sur la plateforme — autant de données accessibles aux développeurs autorisés.
L’API est dite stable : Strava l’utilise elle-même pour ses applications mobiles. Ça veut dire que ce que tu construis dessus ne risque pas de s’effondrer du jour au lendemain sans prévenir. Les changements majeurs sont documentés dans le changelog officiel.
Bon à savoir : l’interface est RESTful, retourne du JSON, et suit les conventions HTTP standards. Si tu as déjà consommé une API REST classique, tu seras à l’aise en quelques heures.
💡 Astuce pro : Avant de coder quoi que ce soit, teste les endpoints directement dans l’API Playground de Strava. C’est un Swagger UI interactif qui t’évite de perdre du temps sur des appels basiques.
Créer ton application Strava : les premières étapes
Pour accéder à l’API, tu dois créer une application dans ton compte Strava. Ça prend 5 minutes.
Remplis les infos de ton app (nom, site web, description)
Spécifie une Authorization Callback Domain (localhost accepté pour le dev)
Récupère ton Client ID et ton Client Secret
Note ton Access Token initial (limité, sert surtout pour les tests)
Une fois créée, ton application apparaît dans le répertoire des apps Strava si tu le souhaites — une bonne visibilité pour les projets publics.
⚠️ Attention : Ne partage jamais ton Client Secret. Si ton token est compromis, va immédiatement dans les paramètres API pour le régénérer. Strava peut révoquer ton accès si ton app viole les conditions d’utilisation de l’API.
L’authentification OAuth 2.0 : le cœur du système
C’est là que beaucoup de développeurs bloquent. L’API Strava n’accepte pas d’authentification basique par login/mot de passe. Tout passe par OAuth 2.0.
Le flux d’autorisation standard
Le processus se déroule en trois étapes claires :
Étape 1 — Redirection vers Strava :
Tu envoies l’utilisateur vers cette URL :
Étape 2 — Récupération du code :
Strava redirige l’utilisateur vers ton callback avec un paramètre code temporaire.
Étape 3 — Échange contre des tokens :
Tu fais un POST vers https://www.strava.com/oauth/token avec ton Client ID, Client Secret et le code reçu. Tu obtiens un access_token (valable 6 heures) et un refresh_token (permanent).
La gestion des tokens : l’erreur classique
L’access token expire au bout de 6 heures. Beaucoup d’apps débutantes ne gèrent pas le refresh et tombent en erreur 401 après quelques heures.
La bonne pratique : à chaque appel API, vérifie le champ expires_at du token. S’il est dépassé, appelle /oauth/token avec le grant_type=refresh_token avant de faire ta vraie requête.
💡 Astuce pro : Stocke systématiquement le refresh_token en base de données. Contrairement à l’access token, il ne change pas à chaque refresh (sauf si tu forces une déconnexion).
Les scopes disponibles
Les scopes définissent ce à quoi ton app peut accéder. Voici les principaux :
Scope
Accès
read
Profil public athlète
read_all
Données privées athlète
activity:read
Activités publiques
activity:read_all
Toutes les activités (y compris privées)
activity:write
Créer/modifier des activités
profile:read_all
Données de profil complètes
Demande uniquement les scopes dont tu as besoin. Un utilisateur est plus enclin à autoriser une app qui ne demande pas accès à tout.
Les endpoints essentiels à connaître
L’API Strava couvre beaucoup de terrain. Voici les endpoints que tu vas utiliser dans 90% des cas.
Données athlète
GET /athlete → Infos du compte connecté
GET /athletes/{id}/stats → Stats globales (km totaux, dénivelé, etc.)
GET /athlete/zones → Zones de fréquence cardiaque et de puissance
Activités
GET /activities → Liste des activités (avec pagination)
GET /activities/{id} → Détail d’une activité spécifique
GET /activities/{id}/streams → Données brutes GPS, FC, puissance, cadence
GET /activities/{id}/laps → Découpage par tours/intervalles
POST /activities → Créer une activité manuellement
Segments
GET /segments/{id} → Infos d’un segment (KOM, popularité)
GET /segments/{id}/leaderboard → Classement des athlètes sur un segment
GET /athlete/segments/starred → Segments favoris de l’athlète
Passons aux choses sérieuses : les streams sont souvent la raison principale pour laquelle les développeurs veulent accéder à l’API. C’est ici que se trouvent les données granulaires — chaque seconde d’une activité, avec tous les capteurs disponibles.
💡 Astuce pro : Pour récupérer les streams, précise les types de données via le paramètre keys : ?keys=time,distance,heartrate,watts,latlng. Tu réduiras la taille de la réponse et accélèreras tes appels.
Limites de taux : comment ne pas se faire bloquer
C’est le sujet qui revient le plus dans la communauté développeurs Strava. Les rate limits sont strictes et peuvent paralyser ton app si tu ne les anticipes pas.
Les limites en 2026
Par défaut, chaque application est soumise à :
100 requêtes toutes les 15 minutes
1 000 requêtes par jour
Ces chiffres s’appliquent par application, pas par utilisateur. Si ton app a 50 utilisateurs actifs simultanément, tu partages ce quota entre tous.
Parse ces headers à chaque appel pour connaître ton état en temps réel.
Stratégies pour rester dans les clous
Pour les apps à fort volume :
Cache agressif : les activités passées ne changent pas. Stocke-les en base après le premier fetch.
Webhooks plutôt que polling : inscris-toi aux événements push de Strava pour être notifié des nouvelles activités au lieu de les requêter toutes les X minutes.
Queue de traitement : traite les requêtes en arrière-plan avec un rate limiter (ex: 1 req / 9 secondes = ~100 req / 15 min).
⚠️ Attention : L’erreur 429 Too Many Requests ne stoppe pas juste ta requête — elle peut déclencher un backoff exponentiel si tu continues d’insister. Implémente un retry avec délai croissant (1s, 2s, 4s, 8s…).
Passer du mode sandbox à la production
C’est clairement le point de friction n°1 en 2026 pour les développeurs Strava. En mode sandbox, ton app est limitée à 100 athlètes connectés maximum. Dès que tu dépasses, tu reçois une erreur 403.
La procédure de demande d’accès étendu
Pour passer en production, tu dois :
Compléter le formulaire de demande sur le portail développeur
Décrire précisément le cas d’usage de ton application
Démontrer que tu respectes les conditions d’utilisation API
Attendre… (et c’est là que ça coince)
Spoiler : la communauté développeurs Strava est actuellement en ébullition sur ce point. Des dizaines de développeurs attendent depuis 6 à 10 semaines sans réponse de Strava. Le silence de l’équipe API est devenu un sujet brûlant sur le Community Hub.
⚠️ Attention : Si tu construis un projet commercial sur l’API Strava, intègre cette incertitude dans ton planning. La dépendance à une seule API tierce est un risque business réel. Prévois des alternatives.
Conseils pour maximiser tes chances
Décris clairement comment ton app enrichit l’expérience Strava (pas comment elle la remplace)
Évite tout cas d’usage de compétition virtuelle — c’est explicitement interdit
Montre un prototype fonctionnel
Inclus le nombre d’utilisateurs attendus et la fréquence d’appels prévue
Webhooks Strava : l’alternative intelligente au polling
Les webhooks sont sous-utilisés par les développeurs qui débutent avec l’API Strava. Pourtant, c’est la solution qui te permettra de scaler sans exploser tes rate limits.
Comment ça fonctionne
Tu enregistres une URL de callback auprès de Strava. Quand un athlète lié à ton app complète une activité, Strava envoie un POST vers ton endpoint avec les infos de base.
Tu reçois :
L’ID de l’activité créée/modifiée
L’ID de l’athlète
Le type d’événement (create, update, delete)
À partir de là, tu décides si tu veux requêter les détails complets — et donc tu ne consommes un appel API que si c’est vraiment nécessaire.
Mise en place rapide
POST https://www.strava.com/api/v3/push_subscriptions{ "client_id": "TON_CLIENT_ID", "client_secret": "TON_CLIENT_SECRET", "callback_url": "https://tonapp.com/webhook/strava", "verify_token": "MON_TOKEN_SECRET"}
Strava va d’abord valider ton endpoint avec une requête GET pour vérifier qu’il répond correctement. Assure-toi de gérer ce challenge de validation.
Librairies et outils recommandés en 2026
Tu n’as pas besoin de réinventer la roue. Des bibliothèques existent pour la plupart des langages.
Python :
stravalib — la plus complète, maintenue activement
stravaio — orientée async, idéale pour les apps modernes
JavaScript/Node.js :
strava-v3 — wrapper simple et efficace
axios + gestion manuelle — pour plus de contrôle
Go, Ruby, PHP : des clients communautaires existent, consultez la liste officielle.
💡 Astuce pro : Même avec une librairie, lis la doc des endpoints directement. Les wrappers ne couvrent pas toujours les paramètres avancés (ex: filtres de date sur /activities, résolution des streams).
Ce que tu peux (et ne peux pas) faire avec l’API
Strava est clair dans ses conditions : l’API est là pour enrichir l’expérience Strava, pas pour la concurrencer.
✅ Autorisé :
Visualisation personnalisée d’activités
Analyse de performance avancée
Intégration dans des apps de coaching
Sync avec d’autres plateformes (avec accord utilisateur)
Création d’outils de motivation et de suivi
❌ Interdit :
Courses virtuelles ou compétitions
Réplication de fonctionnalités Strava core
Revente de données utilisateurs
Scraping massif sans authorisation OAuth par athlète
Ces règles expliquent pourquoi Strava est parfois strict sur les demandes de production. Toute app qui ressemble de près à un segment leaderboard concurrent sera refusée.
Strava et le parrainage : ce qu’il faut savoir
Tu arrives ici depuis Parrain du Web ? Bonne question. Strava ne propose pas de programme de parrainage classique avec bonus monétaire ou réduction d’abonnement.
La plateforme mise sur la viralité organique — tes amis voient tes activités, s’inscrivent, et l’écosystème grandit naturellement. Pratique pour Strava, moins pour toi qui veux parrainer avec une récompense.
Si tu cherches des alternatives fitness avec de vrais avantages de parrainage, jette un œil à :
ClassPass — crédits offerts pour chaque ami inscrit
WHOOP — mois gratuits pour le parrain et le filleul
✅ Notre verdict : L’API Strava V3 est une des meilleures APIs sport du marché — riche, stable, bien documentée. Le principal frein reste le processus d’accès à la production, qui manque clairement de transparence en 2026. Anticipe les délais si tu construis dessus.
FAQ — Tes questions sur l’API Strava
L’API Strava est-elle gratuite ?
Oui, totalement. Pas de pricing tier, pas de quota payant. Tu crées ton app sur strava.com/settings/api et tu pars. Les seules limites sont les rate limits (100 req/15min, 1000/jour) et la limite à 100 athlètes en sandbox.
Quelle est la différence entre sandbox et production ?
En sandbox, tu peux développer et tester avec jusqu’à 100 athlètes connectés. Au-delà, erreur 403. La production supprime (ou augmente significativement) cette limite, mais nécessite une validation manuelle par Strava qui peut prendre plusieurs semaines.
Comment s’authentifier avec l’API Strava ?
Via OAuth 2.0 : redirection vers strava.com/oauth/authorize → récupération du code → échange contre access_token + refresh_token. L’access token dure 6 heures, le refresh token est permanent.
Quelles données peut-on récupérer ?
Activités complètes avec streams (GPS, FC, puissance, cadence), profil athlète, segments et leurs classements, clubs, photos, statistiques globales. Certaines données nécessitent des scopes spécifiques.
Comment éviter les erreurs 429 ?
Cache les données récupérées (surtout les activités passées), utilise les webhooks au lieu du polling, et surveille les headers X-RateLimit-Usage à chaque appel pour adapter ta fréquence.
Peut-on écrire des activités via l’API ?
Oui, avec le scope activity:write. Tu peux créer des activités manuelles via POST /activities et mettre à jour certains champs (nom, description, type) via PUT /activities/{id}.
Strava a-t-il un programme de parrainage ?
Non. Strava ne propose pas de bonus de parrainage. Si tu cherches des offres fitness avec récompenses, ClassPass et WHOOP sont des alternatives solides avec de vrais programmes de parrainage.
Tu construis quelque chose avec l’API Strava ? La combinaison webhooks + cache + OAuth bien géré est la recette pour une app robuste qui passe à l’échelle. Et si tu te retrouves bloqué sur la demande de production, rejoins le fil de discussion sur le Community Hub — tu n’es clairement pas seul.
#strava api
#strava développeur
#api sport
#strava v3
#oauth strava
✍️ À propos de l'auteur
Thomas Music
Expert Fintech
Ex-conseiller bancaire, certifié AMF
Passionné de finance personnelle depuis plus de 8 ans, Thomas teste et compare les banques en ligne et services financiers pour vous aider à faire les meilleurs choix. Il a personnellement utilisé plus de 15 offres de parrainage.