Curious about our API? Connect with our developers to share ideas, knowledge, and feedback
Recently active
.
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 }, ....]
I have coppied the <i frame> code to place the clubs 'Latest Activities' Is it possible to change the settings so that it shows say 'Activities in the Month'? Thanks for bringing the forum / chat for us
Hi,I'm trying to deauthroize a user using the following two links but it seems to be sending me back errors:https://www.strava.com/oauth/deauthorize - Page doesn't existhttps://www.strava.com/api/v3/deauthorize - {"message":"Record Not Found","errors":[{"resource":"resource","field":"path","code":"invalid"}]}Is there a link that I'm suppose to use?
Hey fellow Strava enthusiasts,Hope you're all doing great! I've been working on this awesome app that's going to integrate with Strava using the Strava API. I've been diving into the API documentation and it's been a blast. 🚴♂I've got a quick question for those of you who might have experience with this: I stumbled upon the STRAVA API PROGRAM SUBMISSION FORM, and it's got me wondering whether I should fill it out before launching my app on the Play Store or after. Here's the link to the form: https://share.hsforms.com/1VXSwPUYqSH6IxK0y51FjHwcnkd8.Also, I'm thinking, if I should fill it out after launching the app, how do you think I should handle my users during the review process? I mean, they wouldn't be able to enjoy the Strava API goodness while it's under review, right? Any insights on how to manage this without causing too much disruption would be super appreciated.I'm all ears for any advice or stories from those of you who have been through this process. Let's share our
Hi, I'm looking into the Strava API, and we'd like to have the ability to start and stop an activity. However, from what our development says, there is no explanation in the documentation on how to start and stop an activity (such as run, bike, etc) Does anyone know if this is possible and, if so, how to do it?Thanks,Dan Native Voice
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.