Evite ‘credenciais inválidas’ com o Google OAuth2

Eu estava lutando para configurar a autorização OAuth2 para o Google e o problema era exatamente o que scopeeu estava solicitando.

Solicitei https://www.googleapis.com/auth/calendarpara acessar a API do Google Agenda em nome do usuário, mas estava recebendo

"reason": "authError",
"message": "Invalid Credentials"

Acontece que você também precisa solicitar o https://www.googleapis.com/auth/userinfo.emailescopo, bem como os escopos de seu interesse. O Google retorna o e-mail no hash de credenciais e, portanto, acredito, se você não solicitou acesso a ele, não poderá lê-lo.