![]() |
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) Salesforce OAuth2 Refresh Access TokenSee more OAuth2 ExamplesDemonstrates how to refresh a Salesforce Access Token.Note: Use Chilkat v10.1.2 or later for this example.
load ./chilkat.dll # This example requires 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 # saved by this example: Get SalesForce OAuth2 Access Token via Authorization Flow set jsonToken [new_CkJsonObject] set success [CkJsonObject_LoadFile $jsonToken "qa_data/tokens/_salesforce.json"] if {$success != 1} then { puts "Failed to load _salesforce.json" delete_CkJsonObject $jsonToken exit } # This is an example of a Salesforce OAuth2 access token to be refreshed: # { # "access_token": "00D41000....uLZBpT6", # "refresh_token": "5Aep....25xdGgkrV", # "signature": "cjTbSc5DvcKpaMoRTzuQTJLb1tcMw8LEO01flq4aMD4=", # "scope": "refresh_token id", # "instance_url": "https://d41000000f8a0eak-dev-ed.my.salesforce.com", # "id": "https://login.salesforce.com/id/00D41000000F8A0EAK/005410000....xAAE", # "token_type": "Bearer", # "issued_at": "1738348388166" # } set oauth2 [new_CkOAuth2] CkOAuth2_put_TokenEndpoint $oauth2 "https://login.salesforce.com/services/oauth2/token" # Replace this with your actual client ID (Consumer Key) CkOAuth2_put_ClientId $oauth2 "CLIENT_ID" # Note: The client secret is not required because we configured our Connected App # to not require it for the refresh flow. See the screenshot below. # Get the "refresh_token" CkOAuth2_put_RefreshToken $oauth2 [CkJsonObject_stringOf $jsonToken "refresh_token"] # Send the HTTP POST to refresh the access token.. set success [CkOAuth2_RefreshAccessToken $oauth2] if {$success != 1} then { puts [CkOAuth2_lastErrorText $oauth2] delete_CkJsonObject $jsonToken delete_CkOAuth2 $oauth2 exit } # 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. CkJsonObject_UpdateString $jsonToken "access_token" [CkOAuth2_accessToken $oauth2] # Save the new JSON access token response to a file. set sbJson [new_CkStringBuilder] CkJsonObject_put_EmitCompact $jsonToken 0 CkJsonObject_EmitSb $jsonToken $sbJson CkStringBuilder_WriteFile $sbJson "qa_data/tokens/_salesforce.json" "utf-8" 0 puts "OAuth2 authorization granted!" puts "New Access Token = [CkOAuth2_accessToken $oauth2]" # -------------------------------------------------------------------------- # Here's a screenshot of a Salesforce Connected App # which does not requires the secret for the authorization or refresh flow. # |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.