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
(PowerShell) 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.
Add-Type -Path "C:\chilkat\ChilkatDotNet47-9.5.0-x64\ChilkatDotNet47.dll" # This example assumes the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. $http = New-Object Chilkat.Http # 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 = New-Object Chilkat.JsonObject $success = $jsonToken.LoadFile("qa_data/tokens/tiktok-shops.json") if ($success -ne $true) { $("Failed to load tiktok-shops.json") exit } # Replace values in all caps with your specific values. # SHOP_CIPHER and SHOP_ID are returned from this example: Get Authorized Shops $queryParams = New-Object Chilkat.JsonObject $queryParams.UpdateString("app_key","APP_KEY") $queryParams.UpdateString("shop_cipher","SHOP_CIPHER") $queryParams.UpdateString("shop_id","SHOP_ID") $dt = New-Object 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 = New-Object Chilkat.StringBuilder $sb.Append($appSecret) $sb.Append($path) $numParams = $queryParams.Size $i = 0 while ($i -lt $numParams) { $sb.Append($queryParams.NameAt($i)) $sb.Append($queryParams.StringAt($i)) $i = $i + 1 } $sb.Append($appSecret) $crypt = New-Object Chilkat.Crypt2 $crypt.HashAlgorithm = "SHA256" $crypt.MacAlgorithm = "HMAC" $crypt.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 = $http.QuickRequestParams("GET","https://open-api.tiktokglobalshop.com/product/202309/categories",$queryParams) if ($http.LastMethodSuccess -eq $false) { $($http.LastErrorText) exit } $json = New-Object Chilkat.JsonObject $resp.GetBodyJson($json) $($resp.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 -lt $count_i) { $json.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") $("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 -lt $count_j) { $json.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.