Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Unicode C) Refresh eBay Application Access TokenThis example shows how to get a new eBay REST API access token when the original is close to expiration. Note: This example requires Chilkat v9.5.0.80 or greater. (This example was written on 21-August-2019, before v9.5.0.80 was released. If Contact Chilkat for a pre-release if the current Chilkat version is not yet at 9.5.0.80 or greater.)
#include <C_CkJsonObjectW.h> #include <C_CkOAuth2W.h> void ChilkatSample(void) { HCkJsonObjectW json; BOOL success; HCkOAuth2W oauth2; // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // The previously fetched eBay access token looks like this: // { // "access_token": "v^1.1#i^1# ... HwSAAA=", // "expires_in": 7200, // "refresh_token": "v^1.1#i^1# ... FXjEyODQ=", // "refresh_token_expires_in": 47304000, // "token_type": "User Access Token" // } json = CkJsonObjectW_Create(); success = CkJsonObjectW_LoadFile(json,L"qa_data/tokens/ebay-access-token.json"); if (success == FALSE) { wprintf(L"Failed to load the existing ebay access token JSON.\n"); CkJsonObjectW_Dispose(json); return; } oauth2 = CkOAuth2W_Create(); CkOAuth2W_putTokenEndpoint(oauth2,L"https://api.sandbox.ebay.com/identity/v1/oauth2/token"); // Replace these with actual values. CkOAuth2W_putClientId(oauth2,L"EBAY_CLIENT_ID"); CkOAuth2W_putClientSecret(oauth2,L"EBAY_CLIENT_SECRET"); // Get the "refresh_token" CkOAuth2W_putRefreshToken(oauth2,CkJsonObjectW_stringOf(json,L"refresh_token")); // Send the HTTP POST to refresh the access token.. success = CkOAuth2W_RefreshAccessToken(oauth2); if (success != TRUE) { wprintf(L"%s\n",CkOAuth2W_lastErrorText(oauth2)); CkJsonObjectW_Dispose(json); CkOAuth2W_Dispose(oauth2); return; } // Load the access token response into the JSON object CkJsonObjectW_Load(json,CkOAuth2W_accessTokenResponse(oauth2)); // 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. CkJsonObjectW_putEmitCompact(json,FALSE); CkJsonObjectW_WriteFile(json,L"qa_data/tokens/ebay-access-token.json"); wprintf(L"OAuth2 authorization granted!\n"); wprintf(L"New Access Token = %s\n",CkOAuth2W_accessToken(oauth2)); CkJsonObjectW_Dispose(json); CkOAuth2W_Dispose(oauth2); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.