把本站(10000.ooo)的鱼虾蟹、十二生肖、48码六合开奖结果,同步到你自己的网站或 App。 数据与官网完全一致,全球统一开奖。
GET https://api.10000.ooo/api/v1/draws/latest
试一下
games.dice.latest(鱼虾蟹)、games.zodiac.latest(生肖)、games.lotto.latest(六合)latest 就是当前最新已开奖的一期。
latest.slot 或 latest.drawnAt 与上次不同 → 说明刚开出新一期,更新你页面上的号码即可。
GET 请求,不需要注册、不需要 API Key。
返回 JSON,任意网站可直接用 JavaScript 读取(已开启跨域 CORS)。
| 游戏 | 代码 id | 开奖间隔 | 结果内容 |
|---|---|---|---|
| 鱼虾蟹 | dice |
每 2 分钟 | 3 个骰子:鱼、虾、蟹、鸡、葫芦、虎 |
| 十二生肖 | zodiac |
每 3 分钟 | 1 个生肖 + 4 个虚岁号码 |
| 48码六合 | lotto |
每 5 分钟 | 01~48 中开 7 个不重复:6 个正码 + 1 个特码(含生肖) |
时区:Asia/Shanghai(北京时间)。期号格式示例:第20260529-111期。
基础地址:https://api.10000.ooo,全部返回 JSON。
只需要一款游戏时用,返回结构比上面更简单(只有单个 latest)。
limit:条数,1~500,默认 50。按时间从新到旧排列,在 items 数组里。
/api/v1/state 会带上大量历史数据,体积大、占带宽,一般对接不需要。
| 字段 | 含义 |
|---|---|
code | 0 = 成功;非 0 表示出错(见 message) |
message | 说明文字,成功时一般为 ok |
serverTime | 服务器当前时间(毫秒时间戳) |
| 字段 | 含义 |
|---|---|
intervalSeconds | 多少秒开一期(鱼虾蟹 120、生肖 180、六合 300) |
nextDrawAt | 下一期开奖时刻(毫秒时间戳) |
nextDrawClock | 下一期开奖时刻(北京时间,如 03:42:00) |
countdownMs | 距离下一期还有多少毫秒 |
currentSlot | 当前时间槽编号(与 latest.slot 同类,用于判断是否新期) |
| 字段 | 含义 |
|---|---|
period | 期号,如 第20260529-111期 |
time | 开奖时间(北京时间 HH:MM:SS) |
drawnAt | 开奖时间(毫秒时间戳) |
slot | 期次唯一编号,用来判断是否新开奖 |
symbols | 三个结果,如 ["葫芦","虎","鸡"] |
summary | 中文摘要,可直接展示 |
| 字段 | 含义 |
|---|---|
zodiac.name | 生肖名,如 羊 |
zodiac.emoji | 表情符号,如 🐑 |
ages | 4 个虚岁,如 [12, 24, 36, 48] |
summary | 中文摘要 |
| 字段 | 含义 |
|---|---|
main | 6 个正码,如 [13, 15, 18, 22, 26, 36] |
special | 1 个特码,如 25 |
mainDetails | 每个正码的号码 + 对应生肖(name、emoji) |
specialDetail | 特码的号码 + 生肖 |
summary | 中文摘要 |
在你自己服务器或浏览器里,为每个游戏记住上一次的 slot(推荐)或 drawnAt:
// 伪代码
上次鱼虾蟹 = 本地保存的 diceSlot
本次 = 接口返回的 games.dice.latest.slot
if (本次 !== 上次鱼虾蟹) {
// 新开奖了,更新页面
显示 games.dice.latest.symbols
本地保存 diceSlot = 本次
}
三款游戏分别对比 dice、zodiac、lotto,互不影响。
curl -s "https://api.10000.ooo/api/v1/draws/latest"
const API = "https://api.10000.ooo/api/v1/draws/latest";
let lastDiceSlot = null;
async function sync() {
const res = await fetch(API);
const data = await res.json();
if (data.code !== 0) {
console.error("接口错误:", data.message);
return;
}
const dice = data.games.dice.latest;
if (dice && dice.slot !== lastDiceSlot) {
lastDiceSlot = dice.slot;
console.log("鱼虾蟹新开奖:", dice.period, dice.symbols.join(" "));
// 在这里更新你的 DOM
}
const zodiac = data.games.zodiac.latest;
const lotto = data.games.lotto.latest;
// 同样用 zodiac.slot、lotto.slot 判断
}
setInterval(sync, 8000); // 每 8 秒同步一次
sync();
{
"code": 0,
"message": "ok",
"serverTime": 1779997304075,
"games": {
"dice": {
"name": "鱼虾蟹",
"schedule": { "countdownMs": 15925, "nextDrawClock": "03:42:00" },
"latest": {
"period": "第20260529-111期",
"slot": 14833310,
"symbols": ["葫芦", "虎", "鸡"],
"summary": "开盅:葫芦 · 虎 · 鸡"
}
},
"zodiac": { "latest": { "zodiac": { "name": "羊", "emoji": "🐑" }, "ages": [12,24,36,48] } },
"lotto": { "latest": { "main": [13,15,18,22,26,36], "special": 25 } }
}
}
| code | 常见原因 |
|---|---|
0 | 成功 |
404 | 地址写错,检查路径是否在文档列表中 |
400 | 参数错误,如 history 的 limit 不是数字 |