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
(CkPython) TikTok Shop Get CategoriesSee more TikTok Shop ExamplesAn example showing how to use a TikTok Shops access token in an API call. IMPORTANT: This example requires a pre-release for the next version of Chilkat after the current v9.5.0.99 release. Contact info@chilkatsoft.com if you wish to get a pre-release. However, pre-releases of .NET Core (hosted on NuGet) and Node.js will not be possible.
import sys import chilkat # This example assumes the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. http = chilkat.CkHttp() # It is assumed we previously obtained an OAuth2 access token. # This example loads the JSON access token file # saved by this example: Get TikTok Shop OAuth2 Access Token # or refrehsed by this example: Get TikTok Shop Refresh OAuth2 Access Token jsonToken = chilkat.CkJsonObject() success = jsonToken.LoadFile("qa_data/tokens/tiktok-shops.json") if (success != True): print("Failed to load tiktok-shops.json") sys.exit() # Replace values in all caps with your specific values. # SHOP_CIPHER and SHOP_ID are returned from this example: Get Authorized Shops queryParams = chilkat.CkJsonObject() queryParams.UpdateString("app_key","APP_KEY") queryParams.UpdateString("shop_cipher","SHOP_CIPHER") queryParams.UpdateString("shop_id","SHOP_ID") dt = chilkat.CkDateTime() queryParams.UpdateString("timestamp",dt.getAsUnixTimeStr(False)) queryParams.UpdateInt("version",202309) # Sort the JSON members by member name, in ascending order (A-Z), case sensitive.. # Note: The Sort method is added in Chilkat v9.5.0.100 ascending = True caseSensitive = True queryParams.Sort(ascending,caseSensitive) appSecret = "APP_SECRET" path = "/product/202309/categories" # Build the StringToSign sb = chilkat.CkStringBuilder() sb.Append(appSecret) sb.Append(path) numParams = queryParams.get_Size() i = 0 while i < numParams : sb.Append(queryParams.nameAt(i)) sb.Append(queryParams.stringAt(i)) i = i + 1 sb.Append(appSecret) crypt = chilkat.CkCrypt2() crypt.put_HashAlgorithm("SHA256") crypt.put_MacAlgorithm("HMAC") crypt.put_EncodingMode("hex_lower") crypt.SetMacKeyString(appSecret) sig = crypt.macStringENC(sb.getAsString()) queryParams.UpdateString("access_token",jsonToken.stringOf("data.access_token")) queryParams.UpdateString("sign",sig) http.SetRequestHeader("x-tts-access-token",jsonToken.stringOf("data.access_token")) http.SetRequestHeader("content-type","application/json") # resp is a CkHttpResponse resp = http.QuickRequestParams("GET","https://open-api.tiktokglobalshop.com/product/202309/categories",queryParams) if (http.get_LastMethodSuccess() == False): print(http.lastErrorText()) sys.exit() json = chilkat.CkJsonObject() resp.GetBodyJson(json) print(str(resp.get_StatusCode())) code = json.IntOf("code") message = json.stringOf("message") request_id = json.stringOf("request_id") i = 0 count_i = json.SizeOfArray("data.categories") while i < count_i : json.put_I(i) id = json.stringOf("data.categories[i].id") is_leaf = json.BoolOf("data.categories[i].is_leaf") local_name = json.stringOf("data.categories[i].local_name") print("local_name: " + local_name) parent_id = json.stringOf("data.categories[i].parent_id") j = 0 count_j = json.SizeOfArray("data.categories[i].permission_statuses") while j < count_j : json.put_J(j) strVal = json.stringOf("data.categories[i].permission_statuses[j]") j = j + 1 i = i + 1 |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.