-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | A client for the Strava V3 API.
--
-- Strive is a client for the Strava V3 API.
@package strive
@version 2.2.1
-- | Comments
module Strive.Options.Comments
-- | getActivityComments
data GetActivityCommentsOptions
GetActivityCommentsOptions :: Bool -> Integer -> Integer -> GetActivityCommentsOptions
[getActivityCommentsOptions_markdown] :: GetActivityCommentsOptions -> Bool
[getActivityCommentsOptions_page] :: GetActivityCommentsOptions -> Integer
[getActivityCommentsOptions_perPage] :: GetActivityCommentsOptions -> Integer
instance GHC.Show.Show Strive.Options.Comments.GetActivityCommentsOptions
instance Data.Default.Class.Default Strive.Options.Comments.GetActivityCommentsOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Options.Comments.GetActivityCommentsOptions
-- | Authentication
module Strive.Options.Authentication
-- | buildAuthorizeUrl
data BuildAuthorizeUrlOptions
BuildAuthorizeUrlOptions :: Bool -> Bool -> Bool -> String -> BuildAuthorizeUrlOptions
[buildAuthorizeUrlOptions_approvalPrompt] :: BuildAuthorizeUrlOptions -> Bool
[buildAuthorizeUrlOptions_privateScope] :: BuildAuthorizeUrlOptions -> Bool
[buildAuthorizeUrlOptions_writeScope] :: BuildAuthorizeUrlOptions -> Bool
[buildAuthorizeUrlOptions_state] :: BuildAuthorizeUrlOptions -> String
instance GHC.Show.Show Strive.Options.Authentication.BuildAuthorizeUrlOptions
instance Data.Default.Class.Default Strive.Options.Authentication.BuildAuthorizeUrlOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Options.Authentication.BuildAuthorizeUrlOptions
-- | Common options that apply to many endpoints.
module Strive.Internal.Options
-- | Options for paginating.
data PaginationOptions
PaginationOptions :: Integer -> Integer -> PaginationOptions
[paginationOptions_page] :: PaginationOptions -> Integer
[paginationOptions_perPage] :: PaginationOptions -> Integer
instance GHC.Show.Show Strive.Internal.Options.PaginationOptions
instance Data.Default.Class.Default Strive.Internal.Options.PaginationOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Internal.Options.PaginationOptions
-- | Clubs
module Strive.Options.Clubs
-- | getClubMembers
type GetClubMembersOptions = PaginationOptions
-- | getClubActivities
type GetClubActivitiesOptions = PaginationOptions
-- | Friends
module Strive.Options.Friends
-- | getCurrentFriends
type GetCurrentFriendsOptions = PaginationOptions
-- | getFriends
type GetFriendsOptions = PaginationOptions
-- | getCurrentFollowers
type GetCurrentFollowersOptions = PaginationOptions
-- | getFollowers
type GetFollowersOptions = PaginationOptions
-- | getCommonFriends
type GetCommonFriendsOptions = PaginationOptions
-- | Kudos
module Strive.Options.Kudos
-- | getActivityKudoers
type GetActivityKudoersOptions = PaginationOptions
-- | Helper functions for template Haskell, to avoid stage restrictions.
module Strive.Internal.TH
-- | Default FromJSON options.
options :: Options
-- | Generate lens classes and instances for a type.
makeLenses :: String -> Q [Dec]
-- | http://strava.github.io/api/v3/uploads/
module Strive.Types.Uploads
-- | http://strava.github.io/api/v3/uploads/#attributes
data UploadStatus
UploadStatus :: Maybe Integer -> Maybe Text -> Maybe Text -> Integer -> Text -> UploadStatus
[uploadStatus_activityId] :: UploadStatus -> Maybe Integer
[uploadStatus_error] :: UploadStatus -> Maybe Text
[uploadStatus_externalId] :: UploadStatus -> Maybe Text
[uploadStatus_id] :: UploadStatus -> Integer
[uploadStatus_status] :: UploadStatus -> Text
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Uploads.UploadStatus
instance GHC.Show.Show Strive.Types.Uploads.UploadStatus
-- | Lenses for easily getting and setting values.
module Strive.Lenses
-- | A lens for a record.
type Lens a b = forall f. Functor f => (b -> f b) -> a -> f a
-- | Get a field from a record.
get :: Lens a b -> a -> b
-- | Set a field in a record.
set :: Lens a b -> b -> a -> a
-- | Update a field in a record
update :: Lens a b -> (b -> b) -> a -> a
-- | Types for choosing an option from a limited set.
module Strive.Enums
-- | An activity's type.
data ActivityType
AlpineSki :: ActivityType
BackcountrySki :: ActivityType
Canoeing :: ActivityType
CrossCountrySkiing :: ActivityType
Crossfit :: ActivityType
Elliptical :: ActivityType
Hike :: ActivityType
IceSkate :: ActivityType
InlineSkate :: ActivityType
Kayaking :: ActivityType
KiteSurf :: ActivityType
NordicSki :: ActivityType
Ride :: ActivityType
RockClimbing :: ActivityType
RollerSki :: ActivityType
Rowing :: ActivityType
Run :: ActivityType
Snowboard :: ActivityType
Snowshoe :: ActivityType
StairStepper :: ActivityType
StandUpPaddling :: ActivityType
Surfing :: ActivityType
Swim :: ActivityType
Walk :: ActivityType
WeightTraining :: ActivityType
Windsurf :: ActivityType
Workout :: ActivityType
Yoga :: ActivityType
-- | An activity zone's type.
data ActivityZoneType
HeartrateZone :: ActivityZoneType
PowerZone :: ActivityZoneType
-- | An athlete's age group.
data AgeGroup
Ages0To24 :: AgeGroup
Ages25To34 :: AgeGroup
Ages35To44 :: AgeGroup
Ages45To54 :: AgeGroup
Ages55To64 :: AgeGroup
Ages65Plus :: AgeGroup
-- | A club's type.
data ClubType
CasualClub :: ClubType
Company :: ClubType
Other :: ClubType
RacingTeam :: ClubType
Shop :: ClubType
-- | A bike's frame type.
data FrameType
CrossFrame :: FrameType
MountainFrame :: FrameType
RoadFrame :: FrameType
TimeTrialFrame :: FrameType
-- | An athlete's gender.
data Gender
Female :: Gender
Male :: Gender
-- | An athlete's measurement preference.
data MeasurementPreference
Feet :: MeasurementPreference
Meters :: MeasurementPreference
-- | A photo's type.
data PhotoType
InstagramPhoto :: PhotoType
-- | A stream's resolution.
data Resolution
Low :: Resolution
Medium :: Resolution
High :: Resolution
-- | A resource's state.
data ResourceState
Meta :: ResourceState
Summary :: ResourceState
Detailed :: ResourceState
-- | A segment's activity type.
data SegmentActivityType
Riding :: SegmentActivityType
Running :: SegmentActivityType
-- | A series' type in a stream.
data SeriesType
Distance :: SeriesType
Time :: SeriesType
-- | A club's sport type.
data SportType
SportCycling :: SportType
SportOther :: SportType
SportRunning :: SportType
SportTriathalon :: SportType
-- | A stream's type.
data StreamType
AltitudeStream :: StreamType
CadenceStream :: StreamType
DistanceStream :: StreamType
GradeSmoothStream :: StreamType
HeartrateStream :: StreamType
LatlngStream :: StreamType
MovingStream :: StreamType
TempStream :: StreamType
TimeStream :: StreamType
VelocitySmoothStream :: StreamType
WattsStream :: StreamType
-- | An athlete's weight class.
data WeightClass
Kilograms0To54 :: WeightClass
Kilograms55To64 :: WeightClass
Kilograms65To74 :: WeightClass
Kilograms75To84 :: WeightClass
Kilograms85To94 :: WeightClass
Kilograms95Plus :: WeightClass
Pounds0To124 :: WeightClass
Pounds125To149 :: WeightClass
Pounds150To164 :: WeightClass
Pounds165To179 :: WeightClass
Pounds180To199 :: WeightClass
Pounds200Plus :: WeightClass
instance GHC.Show.Show Strive.Enums.SportType
instance GHC.Show.Show Strive.Enums.ResourceState
instance GHC.Show.Show Strive.Enums.PhotoType
instance GHC.Show.Show Strive.Enums.MeasurementPreference
instance GHC.Show.Show Strive.Enums.FrameType
instance GHC.Show.Show Strive.Enums.ClubType
instance GHC.Show.Show Strive.Enums.ActivityZoneType
instance GHC.Show.Show Strive.Enums.ActivityType
instance Data.Aeson.Types.Class.FromJSON Strive.Enums.ActivityType
instance Data.Aeson.Types.Class.FromJSON Strive.Enums.ActivityZoneType
instance GHC.Show.Show Strive.Enums.AgeGroup
instance Data.Aeson.Types.Class.FromJSON Strive.Enums.ClubType
instance Data.Aeson.Types.Class.FromJSON Strive.Enums.FrameType
instance GHC.Show.Show Strive.Enums.Gender
instance Data.Aeson.Types.Class.FromJSON Strive.Enums.Gender
instance Data.Aeson.Types.Class.FromJSON Strive.Enums.MeasurementPreference
instance Data.Aeson.Types.Class.FromJSON Strive.Enums.PhotoType
instance GHC.Show.Show Strive.Enums.Resolution
instance Data.Aeson.Types.Class.FromJSON Strive.Enums.Resolution
instance Data.Aeson.Types.Class.FromJSON Strive.Enums.ResourceState
instance GHC.Show.Show Strive.Enums.SegmentActivityType
instance GHC.Show.Show Strive.Enums.SeriesType
instance Data.Aeson.Types.Class.FromJSON Strive.Enums.SeriesType
instance Data.Aeson.Types.Class.FromJSON Strive.Enums.SportType
instance GHC.Show.Show Strive.Enums.StreamType
instance GHC.Show.Show Strive.Enums.WeightClass
-- | Activities
module Strive.Options.Activities
-- | CreateActivity
data CreateActivityOptions
CreateActivityOptions :: Maybe String -> Maybe Double -> CreateActivityOptions
[createActivityOptions_description] :: CreateActivityOptions -> Maybe String
[createActivityOptions_distance] :: CreateActivityOptions -> Maybe Double
-- | GetActivity
data GetActivityOptions
GetActivityOptions :: Bool -> GetActivityOptions
[getActivityOptions_allEfforts] :: GetActivityOptions -> Bool
-- | UpdateActivity
data UpdateActivityOptions
UpdateActivityOptions :: Maybe String -> Maybe ActivityType -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe String -> Maybe String -> UpdateActivityOptions
[updateActivityOptions_name] :: UpdateActivityOptions -> Maybe String
[updateActivityOptions_type] :: UpdateActivityOptions -> Maybe ActivityType
[updateActivityOptions_private] :: UpdateActivityOptions -> Maybe Bool
[updateActivityOptions_commute] :: UpdateActivityOptions -> Maybe Bool
[updateActivityOptions_trainer] :: UpdateActivityOptions -> Maybe Bool
[updateActivityOptions_gearId] :: UpdateActivityOptions -> Maybe String
[updateActivityOptions_description] :: UpdateActivityOptions -> Maybe String
-- | getCurrentActivities
data GetCurrentActivitiesOptions
GetCurrentActivitiesOptions :: Maybe UTCTime -> Maybe UTCTime -> Integer -> Integer -> GetCurrentActivitiesOptions
[getCurrentActivitiesOptions_before] :: GetCurrentActivitiesOptions -> Maybe UTCTime
[getCurrentActivitiesOptions_after] :: GetCurrentActivitiesOptions -> Maybe UTCTime
[getCurrentActivitiesOptions_page] :: GetCurrentActivitiesOptions -> Integer
[getCurrentActivitiesOptions_perPage] :: GetCurrentActivitiesOptions -> Integer
-- | getRelatedActivities
type GetRelatedActivitiesOptions = PaginationOptions
-- | getFeed
type GetFeedOptions = PaginationOptions
instance GHC.Show.Show Strive.Options.Activities.GetCurrentActivitiesOptions
instance GHC.Show.Show Strive.Options.Activities.UpdateActivityOptions
instance GHC.Show.Show Strive.Options.Activities.GetActivityOptions
instance GHC.Show.Show Strive.Options.Activities.CreateActivityOptions
instance Data.Default.Class.Default Strive.Options.Activities.CreateActivityOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Options.Activities.CreateActivityOptions
instance Data.Default.Class.Default Strive.Options.Activities.GetActivityOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Options.Activities.GetActivityOptions
instance Data.Default.Class.Default Strive.Options.Activities.UpdateActivityOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Options.Activities.UpdateActivityOptions
instance Data.Default.Class.Default Strive.Options.Activities.GetCurrentActivitiesOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Options.Activities.GetCurrentActivitiesOptions
-- | Athletes
module Strive.Options.Athletes
-- | updateCurrentAthlete
data UpdateCurrentAthleteOptions
UpdateCurrentAthleteOptions :: Maybe String -> Maybe String -> Maybe String -> Maybe Gender -> Maybe Double -> UpdateCurrentAthleteOptions
[updateCurrentAthleteOptions_city] :: UpdateCurrentAthleteOptions -> Maybe String
[updateCurrentAthleteOptions_state] :: UpdateCurrentAthleteOptions -> Maybe String
[updateCurrentAthleteOptions_country] :: UpdateCurrentAthleteOptions -> Maybe String
[updateCurrentAthleteOptions_sex] :: UpdateCurrentAthleteOptions -> Maybe Gender
[updateCurrentAthleteOptions_weight] :: UpdateCurrentAthleteOptions -> Maybe Double
-- | getAthleteCrs
type GetAthleteCrsOptions = PaginationOptions
instance GHC.Show.Show Strive.Options.Athletes.UpdateCurrentAthleteOptions
instance Data.Default.Class.Default Strive.Options.Athletes.UpdateCurrentAthleteOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Options.Athletes.UpdateCurrentAthleteOptions
-- | Segments
module Strive.Options.Segments
-- | getStarredSegments
type GetStarredSegmentsOptions = PaginationOptions
-- | getSegmentEfforts
data GetSegmentEffortsOptions
GetSegmentEffortsOptions :: Maybe Integer -> Maybe (UTCTime, UTCTime) -> Integer -> Integer -> GetSegmentEffortsOptions
[getSegmentEffortsOptions_athleteId] :: GetSegmentEffortsOptions -> Maybe Integer
[getSegmentEffortsOptions_range] :: GetSegmentEffortsOptions -> Maybe (UTCTime, UTCTime)
[getSegmentEffortsOptions_page] :: GetSegmentEffortsOptions -> Integer
[getSegmentEffortsOptions_perPage] :: GetSegmentEffortsOptions -> Integer
-- | getSegmentLeaderboard
data GetSegmentLeaderboardOptions
GetSegmentLeaderboardOptions :: Maybe Gender -> Maybe AgeGroup -> Maybe WeightClass -> Maybe Bool -> Maybe Integer -> Maybe String -> Maybe Integer -> Integer -> Integer -> GetSegmentLeaderboardOptions
[getSegmentLeaderboardOptions_gender] :: GetSegmentLeaderboardOptions -> Maybe Gender
[getSegmentLeaderboardOptions_ageGroup] :: GetSegmentLeaderboardOptions -> Maybe AgeGroup
[getSegmentLeaderboardOptions_weightClass] :: GetSegmentLeaderboardOptions -> Maybe WeightClass
[getSegmentLeaderboardOptions_following] :: GetSegmentLeaderboardOptions -> Maybe Bool
[getSegmentLeaderboardOptions_clubId] :: GetSegmentLeaderboardOptions -> Maybe Integer
[getSegmentLeaderboardOptions_dateRange] :: GetSegmentLeaderboardOptions -> Maybe String
[getSegmentLeaderboardOptions_contextEntries] :: GetSegmentLeaderboardOptions -> Maybe Integer
[getSegmentLeaderboardOptions_page] :: GetSegmentLeaderboardOptions -> Integer
[getSegmentLeaderboardOptions_perPage] :: GetSegmentLeaderboardOptions -> Integer
-- | exploreSegments
data ExploreSegmentsOptions
ExploreSegmentsOptions :: SegmentActivityType -> Integer -> Integer -> ExploreSegmentsOptions
[exploreSegmentsOptions_activityType] :: ExploreSegmentsOptions -> SegmentActivityType
[exploreSegmentsOptions_minCat] :: ExploreSegmentsOptions -> Integer
[exploreSegmentsOptions_maxCat] :: ExploreSegmentsOptions -> Integer
instance GHC.Show.Show Strive.Options.Segments.ExploreSegmentsOptions
instance GHC.Show.Show Strive.Options.Segments.GetSegmentLeaderboardOptions
instance GHC.Show.Show Strive.Options.Segments.GetSegmentEffortsOptions
instance Data.Default.Class.Default Strive.Options.Segments.GetSegmentEffortsOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Options.Segments.GetSegmentEffortsOptions
instance Data.Default.Class.Default Strive.Options.Segments.GetSegmentLeaderboardOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Options.Segments.GetSegmentLeaderboardOptions
instance Data.Default.Class.Default Strive.Options.Segments.ExploreSegmentsOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Options.Segments.ExploreSegmentsOptions
-- | Streams
module Strive.Options.Streams
-- | getStreams
data GetStreamsOptions
GetStreamsOptions :: Maybe Resolution -> SeriesType -> GetStreamsOptions
[getStreamsOptions_resolution] :: GetStreamsOptions -> Maybe Resolution
[getStreamsOptions_seriesType] :: GetStreamsOptions -> SeriesType
instance GHC.Show.Show Strive.Options.Streams.GetStreamsOptions
instance Data.Default.Class.Default Strive.Options.Streams.GetStreamsOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Options.Streams.GetStreamsOptions
-- | Uploads
module Strive.Options.Uploads
-- | uploadActivity
data UploadActivityOptions
UploadActivityOptions :: Maybe ActivityType -> Maybe String -> Maybe String -> Bool -> Bool -> Maybe String -> UploadActivityOptions
[uploadActivityOptions_activityType] :: UploadActivityOptions -> Maybe ActivityType
[uploadActivityOptions_name] :: UploadActivityOptions -> Maybe String
[uploadActivityOptions_description] :: UploadActivityOptions -> Maybe String
[uploadActivityOptions_private] :: UploadActivityOptions -> Bool
[uploadActivityOptions_trainer] :: UploadActivityOptions -> Bool
[uploadActivityOptions_externalId] :: UploadActivityOptions -> Maybe String
instance GHC.Show.Show Strive.Options.Uploads.UploadActivityOptions
instance Data.Default.Class.Default Strive.Options.Uploads.UploadActivityOptions
instance Network.HTTP.Types.QueryLike.QueryLike Strive.Options.Uploads.UploadActivityOptions
-- | Optional parameters for actions.
module Strive.Options
-- | http://strava.github.io/api/v3/clubs/
module Strive.Types.Clubs
-- | http://strava.github.io/api/v3/clubs/#detailed
data ClubDetailed
ClubDetailed :: Text -> ClubType -> Text -> Text -> Integer -> Integer -> Text -> Bool -> Text -> Text -> ResourceState -> SportType -> Text -> ClubDetailed
[clubDetailed_city] :: ClubDetailed -> Text
[clubDetailed_clubType] :: ClubDetailed -> ClubType
[clubDetailed_country] :: ClubDetailed -> Text
[clubDetailed_description] :: ClubDetailed -> Text
[clubDetailed_id] :: ClubDetailed -> Integer
[clubDetailed_memberCount] :: ClubDetailed -> Integer
[clubDetailed_name] :: ClubDetailed -> Text
[clubDetailed_private] :: ClubDetailed -> Bool
[clubDetailed_profile] :: ClubDetailed -> Text
[clubDetailed_profileMedium] :: ClubDetailed -> Text
[clubDetailed_resourceState] :: ClubDetailed -> ResourceState
[clubDetailed_sportType] :: ClubDetailed -> SportType
[clubDetailed_state] :: ClubDetailed -> Text
-- | http://strava.github.io/api/v3/clubs/#summary
data ClubSummary
ClubSummary :: Integer -> Text -> Text -> Text -> ResourceState -> ClubSummary
[clubSummary_id] :: ClubSummary -> Integer
[clubSummary_name] :: ClubSummary -> Text
[clubSummary_profile] :: ClubSummary -> Text
[clubSummary_profileMedium] :: ClubSummary -> Text
[clubSummary_resourceState] :: ClubSummary -> ResourceState
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Clubs.ClubSummary
instance GHC.Show.Show Strive.Types.Clubs.ClubSummary
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Clubs.ClubDetailed
instance GHC.Show.Show Strive.Types.Clubs.ClubDetailed
-- | http://strava.github.io/api/v3/gear/
module Strive.Types.Gear
-- | http://strava.github.io/api/v3/gear/#detailed
data GearDetailed
GearDetailed :: Text -> Text -> Double -> Maybe FrameType -> Text -> Text -> Text -> Bool -> ResourceState -> GearDetailed
[gearDetailed_brandName] :: GearDetailed -> Text
[gearDetailed_description] :: GearDetailed -> Text
[gearDetailed_distance] :: GearDetailed -> Double
[gearDetailed_frameType] :: GearDetailed -> Maybe FrameType
[gearDetailed_id] :: GearDetailed -> Text
[gearDetailed_modelName] :: GearDetailed -> Text
[gearDetailed_name] :: GearDetailed -> Text
[gearDetailed_primary] :: GearDetailed -> Bool
[gearDetailed_resourceState] :: GearDetailed -> ResourceState
-- | http://strava.github.io/api/v3/gear/#summary
data GearSummary
GearSummary :: Double -> Text -> Text -> Bool -> ResourceState -> GearSummary
[gearSummary_distance] :: GearSummary -> Double
[gearSummary_id] :: GearSummary -> Text
[gearSummary_name] :: GearSummary -> Text
[gearSummary_primary] :: GearSummary -> Bool
[gearSummary_resourceState] :: GearSummary -> ResourceState
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Gear.GearSummary
instance GHC.Show.Show Strive.Types.Gear.GearSummary
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Gear.GearDetailed
instance GHC.Show.Show Strive.Types.Gear.GearDetailed
-- | http://strava.github.io/api/v3/athlete/
module Strive.Types.Athletes
-- | http://strava.github.io/api/v3/athlete/#detailed
data AthleteDetailed
AthleteDetailed :: [GearSummary] -> Text -> [ClubSummary] -> Text -> UTCTime -> Text -> Text -> Text -> Maybe Text -> Integer -> Maybe Text -> Integer -> Maybe Integer -> Integer -> Text -> MeasurementPreference -> Integer -> Bool -> Text -> Text -> ResourceState -> Maybe Gender -> [GearSummary] -> Text -> UTCTime -> Maybe Double -> AthleteDetailed
[athleteDetailed_bikes] :: AthleteDetailed -> [GearSummary]
[athleteDetailed_city] :: AthleteDetailed -> Text
[athleteDetailed_clubs] :: AthleteDetailed -> [ClubSummary]
[athleteDetailed_country] :: AthleteDetailed -> Text
[athleteDetailed_createdAt] :: AthleteDetailed -> UTCTime
[athleteDetailed_datePreference] :: AthleteDetailed -> Text
[athleteDetailed_email] :: AthleteDetailed -> Text
[athleteDetailed_firstname] :: AthleteDetailed -> Text
[athleteDetailed_follower] :: AthleteDetailed -> Maybe Text
[athleteDetailed_followerCount] :: AthleteDetailed -> Integer
[athleteDetailed_friend] :: AthleteDetailed -> Maybe Text
[athleteDetailed_friendCount] :: AthleteDetailed -> Integer
[athleteDetailed_ftp] :: AthleteDetailed -> Maybe Integer
[athleteDetailed_id] :: AthleteDetailed -> Integer
[athleteDetailed_lastname] :: AthleteDetailed -> Text
[athleteDetailed_measurementPreference] :: AthleteDetailed -> MeasurementPreference
[athleteDetailed_mutualFriendCount] :: AthleteDetailed -> Integer
[athleteDetailed_premium] :: AthleteDetailed -> Bool
[athleteDetailed_profile] :: AthleteDetailed -> Text
[athleteDetailed_profileMedium] :: AthleteDetailed -> Text
[athleteDetailed_resourceState] :: AthleteDetailed -> ResourceState
[athleteDetailed_sex] :: AthleteDetailed -> Maybe Gender
[athleteDetailed_shoes] :: AthleteDetailed -> [GearSummary]
[athleteDetailed_state] :: AthleteDetailed -> Text
[athleteDetailed_updatedAt] :: AthleteDetailed -> UTCTime
[athleteDetailed_weight] :: AthleteDetailed -> Maybe Double
-- | http://strava.github.io/api/v3/athlete/#summary
data AthleteSummary
AthleteSummary :: Maybe Text -> Maybe Text -> UTCTime -> Text -> Maybe Text -> Maybe Text -> Integer -> Text -> Bool -> Text -> Text -> ResourceState -> Maybe Gender -> Text -> UTCTime -> AthleteSummary
[athleteSummary_city] :: AthleteSummary -> Maybe Text
[athleteSummary_country] :: AthleteSummary -> Maybe Text
[athleteSummary_createdAt] :: AthleteSummary -> UTCTime
[athleteSummary_firstname] :: AthleteSummary -> Text
[athleteSummary_follower] :: AthleteSummary -> Maybe Text
[athleteSummary_friend] :: AthleteSummary -> Maybe Text
[athleteSummary_id] :: AthleteSummary -> Integer
[athleteSummary_lastname] :: AthleteSummary -> Text
[athleteSummary_premium] :: AthleteSummary -> Bool
[athleteSummary_profile] :: AthleteSummary -> Text
[athleteSummary_profileMedium] :: AthleteSummary -> Text
[athleteSummary_resourceState] :: AthleteSummary -> ResourceState
[athleteSummary_sex] :: AthleteSummary -> Maybe Gender
[athleteSummary_state] :: AthleteSummary -> Text
[athleteSummary_updatedAt] :: AthleteSummary -> UTCTime
-- | http://strava.github.io/api/v3/athlete/#meta
data AthleteMeta
AthleteMeta :: Integer -> ResourceState -> AthleteMeta
[athleteMeta_id] :: AthleteMeta -> Integer
[athleteMeta_resourceState] :: AthleteMeta -> ResourceState
-- | http://strava.github.io/api/v3/athlete/#stats
data ActivityTotals
ActivityTotals :: Integer -> Double -> Double -> Double -> Double -> Double -> ActivityTotals
[activityTotals_count] :: ActivityTotals -> Integer
[activityTotals_distance] :: ActivityTotals -> Double
[activityTotals_movingTime] :: ActivityTotals -> Double
[activityTotals_elapsedTime] :: ActivityTotals -> Double
[activityTotals_elevationGain] :: ActivityTotals -> Double
[activityTotals_achievementCount] :: ActivityTotals -> Double
-- | http://strava.github.io/api/v3/athlete/#stats
data AthleteStats
AthleteStats :: Double -> Double -> ActivityTotals -> ActivityTotals -> ActivityTotals -> ActivityTotals -> ActivityTotals -> ActivityTotals -> AthleteStats
[athleteStats_biggestRideDistance] :: AthleteStats -> Double
[athleteStats_biggestClimbElevationGain] :: AthleteStats -> Double
[athleteStats_recentRideTotals] :: AthleteStats -> ActivityTotals
[athleteStats_recentRunTotals] :: AthleteStats -> ActivityTotals
[athleteStats_ytdRideTotals] :: AthleteStats -> ActivityTotals
[athleteStats_ytdRunTotals] :: AthleteStats -> ActivityTotals
[athleteStats_allRideTotals] :: AthleteStats -> ActivityTotals
[athleteStats_allRunTotals] :: AthleteStats -> ActivityTotals
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Athletes.AthleteStats
instance GHC.Show.Show Strive.Types.Athletes.AthleteStats
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Athletes.ActivityTotals
instance GHC.Show.Show Strive.Types.Athletes.ActivityTotals
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Athletes.AthleteMeta
instance GHC.Show.Show Strive.Types.Athletes.AthleteMeta
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Athletes.AthleteSummary
instance GHC.Show.Show Strive.Types.Athletes.AthleteSummary
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Athletes.AthleteDetailed
instance GHC.Show.Show Strive.Types.Athletes.AthleteDetailed
-- | http://strava.github.io/api/v3/oauth/
module Strive.Types.Authentication
-- | http://strava.github.io/api/v3/oauth/#example-response
data TokenExchangeResponse
TokenExchangeResponse :: Text -> AthleteDetailed -> TokenExchangeResponse
[tokenExchangeResponse_accessToken] :: TokenExchangeResponse -> Text
[tokenExchangeResponse_athlete] :: TokenExchangeResponse -> AthleteDetailed
-- | http://strava.github.io/api/v3/oauth/#example-response-1
data DeauthorizationResponse
DeauthorizationResponse :: Text -> DeauthorizationResponse
[deauthorizationResponse_accessToken] :: DeauthorizationResponse -> Text
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Authentication.DeauthorizationResponse
instance GHC.Show.Show Strive.Types.Authentication.DeauthorizationResponse
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Authentication.TokenExchangeResponse
instance GHC.Show.Show Strive.Types.Authentication.TokenExchangeResponse
-- | http://strava.github.io/api/v3/comments/
module Strive.Types.Comments
-- |
-- http://strava.github.io/api/v3/comments/#summary-and-detailed-representation-attributes
data CommentSummary
CommentSummary :: Integer -> AthleteSummary -> UTCTime -> Integer -> ResourceState -> Text -> CommentSummary
[commentSummary_activityId] :: CommentSummary -> Integer
[commentSummary_athlete] :: CommentSummary -> AthleteSummary
[commentSummary_createdAt] :: CommentSummary -> UTCTime
[commentSummary_id] :: CommentSummary -> Integer
[commentSummary_resourceState] :: CommentSummary -> ResourceState
[commentSummary_text] :: CommentSummary -> Text
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Comments.CommentSummary
instance GHC.Show.Show Strive.Types.Comments.CommentSummary
-- | http://strava.github.io/api/v3/photos/
module Strive.Types.Photos
-- |
-- http://strava.github.io/api/v3/photos/#summary-and-detailed-representation-attributes
data PhotoSummary
PhotoSummary :: Integer -> Text -> UTCTime -> Integer -> Maybe (Double, Double) -> Text -> ResourceState -> PhotoType -> Text -> UTCTime -> PhotoSummary
[photoSummary_activityId] :: PhotoSummary -> Integer
[photoSummary_caption] :: PhotoSummary -> Text
[photoSummary_createdAt] :: PhotoSummary -> UTCTime
[photoSummary_id] :: PhotoSummary -> Integer
[photoSummary_location] :: PhotoSummary -> Maybe (Double, Double)
[photoSummary_ref] :: PhotoSummary -> Text
[photoSummary_resourceState] :: PhotoSummary -> ResourceState
[photoSummary_type] :: PhotoSummary -> PhotoType
[photoSummary_uid] :: PhotoSummary -> Text
[photoSummary_uploadedAt] :: PhotoSummary -> UTCTime
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Photos.PhotoSummary
instance GHC.Show.Show Strive.Types.Photos.PhotoSummary
-- | http://strava.github.io/api/#polylines
module Strive.Types.Polylines
-- | http://strava.github.io/api/#polylines
newtype Polyline
Polyline :: [(Double, Double)] -> Polyline
[unPolyline] :: Polyline -> [(Double, Double)]
-- | http://strava.github.io/api/v3/activities/#detailed
data PolylineDetailed
PolylineDetailed :: Text -> Polyline -> ResourceState -> Maybe Polyline -> PolylineDetailed
[polylineDetailed_id] :: PolylineDetailed -> Text
[polylineDetailed_polyline] :: PolylineDetailed -> Polyline
[polylineDetailed_resourceState] :: PolylineDetailed -> ResourceState
[polylineDetailed_summaryPolyline] :: PolylineDetailed -> Maybe Polyline
-- | http://strava.github.io/api/v3/activities/#summary
data PolylineSummary
PolylineSummary :: Text -> ResourceState -> Maybe Polyline -> PolylineSummary
[polylineSummary_id] :: PolylineSummary -> Text
[polylineSummary_resourceState] :: PolylineSummary -> ResourceState
[polylineSummary_summaryPolyline] :: PolylineSummary -> Maybe Polyline
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Polylines.PolylineSummary
instance GHC.Show.Show Strive.Types.Polylines.PolylineSummary
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Polylines.PolylineDetailed
instance GHC.Show.Show Strive.Types.Polylines.PolylineDetailed
instance GHC.Show.Show Strive.Types.Polylines.Polyline
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Polylines.Polyline
-- | http://strava.github.io/api/v3/segments/
module Strive.Types.Segments
-- | http://strava.github.io/api/v3/segments/#detailed
data SegmentDetailed
SegmentDetailed :: ActivityType -> Integer -> Double -> Text -> Integer -> Text -> UTCTime -> Double -> Integer -> Double -> Double -> Double -> (Double, Double) -> Double -> Bool -> Integer -> PolylineDetailed -> Double -> Text -> Bool -> ResourceState -> Integer -> Bool -> Double -> (Double, Double) -> Double -> Text -> Double -> UTCTime -> SegmentDetailed
[segmentDetailed_activityType] :: SegmentDetailed -> ActivityType
[segmentDetailed_athleteCount] :: SegmentDetailed -> Integer
[segmentDetailed_averageGrade] :: SegmentDetailed -> Double
[segmentDetailed_city] :: SegmentDetailed -> Text
[segmentDetailed_climbCategory] :: SegmentDetailed -> Integer
[segmentDetailed_country] :: SegmentDetailed -> Text
[segmentDetailed_createdAt] :: SegmentDetailed -> UTCTime
[segmentDetailed_distance] :: SegmentDetailed -> Double
[segmentDetailed_effortCount] :: SegmentDetailed -> Integer
[segmentDetailed_elevationHigh] :: SegmentDetailed -> Double
[segmentDetailed_elevationLow] :: SegmentDetailed -> Double
[segmentDetailed_endLatitude] :: SegmentDetailed -> Double
[segmentDetailed_endLatlng] :: SegmentDetailed -> (Double, Double)
[segmentDetailed_endLongitude] :: SegmentDetailed -> Double
[segmentDetailed_hazardous] :: SegmentDetailed -> Bool
[segmentDetailed_id] :: SegmentDetailed -> Integer
[segmentDetailed_map] :: SegmentDetailed -> PolylineDetailed
[segmentDetailed_maximumGrade] :: SegmentDetailed -> Double
[segmentDetailed_name] :: SegmentDetailed -> Text
[segmentDetailed_private] :: SegmentDetailed -> Bool
[segmentDetailed_resourceState] :: SegmentDetailed -> ResourceState
[segmentDetailed_starCount] :: SegmentDetailed -> Integer
[segmentDetailed_starred] :: SegmentDetailed -> Bool
[segmentDetailed_startLatitude] :: SegmentDetailed -> Double
[segmentDetailed_startLatlng] :: SegmentDetailed -> (Double, Double)
[segmentDetailed_startLongitude] :: SegmentDetailed -> Double
[segmentDetailed_state] :: SegmentDetailed -> Text
[segmentDetailed_totalElevationGain] :: SegmentDetailed -> Double
[segmentDetailed_updatedAt] :: SegmentDetailed -> UTCTime
-- | http://strava.github.io/api/v3/segments/#summary
data SegmentSummary
SegmentSummary :: ActivityType -> Double -> Text -> Integer -> Text -> Double -> Double -> Double -> Double -> (Double, Double) -> Double -> Integer -> Double -> Text -> Bool -> ResourceState -> Bool -> Double -> (Double, Double) -> Double -> Text -> SegmentSummary
[segmentSummary_activityType] :: SegmentSummary -> ActivityType
[segmentSummary_averageGrade] :: SegmentSummary -> Double
[segmentSummary_city] :: SegmentSummary -> Text
[segmentSummary_climbCategory] :: SegmentSummary -> Integer
[segmentSummary_country] :: SegmentSummary -> Text
[segmentSummary_distance] :: SegmentSummary -> Double
[segmentSummary_elevationHigh] :: SegmentSummary -> Double
[segmentSummary_elevationLow] :: SegmentSummary -> Double
[segmentSummary_endLatitude] :: SegmentSummary -> Double
[segmentSummary_endLatlng] :: SegmentSummary -> (Double, Double)
[segmentSummary_endLongitude] :: SegmentSummary -> Double
[segmentSummary_id] :: SegmentSummary -> Integer
[segmentSummary_maximumGrade] :: SegmentSummary -> Double
[segmentSummary_name] :: SegmentSummary -> Text
[segmentSummary_private] :: SegmentSummary -> Bool
[segmentSummary_resourceState] :: SegmentSummary -> ResourceState
[segmentSummary_starred] :: SegmentSummary -> Bool
[segmentSummary_startLatitude] :: SegmentSummary -> Double
[segmentSummary_startLatlng] :: SegmentSummary -> (Double, Double)
[segmentSummary_startLongitude] :: SegmentSummary -> Double
[segmentSummary_state] :: SegmentSummary -> Text
-- | http://strava.github.io/api/v3/segments/#leaderboard
data SegmentLeaderboardResponse
SegmentLeaderboardResponse :: Integer -> Integer -> [SegmentLeaderboardEntry] -> SegmentLeaderboardResponse
[segmentLeaderboardResponse_effortCount] :: SegmentLeaderboardResponse -> Integer
[segmentLeaderboardResponse_entryCount] :: SegmentLeaderboardResponse -> Integer
[segmentLeaderboardResponse_entries] :: SegmentLeaderboardResponse -> [SegmentLeaderboardEntry]
-- | http://strava.github.io/api/v3/segments/#leaderboard
data SegmentLeaderboardEntry
SegmentLeaderboardEntry :: Integer -> Maybe Gender -> Integer -> Text -> Text -> Double -> Double -> Double -> Integer -> Integer -> Integer -> Integer -> UTCTime -> UTCTime -> SegmentLeaderboardEntry
[segmentLeaderboardEntry_activityId] :: SegmentLeaderboardEntry -> Integer
[segmentLeaderboardEntry_athleteGender] :: SegmentLeaderboardEntry -> Maybe Gender
[segmentLeaderboardEntry_athleteId] :: SegmentLeaderboardEntry -> Integer
[segmentLeaderboardEntry_athleteName] :: SegmentLeaderboardEntry -> Text
[segmentLeaderboardEntry_athleteProfile] :: SegmentLeaderboardEntry -> Text
[segmentLeaderboardEntry_averageHr] :: SegmentLeaderboardEntry -> Double
[segmentLeaderboardEntry_averageWatts] :: SegmentLeaderboardEntry -> Double
[segmentLeaderboardEntry_distance] :: SegmentLeaderboardEntry -> Double
[segmentLeaderboardEntry_effortId] :: SegmentLeaderboardEntry -> Integer
[segmentLeaderboardEntry_elapsedTime] :: SegmentLeaderboardEntry -> Integer
[segmentLeaderboardEntry_movingTime] :: SegmentLeaderboardEntry -> Integer
[segmentLeaderboardEntry_rank] :: SegmentLeaderboardEntry -> Integer
[segmentLeaderboardEntry_startDate] :: SegmentLeaderboardEntry -> UTCTime
[segmentLeaderboardEntry_startDateLocal] :: SegmentLeaderboardEntry -> UTCTime
-- | http://strava.github.io/api/v3/segments/#explore
data SegmentExplorerResponse
SegmentExplorerResponse :: [SegmentExplorerEntry] -> SegmentExplorerResponse
[segmentExplorerResponse_segments] :: SegmentExplorerResponse -> [SegmentExplorerEntry]
-- | http://strava.github.io/api/v3/segments/#explore
data SegmentExplorerEntry
SegmentExplorerEntry :: Double -> Integer -> String -> Double -> Double -> (Double, Double) -> Integer -> Text -> Polyline -> ResourceState -> Bool -> (Double, Double) -> SegmentExplorerEntry
[segmentExplorerEntry_avgGrade] :: SegmentExplorerEntry -> Double
[segmentExplorerEntry_climbCategory] :: SegmentExplorerEntry -> Integer
[segmentExplorerEntry_climbCategoryDesc] :: SegmentExplorerEntry -> String
[segmentExplorerEntry_distance] :: SegmentExplorerEntry -> Double
[segmentExplorerEntry_elevDifference] :: SegmentExplorerEntry -> Double
[segmentExplorerEntry_endLatlng] :: SegmentExplorerEntry -> (Double, Double)
[segmentExplorerEntry_id] :: SegmentExplorerEntry -> Integer
[segmentExplorerEntry_name] :: SegmentExplorerEntry -> Text
[segmentExplorerEntry_points] :: SegmentExplorerEntry -> Polyline
[segmentExplorerEntry_resourceState] :: SegmentExplorerEntry -> ResourceState
[segmentExplorerEntry_starred] :: SegmentExplorerEntry -> Bool
[segmentExplorerEntry_startLatlng] :: SegmentExplorerEntry -> (Double, Double)
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Segments.SegmentExplorerResponse
instance GHC.Show.Show Strive.Types.Segments.SegmentExplorerResponse
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Segments.SegmentExplorerEntry
instance GHC.Show.Show Strive.Types.Segments.SegmentExplorerEntry
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Segments.SegmentLeaderboardResponse
instance GHC.Show.Show Strive.Types.Segments.SegmentLeaderboardResponse
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Segments.SegmentLeaderboardEntry
instance GHC.Show.Show Strive.Types.Segments.SegmentLeaderboardEntry
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Segments.SegmentSummary
instance GHC.Show.Show Strive.Types.Segments.SegmentSummary
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Segments.SegmentDetailed
instance GHC.Show.Show Strive.Types.Segments.SegmentDetailed
-- | http://strava.github.io/api/v3/efforts/
module Strive.Types.Efforts
-- | http://strava.github.io/api/v3/efforts/#detailed
data EffortDetailed
EffortDetailed :: Integer -> Integer -> Maybe Double -> Maybe Double -> Maybe Double -> Double -> Integer -> Integer -> Maybe Bool -> Integer -> Maybe Integer -> Maybe Integer -> Integer -> Text -> Maybe Integer -> ResourceState -> SegmentSummary -> UTCTime -> UTCTime -> Integer -> EffortDetailed
[effortDetailed_activityId] :: EffortDetailed -> Integer
[effortDetailed_athleteId] :: EffortDetailed -> Integer
[effortDetailed_averageCadence] :: EffortDetailed -> Maybe Double
[effortDetailed_averageHeartrate] :: EffortDetailed -> Maybe Double
[effortDetailed_averageWatts] :: EffortDetailed -> Maybe Double
[effortDetailed_distance] :: EffortDetailed -> Double
[effortDetailed_elapsedTime] :: EffortDetailed -> Integer
[effortDetailed_endIndex] :: EffortDetailed -> Integer
[effortDetailed_hidden] :: EffortDetailed -> Maybe Bool
[effortDetailed_id] :: EffortDetailed -> Integer
[effortDetailed_komRank] :: EffortDetailed -> Maybe Integer
[effortDetailed_maxHeartrate] :: EffortDetailed -> Maybe Integer
[effortDetailed_movingTime] :: EffortDetailed -> Integer
[effortDetailed_name] :: EffortDetailed -> Text
[effortDetailed_prRank] :: EffortDetailed -> Maybe Integer
[effortDetailed_resourceState] :: EffortDetailed -> ResourceState
[effortDetailed_segment] :: EffortDetailed -> SegmentSummary
[effortDetailed_startDate] :: EffortDetailed -> UTCTime
[effortDetailed_startDateLocal] :: EffortDetailed -> UTCTime
[effortDetailed_startIndex] :: EffortDetailed -> Integer
instance GHC.Show.Show Strive.Types.Efforts.EffortDetailed
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Efforts.EffortDetailed
-- | http://strava.github.io/api/v3/activities/
module Strive.Types.Activities
-- | http://strava.github.io/api/v3/activities/#detailed
data ActivityDetailed
ActivityDetailed :: Integer -> AthleteMeta -> Integer -> Double -> Maybe Double -> Maybe Double -> Double -> Integer -> Bool -> Maybe Text -> Maybe Bool -> Double -> Integer -> Maybe (Double, Double) -> Maybe Text -> Bool -> GearSummary -> Maybe Text -> Bool -> Integer -> Maybe Text -> Maybe Double -> Maybe Text -> Maybe Text -> Maybe Text -> Bool -> PolylineDetailed -> Maybe Double -> Double -> Integer -> Text -> Integer -> Bool -> ResourceState -> [EffortDetailed] -> UTCTime -> UTCTime -> Double -> Maybe (Double, Double) -> Double -> Text -> Double -> Bool -> Integer -> ActivityType -> Maybe Integer -> Maybe Integer -> ActivityDetailed
[activityDetailed_achievementCount] :: ActivityDetailed -> Integer
[activityDetailed_athlete] :: ActivityDetailed -> AthleteMeta
[activityDetailed_athleteCount] :: ActivityDetailed -> Integer
[activityDetailed_averageSpeed] :: ActivityDetailed -> Double
[activityDetailed_averageWatts] :: ActivityDetailed -> Maybe Double
[activityDetailed_averageHeartrate] :: ActivityDetailed -> Maybe Double
[activityDetailed_calories] :: ActivityDetailed -> Double
[activityDetailed_commentCount] :: ActivityDetailed -> Integer
[activityDetailed_commute] :: ActivityDetailed -> Bool
[activityDetailed_description] :: ActivityDetailed -> Maybe Text
[activityDetailed_deviceWatts] :: ActivityDetailed -> Maybe Bool
[activityDetailed_distance] :: ActivityDetailed -> Double
[activityDetailed_elapsedTime] :: ActivityDetailed -> Integer
[activityDetailed_endLatlng] :: ActivityDetailed -> Maybe (Double, Double)
[activityDetailed_externalId] :: ActivityDetailed -> Maybe Text
[activityDetailed_flagged] :: ActivityDetailed -> Bool
[activityDetailed_gear] :: ActivityDetailed -> GearSummary
[activityDetailed_gearId] :: ActivityDetailed -> Maybe Text
[activityDetailed_hasKudoed] :: ActivityDetailed -> Bool
[activityDetailed_id] :: ActivityDetailed -> Integer
[activityDetailed_instagramPrimaryPhoto] :: ActivityDetailed -> Maybe Text
[activityDetailed_kilojoules] :: ActivityDetailed -> Maybe Double
[activityDetailed_locationCity] :: ActivityDetailed -> Maybe Text
[activityDetailed_locationCountry] :: ActivityDetailed -> Maybe Text
[activityDetailed_locationState] :: ActivityDetailed -> Maybe Text
[activityDetailed_manual] :: ActivityDetailed -> Bool
[activityDetailed_map] :: ActivityDetailed -> PolylineDetailed
[activityDetailed_maxHeartrate] :: ActivityDetailed -> Maybe Double
[activityDetailed_maxSpeed] :: ActivityDetailed -> Double
[activityDetailed_movingTime] :: ActivityDetailed -> Integer
[activityDetailed_name] :: ActivityDetailed -> Text
[activityDetailed_photoCount] :: ActivityDetailed -> Integer
[activityDetailed_private] :: ActivityDetailed -> Bool
[activityDetailed_resourceState] :: ActivityDetailed -> ResourceState
[activityDetailed_segmentEfforts] :: ActivityDetailed -> [EffortDetailed]
[activityDetailed_startDate] :: ActivityDetailed -> UTCTime
[activityDetailed_startDateLocal] :: ActivityDetailed -> UTCTime
[activityDetailed_startLatitude] :: ActivityDetailed -> Double
[activityDetailed_startLatlng] :: ActivityDetailed -> Maybe (Double, Double)
[activityDetailed_startLongitude] :: ActivityDetailed -> Double
[activityDetailed_timezone] :: ActivityDetailed -> Text
[activityDetailed_totalElevationGain] :: ActivityDetailed -> Double
[activityDetailed_trainer] :: ActivityDetailed -> Bool
[activityDetailed_truncated] :: ActivityDetailed -> Integer
[activityDetailed_type] :: ActivityDetailed -> ActivityType
[activityDetailed_uploadId] :: ActivityDetailed -> Maybe Integer
[activityDetailed_weightedAverageWatts] :: ActivityDetailed -> Maybe Integer
-- | http://strava.github.io/api/v3/activities/#summary
data ActivitySummary
ActivitySummary :: Integer -> AthleteMeta -> Integer -> Double -> Maybe Double -> Maybe Double -> Integer -> Bool -> Maybe Bool -> Double -> Integer -> Maybe (Double, Double) -> Maybe Text -> Bool -> Maybe Text -> Bool -> Integer -> Maybe Double -> Integer -> Maybe Text -> Maybe Text -> Maybe Text -> Bool -> PolylineSummary -> Maybe Double -> Double -> Integer -> Text -> Integer -> Bool -> ResourceState -> UTCTime -> UTCTime -> Double -> Maybe (Double, Double) -> Double -> Text -> Double -> Bool -> ActivityType -> Maybe Integer -> Maybe Integer -> ActivitySummary
[activitySummary_achievementCount] :: ActivitySummary -> Integer
[activitySummary_athlete] :: ActivitySummary -> AthleteMeta
[activitySummary_athleteCount] :: ActivitySummary -> Integer
[activitySummary_averageSpeed] :: ActivitySummary -> Double
[activitySummary_averageWatts] :: ActivitySummary -> Maybe Double
[activitySummary_averageHeartrate] :: ActivitySummary -> Maybe Double
[activitySummary_commentCount] :: ActivitySummary -> Integer
[activitySummary_commute] :: ActivitySummary -> Bool
[activitySummary_deviceWatts] :: ActivitySummary -> Maybe Bool
[activitySummary_distance] :: ActivitySummary -> Double
[activitySummary_elapsedTime] :: ActivitySummary -> Integer
[activitySummary_endLatlng] :: ActivitySummary -> Maybe (Double, Double)
[activitySummary_externalId] :: ActivitySummary -> Maybe Text
[activitySummary_flagged] :: ActivitySummary -> Bool
[activitySummary_gearId] :: ActivitySummary -> Maybe Text
[activitySummary_hasKudoed] :: ActivitySummary -> Bool
[activitySummary_id] :: ActivitySummary -> Integer
[activitySummary_kilojoules] :: ActivitySummary -> Maybe Double
[activitySummary_kudosCount] :: ActivitySummary -> Integer
[activitySummary_locationCity] :: ActivitySummary -> Maybe Text
[activitySummary_locationCountry] :: ActivitySummary -> Maybe Text
[activitySummary_locationState] :: ActivitySummary -> Maybe Text
[activitySummary_manual] :: ActivitySummary -> Bool
[activitySummary_map] :: ActivitySummary -> PolylineSummary
[activitySummary_maxHeartrate] :: ActivitySummary -> Maybe Double
[activitySummary_maxSpeed] :: ActivitySummary -> Double
[activitySummary_movingTime] :: ActivitySummary -> Integer
[activitySummary_name] :: ActivitySummary -> Text
[activitySummary_photoCount] :: ActivitySummary -> Integer
[activitySummary_private] :: ActivitySummary -> Bool
[activitySummary_resourceState] :: ActivitySummary -> ResourceState
[activitySummary_startDate] :: ActivitySummary -> UTCTime
[activitySummary_startDateLocal] :: ActivitySummary -> UTCTime
[activitySummary_startLatitude] :: ActivitySummary -> Double
[activitySummary_startLatlng] :: ActivitySummary -> Maybe (Double, Double)
[activitySummary_startLongitude] :: ActivitySummary -> Double
[activitySummary_timezone] :: ActivitySummary -> Text
[activitySummary_totalElevationGain] :: ActivitySummary -> Double
[activitySummary_trainer] :: ActivitySummary -> Bool
[activitySummary_type] :: ActivitySummary -> ActivityType
[activitySummary_uploadId] :: ActivitySummary -> Maybe Integer
[activitySummary_weightedAverageWatts] :: ActivitySummary -> Maybe Integer
-- | http://strava.github.io/api/v3/activities/#zones
data ActivityZoneDetailed
ActivityZoneDetailed :: [ActivityZoneDistributionBucket] -> ResourceState -> Bool -> ActivityZoneType -> ActivityZoneDetailed
[activityZoneDetailed_distributionBuckets] :: ActivityZoneDetailed -> [ActivityZoneDistributionBucket]
[activityZoneDetailed_resourceState] :: ActivityZoneDetailed -> ResourceState
[activityZoneDetailed_sensorBased] :: ActivityZoneDetailed -> Bool
[activityZoneDetailed_type] :: ActivityZoneDetailed -> ActivityZoneType
-- | http://strava.github.io/api/v3/activities/#zones
data ActivityZoneDistributionBucket
ActivityZoneDistributionBucket :: Integer -> Integer -> Integer -> ActivityZoneDistributionBucket
[activityZoneDistributionBucket_max] :: ActivityZoneDistributionBucket -> Integer
[activityZoneDistributionBucket_min] :: ActivityZoneDistributionBucket -> Integer
[activityZoneDistributionBucket_time] :: ActivityZoneDistributionBucket -> Integer
-- | http://strava.github.io/api/v3/activities/#laps
data ActivityLapSummary
ActivityLapSummary :: Integer -> Integer -> Double -> Double -> Double -> Integer -> Integer -> Integer -> Integer -> Double -> Double -> Text -> ResourceState -> UTCTime -> UTCTime -> Integer -> Double -> ActivityLapSummary
[activityLapSummary_activityId] :: ActivityLapSummary -> Integer
[activityLapSummary_athleteId] :: ActivityLapSummary -> Integer
[activityLapSummary_averageSpeed] :: ActivityLapSummary -> Double
[activityLapSummary_averageWatts] :: ActivityLapSummary -> Double
[activityLapSummary_distance] :: ActivityLapSummary -> Double
[activityLapSummary_elapsedTime] :: ActivityLapSummary -> Integer
[activityLapSummary_endIndex] :: ActivityLapSummary -> Integer
[activityLapSummary_id] :: ActivityLapSummary -> Integer
[activityLapSummary_lapIndex] :: ActivityLapSummary -> Integer
[activityLapSummary_maxSpeed] :: ActivityLapSummary -> Double
[activityLapSummary_movingTime] :: ActivityLapSummary -> Double
[activityLapSummary_name] :: ActivityLapSummary -> Text
[activityLapSummary_resourceState] :: ActivityLapSummary -> ResourceState
[activityLapSummary_startDate] :: ActivityLapSummary -> UTCTime
[activityLapSummary_startDateLocal] :: ActivityLapSummary -> UTCTime
[activityLapSummary_startIndex] :: ActivityLapSummary -> Integer
[activityLapSummary_totalElevationGain] :: ActivityLapSummary -> Double
instance GHC.Show.Show Strive.Types.Activities.ActivityLapSummary
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Activities.ActivityZoneDetailed
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Activities.ActivityLapSummary
instance GHC.Show.Show Strive.Types.Activities.ActivityZoneDetailed
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Activities.ActivityZoneDistributionBucket
instance GHC.Show.Show Strive.Types.Activities.ActivityZoneDistributionBucket
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Activities.ActivitySummary
instance GHC.Show.Show Strive.Types.Activities.ActivitySummary
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Activities.ActivityDetailed
instance GHC.Show.Show Strive.Types.Activities.ActivityDetailed
-- | http://strava.github.io/api/v3/streams/
module Strive.Types.Streams
-- | http://strava.github.io/api/v3/streams/#detailed
data StreamDetailed
StreamDetailed :: [Value] -> Integer -> Resolution -> SeriesType -> Text -> StreamDetailed
[streamDetailed_data] :: StreamDetailed -> [Value]
[streamDetailed_originalSize] :: StreamDetailed -> Integer
[streamDetailed_resolution] :: StreamDetailed -> Resolution
[streamDetailed_seriesType] :: StreamDetailed -> SeriesType
[streamDetailed_type] :: StreamDetailed -> Text
instance Data.Aeson.Types.Class.FromJSON Strive.Types.Streams.StreamDetailed
instance GHC.Show.Show Strive.Types.Streams.StreamDetailed
-- | Data types representing responses from the API.
module Strive.Types
-- | Utility functions for making common actions easier.
module Strive.Utilities
-- | Modify an action's default options by listing changes to it.
with :: Default a => [a -> a] -> a
altitudeStream :: StreamDetailed -> Maybe [Double]
cadenceStream :: StreamDetailed -> Maybe [Integer]
distanceStream :: StreamDetailed -> Maybe [Double]
gradeSmoothStream :: StreamDetailed -> Maybe [Double]
heartrateStream :: StreamDetailed -> Maybe [Integer]
latlngStream :: StreamDetailed -> Maybe [(Double, Double)]
movingStream :: StreamDetailed -> Maybe [Bool]
tempStream :: StreamDetailed -> Maybe [Integer]
timeStream :: StreamDetailed -> Maybe [Integer]
velocitySmoothStream :: StreamDetailed -> Maybe [Double]
wattsStream :: StreamDetailed -> Maybe [Integer]
-- | Types and functions for dealing with the API client itself.
module Strive.Client
-- | Strava V3 API client.
data Client
Client :: String -> (Request -> IO (Response ByteString)) -> Client
[client_accessToken] :: Client -> String
[client_requester] :: Client -> Request -> IO (Response ByteString)
-- | Build a new client using the default HTTP manager to make requests.
buildClient :: Maybe Text -> IO Client
instance GHC.Show.Show Strive.Client.Client
-- | Aliases for common types.
module Strive.Aliases
type ActivityId = Integer
type ApplicationId = Integer
type ApplicationSecret = String
type AthleteId = Integer
type AuthorizationCode = String
type ClubId = Integer
type EffortId = Integer
type ElapsedTime = Integer
type Extension = String
type GearId = String
type Latitude = Double
type Longitude = Double
type Name = String
type RedirectUri = String
type Result a = Either (Response ByteString, String) a
type SegmentId = Integer
type StartTime = UTCTime
type StreamId = Integer
type UploadId = Integer
-- | Helpers for dealing with HTTP requests.
module Strive.Internal.HTTP
-- | Perform an HTTP DELETE request.
delete :: (QueryLike q, FromJSON j) => Client -> String -> q -> IO (Result j)
-- | Perform an HTTP GET request.
get :: (QueryLike q, FromJSON j) => Client -> String -> q -> IO (Result j)
-- | Perform an HTTP POST request.
post :: (QueryLike q, FromJSON j) => Client -> String -> q -> IO (Result j)
-- | Perform an HTTP PUT request.
put :: (QueryLike q, FromJSON j) => Client -> String -> q -> IO (Result j)
-- | Build a request.
buildRequest :: QueryLike q => Method -> Client -> String -> q -> IO Request
-- | Actually perform an HTTP request.
performRequest :: Client -> Request -> IO (Response ByteString)
-- | Handle decoding a potentially failed response.
handleResponse :: FromJSON j => Response ByteString -> Result j
-- | Decode a response body as JSON.
decodeValue :: FromJSON j => Response ByteString -> Either String j
-- | http://strava.github.io/api/v3/activities/
module Strive.Actions.Activities
-- | http://strava.github.io/api/v3/activities/#create
createActivity :: Client -> Name -> ActivityType -> StartTime -> ElapsedTime -> CreateActivityOptions -> IO (Result ActivityDetailed)
-- | http://strava.github.io/api/v3/activities/#get-details
getActivity :: Client -> ActivityId -> GetActivityOptions -> IO (Result ActivitySummary)
-- | http://strava.github.io/api/v3/activities/#put-updates
updateActivity :: Client -> ActivityId -> UpdateActivityOptions -> IO (Result ActivityDetailed)
-- | http://strava.github.io/api/v3/activities/#delete
deleteActivity :: Client -> ActivityId -> IO (Result ())
-- | http://strava.github.io/api/v3/activities/#get-activities
getCurrentActivities :: Client -> GetCurrentActivitiesOptions -> IO (Result [ActivitySummary])
-- | http://strava.github.io/api/v3/activities/#get-related
getRelatedActivities :: Client -> ActivityId -> GetRelatedActivitiesOptions -> IO (Result [ActivitySummary])
-- | http://strava.github.io/api/v3/activities/#get-feed
getFeed :: Client -> GetFeedOptions -> IO (Result [ActivitySummary])
-- | http://strava.github.io/api/v3/activities/#zones
getActivityZones :: Client -> ActivityId -> IO (Result [ActivityZoneDetailed])
-- | http://strava.github.io/api/v3/activities/#laps
getActivityLaps :: Client -> ActivityId -> IO (Result [ActivityLapSummary])
-- | http://strava.github.io/api/v3/athlete/
module Strive.Actions.Athletes
-- | http://strava.github.io/api/v3/athlete/#get-details
getCurrentAthlete :: Client -> IO (Result AthleteDetailed)
-- | http://strava.github.io/api/v3/athlete/#get-another-details
getAthlete :: Client -> AthleteId -> IO (Result AthleteSummary)
-- | http://strava.github.io/api/v3/athlete/#update
updateCurrentAthlete :: Client -> UpdateCurrentAthleteOptions -> IO (Result AthleteDetailed)
-- | http://strava.github.io/api/v3/athlete/#stats
getAthleteStats :: Client -> Integer -> IO (Result AthleteStats)
-- | http://strava.github.io/api/v3/athlete/#koms
getAthleteCrs :: Client -> AthleteId -> GetAthleteCrsOptions -> IO (Result [EffortDetailed])
-- | http://strava.github.io/api/v3/oauth/
module Strive.Actions.Authentication
-- | http://strava.github.io/api/v3/oauth/#get-authorize
buildAuthorizeUrl :: ApplicationId -> RedirectUri -> BuildAuthorizeUrlOptions -> String
-- | http://strava.github.io/api/v3/oauth/#post-token
exchangeToken :: ApplicationId -> ApplicationSecret -> AuthorizationCode -> IO (Result TokenExchangeResponse)
-- | http://strava.github.io/api/v3/oauth/#deauthorize
deauthorize :: Client -> IO (Result DeauthorizationResponse)
-- | http://strava.github.io/api/v3/clubs/
module Strive.Actions.Clubs
-- | http://strava.github.io/api/v3/clubs/#get-details
getClub :: Client -> ClubId -> IO (Result ClubDetailed)
-- | http://strava.github.io/api/v3/clubs/#get-athletes
getCurrentClubs :: Client -> IO (Result [ClubSummary])
-- | http://strava.github.io/api/v3/clubs/#get-members
getClubMembers :: Client -> ClubId -> GetClubMembersOptions -> IO (Result [AthleteSummary])
-- | http://strava.github.io/api/v3/clubs/#get-activities
getClubActivities :: Client -> ClubId -> GetClubActivitiesOptions -> IO (Result [ActivitySummary])
-- | http://strava.github.io/api/v3/clubs/#join
joinClub :: Client -> ClubId -> IO (Result ())
-- | http://strava.github.io/api/v3/clubs/#leave
leaveClub :: Client -> ClubId -> IO (Result ())
-- | http://strava.github.io/api/v3/comments/
module Strive.Actions.Comments
-- | http://strava.github.io/api/v3/comments/#list
getActivityComments :: Client -> ActivityId -> GetActivityCommentsOptions -> IO (Result [CommentSummary])
-- | http://strava.github.io/api/v3/efforts/
module Strive.Actions.Efforts
-- | http://strava.github.io/api/v3/efforts/#retrieve
getSegmentEffort :: Client -> EffortId -> IO (Result EffortDetailed)
-- | http://strava.github.io/api/v3/follow/
module Strive.Actions.Friends
-- | http://strava.github.io/api/v3/follow/#friends
getCurrentFriends :: Client -> GetCurrentFriendsOptions -> IO (Result [AthleteSummary])
-- | http://strava.github.io/api/v3/follow/#friends
getFriends :: Client -> AthleteId -> GetFriendsOptions -> IO (Result [AthleteSummary])
-- | http://strava.github.io/api/v3/follow/#followers
getCurrentFollowers :: Client -> GetCurrentFollowersOptions -> IO (Result [AthleteSummary])
-- | http://strava.github.io/api/v3/follow/#followers
getFollowers :: Client -> AthleteId -> GetFollowersOptions -> IO (Result [AthleteSummary])
-- | http://strava.github.io/api/v3/follow/#both
getCommonFriends :: Client -> AthleteId -> GetCommonFriendsOptions -> IO (Result [AthleteSummary])
-- | http://strava.github.io/api/v3/gear/
module Strive.Actions.Gear
-- | http://strava.github.io/api/v3/gear/#show
getGear :: Client -> GearId -> IO (Result GearDetailed)
-- | http://strava.github.io/api/v3/kudos/
module Strive.Actions.Kudos
-- | http://strava.github.io/api/v3/kudos/#list
getActivityKudoers :: Client -> ActivityId -> GetActivityKudoersOptions -> IO (Result [AthleteSummary])
-- | http://strava.github.io/api/v3/photos/
module Strive.Actions.Photos
-- | http://strava.github.io/api/v3/photos/#list
getActivityPhotos :: Client -> ActivityId -> IO (Result [PhotoSummary])
-- | http://strava.github.io/api/v3/segments/
module Strive.Actions.Segments
-- | http://strava.github.io/api/v3/segments/#retrieve
getSegment :: Client -> SegmentId -> IO (Result SegmentDetailed)
-- | http://strava.github.io/api/v3/segments/#starred
getStarredSegments :: Client -> GetStarredSegmentsOptions -> IO (Result [SegmentSummary])
-- | http://strava.github.io/api/v3/segments/#efforts
getSegmentEfforts :: Client -> SegmentId -> GetSegmentEffortsOptions -> IO (Result [EffortDetailed])
-- | http://strava.github.io/api/v3/segments/#leaderboard
getSegmentLeaderboard :: Client -> SegmentId -> GetSegmentLeaderboardOptions -> IO (Result SegmentLeaderboardResponse)
-- | http://strava.github.io/api/v3/segments/#explore
exploreSegments :: Client -> (Latitude, Longitude, Latitude, Longitude) -> ExploreSegmentsOptions -> IO (Result SegmentExplorerResponse)
-- | http://strava.github.io/api/v3/streams/
module Strive.Actions.Streams
-- | http://strava.github.io/api/v3/streams/#activity
getActivityStreams :: Client -> StreamId -> [StreamType] -> GetStreamsOptions -> IO (Result [StreamDetailed])
-- | http://strava.github.io/api/v3/streams/#effort
getEffortStreams :: Client -> StreamId -> [StreamType] -> GetStreamsOptions -> IO (Result [StreamDetailed])
-- | http://strava.github.io/api/v3/streams/#segment
getSegmentStreams :: Client -> StreamId -> [StreamType] -> GetStreamsOptions -> IO (Result [StreamDetailed])
-- | http://strava.github.io/api/v3/uploads/
module Strive.Actions.Uploads
-- | http://strava.github.io/api/v3/uploads/#post-file
uploadActivity :: Client -> ByteString -> Extension -> UploadActivityOptions -> IO (Result UploadStatus)
-- | http://strava.github.io/api/v3/uploads/#get-status
getUpload :: Client -> UploadId -> IO (Result UploadStatus)
-- | Functions for performing actions against the API.
module Strive.Actions
-- | A Haskell client for the Strava V3 API.
module Strive