-- | <http://strava.github.io/api/v3/kudos/>
module Strive.Actions.Kudos
  ( getActivityKudoers
  ) where

import Network.HTTP.Types (toQuery)
import Strive.Aliases (ActivityId, Result)
import Strive.Client (Client)
import Strive.Internal.HTTP (get)
import Strive.Options (GetActivityKudoersOptions)
import Strive.Types (AthleteSummary)

-- | <http://strava.github.io/api/v3/kudos/#list>
getActivityKudoers
  :: Client
  -> ActivityId
  -> GetActivityKudoersOptions
  -> IO (Result [AthleteSummary])
getActivityKudoers :: Client
-> ActivityId
-> GetActivityKudoersOptions
-> IO (Result [AthleteSummary])
getActivityKudoers Client
client ActivityId
activityId GetActivityKudoersOptions
options = forall q j.
(QueryLike q, FromJSON j) =>
Client -> String -> q -> IO (Result j)
get Client
client String
resource Query
query
 where
  resource :: String
resource = String
"api/v3/activities/" forall a. Semigroup a => a -> a -> a
<> forall a. Show a => a -> String
show ActivityId
activityId forall a. Semigroup a => a -> a -> a
<> String
"/kudos"
  query :: Query
query = forall a. QueryLike a => a -> Query
toQuery GetActivityKudoersOptions
options