':param  user_id: The email address (for service accounts) or Client ID
(for installed apps) to be used for authentication.
:type   user_id: ``str``
:param  key: The RSA Key (for service accounts) or file path containing
key or Client Secret (for installed apps) to be used for
authentication.
:type   key: ``str``
:param  scopes: A list of urls defining the scope of authentication
to grant.
:type   scopes: ``list``
:keyword  redirect_uri: The Redirect URI for the authentication
request.  See Google OAUTH2 documentation for
more info.
:type     redirect_uri: ``str``
:keyword  login_hint: Login hint for authentication request.  Useful
for Installed Application authentication.
:type     login_hint: ``str``'

def __init__(self, user_id, key=None, scopes=None, redirect_uri='urn:ietf:wg:oauth:2.0:oob', login_hint=None, **kwargs):

    scopes = (scopes or [])
    self.scopes = '    '.join(scopes)
    self.redirect_uri = redirect_uri
    self.login_hint = login_hint
    super(GoogleBaseAuthConnection, self).__init__(user_id, key, **kwargs)
