Tài liệu API

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).

Đăng nhập để xem API key trên trang này.
Gốc URL
https://ai.tozpie.net
GET /api/balance

Trả về số dư và thông tin tài khoản.

Phản hồi (200)

{
  "success": true,
  "balance": 100000,
  "email": "[email protected]"
}
GET /api/products

Lấ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 }
  ]
}
POST /api/buy-key

API mua hàng.

Header: Content-Type: application/json.

Body (JSON)

Trường Kiểu Bắt buộc Mô tả
product_id số 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"
}
GET /api/purchase-history

Lịch sử đơn đã mua

Bắt buộc start_dateend_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 Ngày đầu (gồm cả ngày này).
end_date 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"
    }
  ]
}
Ví dụ (curl)
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"