資料模型
各端點共用的資料結構。
Username
型別:string
玩家帳號,1–32 個字元(英數字與 _ . @ -);不分大小寫(Alice 與 alice 是同一位玩家)。
格式:^[A-Za-z0-9_.@-]{1,32}$
TxnId
型別:string
你的轉帳單號,1–64 個字元(英數字與 _ . : -),作為冪等鍵。請在你的整個租戶內保持唯一(不要在不同玩家之間重複使用)。
格式:^[A-Za-z0-9_.:-]{1,64}$
Amount
型別:string
玩家金額,十進位字串,最多 4 位小數;回應會去掉小數尾端的 0(例如 "100"、"0.95"、"1000.5")。
格式:^-?\d{1,15}(\.\d{1,4})?$
PositiveAmount
型別:string
大於 0 的金額,十進位字串,最多 4 位小數,例如 "1000"、"99.5"。請用字串,不要用浮點數。
格式:^\d{1,15}(\.\d{1,4})?$
UsdAmount
型別:string
USD 金額,十進位字串,最多 6 位小數(內部以百萬分之一美元累計)。
格式:^-?\d{1,12}(\.\d{1,6})?$
Currency
型別:string
幣別代碼(3–5 個英文字母,不分大小寫,例如 TWD、USD、USDT)。
格式:^[A-Za-z]{3,5}$
Lang
型別:string
遊戲語系:CHT 繁中、CHS 簡中、ENG 英文、JPN 日文、KOR 韓文、THAI 泰文、VIET 越南文、HIND 印地文、PHP 菲律賓文(不分大小寫)。
可能的值:CHT、CHS、ENG、JPN、KOR、THAI、VIET、HIND、PHP
Date
型別:string
日期 YYYY-MM-DD。
格式:^\d{4}-\d{2}-\d{2}$
DateTime
型別:string (date-time)
UTC 時間,ISO-8601 含毫秒。
Cursor
型別:string
注單同步游標(yyyymm.序號)。請視為不透明字串,原樣保存與帶回。
格式:^\d{6}\.\d+$
RoundId
型別:string
局 ID(26 字元大寫 ULID)。
格式:^[0-9A-Z]{26}$
TableId
型別:string
桌號,例如 S01(見 GET /tables)。
長度:1–…
Game
型別:string
遊戲:baccarat 百家樂、dragontiger 龍虎、holdem 德州撲克、niuniu 牛牛。
可能的值:baccarat、dragontiger、holdem、niuniu
Variant
型別:string
玩法:百家樂 classic(傳統,莊贏抽 5%)、nocomm(免佣,莊 6 點贏賠一半、有超級六);龍虎的玩法以桌檯的 variants 為準;德州撲克 casino(玩家對荷官,Casino Hold'em)、thbp(玩家對荷官,Texas Hold'em Bonus Poker)、nlhe(玩家對玩家,無限注);牛牛 standard。
LimitProfileId
型別:integer | null
限紅方案 ID:你在 Console「限紅方案」建立的方案,或平台範本;幣別必須與玩家相同,否則回 INVALID_PARAMETER。null 改回預設。限紅方案依遊戲區分,只套用在同一種遊戲的桌,其他遊戲的桌使用預設方案。
範圍:1–…
PlayerStatus
型別:string
active 正常;locked 鎖定(不能進入遊戲);no_bet 禁止下注(可進入觀看)。
可能的值:active、locked、no_bet
ErrorCode
型別:string
錯誤碼,完整說明見〈錯誤碼〉。
可能的值:UNAUTHORIZED、IP_NOT_ALLOWED、TENANT_SUSPENDED、RATE_LIMITED、PAYLOAD_TOO_LARGE、INVALID_JSON、NOT_FOUND、INTERNAL_ERROR、INVALID_PARAMETER、INVALID_USERNAME、INVALID_CURRENCY、CURRENCY_NOT_ENABLED、INVALID_AMOUNT、INVALID_CURSOR、CURRENCY_MISMATCH、PLAYER_NOT_FOUND、PLAYER_LOCKED、PLAYER_LIMIT、TXN_CONFLICT、INSUFFICIENT_BALANCE、TXN_NOT_FOUND、ROUND_NOT_FOUND、QUOTA_EXCEEDED、ACCOUNT_LOCKED
LaunchRequest
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
username | string | 是 | 玩家帳號,1–32 個字元(英數字與 _ . @ -);不分大小寫(Alice 與 alice 是同一位玩家)。格式: ^[A-Za-z0-9_.@-]{1,32}$ |
nickname | string | 否 | 暱稱(選填)。只在建立玩家時使用。 |
currency | string | 否 | 幣別(選填),只在建立玩家時使用;預設為你的租戶幣別。 格式: ^[A-Za-z]{3,5}$ |
lang | string | 否 | 遊戲語系(選填);預設為你在 Console 設定的第一個語系,未設定時為 CHT。可能的值: CHT、CHS、ENG、JPN、KOR、THAI、VIET、HIND、PHP |
device | string | 否 | mobile 開啟手機版,其他值一律為桌機版 pc。可能的值: pc、mobile預設: pc |
table | string | 否 | 直接進入這張桌(選填);不帶時進入大廳。桌必須是你已啟用的桌。 長度:1–… |
variant | string | 否 | 偏好的百家樂玩法(選填,classic/nocomm)。目前版本只保存,玩家仍在桌內自行選擇。 |
lobbyUrl | string (uri) | 否 | 你的網站網址(選填,http 或 https)。目前版本的「回到網站」按鈕使用 Console「品牌與登入 → 返回大廳網址」的設定;這個參數會保存,供之後的版本逐次覆寫。 格式: ^https?:// |
limitProfileId | integer | null | 否 | 限紅方案 ID:你在 Console「限紅方案」建立的方案,或平台範本;幣別必須與玩家相同,否則回 INVALID_PARAMETER。null 改回預設。限紅方案依遊戲區分,只套用在同一種遊戲的桌,其他遊戲的桌使用預設方案。範圍:1–… |
LaunchResult
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
url | string (uri) | 是 | 一次性遊戲網址(https://<主機>/Launch?t=…),60 秒內有效、只能開啟一次。 |
expiresIn | integer | 是 | 網址有效秒數。 固定為: 60 |
UsernameRequest
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
username | string | 是 | 玩家帳號,1–32 個字元(英數字與 _ . @ -);不分大小寫(Alice 與 alice 是同一位玩家)。格式: ^[A-Za-z0-9_.@-]{1,32}$ |
LogoutResult
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
kicked | boolean | 是 | 一律為 true。 |
Player
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
username | string | 是 | 玩家帳號(保留第一次建立時的大小寫)。 |
nickname | string | null | 是 | 暱稱。 |
status | string | 是 | active 正常;locked 鎖定(不能進入遊戲);no_bet 禁止下注(可進入觀看)。可能的值: active、locked、no_bet |
currency | string | 是 | 幣別。 |
balance | string | 是 | 目前可用餘額。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
online | boolean | 是 | 目前是否在遊戲中(大廳或桌內)。 |
createdAt | string (date-time) | 是 | UTC 時間,ISO-8601 含毫秒。 |
lastLoginAt | string (date-time) | null | 是 | 最近一次進入遊戲的時間。 |
PlayerUpdateRequest
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
username | string | 是 | 玩家帳號,1–32 個字元(英數字與 _ . @ -);不分大小寫(Alice 與 alice 是同一位玩家)。格式: ^[A-Za-z0-9_.@-]{1,32}$ |
status | string | 否 | active 正常;locked 鎖定(不能進入遊戲);no_bet 禁止下注(可進入觀看)。可能的值: active、locked、no_bet |
nickname | string | null | 否 | 新暱稱;null 或空字串清除。 |
limitProfileId | integer | null | 否 | 限紅方案 ID:你在 Console「限紅方案」建立的方案,或平台範本;幣別必須與玩家相同,否則回 INVALID_PARAMETER。null 改回預設。限紅方案依遊戲區分,只套用在同一種遊戲的桌,其他遊戲的桌使用預設方案。範圍:1–… |
password | string | 否 | 公用登入(/Login)用的密碼,6–64 個字元。長度:6–64 |
TransferRequest
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
username | string | 是 | 玩家帳號,1–32 個字元(英數字與 _ . @ -);不分大小寫(Alice 與 alice 是同一位玩家)。格式: ^[A-Za-z0-9_.@-]{1,32}$ |
txnId | string | 是 | 你的轉帳單號,1–64 個字元(英數字與 _ . : -),作為冪等鍵。請在你的整個租戶內保持唯一(不要在不同玩家之間重複使用)。格式: ^[A-Za-z0-9_.:-]{1,64}$ |
amount | string | 是 | 大於 0 的金額,十進位字串,最多 4 位小數,例如 "1000"、"99.5"。請用字串,不要用浮點數。格式: ^\d{1,15}(\.\d{1,4})?$ |
currency | string | 是 | 必須等於玩家的幣別。 格式: ^[A-Za-z]{3,5}$ |
TransferResult
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
txnId | string | 是 | 請求的 txnId。 |
status | string | 是 | 一律為 done(單階段,沒有處理中狀態)。 |
balance | string | 是 | 這筆轉帳完成當下的餘額;重送同一個 txnId 時回傳第一次的值。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
duplicate | boolean | 是 | true 表示這個 txnId 先前已處理過:這次沒有再動到餘額,回應是第一次的結果。 |
TransferRecord
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
txnId | string | 是 | 轉帳單號。 |
username | string | 是 | 玩家帳號。 |
dir | string | 是 | in 轉入、out 轉出、adjust Console 人工上下分。可能的值: in、out、adjust |
amount | string | 是 | 金額(正數)。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
status | string | 是 | 一律為 done。 |
balance | string | null | 是 | 這筆轉帳完成後的餘額。 |
at | string (date-time) | 是 | UTC 時間,ISO-8601 含毫秒。 |
Balance
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
balance | string | 是 | 玩家金額,十進位字串,最多 4 位小數;回應會去掉小數尾端的 0(例如 "100"、"0.95"、"1000.5")。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
currency | string | 是 | 幣別。 |
Zone
型別:string
投注區。百家樂:B 莊、P 閒、T 和、BP 莊對、PP 閒對、S6 超級六(免佣)。龍虎:D 龍、TG 虎、T 和、ST 同花和;大小單雙(您在 Console 桌檯設定開啟的桌才有):DB 龍大、DS 龍小、DO 龍單、DE 龍雙、TB 虎大、TS 虎小、TO 虎單、TE 虎雙。德州撲克:玩家對荷官 Casino Hold'em ANTE 底注、CALL 跟注(2 倍底注)、AAB AA 邊注;玩家對荷官 Texas Hold'em Bonus ANTE 底注、FLOP 翻牌注(2 倍底注)、TURN 轉牌注(1 倍底注)、RIVER 河牌注(1 倍底注)、BONUS 紅利注;玩家對玩家 POT(這手投入底池的合計,return 為沒被跟注退回的部分)。牛牛(都是押那一家閒贏莊):P1E 閒一平倍、P1D 閒一翻倍、P2E 閒二平倍、P2D 閒二翻倍、P3E 閒三平倍、P3D 閒三翻倍。
可能的值:B、P、T、BP、PP、S6、D、TG、ST、DB、DS、DO、DE、TB、TS、TO、TE、ANTE、CALL、AAB、FLOP、TURN、RIVER、BONUS、POT、P1E、P1D、P2E、P2D、P3E、P3D
BetLeg
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
zone | string | 是 | 投注區。百家樂:B 莊、P 閒、T 和、BP 莊對、PP 閒對、S6 超級六(免佣)。龍虎:D 龍、TG 虎、T 和、ST 同花和;大小單雙(您在 Console 桌檯設定開啟的桌才有):DB 龍大、DS 龍小、DO 龍單、DE 龍雙、TB 虎大、TS 虎小、TO 虎單、TE 虎雙。德州撲克:玩家對荷官 Casino Hold'em ANTE 底注、CALL 跟注(2 倍底注)、AAB AA 邊注;玩家對荷官 Texas Hold'em Bonus ANTE 底注、FLOP 翻牌注(2 倍底注)、TURN 轉牌注(1 倍底注)、RIVER 河牌注(1 倍底注)、BONUS 紅利注;玩家對玩家 POT(這手投入底池的合計,return 為沒被跟注退回的部分)。牛牛(都是押那一家閒贏莊):P1E 閒一平倍、P1D 閒一翻倍、P2E 閒二平倍、P2D 閒二翻倍、P3E 閒三平倍、P3D 閒三翻倍。可能的值: B、P、T、BP、PP、S6、D、TG、ST、DB、DS、DO、DE、TB、TS、TO、TE、ANTE、CALL、AAB、FLOP、TURN、RIVER、BONUS、POT、P1E、P1D、P2E、P2D、P3E、P3D |
amount | string | 是 | 本金。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
return | string | 是 | 退回金額(本金+淨贏;和局退回本金;輸為 0)。牛牛翻倍格另含退回的預扣。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
hold | string | 否 | 只有牛牛翻倍格(P1D、P2D、P3D):這一格下注時另外預扣的金額(預設為本金 × 2),沒用到的部分已含在 return。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
mult | integer | 否 | 只有牛牛翻倍格:實際套用的倍數。閒贏為閒家牌型的倍數、閒輸為莊家牌型的倍數(預設 無牛~牛6 ×1、牛7~牛9 ×2、牛牛 ×3);退款為 0。範圍:0–10 |
NiuniuHands
型別:對應表<string, integer>
牛牛各家的牌型代碼,鍵 B 莊、P1~P3 閒一~閒三;值 0 無牛、1–9 牛幾、10 牛牛、11 五花牛、12 炸彈、13 五小牛(11–13 只在開啟特殊牌型的桌出現)。結果不完整時只有已知的家。
鍵:B、P1、P2、P3
NiuniuWinners
型別:對應表<string, string>
牛牛每一家閒對莊的輸贏:P 閒贏、B 莊贏(沒有和局)。
鍵:P1、P2、P3
ResultCode
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
code | string | 是 | 結果碼(一個十六進位字元,格式見〈桌檯與局結果〉);作廢且沒有結果時為空字串。德州撲克為這位玩家這手的結果:玩家對荷官 player_wins、dealer_wins、tie、dealer_not_qualified(只有 Casino Hold'em)、fold;玩家對玩家 win、split、lose、fold;作廢 void。牛牛為 5 個字元 [勝負][莊][閒一][閒二][閒三]:第一個字元是閒家贏的位元(閒一 1、閒二 2、閒三 4 相加,0–7),之後是各家的牌型(0–9、A 牛牛、B 五花牛、C 炸彈、D 五小牛、- 不知道),例如 5893A。 |
cardInfo | string | 是 | 牌面字串(百家樂 12 字元、龍虎 4 字元,格式見〈桌檯與局結果〉);沒有結果時為空字串。德州撲克為 公牌|這位玩家的兩張底牌|荷官的兩張(空白分隔的牌面代碼,荷官只有玩家對荷官桌才有),例如 AS KD 7H 7C 2S|AH 7D|QS 3C。牛牛為 頭牌|莊|閒一|閒二|閒三(每家 5 張依 1–5 的順序,空白分隔),例如 7H|KS QD 10C 3S 5H|4C 6D JS 9C KH|2D 8S QC AH 2C|7D 3H KD 5C 5D。 |
hands | 對應表<string, integer> | 否 | 只有牛牛:各家的牌型代碼(B、P1、P2、P3 → 0–13),不必自己解結果碼。作廢(status: void)的注單沒有這個欄位。鍵: B、P1、P2、P3 |
winners | 對應表<string, string> | 否 | 只有牛牛:每一家閒對莊的輸贏(P1、P2、P3 → P 閒贏、B 莊贏)。作廢(status: void)的注單沒有這個欄位。鍵: P1、P2、P3 |
BetRecord
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
recSeq | integer | 是 | 寫入序號(同一個 UTC 月份內遞增)。 |
slipId | string | 是 | 注單 ID:一位玩家在一局的所有下注為一張注單。重算與作廢沿用同一個 slipId。 |
rev | integer | 是 | 版次。同一 slipId 以最大的 rev 為準。範圍:1–… |
status | string | 是 | settled 首次結算;recalculated 結果修正後重算;void 作廢(全額退回本金;牛牛連同預扣)。可能的值: settled、recalculated、void |
username | string | 是 | 玩家帳號。 |
currency | string | 是 | 幣別。 |
tableId | string | 是 | 桌號,例如 S01(見 GET /tables)。長度:1–… |
game | string | 是 | 遊戲:baccarat 百家樂、dragontiger 龍虎、holdem 德州撲克、niuniu 牛牛。可能的值: baccarat、dragontiger、holdem、niuniu |
variant | string | 是 | 玩法:百家樂 classic(傳統,莊贏抽 5%)、nocomm(免佣,莊 6 點贏賠一半、有超級六);龍虎的玩法以桌檯的 variants 為準;德州撲克 casino(玩家對荷官,Casino Hold'em)、thbp(玩家對荷官,Texas Hold'em Bonus Poker)、nlhe(玩家對玩家,無限注);牛牛 standard。 |
roundId | string | 是 | 局 ID;德州撲克為這一手的 ID(handId)。 格式: ^[0-9A-Z]{26}$ |
shoe | string | 是 | 靴號;德州撲克沒有靴,為空字串;牛牛每局一副新牌,這裡是場次(預設每 60 局換一場)。 |
round | integer | 是 | 本靴第幾局;德州撲克為這張桌的第幾手;牛牛為本場次第幾局。 |
bets | BetLeg[] | 是 | 各投注區的本金與退回。 |
bets[].zone | string | 是 | 投注區。百家樂:B 莊、P 閒、T 和、BP 莊對、PP 閒對、S6 超級六(免佣)。龍虎:D 龍、TG 虎、T 和、ST 同花和;大小單雙(您在 Console 桌檯設定開啟的桌才有):DB 龍大、DS 龍小、DO 龍單、DE 龍雙、TB 虎大、TS 虎小、TO 虎單、TE 虎雙。德州撲克:玩家對荷官 Casino Hold'em ANTE 底注、CALL 跟注(2 倍底注)、AAB AA 邊注;玩家對荷官 Texas Hold'em Bonus ANTE 底注、FLOP 翻牌注(2 倍底注)、TURN 轉牌注(1 倍底注)、RIVER 河牌注(1 倍底注)、BONUS 紅利注;玩家對玩家 POT(這手投入底池的合計,return 為沒被跟注退回的部分)。牛牛(都是押那一家閒贏莊):P1E 閒一平倍、P1D 閒一翻倍、P2E 閒二平倍、P2D 閒二翻倍、P3E 閒三平倍、P3D 閒三翻倍。可能的值: B、P、T、BP、PP、S6、D、TG、ST、DB、DS、DO、DE、TB、TS、TO、TE、ANTE、CALL、AAB、FLOP、TURN、RIVER、BONUS、POT、P1E、P1D、P2E、P2D、P3E、P3D |
bets[].amount | string | 是 | 本金。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].return | string | 是 | 退回金額(本金+淨贏;和局退回本金;輸為 0)。牛牛翻倍格另含退回的預扣。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].hold | string | 否 | 只有牛牛翻倍格(P1D、P2D、P3D):這一格下注時另外預扣的金額(預設為本金 × 2),沒用到的部分已含在 return。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].mult | integer | 否 | 只有牛牛翻倍格:實際套用的倍數。閒贏為閒家牌型的倍數、閒輸為莊家牌型的倍數(預設 無牛~牛6 ×1、牛7~牛9 ×2、牛牛 ×3);退款為 0。範圍:0–10 |
stake | string | 是 | 本金合計(牛牛不含預扣)。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
hold | string | 否 | 只有牛牛:翻倍的預扣合計(各翻倍格的 bets[].hold 相加;沒有押翻倍時為 0)。翻倍可能輸超過本金(預設最多本金的 3 倍),所以下注時除了本金,另外從餘額預扣這筆金額,結算時把沒用到的部分連同派彩一起退回(含在 payout)。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
validStake | string | 是 | 有效投注(莊閒對押、和局等依規則扣除)。牛牛:平倍為本金、翻倍為本金 × 實際倍數(bets[].mult),退款的格子不算。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
rolling | string | 是 | 洗碼量(輸掉的注,超級六不計)。牛牛為輸掉的金額(翻倍輸的是本金 × 莊家牌型的倍數)。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
payout | string | 是 | 派彩合計(含本金);牛牛另含退回的預扣。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
winLoss | string | 是 | 玩家輸贏 = payout − stake(正數玩家贏);牛牛為 payout − stake − hold。對帳請一律用這個欄位。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
delta | string | 是 | 這一版對玩家餘額的入帳差額:首次結算為 payout;重算為新舊派彩差(可為負);作廢為本金(牛牛再加預扣)減去先前的派彩。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
result | ResultCode | 是 | |
result.code | string | 是 | 結果碼(一個十六進位字元,格式見〈桌檯與局結果〉);作廢且沒有結果時為空字串。德州撲克為這位玩家這手的結果:玩家對荷官 player_wins、dealer_wins、tie、dealer_not_qualified(只有 Casino Hold'em)、fold;玩家對玩家 win、split、lose、fold;作廢 void。牛牛為 5 個字元 [勝負][莊][閒一][閒二][閒三]:第一個字元是閒家贏的位元(閒一 1、閒二 2、閒三 4 相加,0–7),之後是各家的牌型(0–9、A 牛牛、B 五花牛、C 炸彈、D 五小牛、- 不知道),例如 5893A。 |
result.cardInfo | string | 是 | 牌面字串(百家樂 12 字元、龍虎 4 字元,格式見〈桌檯與局結果〉);沒有結果時為空字串。德州撲克為 公牌|這位玩家的兩張底牌|荷官的兩張(空白分隔的牌面代碼,荷官只有玩家對荷官桌才有),例如 AS KD 7H 7C 2S|AH 7D|QS 3C。牛牛為 頭牌|莊|閒一|閒二|閒三(每家 5 張依 1–5 的順序,空白分隔),例如 7H|KS QD 10C 3S 5H|4C 6D JS 9C KH|2D 8S QC AH 2C|7D 3H KD 5C 5D。 |
result.hands | 對應表<string, integer> | 否 | 只有牛牛:各家的牌型代碼(B、P1、P2、P3 → 0–13),不必自己解結果碼。作廢(status: void)的注單沒有這個欄位。鍵: B、P1、P2、P3 |
result.winners | 對應表<string, string> | 否 | 只有牛牛:每一家閒對莊的輸贏(P1、P2、P3 → P 閒贏、B 莊贏)。作廢(status: void)的注單沒有這個欄位。鍵: P1、P2、P3 |
rake | string | 否 | 只有德州撲克:這手歸這位玩家的抽水(玩家對玩家桌;玩家對荷官桌為 0)。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
onsite | boolean | 否 | 只有德州撲克:現場座位(開桌商戶的現場客人,荷官在平板登記、不走錢包;username 為「現場 |
hand | object | 否 | 只有德州撲克:這一手的結果摘要(完整手牌紀錄在 Console「德州撲克紀錄」)。 |
hand.handId | string | 是 | 這一手的 ID(同 roundId)。 |
hand.no | integer | 是 | 這張桌的第幾手(同 round)。 |
hand.outcome | string | 是 | 這位玩家的結果(同 result.code)。 |
hand.cards | string | 是 | 公牌與這位玩家亮出的牌(同 result.cardInfo)。 |
placedAt | string (date-time) | 是 | UTC 時間,ISO-8601 含毫秒。 |
settledAt | string (date-time) | 是 | 這一版的結算(或重算、作廢)時間。 |
BetPage
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
items | BetRecord[] | 是 | |
items[].recSeq | integer | 是 | 寫入序號(同一個 UTC 月份內遞增)。 |
items[].slipId | string | 是 | 注單 ID:一位玩家在一局的所有下注為一張注單。重算與作廢沿用同一個 slipId。 |
items[].rev | integer | 是 | 版次。同一 slipId 以最大的 rev 為準。範圍:1–… |
items[].status | string | 是 | settled 首次結算;recalculated 結果修正後重算;void 作廢(全額退回本金;牛牛連同預扣)。可能的值: settled、recalculated、void |
items[].username | string | 是 | 玩家帳號。 |
items[].currency | string | 是 | 幣別。 |
items[].tableId | string | 是 | 桌號,例如 S01(見 GET /tables)。長度:1–… |
items[].game | string | 是 | 遊戲:baccarat 百家樂、dragontiger 龍虎、holdem 德州撲克、niuniu 牛牛。可能的值: baccarat、dragontiger、holdem、niuniu |
items[].variant | string | 是 | 玩法:百家樂 classic(傳統,莊贏抽 5%)、nocomm(免佣,莊 6 點贏賠一半、有超級六);龍虎的玩法以桌檯的 variants 為準;德州撲克 casino(玩家對荷官,Casino Hold'em)、thbp(玩家對荷官,Texas Hold'em Bonus Poker)、nlhe(玩家對玩家,無限注);牛牛 standard。 |
items[].roundId | string | 是 | 局 ID;德州撲克為這一手的 ID(handId)。 格式: ^[0-9A-Z]{26}$ |
items[].shoe | string | 是 | 靴號;德州撲克沒有靴,為空字串;牛牛每局一副新牌,這裡是場次(預設每 60 局換一場)。 |
items[].round | integer | 是 | 本靴第幾局;德州撲克為這張桌的第幾手;牛牛為本場次第幾局。 |
items[].bets | BetLeg[] | 是 | 各投注區的本金與退回。 |
items[].bets[].zone | string | 是 | 投注區。百家樂:B 莊、P 閒、T 和、BP 莊對、PP 閒對、S6 超級六(免佣)。龍虎:D 龍、TG 虎、T 和、ST 同花和;大小單雙(您在 Console 桌檯設定開啟的桌才有):DB 龍大、DS 龍小、DO 龍單、DE 龍雙、TB 虎大、TS 虎小、TO 虎單、TE 虎雙。德州撲克:玩家對荷官 Casino Hold'em ANTE 底注、CALL 跟注(2 倍底注)、AAB AA 邊注;玩家對荷官 Texas Hold'em Bonus ANTE 底注、FLOP 翻牌注(2 倍底注)、TURN 轉牌注(1 倍底注)、RIVER 河牌注(1 倍底注)、BONUS 紅利注;玩家對玩家 POT(這手投入底池的合計,return 為沒被跟注退回的部分)。牛牛(都是押那一家閒贏莊):P1E 閒一平倍、P1D 閒一翻倍、P2E 閒二平倍、P2D 閒二翻倍、P3E 閒三平倍、P3D 閒三翻倍。可能的值: B、P、T、BP、PP、S6、D、TG、ST、DB、DS、DO、DE、TB、TS、TO、TE、ANTE、CALL、AAB、FLOP、TURN、RIVER、BONUS、POT、P1E、P1D、P2E、P2D、P3E、P3D |
items[].bets[].amount | string | 是 | 本金。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
items[].bets[].return | string | 是 | 退回金額(本金+淨贏;和局退回本金;輸為 0)。牛牛翻倍格另含退回的預扣。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
items[].bets[].hold | string | 否 | 只有牛牛翻倍格(P1D、P2D、P3D):這一格下注時另外預扣的金額(預設為本金 × 2),沒用到的部分已含在 return。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
items[].bets[].mult | integer | 否 | 只有牛牛翻倍格:實際套用的倍數。閒贏為閒家牌型的倍數、閒輸為莊家牌型的倍數(預設 無牛~牛6 ×1、牛7~牛9 ×2、牛牛 ×3);退款為 0。範圍:0–10 |
items[].stake | string | 是 | 本金合計(牛牛不含預扣)。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
items[].hold | string | 否 | 只有牛牛:翻倍的預扣合計(各翻倍格的 bets[].hold 相加;沒有押翻倍時為 0)。翻倍可能輸超過本金(預設最多本金的 3 倍),所以下注時除了本金,另外從餘額預扣這筆金額,結算時把沒用到的部分連同派彩一起退回(含在 payout)。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
items[].validStake | string | 是 | 有效投注(莊閒對押、和局等依規則扣除)。牛牛:平倍為本金、翻倍為本金 × 實際倍數(bets[].mult),退款的格子不算。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
items[].rolling | string | 是 | 洗碼量(輸掉的注,超級六不計)。牛牛為輸掉的金額(翻倍輸的是本金 × 莊家牌型的倍數)。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
items[].payout | string | 是 | 派彩合計(含本金);牛牛另含退回的預扣。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
items[].winLoss | string | 是 | 玩家輸贏 = payout − stake(正數玩家贏);牛牛為 payout − stake − hold。對帳請一律用這個欄位。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
items[].delta | string | 是 | 這一版對玩家餘額的入帳差額:首次結算為 payout;重算為新舊派彩差(可為負);作廢為本金(牛牛再加預扣)減去先前的派彩。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
items[].result | ResultCode | 是 | |
items[].result.code | string | 是 | 結果碼(一個十六進位字元,格式見〈桌檯與局結果〉);作廢且沒有結果時為空字串。德州撲克為這位玩家這手的結果:玩家對荷官 player_wins、dealer_wins、tie、dealer_not_qualified(只有 Casino Hold'em)、fold;玩家對玩家 win、split、lose、fold;作廢 void。牛牛為 5 個字元 [勝負][莊][閒一][閒二][閒三]:第一個字元是閒家贏的位元(閒一 1、閒二 2、閒三 4 相加,0–7),之後是各家的牌型(0–9、A 牛牛、B 五花牛、C 炸彈、D 五小牛、- 不知道),例如 5893A。 |
items[].result.cardInfo | string | 是 | 牌面字串(百家樂 12 字元、龍虎 4 字元,格式見〈桌檯與局結果〉);沒有結果時為空字串。德州撲克為 公牌|這位玩家的兩張底牌|荷官的兩張(空白分隔的牌面代碼,荷官只有玩家對荷官桌才有),例如 AS KD 7H 7C 2S|AH 7D|QS 3C。牛牛為 頭牌|莊|閒一|閒二|閒三(每家 5 張依 1–5 的順序,空白分隔),例如 7H|KS QD 10C 3S 5H|4C 6D JS 9C KH|2D 8S QC AH 2C|7D 3H KD 5C 5D。 |
items[].result.hands | 對應表<string, integer> | 否 | 只有牛牛:各家的牌型代碼(B、P1、P2、P3 → 0–13),不必自己解結果碼。作廢(status: void)的注單沒有這個欄位。鍵: B、P1、P2、P3 |
items[].result.winners | 對應表<string, string> | 否 | 只有牛牛:每一家閒對莊的輸贏(P1、P2、P3 → P 閒贏、B 莊贏)。作廢(status: void)的注單沒有這個欄位。鍵: P1、P2、P3 |
items[].rake | string | 否 | 只有德州撲克:這手歸這位玩家的抽水(玩家對玩家桌;玩家對荷官桌為 0)。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
items[].onsite | boolean | 否 | 只有德州撲克:現場座位(開桌商戶的現場客人,荷官在平板登記、不走錢包;username 為「現場 |
items[].hand | object | 否 | 只有德州撲克:這一手的結果摘要(完整手牌紀錄在 Console「德州撲克紀錄」)。 |
items[].hand.handId | string | 是 | 這一手的 ID(同 roundId)。 |
items[].hand.no | integer | 是 | 這張桌的第幾手(同 round)。 |
items[].hand.outcome | string | 是 | 這位玩家的結果(同 result.code)。 |
items[].hand.cards | string | 是 | 公牌與這位玩家亮出的牌(同 result.cardInfo)。 |
items[].placedAt | string (date-time) | 是 | UTC 時間,ISO-8601 含毫秒。 |
items[].settledAt | string (date-time) | 是 | 這一版的結算(或重算、作廢)時間。 |
nextCursor | string | 是 | 注單同步游標(yyyymm.序號)。請視為不透明字串,原樣保存與帶回。格式: ^\d{6}\.\d+$ |
hasMore | boolean | 是 | true 表示可能還有下一頁,請立即再讀。 |
PlayerDaySummary
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
username | string | 是 | 玩家帳號。 |
slips | integer | 是 | 注單數(含作廢)。 |
stake | string | 是 | 本金合計(不含作廢)。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
validStake | string | 是 | 玩家金額,十進位字串,最多 4 位小數;回應會去掉小數尾端的 0(例如 "100"、"0.95"、"1000.5")。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
rolling | string | 是 | 玩家金額,十進位字串,最多 4 位小數;回應會去掉小數尾端的 0(例如 "100"、"0.95"、"1000.5")。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
payout | string | 是 | 派彩合計(含本金)。牛牛的注單以「本金+輸贏」計入,不含退回的預扣(注單本身的 payout 含預扣)。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
winLoss | string | 是 | 玩家金額,十進位字串,最多 4 位小數;回應會去掉小數尾端的 0(例如 "100"、"0.95"、"1000.5")。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
rake | string | 否 | 德州撲克玩家對玩家桌的抽水合計(其他遊戲為 0)。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
BetSummary
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
date | string | 是 | 日期 YYYY-MM-DD。格式: ^\d{4}-\d{2}-\d{2}$ |
timezone | string | 是 | 租戶時區(IANA,例如 Asia/Taipei)。 |
players | PlayerDaySummary[] | 是 | |
players[].username | string | 是 | 玩家帳號。 |
players[].slips | integer | 是 | 注單數(含作廢)。 |
players[].stake | string | 是 | 本金合計(不含作廢)。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
players[].validStake | string | 是 | 玩家金額,十進位字串,最多 4 位小數;回應會去掉小數尾端的 0(例如 "100"、"0.95"、"1000.5")。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
players[].rolling | string | 是 | 玩家金額,十進位字串,最多 4 位小數;回應會去掉小數尾端的 0(例如 "100"、"0.95"、"1000.5")。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
players[].payout | string | 是 | 派彩合計(含本金)。牛牛的注單以「本金+輸贏」計入,不含退回的預扣(注單本身的 payout 含預扣)。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
players[].winLoss | string | 是 | 玩家金額,十進位字串,最多 4 位小數;回應會去掉小數尾端的 0(例如 "100"、"0.95"、"1000.5")。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
players[].rake | string | 否 | 德州撲克玩家對玩家桌的抽水合計(其他遊戲為 0)。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
BaccaratResult
百家樂結果(與資料源介面 GFI 相同)。
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
cards | 對應表<string, string> | 否 | 牌面,位置 P1 B1 P2 B2 P3 B3,未發的牌省略;牌面格式如 AS、10H、QD。鍵: P1、B1、P2、B2、P3、B3 |
player | integer | 是 | 範圍:0–9 |
banker | integer | 是 | 範圍:0–9 |
winner | string | 是 | 可能的值:P、B、T |
playerPair | boolean | 是 | |
bankerPair | boolean | 是 | |
cardCount | integer | 否 | 範圍:4–6 |
DragonTigerResult
龍虎結果(與資料源介面 GFI 相同)。
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
cards | object | 否 | |
cards.D | string | 是 | 格式:^(A|[2-9]|10|J|Q|K)[SHDC]$ |
cards.T | string | 是 | 格式:^(A|[2-9]|10|J|Q|K)[SHDC]$ |
winner | string | 是 | 可能的值:D、T、TIE |
NiuniuResult
牛牛結果(與資料源介面 GFI 相同)。各家輸贏以平台依牌面重算的結果碼 code 為準。
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
cards | 對應表<string, string> | 否 | 牌面,牌位 F 頭牌、B-1~B-5 莊、P1-1~P1-5 閒一、P2-1~P2-5 閒二、P3-1~P3-5 閒三(完整結果 21 張);牌面格式如 AS、10H、QD。鍵: F、B-1、B-2、B-3、B-4、B-5、P1-1、P1-2、P1-3、P1-4、P1-5、P2-1、P2-2、P2-3、P2-4、P2-5、P3-1、P3-2、P3-3、P3-4、P3-5 |
hands | 對應表<string, integer> | 否 | 牛牛各家的牌型代碼,鍵 B 莊、P1~P3 閒一~閒三;值 0 無牛、1–9 牛幾、10 牛牛、11 五花牛、12 炸彈、13 五小牛(11–13 只在開啟特殊牌型的桌出現)。結果不完整時只有已知的家。鍵: B、P1、P2、P3 |
winners | 對應表<string, string> | 是 | 牛牛每一家閒對莊的輸贏:P 閒贏、B 莊贏(沒有和局)。鍵: P1、P2、P3 |
Round
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
roundId | string | 是 | 局 ID(26 字元大寫 ULID)。 格式: ^[0-9A-Z]{26}$ |
tableId | string | 是 | 桌號,例如 S01(見 GET /tables)。長度:1–… |
shoe | string | 是 | 靴號;牛牛為場次。 |
round | integer | 是 | 本靴第幾局;牛牛為本場次第幾局。 |
status | string | 是 | settled 已結算;void 作廢;disputed 爭議局(結算後收到超出護欄的修正或作廢,維持原結果、不動金額)。可能的值: settled、void、disputed |
code | string | null | 是 | 結果碼(百家樂、龍虎為一個十六進位字元;牛牛為 5 個字元,例如 5893A)。 |
cardInfo | string | null | 是 | 牌面字串(牛牛為 頭牌|莊|閒一|閒二|閒三)。 |
result | BaccaratResult | DragonTigerResult | NiuniuResult | null | 是 | 結構化結果(百家樂、龍虎或牛牛);沒有結果時為 null。 |
complete | boolean | null | 是 | true 表示有完整牌面;false 表示資料源只提供了輸贏與點數(牛牛為各家輸贏,可能附牌型)。 |
rev | integer | 是 | 結果版次(第一次結果為 1,每次修正 +1;作廢也會 +1)。 |
openedAt | string (date-time) | null | 是 | 開放下注時間。 |
settledAt | string (date-time) | null | 是 | 首次結算時間。 |
Table
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
tableId | string | 是 | 桌號,例如 S01(見 GET /tables)。長度:1–… |
game | string | 是 | 遊戲:baccarat 百家樂、dragontiger 龍虎、holdem 德州撲克、niuniu 牛牛。可能的值: baccarat、dragontiger、holdem、niuniu |
variants | string[] | 是 | 這張桌提供的玩法。 |
name | 對應表<string, string> | 是 | 各語系的桌名,鍵為語系代碼(CHT、CHS、ENG…)。 |
status | string | 是 | open 開放;maintenance 維護中(資料源中斷等)。可能的值: open、maintenance |
betSeconds | integer | 是 | 預設下注秒數。 |
enabled | boolean | 是 | 你是否已啟用這張桌。 |
provider | object | 否 | 只有其他商戶提供給你的桌(跨商戶提供)才有:提供者。玩家用你的限紅、錢照舊由你結算,使用這張桌也算進你的桌數。 |
provider.name | string | 是 | 提供者名稱。 |
TableList
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
tables | Table[] | 是 | |
tables[].tableId | string | 是 | 桌號,例如 S01(見 GET /tables)。長度:1–… |
tables[].game | string | 是 | 遊戲:baccarat 百家樂、dragontiger 龍虎、holdem 德州撲克、niuniu 牛牛。可能的值: baccarat、dragontiger、holdem、niuniu |
tables[].variants | string[] | 是 | 這張桌提供的玩法。 |
tables[].name | 對應表<string, string> | 是 | 各語系的桌名,鍵為語系代碼(CHT、CHS、ENG…)。 |
tables[].status | string | 是 | open 開放;maintenance 維護中(資料源中斷等)。可能的值: open、maintenance |
tables[].betSeconds | integer | 是 | 預設下注秒數。 |
tables[].enabled | boolean | 是 | 你是否已啟用這張桌。 |
tables[].provider | object | 否 | 只有其他商戶提供給你的桌(跨商戶提供)才有:提供者。玩家用你的限紅、錢照舊由你結算,使用這張桌也算進你的桌數。 |
tables[].provider.name | string | 是 | 提供者名稱。 |
TableToggleRequest
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
tableId | string | 是 | 桌號,例如 S01(見 GET /tables)。長度:1–… |
TableToggleResult
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
tableId | string | 是 | 桌號,例如 S01(見 GET /tables)。長度:1–… |
enabled | boolean | 是 | 操作後是否啟用。 |
used | integer | 是 | 目前已啟用的桌數。 |
quota | integer | null | 是 | 方案可啟用的桌數;付費方案為 null(不限)。 |
Account
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
plan | string | 是 | 方案:free 免費展示方案、paid 付費方案。可能的值: free、paid |
state | string | 是 | 帳務狀態,說明見〈計費說明〉。 可能的值: FREE、PAID、GRACE、DOWNGRADED、SUSPENDED、CLOSED |
balanceUsd | string | 是 | 預付額度餘額(可為負數)。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
tablesUsed | integer | 是 | 已啟用桌數。 |
tablesQuota | integer | null | 是 | 可啟用桌數;付費方案為 null。 |
streamGbMonth | string | 是 | 本月(UTC)串流用量(GB,3 位小數)。 |
avgDailyUsd7d | string | 是 | 近 7 天平均每日費用。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
daysLeft | integer | null | 是 | 以目前費用估計,預付額度約可再用幾天;沒有費用時為 null。 |
graceUntil | string (date-time) | null | 是 | 寬限期截止時間(只在 GRACE 狀態)。 |
UsageDay
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
day | string | 是 | 日期 YYYY-MM-DD。格式: ^\d{4}-\d{2}-\d{2}$ |
tableDays | number | 是 | 當天計費的桌·日。 |
streamGb | string | 是 | 串流用量(GB,3 位小數)。 |
streamSource | string | 是 | 串流用量的依據:cdn 串流服務依標籤彙總、client 播放器回報、estimate 估算。可能的值: cdn、client、estimate |
tableFeeUsd | string | 是 | 桌費。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
streamFeeUsd | string | 是 | 串流費。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
UsageList
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
days | UsageDay[] | 是 | |
days[].day | string | 是 | 日期 YYYY-MM-DD。格式: ^\d{4}-\d{2}-\d{2}$ |
days[].tableDays | number | 是 | 當天計費的桌·日。 |
days[].streamGb | string | 是 | 串流用量(GB,3 位小數)。 |
days[].streamSource | string | 是 | 串流用量的依據:cdn 串流服務依標籤彙總、client 播放器回報、estimate 估算。可能的值: cdn、client、estimate |
days[].tableFeeUsd | string | 是 | 桌費。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
days[].streamFeeUsd | string | 是 | 串流費。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
Statement
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
period | string | 是 | 期間 YYYY-MM。格式: ^\d{4}-\d{2}$ |
openingUsd | string | 是 | 期初餘額。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
chargesUsd | string | 是 | 扣款合計(負數)。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
paymentsUsd | string | 是 | 付款與加值合計。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
closingUsd | string | 是 | 期末餘額。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
StatementList
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
statements | Statement[] | 是 | |
statements[].period | string | 是 | 期間 YYYY-MM。格式: ^\d{4}-\d{2}$ |
statements[].openingUsd | string | 是 | 期初餘額。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
statements[].chargesUsd | string | 是 | 扣款合計(負數)。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
statements[].paymentsUsd | string | 是 | 付款與加值合計。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
statements[].closingUsd | string | 是 | 期末餘額。 格式: ^-?\d{1,12}(\.\d{1,6})?$ |
WebhookEnvelope
所有 Webhook 共用的本文格式;data 依事件而定。
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
id | string | 是 | 投遞 ID(同 X-Elite-Delivery);自動重試時不變,平台手動重送時會換新的。 |
event | string | 是 | 事件名稱。 可能的值: bet.settled、round.corrected、round.voided、player.kicked、account.grace、account.downgraded、account.restored、account.topup、account.low_balance、test |
companyCode | string | 是 | 收到事件的租戶公司代碼(沙箱租戶為 …-SBX)。 |
createdAt | string (date-time) | 是 | 這次投遞產生的時間(每次重試都會更新)。 |
data | object | 是 | 事件內容,格式見各事件。 |
WebhookRound
局事件的局資訊。
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
roundId | string | 是 | 局 ID(26 字元大寫 ULID)。 格式: ^[0-9A-Z]{26}$ |
tableId | string | 是 | 桌號,例如 S01(見 GET /tables)。長度:1–… |
shoe | string | null | 是 | 靴號(字串);牛牛為場次。 |
round | integer | null | 是 | 本靴第幾局;牛牛為本場次第幾局。 |
rev | integer | 是 | 這個事件對應的結果版次;data.bets 只包含這個版次的注單。範圍:1–… |
resultCode | string | null | 是 | 結果碼(百家樂、龍虎為一個十六進位字元;牛牛為 5 個字元);沒有結果的作廢局為 null。 |
cardInfo | string | null | 是 | 牌面字串(牛牛為 頭牌|莊|閒一|閒二|閒三);沒有結果的作廢局為 null。 |
settledAt | string (date-time) | null | 是 | 這一局首次結算(或作廢)的時間。 |
RoundEventData
bet.settled、round.corrected、round.voided 的 data。
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
round | WebhookRound | 是 | 局事件的局資訊。 |
round.roundId | string | 是 | 局 ID(26 字元大寫 ULID)。 格式: ^[0-9A-Z]{26}$ |
round.tableId | string | 是 | 桌號,例如 S01(見 GET /tables)。長度:1–… |
round.shoe | string | null | 是 | 靴號(字串);牛牛為場次。 |
round.round | integer | null | 是 | 本靴第幾局;牛牛為本場次第幾局。 |
round.rev | integer | 是 | 這個事件對應的結果版次;data.bets 只包含這個版次的注單。範圍:1–… |
round.resultCode | string | null | 是 | 結果碼(百家樂、龍虎為一個十六進位字元;牛牛為 5 個字元);沒有結果的作廢局為 null。 |
round.cardInfo | string | null | 是 | 牌面字串(牛牛為 頭牌|莊|閒一|閒二|閒三);沒有結果的作廢局為 null。 |
round.settledAt | string (date-time) | null | 是 | 這一局首次結算(或作廢)的時間。 |
bets | BetRecord[] | 是 | 你的玩家在這一局、這個版次的注單,格式與 GET /bets 的 items 完全相同。 |
bets[].recSeq | integer | 是 | 寫入序號(同一個 UTC 月份內遞增)。 |
bets[].slipId | string | 是 | 注單 ID:一位玩家在一局的所有下注為一張注單。重算與作廢沿用同一個 slipId。 |
bets[].rev | integer | 是 | 版次。同一 slipId 以最大的 rev 為準。範圍:1–… |
bets[].status | string | 是 | settled 首次結算;recalculated 結果修正後重算;void 作廢(全額退回本金;牛牛連同預扣)。可能的值: settled、recalculated、void |
bets[].username | string | 是 | 玩家帳號。 |
bets[].currency | string | 是 | 幣別。 |
bets[].tableId | string | 是 | 桌號,例如 S01(見 GET /tables)。長度:1–… |
bets[].game | string | 是 | 遊戲:baccarat 百家樂、dragontiger 龍虎、holdem 德州撲克、niuniu 牛牛。可能的值: baccarat、dragontiger、holdem、niuniu |
bets[].variant | string | 是 | 玩法:百家樂 classic(傳統,莊贏抽 5%)、nocomm(免佣,莊 6 點贏賠一半、有超級六);龍虎的玩法以桌檯的 variants 為準;德州撲克 casino(玩家對荷官,Casino Hold'em)、thbp(玩家對荷官,Texas Hold'em Bonus Poker)、nlhe(玩家對玩家,無限注);牛牛 standard。 |
bets[].roundId | string | 是 | 局 ID;德州撲克為這一手的 ID(handId)。 格式: ^[0-9A-Z]{26}$ |
bets[].shoe | string | 是 | 靴號;德州撲克沒有靴,為空字串;牛牛每局一副新牌,這裡是場次(預設每 60 局換一場)。 |
bets[].round | integer | 是 | 本靴第幾局;德州撲克為這張桌的第幾手;牛牛為本場次第幾局。 |
bets[].bets | BetLeg[] | 是 | 各投注區的本金與退回。 |
bets[].bets[].zone | string | 是 | 投注區。百家樂:B 莊、P 閒、T 和、BP 莊對、PP 閒對、S6 超級六(免佣)。龍虎:D 龍、TG 虎、T 和、ST 同花和;大小單雙(您在 Console 桌檯設定開啟的桌才有):DB 龍大、DS 龍小、DO 龍單、DE 龍雙、TB 虎大、TS 虎小、TO 虎單、TE 虎雙。德州撲克:玩家對荷官 Casino Hold'em ANTE 底注、CALL 跟注(2 倍底注)、AAB AA 邊注;玩家對荷官 Texas Hold'em Bonus ANTE 底注、FLOP 翻牌注(2 倍底注)、TURN 轉牌注(1 倍底注)、RIVER 河牌注(1 倍底注)、BONUS 紅利注;玩家對玩家 POT(這手投入底池的合計,return 為沒被跟注退回的部分)。牛牛(都是押那一家閒贏莊):P1E 閒一平倍、P1D 閒一翻倍、P2E 閒二平倍、P2D 閒二翻倍、P3E 閒三平倍、P3D 閒三翻倍。可能的值: B、P、T、BP、PP、S6、D、TG、ST、DB、DS、DO、DE、TB、TS、TO、TE、ANTE、CALL、AAB、FLOP、TURN、RIVER、BONUS、POT、P1E、P1D、P2E、P2D、P3E、P3D |
bets[].bets[].amount | string | 是 | 本金。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].bets[].return | string | 是 | 退回金額(本金+淨贏;和局退回本金;輸為 0)。牛牛翻倍格另含退回的預扣。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].bets[].hold | string | 否 | 只有牛牛翻倍格(P1D、P2D、P3D):這一格下注時另外預扣的金額(預設為本金 × 2),沒用到的部分已含在 return。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].bets[].mult | integer | 否 | 只有牛牛翻倍格:實際套用的倍數。閒贏為閒家牌型的倍數、閒輸為莊家牌型的倍數(預設 無牛~牛6 ×1、牛7~牛9 ×2、牛牛 ×3);退款為 0。範圍:0–10 |
bets[].stake | string | 是 | 本金合計(牛牛不含預扣)。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].hold | string | 否 | 只有牛牛:翻倍的預扣合計(各翻倍格的 bets[].hold 相加;沒有押翻倍時為 0)。翻倍可能輸超過本金(預設最多本金的 3 倍),所以下注時除了本金,另外從餘額預扣這筆金額,結算時把沒用到的部分連同派彩一起退回(含在 payout)。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].validStake | string | 是 | 有效投注(莊閒對押、和局等依規則扣除)。牛牛:平倍為本金、翻倍為本金 × 實際倍數(bets[].mult),退款的格子不算。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].rolling | string | 是 | 洗碼量(輸掉的注,超級六不計)。牛牛為輸掉的金額(翻倍輸的是本金 × 莊家牌型的倍數)。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].payout | string | 是 | 派彩合計(含本金);牛牛另含退回的預扣。 格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].winLoss | string | 是 | 玩家輸贏 = payout − stake(正數玩家贏);牛牛為 payout − stake − hold。對帳請一律用這個欄位。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].delta | string | 是 | 這一版對玩家餘額的入帳差額:首次結算為 payout;重算為新舊派彩差(可為負);作廢為本金(牛牛再加預扣)減去先前的派彩。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].result | ResultCode | 是 | |
bets[].result.code | string | 是 | 結果碼(一個十六進位字元,格式見〈桌檯與局結果〉);作廢且沒有結果時為空字串。德州撲克為這位玩家這手的結果:玩家對荷官 player_wins、dealer_wins、tie、dealer_not_qualified(只有 Casino Hold'em)、fold;玩家對玩家 win、split、lose、fold;作廢 void。牛牛為 5 個字元 [勝負][莊][閒一][閒二][閒三]:第一個字元是閒家贏的位元(閒一 1、閒二 2、閒三 4 相加,0–7),之後是各家的牌型(0–9、A 牛牛、B 五花牛、C 炸彈、D 五小牛、- 不知道),例如 5893A。 |
bets[].result.cardInfo | string | 是 | 牌面字串(百家樂 12 字元、龍虎 4 字元,格式見〈桌檯與局結果〉);沒有結果時為空字串。德州撲克為 公牌|這位玩家的兩張底牌|荷官的兩張(空白分隔的牌面代碼,荷官只有玩家對荷官桌才有),例如 AS KD 7H 7C 2S|AH 7D|QS 3C。牛牛為 頭牌|莊|閒一|閒二|閒三(每家 5 張依 1–5 的順序,空白分隔),例如 7H|KS QD 10C 3S 5H|4C 6D JS 9C KH|2D 8S QC AH 2C|7D 3H KD 5C 5D。 |
bets[].result.hands | 對應表<string, integer> | 否 | 只有牛牛:各家的牌型代碼(B、P1、P2、P3 → 0–13),不必自己解結果碼。作廢(status: void)的注單沒有這個欄位。鍵: B、P1、P2、P3 |
bets[].result.winners | 對應表<string, string> | 否 | 只有牛牛:每一家閒對莊的輸贏(P1、P2、P3 → P 閒贏、B 莊贏)。作廢(status: void)的注單沒有這個欄位。鍵: P1、P2、P3 |
bets[].rake | string | 否 | 只有德州撲克:這手歸這位玩家的抽水(玩家對玩家桌;玩家對荷官桌為 0)。格式: ^-?\d{1,15}(\.\d{1,4})?$ |
bets[].onsite | boolean | 否 | 只有德州撲克:現場座位(開桌商戶的現場客人,荷官在平板登記、不走錢包;username 為「現場 |
bets[].hand | object | 否 | 只有德州撲克:這一手的結果摘要(完整手牌紀錄在 Console「德州撲克紀錄」)。 |
bets[].hand.handId | string | 是 | 這一手的 ID(同 roundId)。 |
bets[].hand.no | integer | 是 | 這張桌的第幾手(同 round)。 |
bets[].hand.outcome | string | 是 | 這位玩家的結果(同 result.code)。 |
bets[].hand.cards | string | 是 | 公牌與這位玩家亮出的牌(同 result.cardInfo)。 |
bets[].placedAt | string (date-time) | 是 | UTC 時間,ISO-8601 含毫秒。 |
bets[].settledAt | string (date-time) | 是 | 這一版的結算(或重算、作廢)時間。 |
PlayerKickedData
player.kicked 的 data。
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
username | string | 是 | 玩家帳號。 |
reason | string | 是 | logged_out:POST /player/logout;locked:POST /player/update 設為 locked。可能的值: logged_out、locked |
at | string (date-time) | 是 | UTC 時間,ISO-8601 含毫秒。 |
UsdCents
型別:string
USD 金額,四捨五入到分,固定 2 位小數(例如 "496.83")。
格式:^-?\d+\.\d{2}$
AccountStateData
account.grace、account.downgraded、account.restored 的 data。
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
from | string | 是 | 原本的帳務狀態。 可能的值: FREE、PAID、GRACE、DOWNGRADED、SUSPENDED、CLOSED |
to | string | 是 | 新的帳務狀態。 可能的值: PAID、GRACE、DOWNGRADED |
balanceUsd | string | 是 | USD 金額,四捨五入到分,固定 2 位小數(例如 "496.83")。格式: ^-?\d+\.\d{2}$ |
graceUntil | string (date-time) | null | 是 | 寬限期截止時間(進入寬限期時)。 |
actor | string | 是 | 觸發者:system(自動)或操作者。 |
AccountTopupData
account.topup 的 data。
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
amountUsd | string | 是 | USD 金額,四捨五入到分,固定 2 位小數(例如 "496.83")。格式: ^-?\d+\.\d{2}$ |
balanceUsd | string | 是 | USD 金額,四捨五入到分,固定 2 位小數(例如 "496.83")。格式: ^-?\d+\.\d{2}$ |
ref | string | 是 | 付款參考編號(例如金流交易編號或 USDT 交易雜湊)。 |
AccountLowBalanceData
account.low_balance 的 data。
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
balanceUsd | string | 是 | USD 金額,四捨五入到分,固定 2 位小數(例如 "496.83")。格式: ^-?\d+\.\d{2}$ |
avgDailyUsd | string | 是 | 近 7 天平均每日費用。 格式: ^-?\d+\.\d{2}$ |
daysLeft | integer | 是 | 以目前費用估計,預付額度約可再用的天數。 |
TestEventData
test 的 data。
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
message | string | 是 | 固定為:elite webhook test |