Authorization: Bearer <user_token> - Bắt buộc - Token xác thực userplay_id: ID của lượt chơi (từ API play-mini-game, số nguyên)curl -X POST \
"https://api.socdo.vn/mini-app/v1/spin-mini-game" \
-H "Authorization: Bearer YOUR_USER_TOKEN" \
-H "Content-Type: application/json" \
-d '{"play_id": 123}'
{
"success": true,
"message": "Chúc mừng! Bạn đã trúng voucher!",
"data": {
"log_id": 456,
"play_id": 123,
"user_id": 36851,
"mini_game_id": 2,
"result_type": "voucher",
"result": "VOUCHER944",
"played_at": "2025-11-15 14:35:00",
"voucher": {
"id": 944,
"code": "VOUCHER944",
"discount": 50000,
"max_discount": 0,
"type": "tru",
"scope": "all",
"condition_amount": 200000,
"description": "Giảm 50.000đ cho đơn hàng từ 200.000đ",
"min_price": 0,
"max_price": 0,
"start": 1763606400,
"expired": 1766174400,
"start_readable": "15/11/2025 09:00",
"expired_readable": "20/12/2025 09:00"
}
}
}
{
"success": true,
"message": "Chúc bạn may mắn lần sau!",
"data": {
"log_id": 457,
"play_id": 123,
"user_id": 36851,
"mini_game_id": 2,
"result_type": "try_again",
"result": "Thử lại",
"played_at": "2025-11-15 14:35:00"
}
}
| Trường | Loại | Mô tả |
|---|---|---|
log_id |
number | ID của log quay thưởng (từ bảng mini_game_log) |
play_id |
number | ID của lượt chơi đã sử dụng |
result_type |
string | Loại kết quả: "voucher" (trúng) hoặc "try_again" (thử lại) |
result |
string | Kết quả: mã voucher nếu trúng, hoặc "Thử lại" nếu không trúng |
voucher |
object | Thông tin chi tiết voucher (chỉ có khi result_type = "voucher") |
400 {"success": false, "message": "Thiếu play_id hoặc giá trị không hợp lệ"}
401 {"success": false, "message": "Thiếu user token. Cần Authorization header với Bearer token"}
401 {"success": false, "message": "User token không hợp lệ hoặc đã hết hạn"}
404 {"success": false, "message": "Không tìm thấy lượt chơi hoặc lượt chơi đã được sử dụng", "play_id": 123}
500 {"success": false, "message": "Mini game chưa cấu hình tỷ lệ trúng thưởng"}
500 {"success": false, "message": "Lỗi khi lưu kết quả quay thưởng"}
used = 1 trong bảng mini_game_playmini_game_log với kết quả quaycoupon và trả về trong responseAPI sử dụng thuật toán cumulative probability:
Ví dụ: ty_le_trung = {"0": "30", "944": "14.0", "943": "14.0"}