Categorygithub.com/scheibo/strava
repositorypackage
0.0.1
Repository: https://github.com/scheibo/strava.git
Documentation: pkg.go.dev

# README

Go API client for strava

Strava API

Overview

This API client was generated by the swagger-codegen project. By using the swagger-spec from a remote server, you can easily generate an API client.

  • API version: 3.0.0
  • Package version: 1.0.0
  • Build package: io.swagger.codegen.languages.GoClientCodegen

Installation

Put the package under your project folder and add the following in import:

    "./strava"

Documentation for API Endpoints

All URIs are relative to https://www.strava.com/api/v3

ClassMethodHTTP requestDescription
ActivitiesApiCreateActivityPost /activitiesCreate an Activity
ActivitiesApiGetActivityByIdGet /activities/{id}Get Activity
ActivitiesApiGetCommentsByActivityIdGet /activities/{id}/commentsList Activity Comments
ActivitiesApiGetKudoersByActivityIdGet /activities/{id}/kudosList Activity Kudoers
ActivitiesApiGetLapsByActivityIdGet /activities/{id}/lapsList Activity Laps
ActivitiesApiGetLoggedInAthleteActivitiesGet /athlete/activitiesList Athlete Activities
ActivitiesApiGetZonesByActivityIdGet /activities/{id}/zonesGet Activity Zones
ActivitiesApiUpdateActivityByIdPut /activities/{id}Update Activity
AthletesApiGetLoggedInAthleteGet /athleteGet Authenticated Athlete
AthletesApiGetLoggedInAthleteZonesGet /athlete/zonesGet Zones
AthletesApiGetStatsGet /athletes/{id}/statsGet Athlete Stats
AthletesApiUpdateLoggedInAthletePut /athleteUpdate Athlete
ClubsApiGetClubActivitiesByIdGet /clubs/{id}/activitiesList Club Activities
ClubsApiGetClubAdminsByIdGet /clubs/{id}/adminsList Club Administrators.
ClubsApiGetClubByIdGet /clubs/{id}Get Club
ClubsApiGetClubMembersByIdGet /clubs/{id}/membersList Club Members
ClubsApiGetLoggedInAthleteClubsGet /athlete/clubsList Athlete Clubs
GearsApiGetGearByIdGet /gear/{id}Get Equipment
RoutesApiGetRouteAsGPXGet /routes/{id}/export_gpxExport Route GPX
RoutesApiGetRouteAsTCXGet /routes/{id}/export_tcxExport Route TCX
RoutesApiGetRouteByIdGet /routes/{id}Get Route
RoutesApiGetRoutesByAthleteIdGet /athletes/{id}/routesList Athlete Routes
RunningRacesApiGetRunningRaceByIdGet /running_races/{id}Get Running Race
RunningRacesApiGetRunningRacesGet /running_racesList Running Races
SegmentEffortsApiGetEffortsBySegmentIdGet /segments/{id}/all_effortsList Segment Efforts
SegmentEffortsApiGetSegmentEffortByIdGet /segment_efforts/{id}Get Segment Effort
SegmentsApiExploreSegmentsGet /segments/exploreExplore segments
SegmentsApiGetLeaderboardBySegmentIdGet /segments/{id}/leaderboardGet Segment Leaderboard
SegmentsApiGetLoggedInAthleteStarredSegmentsGet /segments/starredList Starred Segments
SegmentsApiGetSegmentByIdGet /segments/{id}Get Segment
SegmentsApiStarSegmentPut /segments/{id}/starredStar Segment
StreamsApiGetActivityStreamsGet /activities/{id}/streamsGet Activity Streams
StreamsApiGetSegmentEffortStreamsGet /segment_efforts/{id}/streamsGet segment effort streams
StreamsApiGetSegmentStreamsGet /segments/{id}/streamsGet Segment Streams
UploadsApiCreateUploadPost /uploadsUpload Activity
UploadsApiGetUploadByIdGet /uploads/{uploadId}Get Upload

Documentation For Models

Documentation For Authorization

strava_oauth

  • Type: OAuth
  • Flow: accessCode
  • Authorization URL: https://www.strava.com/api/v3/oauth/authorize
  • Scopes:
  • public: default, private activities are not returned, privacy zones are respected in stream requests
  • view_private: View private activities and data within privacy zones
  • write: Modify activities, upload on the user’s behalf

Example

	auth := context.WithValue(context.Background(), sw.ContextAccessToken, "ACCESSTOKENSTRING")
    r, err := client.Service.Operation(auth, args)

Or via OAuth2 module to automatically refresh tokens and perform user authentication.

	import 	"golang.org/x/oauth2"

    / .. Perform OAuth2 round trip request and obtain a token .. //

    tokenSource := oauth2cfg.TokenSource(createContext(httpClient), &token)
	auth := context.WithValue(oauth2.NoContext, sw.ContextOAuth2, tokenSource)
    r, err := client.Service.Operation(auth, args)

Author