Dự kiến · giai đoạn 2

License API

Tích hợp kích hoạt key vào phần mềm hoặc website của bạn. Mỗi sản phẩm có API key riêng; license được gắn với mã phần cứng (HWID, cho ứng dụng desktop) hoặc tên miền (cho ứng dụng web).

Endpoint

POST
/api/v1/licenses/activate

Gắn key với thiết bị (HWID) hoặc tên miền ở lần dùng đầu tiên. Bắt đầu tính thời hạn license.

POST
/api/v1/licenses/validate

Kiểm tra key mỗi lần mở ứng dụng. Trả về trạng thái, ngày hết hạn và gói.

POST
/api/v1/licenses/reset-hwid

Gỡ liên kết thiết bị để dùng key trên máy mới (cần key Reset HWID).

Yêu cầu

POST /api/v1/licenses/validate
Authorization: Bearer <PRODUCT_API_KEY>
Content-Type: application/json

{
  "key": "ARCS-7K2QM-PX9RT-4HVNA-ZD3WE",
  "hwid": "b4f1c9…e02",          // device fingerprint, or "domain" for websites
  "version": "1.4.2"
}

Phản hồi

200 OK
{
  "valid": true,
  "status": "active",              // active | expired | banned | hwid_mismatch
  "product": "arc-studio",
  "plan": "1 Month Key",
  "expiresAt": "2026-11-22T13:05:00Z",
  "signature": "ed25519:…"         // verify offline with the public key
}

Ví dụ phía client

// Node / Electron example
const res = await fetch("https://your-shop.com/api/v1/licenses/validate", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: `Bearer ${PRODUCT_API_KEY}` },
  body: JSON.stringify({ key, hwid: await getHwid(), version: app.getVersion() }),
});
const lic = await res.json();
if (!lic.valid) showActivationScreen(lic.status);