I checked this and used Github as an example, I was able to get the user's email address only if the user's email address was set for the public on github. Passing the user:email did not affect when the email address was configured as private. eg.
provider = new firebase.auth.GithubAuthProvider(); provider.addScope('user:email');
source share