![]()  | 
  
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
 
      (Tcl) Get Google API Access Token using P12 Service Account KeyDemonstrates how to get a Google API access token using a P12 service account key. 
 load ./chilkat.dll # 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. set pfx [new_CkPfx] set success [CkPfx_LoadPfxFile $pfx "qa_data/pfx/chilkat25-cbd7b42afbd8.p12" "notasecret"] if {$success != 1} then { puts [CkPfx_lastErrorText $pfx] delete_CkPfx $pfx exit } set gAuth [new_CkAuthGoogle] set success [CkAuthGoogle_SetP12 $gAuth $pfx] # The ISS is your service account email address ending in gserviceaccount.com. set iss "chilkatsvc@chilkat25.iam.gserviceaccount.com" # The scope is always the following string: set scope "https://mail.google.com/" # The sub is your company email address set oauth_sub "info@chilkat.xyz" # The access token is valid for this number of seconds. set numSec 3600 CkAuthGoogle_put_EmailAddress $gAuth $iss CkAuthGoogle_put_Scope $gAuth $scope CkAuthGoogle_put_ExpireNumSeconds $gAuth $numSec CkAuthGoogle_put_SubEmailAddress $gAuth $oauth_sub # Connect to www.googleapis.com set tlsSock [new_CkSocket] set success [CkSocket_Connect $tlsSock "www.googleapis.com" 443 1 5000] if {$success != 1} then { puts [CkSocket_lastErrorText $tlsSock] delete_CkPfx $pfx delete_CkAuthGoogle $gAuth delete_CkSocket $tlsSock exit } # Send the request to obtain the access token. set success [CkAuthGoogle_ObtainAccessToken $gAuth $tlsSock] if {$success != 1} then { puts [CkAuthGoogle_lastErrorText $gAuth] delete_CkPfx $pfx delete_CkAuthGoogle $gAuth delete_CkSocket $tlsSock exit } # Examine the access token: puts "Access Token: [CkAuthGoogle_accessToken $gAuth]" delete_CkPfx $pfx delete_CkAuthGoogle $gAuth delete_CkSocket $tlsSock  | 
  ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.