![]()  | 
  
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
 
      (AutoIt) Refresh Schwab OAuth2 Access TokenSee more Schwab ExamplesDemonstrates how to refresh a Schwab OAuth2 access token.
 Local $bSuccess = False ; This example requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. ; See Get Schwab OAuth2 Access Token ; for sample code showing how to obtain a Schwab access token for desktop apps. ; This example assumes we previously obtained an OAuth2 access token for Schwab. $oJsonToken = ObjCreate("Chilkat.JsonObject") $bSuccess = $oJsonToken.LoadFile("qa_data/tokens/schwab-access-token.json") If ($bSuccess <> True) Then ConsoleWrite("Failed to load schwab-access-token.json" & @CRLF) Exit EndIf ; The access token JSON looks something like this: ; { ; "expires_in": 3600, ; "x_refresh_token_expires_in": 8726400, ; "refresh_token": "L011546037639r ... 3vR2DrbOmg0Sdagw", ; "access_token": "eyJlbmMiOiJBMTI4Q0 ... oETJEMbeggg", ; "token_type": "bearer" ; } $oOauth2 = ObjCreate("Chilkat.OAuth2") $oOauth2.TokenEndpoint = "https://api.schwabapi.com/v1/oauth/token" ; Replace these with actual values. $oOauth2.ClientId = "APP_KEY" $oOauth2.ClientSecret = "APP_SECRET" $oOauth2.UseBasicAuth = True ; Get the "refresh_token" $oOauth2.RefreshToken = $oJsonToken.StringOf("refresh_token") ; Send the HTTP POST to refresh the access token.. $bSuccess = $oOauth2.RefreshAccessToken() If ($bSuccess = False) Then ConsoleWrite($oOauth2.LastErrorText & @CRLF) Exit EndIf ; The response contains a new access token, but we must keep ; our existing refresh token for when we need to refresh again in the future. $oJsonToken.UpdateString("access_token",$oOauth2.AccessToken) ; Save the new JSON access token response to a file. ; The access + refresh tokens contained in this JSON will be needed for the next refresh. $oSbJson = ObjCreate("Chilkat.StringBuilder") $oJsonToken.EmitCompact = False $oJsonToken.EmitSb($oSbJson) $oSbJson.WriteFile("qa_data/tokens/schwab-access-token.json","utf-8",False) ConsoleWrite("OAuth2 token refreshed!" & @CRLF) ConsoleWrite("New Access Token = " & $oOauth2.AccessToken & @CRLF)  | 
  ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.