-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Dropbox API client
--
-- A dropbox API client generated through servant generic.
@package dropbox
@version 0.0.4
-- | A dropbox client
module Dropbox
createClient :: IO (Dropbox (AsClientT IO))
-- | gives an adhoc client. This throws exceptions
cliRoutes :: ClientEnv -> Dropbox (AsClientT IO)
-- | To use the various endpoints make sure you have the right scope in
-- your app on dropbox:
-- https://www.dropbox.com/developers/apps/info/t282kls5wbrtofs#permissions
-- then regenerate your token (because it's attached to that)
data Dropbox route
Dropbox :: (route :- ("2" :> ("files" :> ("list_folder" :> (Auth '[Bearer] Token :> (ReqBody '[JSON] ListFolderRequest :> Post '[JSON] ListFolderResponse)))))) -> (route :- ("2" :> ("files" :> ("get_temporary_link" :> (Auth '[Bearer] Token :> (ReqBody '[JSON] LinkRequest :> Post '[JSON] LinkResponse)))))) -> (route :- ("oauth2" :> ("token" :> (ReqBody '[FormUrlEncoded] TokenBody :> Post '[JSON] TokenRequest)))) -> Dropbox route
-- |
-- https://www.dropbox.com/developers/documentation/http/documentation#files-list_folder
[_dropbox_list_folder] :: Dropbox route -> route :- ("2" :> ("files" :> ("list_folder" :> (Auth '[Bearer] Token :> (ReqBody '[JSON] ListFolderRequest :> Post '[JSON] ListFolderResponse)))))
-- |
-- https://www.dropbox.com/developers/documentation/http/documentation#files-get_temporary_link
[_dropbox_get_temporary_link] :: Dropbox route -> route :- ("2" :> ("files" :> ("get_temporary_link" :> (Auth '[Bearer] Token :> (ReqBody '[JSON] LinkRequest :> Post '[JSON] LinkResponse)))))
-- |
-- https://www.dropbox.com/developers/documentation/http/documentation#oauth2-token
[_dropbox_token] :: Dropbox route -> route :- ("oauth2" :> ("token" :> (ReqBody '[FormUrlEncoded] TokenBody :> Post '[JSON] TokenRequest)))
defListFolderRequest :: ListFolderRequest
data FileTag
File :: FileTag
Folder :: FileTag
data Entry
Entry :: FileTag -> Text -> Text -> Text -> Entry
[eTag] :: Entry -> FileTag
[eName] :: Entry -> Text
[ePathDisplay] :: Entry -> Text
[eId] :: Entry -> Text
newtype ListFolderResponse
ListFolderResponse :: [Entry] -> ListFolderResponse
[entries] :: ListFolderResponse -> [Entry]
data ListFolderRequest
path :: ListFolderRequest -> String
newtype LinkResponse
LinkResponse :: Text -> LinkResponse
[link] :: LinkResponse -> Text
newtype LinkRequest
LinkRequest :: String -> LinkRequest
[linkPath] :: LinkRequest -> String
data TokenRequest
TokenRequest :: Text -> Maybe Int -> Text -> Maybe Text -> Text -> Text -> Text -> TokenRequest
[trAccessToken] :: TokenRequest -> Text
[trExpiresIn] :: TokenRequest -> Maybe Int
[trTokenType] :: TokenRequest -> Text
[trRefreshToken] :: TokenRequest -> Maybe Text
[trScope] :: TokenRequest -> Text
[trAccountId] :: TokenRequest -> Text
[trUid] :: TokenRequest -> Text
data TokenBody
TokenBody :: Maybe Text -> Maybe Text -> Text -> Text -> Text -> Text -> TokenBody
[code] :: TokenBody -> Maybe Text
[refresh_token] :: TokenBody -> Maybe Text
[grant_type] :: TokenBody -> Text
[redirect_uri] :: TokenBody -> Text
[client_id] :: TokenBody -> Text
[client_secret] :: TokenBody -> Text
dropboxProxy :: Proxy (ToServant Dropbox AsApi)
instance GHC.Generics.Generic (Dropbox.Dropbox route)
instance Data.Aeson.Types.FromJSON.FromJSON Dropbox.LinkResponse
instance GHC.Show.Show Dropbox.LinkResponse
instance GHC.Generics.Generic Dropbox.LinkResponse
instance Web.Internal.FormUrlEncoded.ToForm Dropbox.TokenBody
instance GHC.Show.Show Dropbox.TokenBody
instance GHC.Generics.Generic Dropbox.TokenBody
instance GHC.Generics.Generic Dropbox.TokenRequest
instance GHC.Classes.Eq Dropbox.ListFolderResponse
instance GHC.Show.Show Dropbox.ListFolderResponse
instance Data.Aeson.Types.FromJSON.FromJSON Dropbox.ListFolderResponse
instance GHC.Generics.Generic Dropbox.ListFolderResponse
instance GHC.Classes.Eq Dropbox.Entry
instance GHC.Show.Show Dropbox.Entry
instance GHC.Generics.Generic Dropbox.Entry
instance GHC.Classes.Eq Dropbox.FileTag
instance GHC.Show.Show Dropbox.FileTag
instance Data.Aeson.Types.FromJSON.FromJSON Dropbox.FileTag
instance GHC.Generics.Generic Dropbox.FileTag
instance GHC.Generics.Generic Dropbox.LinkRequest
instance Data.Aeson.Types.ToJSON.ToJSON Dropbox.ListFolderRequest
instance GHC.Generics.Generic Dropbox.ListFolderRequest
instance Data.Aeson.Types.FromJSON.FromJSON Dropbox.TokenRequest
instance Data.Aeson.Types.FromJSON.FromJSON Dropbox.Entry
instance Data.Aeson.Types.ToJSON.ToJSON Dropbox.LinkRequest