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
(Perl) Get Ebay OAuth2 Token using Client Credentials Grant FlowSee more eBay ExamplesDemonstrates how to get a Ebay OAuth2 access token using the client credentials grant flow. There are two ways of "minting" an OAuth2 access token.
For more information, see https://developer.ebay.com/api-docs/static/oauth-client-credentials-grant.html
use chilkat(); # This example assumes the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. $http = chilkat::CkHttp->new(); # Implements the following CURL command: # curl -X POST 'https://api.sandbox.ebay.com/identity/v1/oauth2/token' \ # -H 'Content-Type: application/x-www-form-urlencoded' \ # -H 'Authorization: Basic UkVTVFRlc3...wZi1hOGZhLTI4MmY=' \ # -d 'grant_type=client_credentials&scope=https%3A%2F%2Fapi.ebay.com%2Foauth%2Fapi_scope' # Use the following online tool to generate HTTP code from a CURL command # Convert a cURL Command to HTTP Source Code $req = chilkat::CkHttpRequest->new(); $req->put_HttpVerb("POST"); $req->put_Path("/identity/v1/oauth2/token"); $req->put_ContentType("application/x-www-form-urlencoded"); $req->AddParam("grant_type","client_credentials"); # The scope query param indicates the access to be provided by the token. # Multiple scopes can be specified by separating each with a SPACE char. # See the Ebay OAuth scopes documentation $scope = "https://api.ebay.com/oauth/api_scope https://api.ebay.com/oauth/api_scope/buy.order.readonly https://api.ebay.com/oauth/api_scope/buy.guest.order https://api.ebay.com/oauth/api_scope/sell.marketing.readonly https://api.ebay.com/oauth/api_scope/sell.marketing https://api.ebay.com/oauth/api_scope/sell.inventory.readonly https://api.ebay.com/oauth/api_scope/sell.inventory https://api.ebay.com/oauth/api_scope/sell.account.readonly https://api.ebay.com/oauth/api_scope/sell.account https://api.ebay.com/oauth/api_scope/sell.fulfillment.readonly https://api.ebay.com/oauth/api_scope/sell.fulfillment https://api.ebay.com/oauth/api_scope/sell.analytics.readonly https://api.ebay.com/oauth/api_scope/sell.marketplace.insights.readonly https://api.ebay.com/oauth/api_scope/commerce.catalog.readonly https://api.ebay.com/oauth/api_scope/buy.shopping.cart https://api.ebay.com/oauth/api_scope/buy.offer.auction"; $req->AddParam("scope",$scope); # Setting these properties causes the Authorization: Basic UkVTVFRlc3...wZi1hOGZhLTI4MmY= # header to be added. $http->put_Login("EBAY_CLIENT_ID"); $http->put_Password("EBAY_CLIENT_SECRET"); $http->put_BasicAuth(1); # resp is a HttpResponse $resp = $http->PostUrlEncoded("https://api.sandbox.ebay.com/identity/v1/oauth2/token",$req); if ($http->get_LastMethodSuccess() == 0) { print $http->lastErrorText() . "\r\n"; exit; } $sbResponseBody = chilkat::CkStringBuilder->new(); $resp->GetBodySb($sbResponseBody); $jResp = chilkat::CkJsonObject->new(); $jResp->LoadSb($sbResponseBody); $jResp->put_EmitCompact(0); print "Response Body:" . "\r\n"; print $jResp->emit() . "\r\n"; $respStatusCode = $resp->get_StatusCode(); print "Response Status Code = " . $respStatusCode . "\r\n"; if ($respStatusCode >= 400) { print "Response Header:" . "\r\n"; print $resp->header() . "\r\n"; print "Failed." . "\r\n"; exit; } # Sample JSON response: # (Sample code for parsing the JSON response is shown below) # { # "access_token": "v^1.1#i^1#p^1#r^0#I^3#f^0#t^H4s ... wu67e3xAhskz4DAAA", # "expires_in": 7200, # "token_type": "Application Access Token" # } # Sample code for parsing the JSON response... # Use the following online tool to generate parsing code from sample JSON: # Generate Parsing Code from JSON $access_token = $jResp->stringOf("access_token"); $expires_in = $jResp->IntOf("expires_in"); $token_type = $jResp->stringOf("token_type"); |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.