Gọi API bằng HTTP, truyền khóa tài khoản qua header X-API-Key hoặc query api_key (kém an toàn hơn, chỉ nên dùng để thử nhanh).
https://ai.tozpie.net
/api/balanceTrả về số dư và thông tin tài khoản.
Phản hồi (200)
{
"success": true,
"balance": 100000,
"email": "[email protected]"
}
/api/productsLấy danh sách sản phẩm trên cửa hàng.
Phản hồi (200)
| Trường | Mô tả |
|---|---|
id |
ID sản phẩm (dùng cho product_id khi mua). |
name |
Tên hiển thị. |
price |
Giá VNĐ theo cấp tài khoản của bạn. |
in_stock |
true = còn mua được như trên web; false = hết hàng hoặc tạm khóa. |
{
"success": true,
"products": [
{ "id": 1, "name": "…", "price": 50000, "in_stock": true },
{ "id": 2, "name": "…", "price": 30000, "in_stock": false }
]
}
/api/buy-keyAPI mua hàng.
Header: Content-Type: application/json.
Body (JSON)
| Trường | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
product_id |
số | Có | ID sản phẩm (lấy từ /api/products). |
idempotency_key |
chuỗi | Không | 8–64 ký tự trong tập [a-zA-Z0-9_-]. Gửi lại cùng giá trị khi gọi lặp để không tạo đơn trùng và không trừ tiền hai lần. |
Xử lý có thể mất vài chục giây. Nếu client hết thời gian chờ, kiểm tra số dư hoặc lịch sử đơn trước khi gọi mua lại.
{
"product_id": 1,
"idempotency_key": "my-req-uuid-001"
}
Phản hồi thành công (200)
| Trường | Mô tả |
|---|---|
success |
true |
key |
Chuỗi key đã mua. |
order_id |
ID đơn hàng. |
{
"success": true,
"key": "KEY-…",
"order_id": 123
}
Lỗi (400, 401, 404, 429)
429 — quá nhiều yêu cầu: đọc header Retry-After (giây), chờ rồi thử lại.
{
"success": false,
"error": "Too many requests"
}
/api/purchase-historyLịch sử đơn đã mua
Bắt buộc start_date và end_date (Y-m-d, theo ngày trên hệ thống). Hai ngày cách nhau tối đa 7 ngày. limit tuỳ chọn, mặc định 50.
Query
| Tham số | Bắt buộc | Mô tả |
|---|---|---|
start_date |
Có | Ngày đầu (gồm cả ngày này). |
end_date |
Có | Ngày cuối (gồm cả ngày này), không trước start_date. |
limit |
Không | Số đơn tối đa (mặc định 50). |
Phản hồi (200)
{
"success": true,
"start_date": "2026-03-22",
"end_date": "2026-03-28",
"limit": 50,
"orders": [
{
"order_id": 123,
"product_id": 1,
"product_name": "…",
"key": "KEY-…",
"price": 50000,
"purchased_at": "2026-03-25 14:30:00"
}
]
}
curl -s -H "X-API-Key: YOUR_KEY" "https://ai.tozpie.net/api/balance"
curl -s -H "X-API-Key: YOUR_KEY" "https://ai.tozpie.net/api/products"
curl -s -X POST -H "X-API-Key: YOUR_KEY" -H "Content-Type: application/json" \
-d "{\"product_id\":1}" "https://ai.tozpie.net/api/buy-key"
curl -s -G -H "X-API-Key: YOUR_KEY" \
--data-urlencode "start_date=2026-03-22" \
--data-urlencode "end_date=2026-03-28" \
--data-urlencode "limit=50" \
"https://ai.tozpie.net/api/purchase-history"