Ruby Requires Chilkat v11.0.0+
Ruby
TikTok Shop Get Authorized Shops
See more TikTok Shop Examples
An example showing how to get the authorized shops in the TikTok Shops API.Chilkat Ruby Downloads
require 'chilkat'
success = false
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
http = Chilkat::CkHttp.new()
# 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.new()
success = jsonToken.LoadFile("qa_data/tokens/tiktok-shops.json")
if (success != true)
print "Failed to load tiktok-shops.json" + "\n";
exit
end
queryParams = Chilkat::CkJsonObject.new()
queryParams.UpdateString("app_key","APP_KEY")
dt = Chilkat::CkDateTime.new()
queryParams.UpdateString("timestamp",dt.getAsUnixTimeStr(false))
queryParams.UpdateInt("version",202309)
# Sort the JSON members by member name, in ascending order (A-Z), case sensitive..
ascending = true
caseSensitive = true
queryParams.Sort(ascending,caseSensitive)
appSecret = "APP_SECRET"
path = "/authorization/202309/shops"
# Build the StringToSign
sb = Chilkat::CkStringBuilder.new()
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
end
sb.Append(appSecret)
crypt = Chilkat::CkCrypt2.new()
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 = Chilkat::CkHttpResponse.new()
success = http.HttpParams("GET","https://open-api.tiktokglobalshop.com/authorization/202309/shops",queryParams,resp)
if (success == false)
print http.lastErrorText() + "\n";
exit
end
json = Chilkat::CkJsonObject.new()
resp.GetBodyJson(json)
print resp.get_StatusCode().to_s() + "\n";
print resp.bodyStr() + "\n";
# Sample JSON response...
# Use this online tool to generate parsing code from sample JSON:
# Generate Parsing Code from JSON
# {
# "code": 0,
# "data": {
# "shops": [
# {
# "cipher": "GCP_XF90igAAAABh00qsWgtvOiGFNqyubMt3",
# "code": "CNGBCBA4LLU8",
# "id": "7000714532876273420",
# "name": "Maomao beauty shop",
# "region": "GB",
# "seller_type": "CROSS_BORDER"
# }
# ]
# },
# "message": "Success",
# "request_id": "202203070749000101890810281E8C70B7"
# }
code = json.IntOf("code")
message = json.stringOf("message")
request_id = json.stringOf("request_id")
i = 0
count_i = json.SizeOfArray("data.shops")
while i < count_i
json.put_I(i)
cipher = json.stringOf("data.shops[i].cipher")
code_str = json.stringOf("data.shops[i].code")
id = json.stringOf("data.shops[i].id")
name = json.stringOf("data.shops[i].name")
region = json.stringOf("data.shops[i].region")
seller_type = json.stringOf("data.shops[i].seller_type")
i = i + 1
end