Visitar URL original
No refresh_token in response of getToken · Issue #750 · googleapis/google-api-nodejs-client · GitHub
Skip to content

No refresh_token in response of getToken #750

Closed

Description

@mathieug

I don't receive refresh_token in the response of getToken().

Here is how I generate the auth url:

oauth2Client.generateAuthUrl({
  access_type: 'offline',
  scope: 'https://www.googleapis.com/auth/cloudprint'
});

Thanks!

Activity

  1. katpas commented on May 28, 2017

    @katpas

    @mathieug I've been working on a similar part of our code today. It looks like you only get a refresh_token in the response on the first authorisation.

    Assuming you're using one of your own google accounts to test this, go to - https://myaccount.google.com/permissions and revoke the permissions your app has to your personal google account.

    Then try to run the auth again from your project, you should see a refresh_token in the response if that was the issue!

    EDIT: Here's a stack overflow question on the same topic - https://stackoverflow.com/questions/10827920/not-receiving-google-oauth-refresh-token#comment56214632_10857806

  2. mathieug commented on May 28, 2017

    @mathieug
    Author

    Exactly, it's what I figured out few days ago. Thank you @katpas.
    I close this issue even if sometimes the refresh_token appears again.

  3. erickoledadevrel commented on Feb 27, 2018

    @erickoledadevrel
    Contributor

    To be more precise, you only get a refresh_token back when the user saw the consent screen, AKA the list of scopes and the "Accept" button. Users will see this screen the first time they are asked to grant access, but upon subsequent trips through the OAuth flow that screen is skipped (assuming they haven't revoked access). However, you can force the user to see the consent screen again by passing &prompt=consent in the authorization URL:

    var url = oauth2Client.generateAuthUrl({
      access_type: 'offline',
      scope: scopes,
      prompt: 'consent'
    });
    

    More details about this option can be found in the auth library.

  4. theblindprophet commented on Mar 1, 2018

    @theblindprophet

    It needs to be noted access_type: 'offline' needs to be present on the url request for the refresh token to be given. https://stackoverflow.com/questions/10827920/not-receiving-google-oauth-refresh-token

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions