Stride

Search Documentation

Search for articles, guides, and more

← API overview

Get a download link for the original recording

GET/v1/activities/{activity_id}/filerequires files.read

A short-lived link to the file the activity was recorded from. Stride normalises every upload to gzipped FIT, so the link serves a .fit.gz.

The URL expires in 15 minutes and must not be stored or shared. Reach for it only when you need the second-by-second record; the analysis endpoint already returns what Stride derived from it. Returns 404 for activities entered by hand rather than uploaded from a device.

Path parameters

  • activity_idstringrequired

    The activity ID, e.g. `act_2f...`. The owner is resolved from it.

Example

bash
curl -X GET "https://api.stride.is/v1/activities/{activity_id}/file" \
  -H "Authorization: Bearer $STRIDE_TOKEN"

Response 200

Success.

  • activity_idstringalways present
  • download_urlstring
  • encodingstring
  • expires_atstring
  • formatstring

Errors

Every error is an RFC 9457 problem document. Branch on its code, which is stable; detail is prose and may be reworded.

  • 400The request was malformed: an unparseable date, an unknown enum value, or a parameter combination that cannot be satisfied.
  • 401No access token was supplied, or it is not valid for this API.
  • 402The Stride account the token belongs to has no active subscription or trial.
  • 403The token does not hold the scope this endpoint requires, or may not act on the athlete or team named.
  • 404No such resource, or it is not visible to this token. The two are deliberately indistinguishable.
  • 405The path exists but does not serve this method. The Allow header lists the ones it does.
  • 429A rate limit was exceeded. Retry after the period in the Retry-After header.
  • 500Something failed on Stride's side. The failure is logged with a trace ID.