The google documentation HERE clearly says that
You should not request userinfo.profile or plus.me in combination with [https://www.googleapis.com/au
I also got into difficulty getting the profile and e-mail address. Finally I found that I can use these scopes to get everything:
'https://www.googleapis.com/auth/plus.login', 'email', 'profile'
Works on me this way
scope = https://www.googleapis.com/auth/userinfo.profile email
between userinfo.profile and email has space in it
You need userinfo.email to get the email address, but you should be able to request that without also requesting userinfo.profile. plus.login should give you access to the "GET /plus/v1/people/{userid}" call which should return the following fields/objects (at a minimum):
I have achieved multi-scoping using following scope param.
scope = https://www.googleapis.com/auth/userinfo.email+profile
Seems like Google is a little vague in its documentation. They say the scope 'plus.login' contains the displayName and email, however, after running several tests with different Google accounts (plain Gmail, Google+, Google Apps) this seems to be false.
If the user doesn't have a Google+ profile, 'plus.login' will NOT contain displayName. This also seems to happen to Google Apps accounts. So, to cover all possible Google Account status, the safe bet is to request for:
They say the last 2 are deprecated, however, some accounts will not return all basic information if you don't use them. I don't know if this is related to the "age" of the Google account or just a bug on Google's end.