![]() |
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
(Go) 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.
Note: This example requires Chilkat v11.0.0 or greater. For more information, see https://developer.ebay.com/api-docs/static/oauth-client-credentials-grant.html
success := false // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. http := Http_Ref.html">chilkat.NewHttp() // 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 := HttpRequest_Ref.html">chilkat.NewHttpRequest() req.SetHttpVerb("POST") req.SetPath("/identity/v1/oauth2/token") req.SetContentType("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.SetLogin("EBAY_CLIENT_ID") http.SetPassword("EBAY_CLIENT_SECRET") http.SetBasicAuth(true) resp := HttpResponse_Ref.html">chilkat.NewHttpResponse() success = http.HttpReq("https://api.sandbox.ebay.com/identity/v1/oauth2/token",req,resp) if success == false { fmt.Println(http.LastErrorText()) http.DisposeHttp() req.DisposeHttpRequest() resp.DisposeHttpResponse() return } sbResponseBody := StringBuilder_Ref.html">chilkat.NewStringBuilder() resp.GetBodySb(sbResponseBody) jResp := JsonObject_Ref.html">chilkat.NewJsonObject() jResp.LoadSb(sbResponseBody) jResp.SetEmitCompact(false) fmt.Println("Response Body:") fmt.Println(*jResp.Emit()) respStatusCode := resp.StatusCode() fmt.Println("Response Status Code = ", respStatusCode) if respStatusCode >= 400 { fmt.Println("Response Header:") fmt.Println(resp.Header()) fmt.Println("Failed.") http.DisposeHttp() req.DisposeHttpRequest() resp.DisposeHttpResponse() sbResponseBody.DisposeStringBuilder() jResp.DisposeJsonObject() return } // 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") http.DisposeHttp() req.DisposeHttpRequest() resp.DisposeHttpResponse() sbResponseBody.DisposeStringBuilder() jResp.DisposeJsonObject() |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.