gogol-oauth2-0.4.0: Google OAuth2 SDK.

Copyright(c) 2015-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.Google.OAuth2

Contents

Description

Obtains end-user authorization grants for use with other Google APIs.

See: Google OAuth2 API Reference

Synopsis

Service Configuration

oAuth2Service :: ServiceConfig Source #

Default request referring to version v2 of the Google OAuth2 API. This contains the host and root path used as a starting point for constructing service requests.

OAuth Scopes

userInfoProFileScope :: Proxy '["https://www.googleapis.com/auth/userinfo.profile"] Source #

View your basic profile info

plusLoginScope :: Proxy '["https://www.googleapis.com/auth/plus.login"] Source #

Know the list of people in your circles, your age range, and language

userInfoEmailScope :: Proxy '["https://www.googleapis.com/auth/userinfo.email"] Source #

View your email address

plusMeScope :: Proxy '["https://www.googleapis.com/auth/plus.me"] Source #

Know who you are on Google

API Declaration

type OAuth2API = UserInfoV2MeGetResource :<|> (UserInfoGetResource :<|> (GetCertForOpenIdConnectMethod :<|> TokenInfoMethod)) Source #

Represents the entirety of the methods and resources available for the Google OAuth2 API service.

Methods

oauth2.getCertForOpenIdConnect

oauth2.tokeninfo

Resources

oauth2.userinfo.get

oauth2.userinfo.v2.me.get

Types

TokenInfo

data TokenInfo Source #

Instances
Eq TokenInfo Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Data TokenInfo Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TokenInfo -> c TokenInfo #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TokenInfo #

toConstr :: TokenInfo -> Constr #

dataTypeOf :: TokenInfo -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TokenInfo) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TokenInfo) #

gmapT :: (forall b. Data b => b -> b) -> TokenInfo -> TokenInfo #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TokenInfo -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TokenInfo -> r #

gmapQ :: (forall d. Data d => d -> u) -> TokenInfo -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> TokenInfo -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> TokenInfo -> m TokenInfo #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TokenInfo -> m TokenInfo #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TokenInfo -> m TokenInfo #

Show TokenInfo Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Generic TokenInfo Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Associated Types

type Rep TokenInfo :: Type -> Type #

ToJSON TokenInfo Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

FromJSON TokenInfo Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

type Rep TokenInfo Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

tokenInfo :: TokenInfo Source #

Creates a value of TokenInfo with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

tiAudience :: Lens' TokenInfo (Maybe Text) Source #

Who is the intended audience for this token. In general the same as issued_to.

tiEmail :: Lens' TokenInfo (Maybe Text) Source #

The email address of the user. Present only if the email scope is present in the request.

tiExpiresIn :: Lens' TokenInfo (Maybe Int32) Source #

The expiry time of the token, as number of seconds left until expiry.

tiAccessType :: Lens' TokenInfo (Maybe Text) Source #

The access type granted with this token. It can be offline or online.

tiScope :: Lens' TokenInfo (Maybe Text) Source #

The space separated list of scopes granted to this token.

tiVerifiedEmail :: Lens' TokenInfo (Maybe Bool) Source #

Boolean flag which is true if the email address is verified. Present only if the email scope is present in the request.

tiUserId :: Lens' TokenInfo (Maybe Text) Source #

The obfuscated user id.

tiTokenHandle :: Lens' TokenInfo (Maybe Text) Source #

The token handle associated with this token.

tiIssuedTo :: Lens' TokenInfo (Maybe Text) Source #

To whom was the token issued to. In general the same as audience.

JWK

data JWK Source #

Instances
Eq JWK Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Methods

(==) :: JWK -> JWK -> Bool #

(/=) :: JWK -> JWK -> Bool #

Data JWK Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JWK -> c JWK #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JWK #

toConstr :: JWK -> Constr #

dataTypeOf :: JWK -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JWK) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JWK) #

gmapT :: (forall b. Data b => b -> b) -> JWK -> JWK #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JWK -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JWK -> r #

gmapQ :: (forall d. Data d => d -> u) -> JWK -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> JWK -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JWK -> m JWK #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JWK -> m JWK #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JWK -> m JWK #

Show JWK Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Methods

showsPrec :: Int -> JWK -> ShowS #

show :: JWK -> String #

showList :: [JWK] -> ShowS #

Generic JWK Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Associated Types

type Rep JWK :: Type -> Type #

Methods

from :: JWK -> Rep JWK x #

to :: Rep JWK x -> JWK #

ToJSON JWK Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

FromJSON JWK Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

type Rep JWK Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

type Rep JWK = D1 (MetaData "JWK" "Network.Google.OAuth2.Types.Product" "gogol-oauth2-0.4.0-S6BIeg93lU9Ut3r7VdeWX" True) (C1 (MetaCons "JWK'" PrefixI True) (S1 (MetaSel (Just "_jKeys") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe [JWKKeysItem]))))

jwk :: JWK Source #

Creates a value of JWK with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

JWKKeysItem

data JWKKeysItem Source #

Instances
Eq JWKKeysItem Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Data JWKKeysItem Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JWKKeysItem -> c JWKKeysItem #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JWKKeysItem #

toConstr :: JWKKeysItem -> Constr #

dataTypeOf :: JWKKeysItem -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JWKKeysItem) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JWKKeysItem) #

gmapT :: (forall b. Data b => b -> b) -> JWKKeysItem -> JWKKeysItem #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JWKKeysItem -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JWKKeysItem -> r #

gmapQ :: (forall d. Data d => d -> u) -> JWKKeysItem -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> JWKKeysItem -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JWKKeysItem -> m JWKKeysItem #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JWKKeysItem -> m JWKKeysItem #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JWKKeysItem -> m JWKKeysItem #

Show JWKKeysItem Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Generic JWKKeysItem Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Associated Types

type Rep JWKKeysItem :: Type -> Type #

ToJSON JWKKeysItem Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

FromJSON JWKKeysItem Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

type Rep JWKKeysItem Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

jwkKeysItem :: JWKKeysItem Source #

Creates a value of JWKKeysItem with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

UserInfoplus

data UserInfoplus Source #

Instances
Eq UserInfoplus Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Data UserInfoplus Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UserInfoplus -> c UserInfoplus #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UserInfoplus #

toConstr :: UserInfoplus -> Constr #

dataTypeOf :: UserInfoplus -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c UserInfoplus) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UserInfoplus) #

gmapT :: (forall b. Data b => b -> b) -> UserInfoplus -> UserInfoplus #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UserInfoplus -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UserInfoplus -> r #

gmapQ :: (forall d. Data d => d -> u) -> UserInfoplus -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> UserInfoplus -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> UserInfoplus -> m UserInfoplus #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UserInfoplus -> m UserInfoplus #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UserInfoplus -> m UserInfoplus #

Show UserInfoplus Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Generic UserInfoplus Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

Associated Types

type Rep UserInfoplus :: Type -> Type #

ToJSON UserInfoplus Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

FromJSON UserInfoplus Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

type Rep UserInfoplus Source # 
Instance details

Defined in Network.Google.OAuth2.Types.Product

userInfoplus :: UserInfoplus Source #

Creates a value of UserInfoplus with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

uiHd :: Lens' UserInfoplus (Maybe Text) Source #

The hosted domain e.g. example.com if the user is Google apps user.

uiEmail :: Lens' UserInfoplus (Maybe Text) Source #

The user's email address.

uiLink :: Lens' UserInfoplus (Maybe Text) Source #

URL of the profile page.

uiLocale :: Lens' UserInfoplus (Maybe Text) Source #

The user's preferred locale.

uiGivenName :: Lens' UserInfoplus (Maybe Text) Source #

The user's first name.

uiFamilyName :: Lens' UserInfoplus (Maybe Text) Source #

The user's last name.

uiPicture :: Lens' UserInfoplus (Maybe Text) Source #

URL of the user's picture image.

uiGender :: Lens' UserInfoplus (Maybe Text) Source #

The user's gender.

uiName :: Lens' UserInfoplus (Maybe Text) Source #

The user's full name.

uiVerifiedEmail :: Lens' UserInfoplus Bool Source #

Boolean flag which is true if the email address is verified. Always verified because we only return the user's primary email address.

uiId :: Lens' UserInfoplus (Maybe Text) Source #

The obfuscated ID of the user.