Postman
Postman là một nền tảng API trực tuyến phổ biến và miễn phí để xây dựng và sử dụng API. Postman có thể được dùng để tăng tốc việc kiểm thử và tích hợp API cho các API của TikTok Shop.
Đối với yêu cầu API đầu tiên của bạn, chúng tôi đặc biệt khuyến nghị gọi Get Authorized Shops. Hướng dẫn từng bước sau đây giả định rằng bạn đang cố gắng gọi Get Authorized Shops.
📌 Lưu ý: Chúng tôi cũng cung cấp một file ZIP chứa cả một Postman collection và một bộ biến môi trường nếu bạn muốn bắt đầu nhanh nhất có thể. Hãy điền các biến môi trường (app key, app secret, auth token) và gọi GET Access Token để lấy access token API của bạn. Script chạy sau yêu cầu (post-request script) sẽ lưu giá trị này vào các biến của bạn để bạn có thể gọi các API tiếp theo. Nhấn vào đây để tải xuống.
Bước 1: Lấy access token
Phần ủy quyền này sẽ hướng dẫn bạn lấy access_token bằng Postman. Để biết thêm thông tin về access token và các tham số bắt buộc, hãy tham khảo hướng dẫn ủy quyền của chúng tôi.
- Mở một tab workbench mới và đặt phương thức yêu cầu thành GET. URL yêu cầu là:
PLAINTEXTWord Wrap
https://auth.tiktok-shops.com/api/v2/token/get
- Đặt các tham số sau:
- Nhấn Send bên cạnh URL yêu cầu. Nếu thành công, phản hồi sẽ tương tự như sau:
Bước 2: Thiết lập các tham số chung
Phần này sẽ hướng dẫn bạn thiết lập các tham số chung để gọi Get Authorized Shops.
- Mở một tab workbench mới và đặt phương thức yêu cầu thành GET. URL yêu cầu là:
PLAINTEXTWord Wrap
https://open-api.tiktokglobalshop.com/authorization/202309/shops
- Đặt các tham số sau:
❗ Quan trọng: Đảm bảo giá trị sign và timestamp được đặt đúng lần lượt thành {{sign}} và {{timestamp}}.
- Điều hướng đến phần Headers và thêm header sau:
📌 Lưu ý: Nếu bạn nhấn Send ngay bây giờ, bạn sẽ gặp thông báo lỗi "signature is invalid". Để khắc phục điều này, bạn phải tạo chữ ký yêu cầu (request signature). Hãy chuyển sang phần Bước 3: Chữ ký yêu cầu của hướng dẫn này để tìm hiểu cách tự động hóa quy trình này trong Postman.
Bước 3: Chữ ký yêu cầu
Việc gọi một API của TikTok Shop yêu cầu bạn ký yêu cầu của mình, và Postman cho phép chúng ta tự động hóa quy trình này. Để biết thêm thông tin về chữ ký yêu cầu API, hãy tham khảo Sign your API request.
Mở một tab workbench mới và điều hướng đến phần Pre-request Script, sao chép và dán script Go sau:
❗ Quan trọng: Đảm bảo bạn thay thế secret bằng app secret cụ thể của bạn.
GOWord Wrap
// Replace with your app secret
var secret = "7bf9fa93cd06a160c03f5789be285ac36df8701f"
function objKeySort(obj) {
var newKey = Object.keys(obj).sort()
var newObj = {}
for (var i = 0; i < newKey.length; i++) {
newObj[newKey[i]] = obj[newKey[i]]
}
return newObj
}
function getEnvVar(k) {
var v = pm.variables.get(k)
if (v != null) {
return v
}
v = pm.environment.get(k)
if (v != null) {
return v
}
v = pm.globals.get(k)
if (v != null) {
return v
}
return null
}
var ts = Date.parse(new Date()) / 1000
pm.variables.set("timestamp", ts)
calSign = function(secret) {
var ts = getEnvVar("timestamp")
var queryParam = pm.request.url.query.members
var param = {}
for (var item in queryParam) {
if (queryParam[item].key == "timestamp") {
v = ts
} else {
var v = queryParam[item].value
if (v == null || v == "{{" + queryParam[item].key + "}}") {
v = getEnvVar(queryParam[item].key)
}
}
param[queryParam[item].key] = interpolateVar(v)
}
delete param["sign"]
delete param["access_token"]
var sortedObj = objKeySort(param)
var signstring = secret + pm.request.url.getPath()
for (var key in sortedObj) {
signstring = signstring + key + sortedObj[key]
}
signstring = signstring + interpolateVar(pm.request.body.toString()) + secret
console.log(signstring)
sign = CryptoJS.HmacSHA256(signstring, secret).toString()
return sign
}
function interpolateVar (value) {
const {Property} = require('postman-collection')
return Property.replaceSubstitutions(value, pm.variables.toObject())
}
var sign = calSign(secret)
pm.variables.set("sign", sign)
Bước 4: Gọi Get Authorized Shops
Nếu bạn đã làm theo đúng tất cả các bước trước đó, bạn đã sẵn sàng để nhấn Send và gọi Get Authorized Shops. Nếu thành công, phản hồi sẽ tương tự như sau: