Sample code for 30+ languages & platforms
PowerShell

Google OAuth2 v3 userinfo (https://www.googleapis.com/oauth2/v3/userinfo)

See more Google APIs Examples

Demonstrates how to get the Google OAuth2 v3 userinfo.

Important: Make sure the OAuth2 access token included "profile" in the list of scopes.

Chilkat PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$success = $false

# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

# It is assumed we previously obtained an OAuth2 access token.
# This example loads the JSON access token file 
# originally obtained by this example: Get Google People API OAuth2 Access Token
# or refreshed by this example: Refresh Google People API OAuth2 Access Token

$jsonToken = New-Object Chilkat.JsonObject
$success = $jsonToken.LoadFile("qa_data/tokens/googlePeople.json")
if ($success -ne $true) {
    $("Failed to load googleContacts.json")
    exit
}

$http = New-Object Chilkat.Http

# -------------------------------------------------------------------------------------
# Make sure the access token was obtained with "profile" included in the list of scopes.
# -------------------------------------------------------------------------------------
$http.AuthToken = $jsonToken.StringOf("access_token")

$sbResponseBody = New-Object Chilkat.StringBuilder
$success = $http.QuickGetSb("https://www.googleapis.com/oauth2/v3/userinfo",$sbResponseBody)
if ($success -eq $false) {
    $($http.LastErrorText)
    $($sbResponseBody.GetAsString())
    exit
}

# Sample JSON Response

$json = New-Object Chilkat.JsonObject
$json.EmitCompact = $false
$json.Load($sbResponseBody.GetAsString())
$($json.Emit())

# Sample response:

# {
#   "sub": "119999690625687999964",
#   "name": "Matt",
#   "given_name": "Matt",
#   "picture": "https://lh3.googleusercontent.com/-b4...eg3Zjo/AAAAAAAAAAI/AAAAAAAAAAA/AMZuu....3RpdA/s96-c/photo.jpg",
#   "locale": "en"
# }
#