Skip to main content

Given a user that has more than one gear for a specific sport, when an activity is registered through an external app (i.e. Garmin Conect), it will be imported with the default one, which makes the user update the gear field with the correct one.

For example, let's say a cyclist has a mountain bike registered and a road bike. The mountain bike is set as default for cycling. The athlete registers a new activity with the road bike in Garmin Connect, which gets automatically imported into Strava as if it were roden with the mountain bike. After that, then the user logs into Strava and edits the activity to set the road bike instead of MTB as ridden.

For a 3rd party application that is listening to the API webhooks, the final picture is that the activity was done with the mountain bike instead of the road bike, which is incorrect. This forces the application to make an additional call for each newly registered activity.

Having a Webhook for this kind of activity update is something both Strava and 3rd-party applications can benefit from. On one hand, less API load is achieved, as applications won't have to periodically check if an activity was edited afterwards. On the other hand, applications integrated won't have to implement this logic and will have the final picture in real-time.

Have just run into the issue of dealing with this in my app and agree. Seems like it will require some hack-y solutions with more API calls on my side and the app won't work as smoothly as it could. 


+1. Are there any solutions rather than manually polling the users activities or making a manual refresh button? Right now a user must update their title to trigger a webhook event. Lot's of people will just change a bike without changing the title - leading to no update. 


Reply