Curious about our API? Connect with our developers to share ideas, knowledge, and feedback
Recently active
We are using https://www.strava.com/oauth/authorize?client_id=...&response_type=code&redirect_uri=https://ictrainer.com&approval_prompt=force&scope=activity:write%2Cactivity:readto login the user initially. But if an user was loged in in the browser yet the login for the new user does not force a new login. How can we force this? All other platforms allows in the oauth-authorization process that the complete user login is forced.
I have a functioning webhook but need to update the callback URL as this will be changing. First I tried simply creating a new subscription but found I couldn’t since you can’t have more than 1 active at a time. So then I tried to delete the existing subscription to recreate it - but running into the following error:{ "message": "Resource Not Found", "errors": [ { "resource": "PushSubscription", "field": "", "code": "not found" } ]}I have double checked that it’s the right sub id using the GET request to https://www.strava.com/api/v3/push_subscriptions.This query is successful which also rules out an issue with my client_id and client_secret (I am using postman and leveraging variables so know they are the same).Body is set to None. Here is the query: https://www.strava.com/api/v3/push_subscriptions/[my_id]?client_id={{client_id}}&client_secret={{client_secret}}
How is this STILL not a feature in 2025. JFC of all the features y’all keep developing this would move the needle SO FAR for your power users. Literally every bike shop, club, cycling community in the world would use this feature. How many times do we have to ask for this.
HelloPlease help us checking if everything is correct with our API acces by "data" app.When we call to API for example to List Athlete Activities, returns error: {"message":"Authorization Error","errors":[{"resource":"AccessToken","field":"activity:read_permission","code":"missing"}]}We've try to :- correct access permission by Revoking Acces to "data" app and Allowing again - we gets the same error- Generate New Client Secret - works fine, refreshing token works fine but at the end again the same error
For an url like https://www.strava.com/api/v3/activities/{id}/streams?keys=time,latlng,altitude,heartrate,cadence,distance,moving,wattsI’m currently seeing the following response headers: content-type, content-length, connection, date, server, vary, x-envoy-upstream-service-time, x-cache, via, x-amz-cf-pop, and x-amz-cf-id, but *not* the rate limit headers described at https://developers.strava.com/docs/rate-limits/ What gives? Is the documentation out of date? Have the rate limit headers been deprecated? Am I seeing proxy-cached content that strips the rate limit headers or something like that? If the rate-limit headers are absent, does that mean the request doesn’t count against quotas?
I have created a miniapp in Farcaster, and I am using one API… I am getting issues to get users authorizate Strava via my app, do I need special rights? Thanks in advance!
Hi everyone,I’m experiencing an issue with the Strava OAuth mobile authorization flow.I have a system that automatically updates each Strava activity’s description with a URL to my platform: https://pacerai.vn/.When users click this link inside the Strava activity description (in the mobile app), they are taken to my website. After that, they tap the “Login with Strava” button, which redirects to:https://www.strava.com/oauth/mobile/authorizeProblem:When users come from a Strava activity description → open my link → tap “Login with Strava”, the redirect to Strava’s OAuth page does not work.However, if users manually open Safari → type in https://pacerai.vn/ → tap “Login with Strava”, then the redirect to https://www.strava.com/oauth/mobile/authorize works normally.This means the issue only happens when the initial page is opened from a Strava activity description link.I’m not sure what the root cause is (possible app webview restriction?), so any help or clarification would be greatly a
Hello! I have noticed that if I start an activity on the Strava app on my Pixel watch 2, it times out at 9 minutes Has anyone experienced this? And any ideas on how to fix it?
Hi everyone,I am working on the integration of our Decathlon Coach with Strava. We are uploading activities via FIT files.We are facing a persistent issue regarding how Strava calculates Moving Time versus Elapsed Time, leading to incorrect stats for our users.The Context: Our users record running activities using our app. Often, these are continuous runs with no pauses (the user never hits the pause button). Consequently, our FIT files contain the trackpoints and the total Elapsed Time, but no specific "Pause" or "Resume" events.The Problem: Upon upload, Strava ignores the duration recorded in the file and attempts to recalculate the Moving Time based on the GPS data. Because of GPS drift or slower sections, Strava’s algorithm interprets parts of the run as "resting time" and removes them.The Result: Real Data: 10km run in 1h00 (Pace: 6:00/km). Strava Display: 10km run in 55min (Pace: 5:30/km). The "Moving Time" is significantly shorter than reality, artificially inflating the aver
I noticed that some (not all) user profile pictures from cloudfront.net (DetailedAthlete’s ‘profile’ and ‘profile_medium’ urls) now return an access denied error.Is this a bug or a new privacy feature (that renders the DetailedAthlete profile urls useless)?Many older profile urls from cloudfront.net still work fine...
Dear all, I have noticed a recent change in the “Athlete Stats” API: it is returning partial values for distance and elevation (not the same values that are visible on the profile page on Strava, as this API alway did in the past).Also I’m getting decimal values (see below in red). I believe something went wrong here. stdClass Object( [biggest_ride_distance] => 170760 [biggest_climb_elevation_gain] => 1871 [recent_ride_totals] => stdClass Object ( [count] => 15 [distance] => 991064.08984375 [moving_time] => 135009 [elapsed_time] => 140781 [elevation_gain] => 11017 [achievement_count] => 198 ) [all_ride_totals] => stdClass Object ( [count] => 1581 [distance] => 72496554.40332 [moving_time] => 12023480 [elapsed_time] => 13179871 [elevation_gain] => 1140429.4384117 ) [recent_run_tota
Hi all,I develop a Strava App which aims to show a list of the recent Strava activities and you have the option of merging two or more activities selected from the list.I see it as being very useful, for me of course, as I usually do a morning commute to work, lunch run, evening commute back home - all recorded with my watch. Since I cannot pause my bike activity to start a run, then later resume the bike activity (would be a nice feature btw - to allow multiple paused activities based on type), I want in the evening to be able to merge my 2 commute activities into one.Algorithm I use for merging is plain simple - just aggregate all points from all activities, sorted by date.Everything is in place and working locally, however I have reached a dead lock:my initial plan was to download original activities (as GPX) and delete the activities-to-be merged; however this is not possible as there’s no way of deleting an activity via the Strava API; the the upload of the merged activity will fo
Hi,I’d like to know how Strava handles cases where two activities from the same athlete are uploaded within a short time interval — for example, if both have overlapping timestamps.Does Strava automatically detect and filter one of them as a duplicate?I’m asking just to better understand the logic behind this behavior when explaining it to others.Thanks!
Hello! I wanted to see if there was a way to either filter or check if routes are dog friendly or not. I use the Fi/Strava set up and live in Colorado - some trails/routes are not dog friendly. Right now I end up having to look at other apps to double check but I wanted to make sure I was not missing something on my Strava App. Thanks!!
Hi Strava developer team, First of all, thank you for reviewing our form.However, there seems to be a misunderstanding; I submitted the form requesting 3,000 users instead of the current 999 (as we previously had 999).We are about to launch our mobile platform, and traffic is expected to increase 2-3 times next month (currently, 999 users pose a significant risk). Please reconsider and review this.Best regards,
Yth. Tim Dukungan Strava, Saya menghubungi Anda untuk meminta pembatalan langganan Strava yang terlanjur aktif di akun saya. Saya tidak pernah secara sadar menyetujui langganan ini, dan baru menyadari adanya tagihan setelah transaksi diproses. Saya sudah mengajukan permohonan pengembalian dana melalui Google Play dan saat ini sedang menunggu proses yang disebutkan akan berlangsung selama 1–4 hari kerja. Berikut beberapa detail yang mungkin membantu untuk menelusuri akun saya: Jumlah yang ditagihkan: Rp 609.390,00 Perangkat yang digunakan: Android Saya mohon bantuan tim Strava untuk: 1. Membatalkan langganan yang sedang aktif. 2. Meninjau kasus ini dan mendukung pengembalian dana agar dana saya bisa dikembalikan. Silakan hubungi saya jika dibutuhkan informasi tambahan. Terima kasih atas perhatian dan bantuannya. Hormat saya,Qotru Nada Asyifa
Hello,I am the developer of an Apple Watch workout app which exports data to Strava with FIT files and Strava API.Is there a way to display the Apple Watch device model in Strava like for other watches ?I suppose I have to use some specific Manufacturer and DeviceID in my FIT file, but I don’t know what to use for an Apple Watch app to be recognized by Strava API
Currently i have an application integrated with Strava. However, the access token I’m using has expired, and I can no longer retrieve the latest activity data from Strava. What should I do to ensure my application remains connected to Strava?
Our Application is Haylou Fun
I'm currently working on integrating my climbing app with Strava, and I've hit a bit of a roadblock. When I manually create an activity on Strava through the browser, I have the option to enter the elevation. However, when I try to do the same thing programmatically using the createActivity API, I can't seem to find an option to specify the elevation.This is crucial for my climbing app's functionality, and without it, integrating with Strava is kind of pointless. Can anyone shed some light on what I might be missing here? Any help or insights would be greatly appreciated. Thanks in advance!
So with app devs getting caught in the Strava vs Garmin saga, can you at least swiftly add the device_name parameter to the /athlete/activities list?This way we won’t need to make additional API calls to the /activities endpoint just to check every single activity’s device…<sigh>
New problem, or return of an old problem? The app won't even open now and I receive an error message about a glitch... it tells me to wait and reinstall the app once Strava fixes the glitch. When can we expect normal function again?
Yth. Tim Dukungan Strava, Saya menghubungi Anda untuk meminta pembatalan langganan Strava yang terlanjur aktif di akun saya. Saya tidak pernah secara sadar menyetujui langganan ini, dan baru menyadari adanya tagihan setelah transaksi diproses. Saya sudah mengajukan permohonan pengembalian dana melalui Google Play dan saat ini sedang menunggu proses yang disebutkan akan berlangsung selama 1–4 hari kerja. Berikut beberapa detail yang mungkin membantu untuk menelusuri akun saya:Jumlah yang ditagihkan: Rp 609.390,00Perangkat yang digunakan: Android Saya mohon bantuan tim Strava untuk:1. Membatalkan langganan yang sedang aktif.2. Meninjau kasus ini dan mendukung pengembalian dana agar dana saya bisa dikembalikan. Silakan hubungi saya jika dibutuhkan informasi tambahan. Terima kasih atas perhatian dan bantuannya. Hormat saya Fierryan nugaraha
Dear officials and executives of the Strava application: Hello! In the usage statistics of the Strava app, I am not aware of which rules of the community have been violated by my usage of this account. And after making the inquiry, no response was received. I would like to know the reason. I really like the design and functionality of Strava. This is helpful for my activities and also allows me to explore new routes and destinations. And you can also make new friends who share the same interest in sports. However, when using the Strava application, I found that the official or the system sent me an email, which made me feel very frustrated. I don't know what I should do next because the email informed me that my account might be suspended. But I hope I can cooperate with the staff of the official organization. If they need any proof from me, I will provide it without any problem. So please inform me of the relevant issues to prevent any problems with my account.
I'm a software engineer interested in developing applications using the Strava API. I've reviewed the API terms and I understand that developing features already in Strava is not allowed. If I were to invest time in developing an application and some of those features were later incorporated into Strava, would Strava consider this an API terms violation? Have other developers experienced anything like this?Thank you
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.