Activity-update webhooks feedback

375 views
Skip to first unread message

Zachary Isaacs

unread,
Nov 27, 2017, 8:18:54 PM11/27/17
to Strava API
Hi Developers,

This thread will be a public forum for beta testers to discuss the new activity-update webhooks system, which was announced on November 22, 2017 and will be released publicly on January 15, 2018. We'd like to dedicate this thread to experiences with the updated webhook events implementation, as it was intended to function per our announcement. If you find a bug or experience performance issues, or observe any unexpected behavior, please post that here. If you have other questions or suggestions, please start a new topic and I'll do my best to respond there.

Best,
Zack

Michael Wood

unread,
Dec 1, 2017, 4:09:51 PM12/1/17
to Strava API
Successfully subscribed to create and update.  Only oddity so far is I've seen a few delete messages come through.  Guessing this is related to the public-private topic you mentioned although our scope includes private so I'm assuming we'd only receive create/update events until which time we ask for delete.

Haven't been able to subscribe to delete yet.  

Is there a page or doc that lists the different aspect_types each object_type has available?  Unless I missed it there isn't a comprehensive list at https://strava.github.io/api/v3/events/

Also, do you explicitly have to subscribe to each aspect_type or does one subscription assume the same URL for all aspect types?

Cheers, Mike

Thanks!

Zachary Isaacs

unread,
Dec 1, 2017, 5:02:54 PM12/1/17
to Strava API
Hi Mike,

I'm happy you're getting set-up with the new system. Apologies that this wasn't clear earlier, but with activity-update webhooks we're ushering in a new subscriptions model:
  • Old model: subscribe to unique combinations of object type and aspect type.
  • New model: one subscription gets you all athlete-centered webhook events that we support.
Applications now don't have to worry about managing multiple subscriptions, and they can just filter out webhook events they don't care about.

I'm hoping to get comprehensive docs on developers.strava.com by the end of next week. Let me know if you have any other questions.

Michael Wood

unread,
Dec 1, 2017, 5:38:33 PM12/1/17
to Strava API
Excellent.  Sounds like a better model given the messages are the same each time.  

Does that mean we only subscribe once to get all object types or do we subscribe once per object type (activity, segment, athlete, etc)

Thanks again.

Cheers

Zachary Isaacs

unread,
Dec 3, 2017, 6:01:28 PM12/3/17
to Strava API
Great question. If we were to offer webhook events in the future for objects like athletes, gear, and app deauthorization, existing subscriptions would have access to webhook events for those objects; you would not need to create multiple subscriptions. Any webhook events that describe an athlete who has authorized your app will be covered by this one subscription.

Hans Lellelid

unread,
Jan 13, 2018, 11:25:57 PM1/13/18
to Strava API
Hi -- I just wanted to follow up to see if there was any update on the newer documentation.

I must be doing something wrong, but it seems like after successfully subscribing (I also did "crate,update", without having read this thread to realize that isn't really necessary), it seems like I am getting GET requests (not POST) to my registered callback URL for activity creation.  (I'm still waiting on more data to understand exactly what's in these requests -- but it definitely isn't the initial challenge callback [which was a GET req as expected].)

Changes in activity summary does not appear to generate any request to my callback URL.   Not sure if that is expected (?)

Thanks for any hints here at what I'm doing wrong.

Cheers,
Hans

Hans Lellelid

unread,
Jan 14, 2018, 7:29:50 AM1/14/18
to Strava API
I think I found my key problem: I had registered an http:// callback instead of https:// so the app was returning 301 response code to redirect to https://.  Sorry for the noise!

Zachary Isaacs

unread,
Jan 16, 2018, 1:59:31 PM1/16/18
to Strava API
Hi Hans,

I'm glad you figured out your problem -- for your reference, here is the new documentation. Let me know if you have any questions.

Best,
Zack

Ryan Golbeck

unread,
Jan 16, 2018, 5:42:15 PM1/16/18
to Zachary Isaacs, Strava API
Hi Zack,

Looks like the new documentation says the field in "updates" for privacy changes is called "privacy".  But it looks like my webhook is receiving updates called "private" (so they match the strava activity shape).  So I think there may be a typo in the documentation.

-ryan

--
You received this message because you are subscribed to the Google Groups "Strava API" group.
To unsubscribe from this group and stop receiving emails from it, send an email to strava-api+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Zachary Isaacs

unread,
Jan 16, 2018, 6:53:37 PM1/16/18
to Strava API
Thank you, Ryan!
To unsubscribe from this group and stop receiving emails from it, send an email to strava-api+...@googlegroups.com.

Zachary Isaacs

unread,
Jan 16, 2018, 6:55:40 PM1/16/18
to Strava API
This is also a good opportunity to mention that developers.strava.com is open source and we welcome contributions from the developer community to our public repository.

Best,
Zack

James Chevalier

unread,
Jan 16, 2018, 8:54:44 PM1/16/18
to Strava API
I'm seeing webhooks with an aspect_type value of 'update', but with an updates value of an empty hash.
For example (some details have been obfuscated):

{"aspect_type"=>"update", "event_time"=>000, "object_id"=>000 "object_type"=>"activity", "owner_id"=>000, "subscription_id"=>000, "updates"=>{}, "controller"=>"my_strava_webhook_controller", "action"=>"my_strava_webhook_action", "user"=>{}}

Should I further poll the API for the activity in order to determine potentially changed details (e.g. modified activity streams)?


On Monday, November 27, 2017 at 8:18:54 PM UTC-5, Zachary Isaacs wrote:

Bill Daniggelis

unread,
Jan 17, 2018, 6:40:50 AM1/17/18
to Strava API
Hello,

I would like to ask if the new activity-update webhook system, fired when a user uploads a new photo. I have read the documentation and it says that webhook fired only for title, type and privacy updates. link

Thanks

Zachary Isaacs

unread,
Jan 17, 2018, 2:16:19 PM1/17/18
to Strava API
Hi James,

The `updates` hash is always present, but it is empty for create and delete events; however, `updates` should always contain at least one updated attribute when you receive a webhook with an `update` aspect type.

I'll follow up with you privately so we can dig into what's happening specifically with this athlete and your application.

Best,
Zack

Zachary Isaacs

unread,
Jan 17, 2018, 2:38:13 PM1/17/18
to Strava API
Hi Bill,

We wanted to include photos at launch but hit some roadblocks that prevented that from happening. Adding photos functionality is on our roadmap and a high priority for our team.

Best,
Zack

Ryan Golbeck

unread,
Jan 17, 2018, 2:41:28 PM1/17/18
to Zachary Isaacs, Strava API
Zack,

Are there any other events on the roadmap too? (I was hoping for croping events that change the event distance, time, etc etc).

--
You received this message because you are subscribed to the Google Groups "Strava API" group.
To unsubscribe from this group and stop receiving emails from it, send an email to strava-api+unsubscribe@googlegroups.com.

Michael Wood

unread,
Jan 17, 2018, 4:43:04 PM1/17/18
to Ryan Golbeck, Zachary Isaacs, Strava API
Would also be keen to get authorize/unauthorized app events so we can stop polling all together.  Cheers, Mike

Sent from my iPhone
You received this message because you are subscribed to a topic in the Google Groups "Strava API" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/strava-api/TJBNAum23Os/unsubscribe.
To unsubscribe from this group and all its topics, send an email to strava-api+...@googlegroups.com.

Zachary Isaacs

unread,
Jan 17, 2018, 6:16:28 PM1/17/18
to Strava API
Hi Ryan,

We don't have other events on the roadmap at the moment, but I took note of your original suggestion a couple weeks ago and created a ticket for that work. We all agree that adding crop/split events would add value to our webhooks system.

Best,
Zack
To unsubscribe from this group and stop receiving emails from it, send an email to strava-api+...@googlegroups.com.

Zachary Isaacs

unread,
Jan 17, 2018, 6:19:18 PM1/17/18
to Strava API
Hi Mike,

Thanks for the suggestion. We understand the frustration around app auth/deauth, and it's a strong contender for the next object to support after activities. I've created a placeholder ticket for that work as well.

Best,
Zack


On Wednesday, January 17, 2018 at 1:43:04 PM UTC-8, Michael Wood wrote:
Would also be keen to get authorize/unauthorized app events so we can stop polling all together.  Cheers, Mike

Sent from my iPhone

On Jan 17, 2018, at 11:41 AM, Ryan Golbeck <gow...@gmail.com> wrote:

Zack,

Are there any other events on the roadmap too? (I was hoping for croping events that change the event distance, time, etc etc).
On Wed, Jan 17, 2018 at 1:38 PM, Zachary Isaacs <za...@strava.com> wrote:
Hi Bill,

We wanted to include photos at launch but hit some roadblocks that prevented that from happening. Adding photos functionality is on our roadmap and a high priority for our team.

Best,
Zack


On Wednesday, January 17, 2018 at 3:40:50 AM UTC-8, Bill Daniggelis wrote:
Hello,

I would like to ask if the new activity-update webhook system, fired when a user uploads a new photo. I have read the documentation and it says that webhook fired only for title, type and privacy updates. link

Thanks

On Tuesday, November 28, 2017 at 3:18:54 AM UTC+2, Zachary Isaacs wrote:
Hi Developers,

This thread will be a public forum for beta testers to discuss the new activity-update webhooks system, which was announced on November 22, 2017 and will be released publicly on January 15, 2018. We'd like to dedicate this thread to experiences with the updated webhook events implementation, as it was intended to function per our announcement. If you find a bug or experience performance issues, or observe any unexpected behavior, please post that here. If you have other questions or suggestions, please start a new topic and I'll do my best to respond there.

Best,
Zack

--
You received this message because you are subscribed to the Google Groups "Strava API" group.
To unsubscribe from this group and stop receiving emails from it, send an email to strava-api+...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

Andrew Tinkler

unread,
Jan 26, 2018, 6:14:51 PM1/26/18
to Strava API
Hi Zachary,

Hi,

Currently we have two servers: test and live.

The old doc for Webhooks API appears to have a limitation:

"Note: You can only subscribe one callback url per object and aspect types combination. Adding a new subscription automatically replaces existing subscription of that type."

What do I need to do to have webhooks running on both dev and live, in parallel, in scope of one project?

Thanks,

Andrew

Jonatan Samoocha

unread,
Feb 13, 2018, 2:45:40 AM2/13/18
to Strava API
Hi Zack,

similar to one other poster, my app occasionally receives events with aspect_type == 'update', but empty 'updates' property:

{u'object_id': 1403411434, u'updates': {}, u'event_time': 1518461207, u'subscription_id': XXXXXX, u'object_type': u'activity', u'owner_id': XXXXXX, u'aspect_type': u'update'}

What's the recommended way to handle these events?

Thanks,

Jonatan
Reply all
Reply to author
Forward
0 new messages