hoauth2-0.5.6.0: Haskell OAuth2 authentication client

Safe HaskellNone
LanguageHaskell2010

Network.OAuth.OAuth2.Internal

Contents

Description

A simple OAuth2 Haskell binding. (This is supposed to be independent of the http client used.)

Synopsis

Data Types

data AccessToken Source #

The gained Access Token. Use Data.Aeson.decode to decode string to AccessToken. The refreshToken is special in some cases, e.g. https://developers.google.com/accounts/docs/OAuth2

Types Synonym

type OAuth2Result a = Either ByteString a Source #

Is either Left containing an error or Right containg a result

type QueryParams = [(ByteString, ByteString)] Source #

type synonym of query parameters

type PostBody = [(ByteString, ByteString)] Source #

type synonym of post body content

type URI = ByteString Source #

type synonym of a URI

URLs

authorizationUrl :: OAuth2 -> URI Source #

Prepare the authorization URL. Redirect to this URL asking for user interactive authentication.

accessTokenUrl Source #

Arguments

:: OAuth2 
-> ByteString

access code gained via authorization URL

-> (URI, PostBody)

access token request URL plus the request body.

Prepare the URL and the request body query for fetching an access token.

accessTokenUrl' Source #

Arguments

:: OAuth2 
-> ByteString

access code gained via authorization URL

-> Maybe ByteString

Grant Type

-> (URI, PostBody)

access token request URL plus the request body.

Prepare the URL and the request body query for fetching an access token, with optional grant type.

refreshAccessTokenUrl Source #

Arguments

:: OAuth2 
-> ByteString

refresh token gained via authorization URL

-> (URI, PostBody)

refresh token request URL plus the request body.

Using a Refresh Token. Obtain a new access token by sending a refresh token to the Authorization server.

UTILs

appendQueryParam :: URI -> QueryParams -> URI Source #

Append query parameters using `"?"` or `"&"`.

appendAccessToken Source #

Arguments

:: URI

Base URI

-> AccessToken

Authorized Access Token

-> URI

Combined Result

For GET method API.

accessTokenToParam :: AccessToken -> QueryParams Source #

Create QueryParams with given access token value.

transform' :: [(a, Maybe b)] -> [(a, b)] Source #

Lift value in the Maybe and abandon Nothing.