J'ai du mal à accéder à toutes les activités des athlètes (les miennes) à partir de l'URL dans la documentation de l'API de Strava.
Je peux obtenir mes propres statistiques depuis le début de l'année:
https://www.strava.com/api/v3/athletes/XXXXXXXX/stats?access_token=ACCESSTOKEN
Je peux obtenir les informations de mon profil:
https://www.strava.com/api/v3/athlete?access_token=ACCESSTOKEN
Mais quand j'essaye de faire toutes mes activités:
https://www.strava.com/api/v3/athlete/activities?access_token=ACCESSTOKEN
Je reçois l'erreur suivante:
{
"message": "Authorization Error",
"errors": [
{
"resource": "AccessToken",
"field": "activity:read_permission",
"code": "missing"
}
]
}
Dois-je inclure mon ID client ou ma clé secrète quelque part dans l'URL? Je suis connecté et je ne comprends donc pas pourquoi je ne peux pas accéder à mes propres informations. S'il vous plaît donnez votre avis????
Le 15 octobre 2018, Strava a amélioré le processus autorisation en introduisant une nouvelle liste de étendues .
Utilisez-vous le jeton d'accès que vous trouvez sur https://www.strava.com/settings/api ?
Ce jeton a scope:read
ce n'est peut-être pas suffisant pour faire ce que vous voulez (c'est-à-dire que vos activités sont publiques ou privées?).
Si vous avez besoin d'un nouveau jeton avec différentes portées, vous devez suivre ces étapes .
ÉTAPE 1: redirigez l'utilisateur vers la page d'autorisation de Strava:
https://www.strava.com/oauth/authorize?
client_id=YOUR_CLIENT_ID&
redirect_uri=YOUR_CALLBACK_DOMAIN&
response_type=code&
scope=YOUR_SCOPE
ÉTAPE 2: lire le paramètre code
de la réponse:
http://YOUR_CALLBACK_DOMAIN/?
state=&
code=AUTHORIZATION_CODE_FROM_STRAVA&
scope=YOUR_SCOPE
ÉTAPE 3: demandez un nouveau jeton d'accès à l'aide d'un POST
contenant le code d'autorisation; vous trouverez le nouveau access_token
dans la réponse JSON.
https://www.strava.com/oauth/token?
client_id=YOUR_CLIENT_ID&
client_secret=YOUR_CLIENT_SECRET&
code=AUTHORIZATION_CODE_FROM_STRAVA&
grant_type=authorization_code
Vous pouvez trouver l'ID client, le secret client et le domaine de rappel dans votre page d'application .
Vous pouvez trouver la liste des nouvelles étendues dans ce documentation .
Si vous êtes la seule personne à utiliser votre application, vous pouvez effectuer manuellement les 2 premières étapes à l'aide d'un navigateur et http://localhost
comme domaine de rappel.