![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Perl) Get Google API Access Token using P12 Service Account KeyDemonstrates how to get a Google API access token using a P12 service account key.
use chilkat(); # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. # -------------------------------------------------------------------------------- # For a step-by-step guide for setting up your Google Workspace service account, # see Setup Google Workspace Account for Sending SMTP GMail from a Service Account # -------------------------------------------------------------------------------- # First load the PKCS12 (.p12 / .pfx) into a PFX object. $pfx = chilkat::CkPfx->new(); $success = $pfx->LoadPfxFile("qa_data/pfx/chilkat25-cbd7b42afbd8.p12","notasecret"); if ($success != 1) { print $pfx->lastErrorText() . "\r\n"; exit; } $gAuth = chilkat::CkAuthGoogle->new(); $success = $gAuth->SetP12($pfx); # The ISS is your service account email address ending in gserviceaccount.com. $iss = 'chilkatsvc@chilkat25.iam.gserviceaccount.com'; # The scope is always the following string: $scope = "https://mail.google.com/"; # The sub is your company email address $oauth_sub = 'info@chilkat.xyz'; # The access token is valid for this number of seconds. $numSec = 3600; $gAuth->put_EmailAddress($iss); $gAuth->put_Scope($scope); $gAuth->put_ExpireNumSeconds($numSec); $gAuth->put_SubEmailAddress($oauth_sub); # Connect to www.googleapis.com $tlsSock = chilkat::CkSocket->new(); $success = $tlsSock->Connect("www.googleapis.com",443,1,5000); if ($success != 1) { print $tlsSock->lastErrorText() . "\r\n"; exit; } # Send the request to obtain the access token. $success = $gAuth->ObtainAccessToken($tlsSock); if ($success != 1) { print $gAuth->lastErrorText() . "\r\n"; exit; } # Examine the access token: print "Access Token: " . $gAuth->accessToken() . "\r\n"; |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.