{"openapi":"3.1.0","info":{"title":"711开奖数据 API","version":"1.0.0","description":"实时开奖、历史记录、号码走势和统计分析 API。所有核心接口使用 HMAC-SHA256 请求签名。","contact":{"name":"711开奖网","url":"https://711kj.com/api-docs"}},"servers":[{"url":"https://711kj.com/api/v1","description":"生产环境"}],"tags":[{"name":"基础信息","description":"彩种、规则与首页分类元数据。"},{"name":"开奖数据","description":"最新开奖、历史记录、单期详情与走势图。"},{"name":"数据分析","description":"频率、遗漏、回测与历史同期对比。"}],"paths":{"/lottery/list":{"get":{"tags":["基础信息"],"operationId":"lottery_list","summary":"获取彩种列表","description":"返回所有已启用彩种、最新期号、采集状态和号码区域规则。","security":[{"ApiKey":[],"Timestamp":[],"Nonce":[],"Signature":[]}],"parameters":[],"responses":{"200":{"description":"请求成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LotteryListResponse"},"example":{"data":[{"id":6,"code":"SSQ","name":"福彩双色球","category":"national","enabled":true,"latest_issue":"2026094","latest_draw_time":"2026-08-16T13:15:00Z","collection_status":"healthy","result_schema":{"zones":[{"code":"red","count":6,"min":1,"max":33,"unique":true},{"code":"blue","count":1,"min":1,"max":16,"unique":true}]}}],"request_id":"4f49b1e71b3d42e99f88a5bf2f00d91a"}}}},"400":{"description":"参数格式不正确","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"签名缺失或无效","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"超过请求速率限制","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/content/lottery-categories":{"get":{"tags":["基础信息"],"operationId":"lottery_categories","summary":"获取彩种分类","description":"返回开奖大厅使用的分类顺序及分类内彩种代码。","security":[{"ApiKey":[],"Timestamp":[],"Nonce":[],"Signature":[]}],"parameters":[],"responses":{"200":{"description":"请求成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoryListResponse"},"example":{"data":[{"id":1,"code":"national","name":"全国彩","sort_order":10,"enabled":true,"lottery_codes":["FC3D","PL3","SSQ","DLT"]}],"request_id":"4f49b1e71b3d42e99f88a5bf2f00d91a"}}}},"400":{"description":"参数格式不正确","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"签名缺失或无效","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"超过请求速率限制","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/result/latest":{"get":{"tags":["开奖数据"],"operationId":"result_latest","summary":"获取最新开奖","description":"按开奖时间倒序返回最新已发布结果；指定 lottery 时只返回该彩种。","security":[{"ApiKey":[],"Timestamp":[],"Nonce":[],"Signature":[]}],"parameters":[{"name":"lottery","in":"query","required":false,"description":"彩种代码，如 SSQ、TWBINGO、CA28；示例：SSQ","schema":{"type":"string","example":"SSQ"}},{"name":"limit","in":"query","required":false,"description":"返回数量，1–50，默认 10；示例：1","schema":{"type":"integer","example":1}}],"responses":{"200":{"description":"请求成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DrawListResponse"},"example":{"data":[{"id":1284201,"lottery_id":6,"lottery_code":"SSQ","lottery_name":"福彩双色球","issue":"2026094","draw_time":"2026-08-16T13:15:00Z","status":"published","version":1,"published_at":"2026-08-16T13:15:08Z","numbers":[{"zone":"red","position":1,"value":5},{"zone":"red","position":2,"value":8},{"zone":"blue","position":1,"value":9}]}],"request_id":"4f49b1e71b3d42e99f88a5bf2f00d91a"}}}},"400":{"description":"参数格式不正确","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"签名缺失或无效","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"超过请求速率限制","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/result/history":{"get":{"tags":["开奖数据"],"operationId":"result_history","summary":"查询历史开奖","description":"使用游标分页查询历史记录，可按期号或 RFC3339 时间范围过滤。","security":[{"ApiKey":[],"Timestamp":[],"Nonce":[],"Signature":[]}],"parameters":[{"name":"lottery","in":"query","required":true,"description":"彩种代码；示例：SSQ","schema":{"type":"string","example":"SSQ"}},{"name":"issue","in":"query","required":false,"description":"精确期号；示例：2026094","schema":{"type":"string","example":"2026094"}},{"name":"cursor","in":"query","required":false,"description":"上一页响应中的 next_cursor；示例：eyJkcmF3X3RpbWUiOi...","schema":{"type":"string","example":"eyJkcmF3X3RpbWUiOi..."}},{"name":"from","in":"query","required":false,"description":"起始时间，RFC3339，包含；示例：2026-08-01T00:00:00+08:00","schema":{"type":"string","example":"2026-08-01T00:00:00+08:00"}},{"name":"to","in":"query","required":false,"description":"结束时间，RFC3339，不包含；示例：2026-09-01T00:00:00+08:00","schema":{"type":"string","example":"2026-09-01T00:00:00+08:00"}},{"name":"limit","in":"query","required":false,"description":"每页数量，1–100，默认 30；示例：30","schema":{"type":"integer","example":30}}],"responses":{"200":{"description":"请求成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DrawPageResponse"},"example":{"data":{"items":[{"id":1284201,"lottery_id":6,"lottery_code":"SSQ","lottery_name":"福彩双色球","issue":"2026094","draw_time":"2026-08-16T13:15:00Z","status":"published","version":1,"published_at":"2026-08-16T13:15:08Z","numbers":[{"zone":"red","position":1,"value":5},{"zone":"red","position":2,"value":8},{"zone":"blue","position":1,"value":9}]}],"next_cursor":"eyJkcmF3X3RpbWUiOiIyMDI2LTA4LTE2VDEzOjE1OjAwWiIsImlkIjoxMjg0MjAxfQ","has_more":true},"request_id":"4f49b1e71b3d42e99f88a5bf2f00d91a"}}}},"400":{"description":"参数格式不正确","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"签名缺失或无效","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"超过请求速率限制","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/result/{code}/{issue}":{"get":{"tags":["开奖数据"],"operationId":"result_detail","summary":"获取单期开奖详情","description":"按彩种代码和期号返回完整开奖对象，包括号码区域和奖级信息。","security":[{"ApiKey":[],"Timestamp":[],"Nonce":[],"Signature":[]}],"parameters":[{"name":"code","in":"path","required":true,"description":"彩种代码；示例：SSQ","schema":{"type":"string","example":"SSQ"}},{"name":"issue","in":"path","required":true,"description":"开奖期号；示例：2026094","schema":{"type":"string","example":"2026094"}}],"responses":{"200":{"description":"请求成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DrawResponse"},"example":{"data":{"id":1284201,"lottery_id":6,"lottery_code":"SSQ","lottery_name":"福彩双色球","issue":"2026094","draw_time":"2026-08-16T13:15:00Z","status":"published","version":1,"published_at":"2026-08-16T13:15:08Z","numbers":[{"zone":"red","position":1,"value":5},{"zone":"red","position":2,"value":8},{"zone":"blue","position":1,"value":9}]},"request_id":"4f49b1e71b3d42e99f88a5bf2f00d91a"}}}},"400":{"description":"参数格式不正确","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"签名缺失或无效","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"期号不存在","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"超过请求速率限制","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/chart/trend":{"get":{"tags":["开奖数据"],"operationId":"chart_trend","summary":"获取号码走势","description":"返回指定彩种最近若干期的号码序列，适合绘制走势、遗漏和值图。","security":[{"ApiKey":[],"Timestamp":[],"Nonce":[],"Signature":[]}],"parameters":[{"name":"lottery","in":"query","required":true,"description":"彩种代码；示例：CA28","schema":{"type":"string","example":"CA28"}},{"name":"limit","in":"query","required":false,"description":"样本期数，1–1000，默认 30；示例：100","schema":{"type":"integer","example":100}}],"responses":{"200":{"description":"请求成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrendResponse"},"example":{"data":[{"issue":"3470981","draw_time":"2026-08-18T05:59:00Z","numbers":[{"zone":"main","position":1,"value":7},{"zone":"main","position":2,"value":6},{"zone":"main","position":3,"value":7}]}],"request_id":"4f49b1e71b3d42e99f88a5bf2f00d91a"}}}},"400":{"description":"参数格式不正确","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"签名缺失或无效","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"超过请求速率限制","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/analysis/statistics":{"get":{"tags":["数据分析"],"operationId":"analysis_statistics","summary":"获取统计分析","description":"计算频率、当前遗漏、最大遗漏、平均遗漏和基础回测结果。","security":[{"ApiKey":[],"Timestamp":[],"Nonce":[],"Signature":[]}],"parameters":[{"name":"lottery","in":"query","required":true,"description":"彩种代码；示例：CA28","schema":{"type":"string","example":"CA28"}},{"name":"limit","in":"query","required":false,"description":"样本期数，1–1000，默认 100；示例：100","schema":{"type":"integer","example":100}},{"name":"numbers","in":"query","required":false,"description":"逗号分隔的回测号码；示例：7,6,7","schema":{"type":"string","example":"7,6,7"}}],"responses":{"200":{"description":"请求成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatisticsResponse"},"example":{"data":{"statistics":[{"zone":"main","frequency":{"0":28,"1":34,"7":31},"current_omission":{"0":2,"1":0,"7":0},"max_omission":{"0":11,"1":8,"7":9},"average_omission":{"0":2.4,"1":1.9,"7":2.1},"summary":{"odd":151,"even":149}}],"sample_size":100,"backtest":{"numbers":[7,6,7],"sample_size":100,"match_count":1,"match_rate":1,"current_omission":0,"max_omission":73},"disclaimer":"仅描述历史数据，不构成预测或投注建议。"},"request_id":"4f49b1e71b3d42e99f88a5bf2f00d91a"}}}},"400":{"description":"参数格式不正确","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"签名缺失或无效","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"超过请求速率限制","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/analysis/same-period":{"get":{"tags":["数据分析"],"operationId":"analysis_same_period","summary":"查询历史同期","description":"按期号尾数查找同一彩种的历史同期记录。","security":[{"ApiKey":[],"Timestamp":[],"Nonce":[],"Signature":[]}],"parameters":[{"name":"lottery","in":"query","required":true,"description":"彩种代码；示例：SSQ","schema":{"type":"string","example":"SSQ"}},{"name":"suffix","in":"query","required":true,"description":"1–8位数字期号尾数；示例：094","schema":{"type":"string","example":"094"}},{"name":"limit","in":"query","required":false,"description":"返回数量，默认 30；示例：30","schema":{"type":"integer","example":30}}],"responses":{"200":{"description":"请求成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DrawListResponse"},"example":{"data":[{"id":1284201,"lottery_id":6,"lottery_code":"SSQ","lottery_name":"福彩双色球","issue":"2026094","draw_time":"2026-08-16T13:15:00Z","status":"published","version":1,"published_at":"2026-08-16T13:15:08Z","numbers":[{"zone":"red","position":1,"value":5},{"zone":"red","position":2,"value":8},{"zone":"blue","position":1,"value":9}]}],"request_id":"4f49b1e71b3d42e99f88a5bf2f00d91a"}}}},"400":{"description":"参数格式不正确","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"签名缺失或无效","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"429":{"description":"超过请求速率限制","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}},"components":{"securitySchemes":{"ApiKey":{"type":"apiKey","in":"header","name":"X-API-Key","description":"API Key 前缀"},"Timestamp":{"type":"apiKey","in":"header","name":"X-Timestamp","description":"RFC3339 UTC 时间，允许偏差5分钟"},"Nonce":{"type":"apiKey","in":"header","name":"X-Nonce","description":"10分钟内不可重复"},"Signature":{"type":"apiKey","in":"header","name":"X-Signature","description":"HMAC-SHA256 小写十六进制签名"}},"schemas":{"DrawNumber":{"type":"object","required":["zone","position","value"],"properties":{"zone":{"type":"string"},"position":{"type":"integer"},"value":{"type":"integer"}}},"Draw":{"type":"object","required":["id","lottery_code","lottery_name","issue","draw_time","status","version","numbers"],"properties":{"id":{"type":"integer","format":"int64"},"lottery_id":{"type":"integer","format":"int64"},"lottery_code":{"type":"string"},"lottery_name":{"type":"string"},"issue":{"type":"string"},"draw_time":{"type":"string","format":"date-time"},"status":{"type":"string","enum":["published","archived"]},"version":{"type":"integer"},"jackpot":{"type":["string","null"]},"sales_amount":{"type":["string","null"]},"published_at":{"type":["string","null"],"format":"date-time"},"numbers":{"type":"array","items":{"$ref":"#/components/schemas/DrawNumber"}}}},"ZoneRule":{"type":"object","properties":{"code":{"type":"string"},"count":{"type":"integer"},"min":{"type":"integer"},"max":{"type":"integer"},"unique":{"type":"boolean"}}},"Lottery":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"code":{"type":"string"},"name":{"type":"string"},"category":{"type":"string"},"enabled":{"type":"boolean"},"latest_issue":{"type":["string","null"]},"latest_draw_time":{"type":["string","null"],"format":"date-time"},"collection_status":{"type":"string"},"result_schema":{"type":"object","properties":{"zones":{"type":"array","items":{"$ref":"#/components/schemas/ZoneRule"}}}}}},"TrendRow":{"type":"object","properties":{"issue":{"type":"string"},"draw_time":{"type":"string","format":"date-time"},"numbers":{"type":"array","items":{"$ref":"#/components/schemas/DrawNumber"}}}},"Category":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"code":{"type":"string"},"name":{"type":"string"},"sort_order":{"type":"integer"},"enabled":{"type":"boolean"},"lottery_codes":{"type":"array","items":{"type":"string"}}}},"LotteryListResponse":{"type":"object","required":["data","request_id"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Lottery"}},"request_id":{"type":"string","description":"请求追踪 ID"}}},"CategoryListResponse":{"type":"object","required":["data","request_id"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Category"}},"request_id":{"type":"string","description":"请求追踪 ID"}}},"DrawListResponse":{"type":"object","required":["data","request_id"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Draw"}},"request_id":{"type":"string","description":"请求追踪 ID"}}},"DrawResponse":{"type":"object","required":["data","request_id"],"properties":{"data":{"$ref":"#/components/schemas/Draw"},"request_id":{"type":"string","description":"请求追踪 ID"}}},"DrawPageResponse":{"type":"object","required":["data","request_id"],"properties":{"data":{"type":"object","required":["items","has_more"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Draw"}},"next_cursor":{"type":"string"},"has_more":{"type":"boolean"}}},"request_id":{"type":"string","description":"请求追踪 ID"}}},"TrendResponse":{"type":"object","required":["data","request_id"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TrendRow"}},"request_id":{"type":"string","description":"请求追踪 ID"}}},"StatisticsResponse":{"type":"object","required":["data","request_id"],"properties":{"data":{"type":"object","additionalProperties":true},"request_id":{"type":"string","description":"请求追踪 ID"}}},"ErrorResponse":{"type":"object","required":["error","request_id"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string"},"message":{"type":"string"}}},"request_id":{"type":"string"}}}}}}