strava-without-node-fetch
TypeScript icon, indicating that this package has built-in type declarations

2.2.2 • Public • Published

Strava

npm npm bundle size NPM semantic-release

This library is a fully typed JavaScript wrapper of the Strava JSON API.

Installation

To install the package, run:

npm install strava

or

yarn add strava

Usage

The way the library is implemented the user must have gone through the Strava OAuth flow beforehand and got a refresh token. This way we can ensure that whenever needed we get a new access token.

This may not be the best way to work with the API and I'm open to suggestions to make it better.

import { Strava } from 'strava'

const strava = new Strava({
  client_id: '123',
  client_secret: 'abc',
  refresh_token: 'def',
})

;(async () => {
  try {
    const activities = await strava.activities.getLoggedInAthleteActivities()
    console.log(activities)
  } catch (error) {
    console.log(error)
  }
})()

Refreshing the access token

This library will automatically refresh the access token when needed. You may need to store the refresh token somewhere, so you can use it on_token_refresh callback.

import { Strava } from 'strava'

const strava = new Strava({
  client_id: '123',
  client_secret: 'abc',
  refresh_token: 'def',
  on_token_refresh: (response: RefreshTokenResponse) => {
    db.set('refresh_token', response.refresh_token)
  }
})

Contributing

Issues and pull requests are welcome.

License

MIT

Readme

Keywords

Package Sidebar

Install

npm i strava-without-node-fetch

Weekly Downloads

1

Version

2.2.2

License

MIT

Unpacked Size

363 kB

Total Files

78

Last publish

Collaborators

  • afink