Curious about our API? Connect with our developers to share ideas, knowledge, and feedback
Recently active
Hi 👋 Your api server endpoint router rules for fetching the authenticated athlete:`GET https://www.strava.com/api/v3/athlete`Also allows`GET https://www.strava.com/api/v3/athlete.umbrella`and other variations of `athlete.*` return the athlete. I haven't tried this with other endpoints, nor the overall implications other than odd behavior.Just thought you should know in case you wanted to update this behavior to 404 or something.
Hello, I have to create a webhook so that strava sends me the information of the athletes' activities to my app in nestjs and I don't know where to start.I appreciate your recommendations.
trying to get some details out of the Strava API - specifically year to date miles but its missing miles, which i think are either virtual or private ridesi can't see from the api docs if its possible or how to include these in the total
HiI have reinstalled my Strava app on my Samsung Gear Sport AB91 SM-R600 .This because I got a new non-Samsung cell phone and Samsung forced me to reinstall it Strava App on Watch. Tizen OS 4.0.0 7 Knox 2.3.1 TIMZ 3.0.0At first boot of the Strava app (1.7.24) I see that I need to type in 4 digits, for authentication.On my mobile phone ( having connected the Samsung Galaxy Wearble App) the app redirected to https://watch.samsung.strava.com/ which shows:{"message": "Internal server error"}Why is this msg seen?Also is there anywhere else I can get those 4 digits from ? ( from another than the web site that respond HTTP500) .So that I can continue to use Strava on my Samsung Watch Gear.I have no problem with any other Samsung apps* on my cell phone, nor on my Gear Watch.I only have problem with the Strava app, on the Gear Watch.*(nor account problems after creating a password - because there were none initially as it was created on google initially)Thanks
.
Is the average cadence from the Strava API not showing steps per minute for runs? For some reason I'm not getting the same numbers through the Strava API for cadence and the Strava app which shows cadence as steps per minute. For example in one of my runs the average cadence is 185 in the Strava app, that is 185 steps per minute. But the value I get through the API is 92.4.
When I make the following call, I am expecting to see a bikes section at the bottom.curl -X 'GET' ...athleteAll I get is this:{"id": xx,"username": null,"resource_state": 2,"firstname": "xx","lastname": "xx","bio": "","city": "Toronto","state": "Ontario","country": "Canada","**bleep**": "M","premium": false,"summit": false,"created_at": "2016-03-22T12:11:56Z","updated_at": "2022-07-25T11:15:44Z","badge_type_id": 0,"weight": 78.0178,"profile_medium": xx","profile": ","friend": null,"follower": null}In the sample code, I see this extra section"bikes" : [ {"id" : "b12345678987655","primary" : true,"name" : "EMC","resource_state" : 2,"distance" : 0} ],"shoes" : [ {"id" : "g12345678987655","primary" : true,"name" : "adidas","resource_state" : 2,"distance" : 4904} ]For the authenticated user, I would like to get a list of bikes. Is there any reason this is not working. I have 2 bikes showing on my strava settings page under My Gear.Another interesting side note and possible related, is that
I am involved in a scientific research focused on athletes performance. For this, we need some health data of these athletes that should be captured during activities. I read Strava API documentation and noticed that it gives access to a bunch of health data. Therefore, when I was trying to register, it asked some information about our app that we don't have, because our goal is just to research and not to develop an app. Does Strava allow access to scientific researches to explore the API?
Hi,I am deauthorizing my athelete from my app using power automate. I have used exactly below info on documentation page but not work.Here is the return response.{ "message": "Authorization Error", "errors": [ { "resource": "Athlete", "field": "access_token", "code": "invalid" } ]}I have checked the latest access_token of that athlete and it is true. Can someone guide me I am wrong any where ? Thank you so much.-----DeauthorizationApplications can revoke access to an athlete’s data. This will invalidate all refresh tokens and access tokens that the application has for the athlete, and the application will be removed from the athlete’s apps settings page. All requests made using invalidated tokens will receive a 401 Unauthorized response.The endpoint
In my iOS App I implemented the authentication flow according to the Strava Documentation.Checking if the StravaApp is installed, if yes, I'm using <UIApplication.shared.open> to redirect to the StravaApp.If the StravaApp is not installed I'm using <ASWebAuthenticationSession>Everthing works OK, except in the case when the StravaApp is used for authentication.After the user has authorised the connection to Strava inside the StravaApp, it returns to my app but the callback to my AppDelegate never happens. So I don’t get the url with the authorization code. My App uses SwiftUI. I'm injecting the AppDelegate in in my App scene:@UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegateAppDelegate implementation:class AppDelegate: NSObject, UIApplicationDelegate { func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool { print("url returned from Strava App: (url)") return true&n
All my activities are returning a value of 0 for total_photo_count even though they have photos. This was working until recently.. Any ideas?
I have a personal project where I am creating activities based on rides taken on a bikeshare program. I want to be able to calculate the CO2 saved by taking this form of transportation, as I see this data in the Strava platform but it isn't returned on the /activities/id API call. It would be amazing if this could be added.
https://developers.strava.com/docs/reference/#api-models-DetailedSegmentEffortThese docs are missing information:1. On what the `achievements` property is. Clearly a collection of entities, but the entity objects are completely undocumented.2. On what the `visibility` property represents and the possible values for it.3. On what the `hazardous`, `elevation_profile`, and `starred` properties of the `segment` property represent. It's supposed to be documented by https://developers.strava.com/docs/reference/#api-models-SummarySegment but these properties are omitted in the docs.
There are not any docs for accessing photos. If we get a detailed activity through `/activities/{id}` we will get back a `photos` property that indicates:1. The location of the primary photo2. The number of photos uploaded to the activityBut there is not an array of photo ids. Someone on this board discovered that you can hit `/activities/{id}/photos` to get an activities photos, but there seem to be query parameters necessary to get back different photo sizes. We can guess that `?size=5000` will work, but I bet there are better ways to get back original images than guessing.Please document the photos API.
The docs for `DetailedActivity` claim that these fields are only for runs, but I seem them on rides as well. And what I am seeing makes no sense. I would assume the first split in each collection would be equivalent to one another, i.e. cover the same physical space on Earth. But I'm seeing a metric split like: { "distance": 1007.7, "elapsed_time": 171, "elevation_difference": 25.8, "moving_time": 170, "split": 1, "average_speed": 5.93, "average_grade_adjusted_speed": null, "average_heartrate": 138.79041916167665, "pace_zone": 0 } And the "corresponding" standard split as: { "distance": 1610.2, "elapsed_time": 249, "elevation_difference": 29.6, "moving_time": 248, "split": 1, "average_speed": 6.49, "average_grade_adjusted_speed": null, "average_heartrate": 140.66122448979593, "pace_zone": 0 } These numbers do not match up. Presumably the `elapsed_time` would be equal if the splits were covering
Dear strava {ResourceState:3 Athlete:{ID:40513047 ResourceState:1} Name:Morning Ride Distance:6109.8 MovingTime:1139 ElapsedTime:1503 TotalElevationGain:2.6 Type:Ride SportType:Ride WorkoutType:0 ID:9918401317 ExternalID:Morning_Ride.gpx UploadID:10630056983 UploadIDStr:10630056983 StartDate:0023-09-26T23:25:25Z StartDateLocal:0023-09-25T06:31:55Z Timezone:(GMT+07:00) Asia/Ho_Chi_Minh UtcOffset:-147210 StartLatlng:[10.032898 105.760387] EndLatlng:[10.032952 105.760403] LocationCity: LocationState: LocationCountry: AchievementCount:0 KudosCount:0 CommentCount:0 AthleteCount:1 PhotoCount:0 Map:{ID:a9918401317 SummaryPolyline:}sf|@_kodSCIEgCAy@@INUlCcDh@i@XSHAH@RHvAlAv@Z`FxAnAXV@b@IZU^e@JALFd@d@v@`ArAbD?Ni@qBi@mAY_@u@u@a@SWHm@f@]LSBo@I_HsBm@[oAcAGES?[Pq@n@wAxAkAtAEPCTJxDB@Z]pAhAHPCBGUIM[U]e@KEUXEBACCWEoC@a@FUT[vAqAd@k@jAeAFQ?SCG[]wDaDY]m@i@aBkA_CkAiCkB}That resource update wrong date: StartDate:0023-09-26T23:25:25Z (just righe 2023)Please fix this from api vRace
i have a problemi call this services to upload a file activity gpxcurl --location 'https://www.strava.com/api/v3/uploads' --header 'Authorization: Bearer ...' --form 'activity_type="Ride"' --form 'name="Test Walk"' --form 'description="Test walk for cyclon"' --form 'trainer="0"' --form 'commute="0"' --form 'data_type="gpx"' --form 'file=@"ftYnBaTC2/strava.gpx"' the file sended is:<?xml version="1.0" encoding="UTF-8"?><gpxcreator="CyclonApp"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd"version="1.1"xmlns="http://www.topografix.com/GPX/1/1"><metadata><time>2023-10-15T10:44:36Z</time></metadata><trk><name>Bicicleta por la tarde</name><trkseg><trkpt lat="44.6402470" lon="7.6585860"><ele>318.1</ele><time>2023-10-15T10:44:36Z</time></trkpt><trkpt lat="44.6401380" lon="7.6586280">
https://labs.strava.com/slide/demo.html#16/-122.54277/38.05392When trying to slide a simple line entered at the above, I get:> Server ErrorBackground info:https://labs.strava.com/slide/
Hello,I assume I'm making a newbie mistake, but can't seem to see where the issue lies.1. I made a successful request to https://www.strava.com/api/v3/oauth/tokenwhere I receive the following response{token_type: 'Bearer',expires_at: 1695548372,expires_in: 20715,refresh_token: '123abc', // replacing real valuesaccess_token: '456def', // replacing real valuesathlete: { id: ..., }}2. I then take the access_token to get activity like:curl https://www.strava.com/api/v3/athlete/activities -H “Authorization: Bearer 456def”where I then get the following error: {"message":"Authorization Error","errors":[{"resource":"Athlete","field":"access_token","code":"invalid"}]}curl: (6) Could not resolve host: Bearercurl: (6) Could not resolve host: 456def”I also have a follow up question, what is the difference between the access token I recieve when authorizing via OAuth (above query) and the access token I have in my developer settings on my Strava develo
When typing a message, you get a message saying "Your content was auto-saved at x". The time here however is not using the user timezone. For example, I'm currently in Europe/Amsterdam (UTC+2) at 13:28 local time, but the message says "04:28 AM".
After the using "https://www.strava.com/api/v3/oauth/authorize" api i got the new code and everytime getting error Error: {message: 'Authorization Error',errors: [ { resource: 'Application', field: '', code: 'invalid' } ]}
I encountered a 404 while attempting to fetch an activity after getting a webhook request for creating an activity. I observe a pattern that occurs when creating an activity and it automatically deletes an activity that has a small time difference, I also observed that when 404 occurred we have a webhook for deleting activity nearby that confirms the above statement. I tried it several times, but the same issue occurred repeatedly.
Hi, im trying to put the map directly when uploading an tcx file, the activity is correctly imported , with all the data but the map is empty"map": { "id": "a9264361330", "summary_polyline": "", "resource_state": 2},i have the polyline encoded, but I dont find how to send it to the activity, anyone knows how I can achieve that?
Hello everyone.I'm having an issue when trying to request user activities from the endpoint https://www.strava.com/api/v3/athlete/activities. I get a 403 (Bad Request) error, although the client secret string and user access token are fine. Here's roughly the HTML page I get in response: 403 ERRORBad request.We can't connect to the server for this app or website at this time. There might be too much traffic or a configuration error. Try again later, or contact the app or website owner.If you provide content to customers through CloudFront, you can find steps to troubleshoot and help prevent this error by reviewing the CloudFront documentation.Generated by cloudfront (CloudFront)I've already seen a couple of posts here with a similar error, but no useful answers. Maybe I am doing something wrong? I would be grateful if someone could point me out on my mistake.Thanks for reading and have a great day 🙂
I have heartrate data from indoor cycling sessions ( no gps data ) and I want my app to be able to upload the session once it's finished to strava. I have been able to create an activity with only the average heartrate, but i have not been able to do so with accurate data for each moment to be able to view a heartrate graph. My data would is something like this but i can change the time to date: ( same for power ) [{ hrp: 50, time: 0 }, { hrp: 55, time: 10 }, ....]
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.