GitHub auth provider.

GitHub requires an OAuth 2.0 redirect, so you can either handle the redirectdirectly, or use the signInWithPopup handler:

example
// Using a redirect.firebase.auth().getRedirectResult().then(function(result){if (result.credential) {// This gives you a GitHub Access Token.var token = result.credential.accessToken;  }var user = result.user;}).catch(function(error){// Handle Errors here.var errorCode = error.code;var errorMessage = error.message;// The email of the user's account used.var email = error.email;// The firebase.auth.AuthCredential type that was used.var credential = error.credential;if (errorCode ==='auth/account-exists-with-different-credential') {    alert('You have signed up with a different provider for that email.');// Handle linking here if your app allows it.  }else {console.error(error);  }});// Start a sign in process for an unauthenticated user.var provider =new firebase.auth.GithubAuthProvider();provider.addScope('repo');firebase.auth().signInWithRedirect(provider);
example
// With popup.var provider =new firebase.auth.GithubAuthProvider(); provider.addScope('repo'); firebase.auth().signInWithPopup(provider).then(function(result){// This gives you a GitHub Access Token.var token = result.credential.accessToken;// The signed-in user info.var user = result.user; }).catch(function(error){// Handle Errors here.var errorCode = error.code;var errorMessage = error.message;// The email of the user's account used.var email = error.email;// The firebase.auth.AuthCredential type that was used.var credential = error.credential;if (errorCode ==='auth/account-exists-with-different-credential') {     alert('You have signed up with a different provider for that email.');// Handle linking here if your app allows it.   }else {console.error(error);   } });
see

firebase.auth.Auth.onAuthStateChanged to receive sign in statechanges.

Implements

Index

Properties

providerId

providerId:string

Implementation ofAuthProvider.providerId

Inherited fromGithubAuthProvider.providerId

Static GITHUB_SIGN_IN_METHOD

GITHUB_SIGN_IN_METHOD:string

This corresponds to the sign-in method identifier as returned infirebase.auth.Auth.fetchSignInMethodsForEmail.

Static PROVIDER_ID

PROVIDER_ID:string

Methods

addScope

setCustomParameters

  • setCustomParameters(customOAuthParametersObject):AuthProvider
  • Inherited fromGithubAuthProvider.setCustomParameters

    Sets the OAuth custom parameters to pass in a GitHub OAuth request for popupand redirect sign-in operations.Valid parameters include 'allow_signup'.For a detailed list, check theGitHub documentation.Reserved required OAuth 2.0 parameters such as 'client_id', 'redirect_uri','scope', 'response_type' and 'state' are not allowed and will be ignored.

    Parameters

    • customOAuthParameters:Object

      The custom OAuth parameters to passin the OAuth request.

    ReturnsAuthProvider

    The provider instance itself.

Static credential

  • credential(tokenstring):OAuthCredential
  • example
    var cred = firebase.auth.GithubAuthProvider.credential(// `event` from the Github auth.authResponseChange callback.    event.authResponse.accessToken);

    Parameters

    • token:string

      Github access token.

    ReturnsOAuthCredential

    The auth provider credential.

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2022-09-29 UTC.