Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to get people info using google api in node js?

I want to verify user google id on server side.So i want user google info by using google api.I have gone through all documentation but i stuck.I have seen this code,its working fine:

var google = require('googleapis');
var plus = google.plus('v1');
var OAuth2 = google.auth.OAuth2;
var oauth2Client = new OAuth2(CLIENT_ID, CLIENT_SECRET, REDIRECT_URL);

// Retrieve tokens via token exchange explained above or set them:
oauth2Client.setCredentials({
  access_token: 'ACCESS TOKEN HERE',
  refresh_token: 'REFRESH TOKEN HERE'
});

plus.people.get({ userId: 'me', auth: oauth2Client }, function(err, response) {
  // handle err and response
});

but this is for google plus.I want to fetch user google profile with id not google plus info. Please help.

like image 227
Abhishek saini Avatar asked Nov 24 '25 17:11

Abhishek saini


1 Answers

For googleapis version 19.0.0, you're gonna have to do something like this:

const googleapis = require('googleapis');

googleapis.people('v1').people.get({
  resourceName: 'people/me',
  personFields: 'emailAddresses,names',
  auth: oauth2Client,
  (err, response) => {
    // do your thing
  }
});

The fields resourceName and personFields are the ones that you might get error for saying that these are mandatory. You can find details on these here https://developers.google.com/people/api/rest/v1/people/get.

As for the scopes, following should be enough for this code snippet: https://www.googleapis.com/auth/userinfo.email and https://www.googleapis.com/auth/userinfo.profile

like image 88
irtaza Avatar answered Nov 27 '25 13:11

irtaza



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!