Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

strava-api-v2

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

strava-api-v2

  • 0.1
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

Strava::Api::V2

API for accessing the strava V2 API - (http://bit.ly/161qmXg)

Installation

Add this line to your application's Gemfile:

gem 'strava-api-v2'

And then execute:

$ bundle

Or install it yourself as:

$ gem install strava-api-v2

Usage

This module includes both versions of the API (at least the sparse parts I was interested in putting together. The confusing thing is that you'll probably have to mix and match to get things done that you care about.

Getting a connection

The connection object is used to interact with Strava's servers.

$ connection_v1 = Strava::V1::Connection.new
$ connection_v2 = Strava::V2::Connection.new

Fetching rides

Get a random sampling of all rides

$ rides = connection_v1.rides

Or you can pass in parameters to get a more useful subset of rides.

For instance, to get the top rides from a club $ rides = connection_v1.rides(:club_id => 15)

Or get the rides for a given athlete $ rides = connection_v1.rides(:athlete_id = > 7679)

Other parameters include :athlete_name, :start_date, :end_date, :start_id, and :offset (http://bit.ly/18CrfCa)

Streams

Get the stream information about a ride, including heart rates, coordinates, times, distances, altitudes of points sampled on a ride.

$ stream = connection_v1.stream(ride_id)

Efforts for segment

You can find all the efforts for a segment in the following way

$ segment = connection_v1.segment_with_efforts(segment_id, params)
$ efforts = segment.efforts

The efforts can be search by different parameters, including :club_id, :athlete_id, :athlete_name, :start_date, :end_date, :start_id, :best => true

Getting clubs

Search for club by name

$ clubs = connection_v1.rides(:name => "Mission Cycling")

Authenticating

See http://bit.ly/18Ctky9 for more details - this also enables you to retrieve tokens and athlete information.

$ auth = connection_v2.login("email@example.com", "password")
$ token = auth.token
$ athlete = auth.athlete

Segments for a given ride

See http://bit.ly/125MoTh for more details - this allows you to look up the segments for a given ride

$ segments = connection_v2.segments_for_ride(ride_id)
$ first_segment_efforts = segments[0].efforts

All efforts for a given ride

See http://bit.ly/125MoTh - looks up all efforts put out in a given ride.

$ segments = connection_v2.segments_and_efforts_for_ride(ride_id)
$ first_effort = segments[0].efforts[0]

Issues

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

FAQs

Package last updated on 04 May 2013

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc