You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Strava API V3获取俱乐部成员轨迹:缺开始时间及权限问题解决

解决Strava API获取俱乐部活动完整信息的权限与字段缺失问题

问题场景

开发跑步俱乐部数据服务时,需在仪表盘中展示运动员全名、活动距离、移动时间、耗时、轨迹开始时间,但Strava API存在以下限制:

  • 调用api/v3/clubs/{id_club}/activities:可获取运动员全名,但返回数据缺少轨迹开始时间字段,示例返回:
{
  "resource_state": 2,
  "athlete": {
    "resource_state": 2,
    "firstname": "a",
    "lastname": "a"
  },
  "name": "Morning Football (Soccer)",
  "distance": 6290.6,
  "moving_time": 3109,
  "elapsed_time": 4015,
  "total_elevation_gain": 0.0,
  "type": "Run",
  "sport_type": "Run",
  "workout_type": 0
}
  • 调用api/v3/athletes/{id_strava_member_in_club}/activities:能获取包含轨迹开始时间的完整数据(示例如下),但仅能访问当前授权用户自身的活动,调用其他俱乐部成员ID时会返回Not allowed to view unauthenticated activities权限错误:
{
  "resource_state": 2,
  "athlete": {
    "id": 12345,
    "resource_state": 1
  },
  "name": "Morning Run",
  "distance": 15007.2,
  "moving_time": 4434,
  "elapsed_time": 4448,
  "total_elevation_gain": 5.9,
  "type": "Run",
  "sport_type": "Run",
  "workout_type": null,
  "id": 10271342378,
  "start_date": "2023-11-23T21:49:26Z",
  "start_date_local": "2023-11-24T04:49:26Z",
  "timezone": "(GMT+07:00) Asia/Ho_Chi_Minh",
  "average_speed": 3.385,
  "max_speed": 4.63,
  "average_cadence": 90.8
}

解决方案

方案1:通过活动ID调用详情接口补充缺失字段

这是最直接且无需额外授权的方案:

  1. 先用api/v3/clubs/{id_club}/activities获取俱乐部所有活动的基础数据,每个活动对象包含唯一的id字段(注:你提供的示例中遗漏了该字段,实际接口会返回)。
  2. 对每个活动,调用api/v3/activities/{id_activity}接口,该接口会返回完整的活动详情,包括start_date、start_date_local等时间字段。
  3. 通过活动ID将两个接口的数据关联,即可凑齐所需的全名、距离、移动时间、耗时、轨迹开始时间所有字段。

注意事项:

  • 确保应用已申请activity:read权限(访问公开活动)或activity:read_all权限(访问含私有活动);
  • 仅能获取俱乐部成员设置为公开的活动,私有活动需成员额外授权才能访问。

方案2:引导俱乐部成员授权应用(针对私有活动)

如果需要获取俱乐部成员的私有活动数据,需引导成员授权你的应用:

  1. 在应用授权流程中,请求activity:read或activity:read_all权限;
  2. 成员授权后,即可通过api/v3/athletes/{id}/activities接口获取该成员的完整活动数据,包括私有活动。

该方案能保证数据完整性,但需要成员主动操作,适合对数据覆盖度要求高的场景。

内容的提问来源于stack exchange,提问作者caocuongccc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 09:47:52