Skip to main content

Hi there!

I am looking for someone to please point me in the direction of some help for API integration for an Organ Donation event we are hosting in September called Race for Recipients.

Last year we logged 11,000 activities in a week across the UK.

Many participants have asked that we get STRAVA integrated with our web based platform to improve the user experience.

I have spoken with customer services at STRAVA, but unfortunately I am still not clear what I need to do.... please help!

Many Thanks!

You should explain first what you want to achieve.


Thank you! Yes that would help wouldn't it!

Please bare with me, I am a nurse so this is an unknown area for me.

We have a web based platform (RaceforRecipients) where people register and log their activities during Organ Donation week (16th September) with the aim of reaching personal, team and regional targets whilst raising awareness of organ donation and transplantation.

Currently, it is quite basic in that people have to access the site to log the activity. We don't currently have any API integration.

We have many participants who use STRAVA and their has been a big call for us to have an integration between the STRAVA app and our platform.

I envisage that participants can use STRAVA during their activity (cycle/run/walk) and this will automatically log the activity under their account on the Race for Recipients Platform.

I have spoken to customer services who said i need to discuss with a developer and pointed me in the direction of this forum.

The person who designed our platform is a web developer and has created the platform FOC.

Is this something you can please help me to understand?

Many Thanks!


Thanks for your explanations! First your web developer must become familiar with the Strava API documentation, to find in https://developers.strava.com 

She then has to write an application for the browser or smartphone that fetches the activities from the participants and save their activity statistics in your own platform. The participants only have to register in that new application once to connect their Strava account and afterwards they don't have to log their activities in your platform anymore.


Thank you so much!!

One of the concerns is that the API allowance wont be enough, is there a way to increase this?

Excuse my lack of understanding but i am told that we are limited to 1000 API calls per day and with 11,000 activities over the week last year we worry this wont be enough?

I don't want participants to be recording on STRAVA but it not registering on the R4R platform because usage limits reached?

Could you please point me in the direction of understanding how to increase this?

Thanks so much!! 


A cite from https://communityhub.strava.com/t5/developer-knowledge-base/rate-limits/ta-p/4289  

Send an email to developers -at- strava.com with the subject line “Rate Limit Increase” that includes your API App ID and screenshots of all the places Strava data is shown and the “Connect with Strava” button in your app.

 


As you have said this is an unknown area for you, I would recommend having your developer join this discussion to provide specifics on your platform and intended use case.

From what you have described, your implementation should be fairly straightforward. At a very high level, you will need to do the following:

  1. Create an API application (https://developers.strava.com/docs/getting-started/#account)
  2. Sign up for Webhooks to receive push notifications when activities are recorded (https://developers.strava.com/docs/webhooks/)
  3. Create an OAuth flow to authenticate athletes (https://developers.strava.com/docs/authentication/). This will provide you with an access and refresh token which you'll need for API calls.
  4. When you receive a "create" webhook call for an authenticated athlete, fetch the activity data (https://developers.strava.com/docs/reference/#api-Activities-getActivityById) using the athlete and activity IDs in the data sent with the webhook. Note that you will likely need to refresh the user's  token since they expire after a short period of time.
  5. Update your platform with whatever details from the activity you need

As far as API limits you would need to contact developer support to discuss your situation with them. The default limits probably won't work for you unless your users are willing to accept a potentially large delay in seeing their activities show up on your platform.

If the delay is ok, you can queue up the list of new activities and retrieve them (steps 4-5 above) slowly over time. Every API call returns your current usage and limits so you could use that information to determine whether you have enough API calls left to retrieve activity data or if you need to wait some time for your limit to reset.


Reply