Core:用量、日志与任务查询
API 逐项需求、源码归属、字段与验收条件
当前固定源码下本组共 16 项方法 + 路径。下列为接口需求 v0.1,Owner 为 Core,计划阶段为 CE-04;均未宣称 OceanWay 已运行。原路径/字段默认沿用,变化须进入差异台账。
每项适用统一接口需求规则,并列出上游字段声明、控制器观察与具体补差。OpenAPI 没列必填不表示运行时可缺省;观察到的 JSON key 也不等于可写入字段。下载完整接口台账及上游管理规范、模型规范可查看完整嵌套 Schema。
CORE-USAGE-001 · GET /api/data/
用途与归属:获取所有额度数据。优先沿用,迁入/适配后验收。
鉴权:Admin 员工身份。
请求:处理器读取:query.start_timestamp, query.end_timestamp, query.username。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:200 成功(上游未声明响应 Schema);代码 JSON/映射中观察到 data, message, success(仅为字面键观察,含分支/内部映射,不等同完整响应契约)。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:RESPONSE-SCHEMA-MISSING:上游响应未定义结构;以处理器和兼容用例补齐。
来源:router/api-router.go:337;controller.GetAllQuotaDates controller/usedata.go:31;上游 api.json 中 GET /api/data/。
CORE-USAGE-002 · GET /api/data/flow
用途与归属:GetAllFlowQuotaDates。优先沿用,迁入/适配后验收。
鉴权:Admin 员工身份。
请求:处理器读取:query.username。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:上游 OpenAPI 无本项响应规范;按处理器返回值补齐成功、拒绝和错误结构;代码 JSON/映射中观察到 data, message, success(仅为字面键观察,含分支/内部映射,不等同完整响应契约)。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:OPENAPI-MISSING:源码已注册,上游 OpenAPI 无匹配操作。
来源:router/api-router.go:340;controller.GetAllFlowQuotaDates controller/usedata.go:88。
CORE-USAGE-003 · GET /api/data/flow/self
用途与归属:GetUserFlowQuotaDates。优先沿用,迁入/适配后验收。
鉴权:客户登录身份(沿用上游 UserAuth 支持范围)。
请求:自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:上游 OpenAPI 无本项响应规范;按处理器返回值补齐成功、拒绝和错误结构;代码 JSON/映射中观察到 data, message, success(仅为字面键观察,含分支/内部映射,不等同完整响应契约)。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:OPENAPI-MISSING:源码已注册,上游 OpenAPI 无匹配操作。
来源:router/api-router.go:341;controller.GetUserFlowQuotaDates controller/usedata.go:107。
CORE-USAGE-004 · GET /api/data/self
用途与归属:获取个人额度数据。优先沿用,迁入/适配后验收。
鉴权:客户登录身份(沿用上游 UserAuth 支持范围)。
请求:处理器读取:query.start_timestamp, query.end_timestamp。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:200 成功(上游未声明响应 Schema);代码 JSON/映射中观察到 data, message, success(仅为字面键观察,含分支/内部映射,不等同完整响应契约)。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:RESPONSE-SCHEMA-MISSING:上游响应未定义结构;以处理器和兼容用例补齐。
来源:router/api-router.go:339;controller.GetUserQuotaDates controller/usedata.go:63;上游 api.json 中 GET /api/data/self。
CORE-USAGE-005 · GET /api/data/users
用途与归属:GetQuotaDatesByUser。优先沿用,迁入/适配后验收。
鉴权:Admin 员工身份。
请求:处理器读取:query.start_timestamp, query.end_timestamp。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:上游 OpenAPI 无本项响应规范;按处理器返回值补齐成功、拒绝和错误结构;代码 JSON/映射中观察到 data, message, success(仅为字面键观察,含分支/内部映射,不等同完整响应契约)。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:OPENAPI-MISSING:源码已注册,上游 OpenAPI 无匹配操作。
来源:router/api-router.go:338;controller.GetQuotaDatesByUser controller/usedata.go:48。
CORE-USAGE-006 · GET /api/log/
用途与归属:获取所有日志。优先沿用,迁入/适配后验收。
鉴权:Admin 员工身份。
请求:OpenAPI 参数:query.p:integer; query.page_size:integer。处理器读取:query.type, query.start_timestamp, query.end_timestamp, query.username, query.token_name, query.model_name, query.channel, query.group, query.request_id, query.upstream_request_id, query.p, query.page_size。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:200 成功(上游未声明响应 Schema);处理器使用 common.ApiSuccess 包络。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:RESPONSE-SCHEMA-MISSING:上游响应未定义结构;以处理器和兼容用例补齐。
来源:router/api-router.go:312;controller.GetAllLogs controller/log.go:13;上游 api.json 中 GET /api/log/。
CORE-USAGE-007 · GET /api/log/search
用途与归属:搜索日志。历史/废弃兼容,默认不启用。
鉴权:Admin 员工身份。
请求:OpenAPI 参数:query.keyword:string。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:200 成功(上游未声明响应 Schema);代码 JSON/映射中观察到 message, success(仅为字面键观察,含分支/内部映射,不等同完整响应契约)。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:RESPONSE-SCHEMA-MISSING:上游响应未定义结构;以处理器和兼容用例补齐。
来源:router/api-router.go:316;controller.SearchAllLogs controller/log.go:64;上游 api.json 中 GET /api/log/search。
CORE-USAGE-008 · GET /api/log/self
用途与归属:获取个人日志。优先沿用,迁入/适配后验收。
鉴权:客户登录身份(沿用上游 UserAuth 支持范围)。
请求:处理器读取:query.type, query.start_timestamp, query.end_timestamp, query.token_name, query.model_name, query.group, query.request_id, query.upstream_request_id, query.p, query.page_size。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:200 成功(上游未声明响应 Schema);处理器使用 common.ApiSuccess 包络。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:RESPONSE-SCHEMA-MISSING:上游响应未定义结构;以处理器和兼容用例补齐。
来源:router/api-router.go:317;controller.GetUserLogs controller/log.go:41;上游 api.json 中 GET /api/log/self。
CORE-USAGE-009 · GET /api/log/self/search
用途与归属:搜索个人日志。历史/废弃兼容,默认不启用。
鉴权:客户登录身份(沿用上游 UserAuth 支持范围)。
请求:OpenAPI 参数:query.keyword:string。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:200 成功(上游未声明响应 Schema);代码 JSON/映射中观察到 message, success(仅为字面键观察,含分支/内部映射,不等同完整响应契约)。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:RESPONSE-SCHEMA-MISSING:上游响应未定义结构;以处理器和兼容用例补齐。
来源:router/api-router.go:318;controller.SearchUserLogs controller/log.go:72;上游 api.json 中 GET /api/log/self/search。
CORE-USAGE-010 · GET /api/log/self/stat
用途与归属:获取个人日志统计。优先沿用,迁入/适配后验收。
鉴权:客户登录身份(沿用上游 UserAuth 支持范围)。
请求:处理器读取:query.type, query.start_timestamp, query.end_timestamp, query.token_name, query.model_name, query.channel, query.group。Query:type、start_timestamp、end_timestamp、token_name、model_name、channel、group;username 取身份上下文。当前统计不接 request_id;与列表过滤差异需显式呈现。
返回:success/message/data;data 为 quota、rpm、tpm。不要将 quota 直接展示成人民币;单位换算按固定积分规则。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:同条件与明细核对、时间边界、空结果、身份隔离;请求 ID 筛选不得伪装已被统计支持。
迁入差异:RESPONSE-SCHEMA-MISSING:上游响应未定义结构;以处理器和兼容用例补齐。
来源:router/api-router.go:314;controller.GetLogsSelfStat controller/log.go:130;上游 api.json 中 GET /api/log/self/stat。
CORE-USAGE-011 · GET /api/log/stat
用途与归属:获取日志统计。优先沿用,迁入/适配后验收。
鉴权:Admin 员工身份。
请求:处理器读取:query.type, query.start_timestamp, query.end_timestamp, query.token_name, query.username, query.model_name, query.channel, query.group。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:200 成功(上游未声明响应 Schema);代码 JSON/映射中观察到 data, message, quota, rpm, success, tpm(仅为字面键观察,含分支/内部映射,不等同完整响应契约)。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:RESPONSE-SCHEMA-MISSING:上游响应未定义结构;以处理器和兼容用例补齐。
来源:router/api-router.go:313;controller.GetLogsStat controller/log.go:103;上游 api.json 中 GET /api/log/stat。
CORE-USAGE-012 · GET /api/mj/
用途与归属:获取所有Midjourney任务。优先沿用,迁入/适配后验收。
鉴权:Admin 员工身份。
请求:处理器读取:query.channel_id, query.mj_id, query.start_timestamp, query.end_timestamp, query.p, query.page_size。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:200 成功(上游未声明响应 Schema);处理器使用 common.ApiSuccess 包络。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:RESPONSE-SCHEMA-MISSING:上游响应未定义结构;以处理器和兼容用例补齐。
来源:router/api-router.go:364;controller.GetAllMidjourney controller/midjourney.go:281;上游 api.json 中 GET /api/mj/。
CORE-USAGE-013 · GET /api/mj/self
用途与归属:获取个人Midjourney任务。优先沿用,迁入/适配后验收。
鉴权:客户登录身份(沿用上游 UserAuth 支持范围)。
请求:处理器读取:query.mj_id, query.start_timestamp, query.end_timestamp, query.p, query.page_size。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:200 成功(上游未声明响应 Schema);处理器使用 common.ApiSuccess 包络。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:RESPONSE-SCHEMA-MISSING:上游响应未定义结构;以处理器和兼容用例补齐。
来源:router/api-router.go:363;controller.GetUserMidjourney controller/midjourney.go:306;上游 api.json 中 GET /api/mj/self。
CORE-USAGE-014 · GET /api/task
用途与归属:GetAllTask。优先沿用,迁入/适配后验收。
鉴权:Admin 员工身份。
请求:处理器读取:query.start_timestamp, query.end_timestamp, query.platform, query.task_id, query.status, query.action, query.channel_id, query.p, query.page_size。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:上游 OpenAPI 无本项响应规范;按处理器返回值补齐成功、拒绝和错误结构;处理器使用 common.ApiSuccess 包络。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:OPENAPI-MISSING:源码已注册,上游 OpenAPI 无匹配操作。
来源:router/api-router.go:369;controller.GetAllTask controller/task.go:374。
CORE-USAGE-015 · GET /api/task/:task_id/artifacts
用途与归属:GetDashboardTaskArtifacts。优先沿用,迁入/适配后验收。
鉴权:客户登录身份(沿用上游 UserAuth 支持范围)。
请求:Path:task_id(必填;以实际路由名为准)。处理器读取:path.task_id。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:上游 OpenAPI 无本项响应规范;按处理器返回值补齐成功、拒绝和错误结构。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:OPENAPI-MISSING:源码已注册,上游 OpenAPI 无匹配操作。
来源:router/api-router.go:370;controller.GetDashboardTaskArtifacts controller/task.go:79。
CORE-USAGE-016 · GET /api/task/self
用途与归属:获取个人任务。优先沿用,迁入/适配后验收。
鉴权:客户登录身份(沿用上游 UserAuth 支持范围)。
请求:处理器读取:query.start_timestamp, query.end_timestamp, query.platform, query.task_id, query.status, query.action, query.p, query.page_size。自动提取未发现请求体字段;是否接受 Body 及约束仍以处理器为准。
返回:200 成功(上游未声明响应 Schema);处理器使用 common.ApiSuccess 包络。
业务与副作用:结果按客户/员工权限过滤,时间、分页、模型与 Key 筛选口径必须注明。执行状态和结算状态独立,缺失用量显示待核对;账单和汇总需可追溯,不能把诊断日志当唯一账务事实。
幂等、重试与异常:读取可有界重试,不新建调用或扣款;结果为空、权限失败与查询未知分开。 保留原 HTTP 状态、业务 success/message 或模型 error 包络,不将所有失败改成同一状态。区分参数、身份、权限、余额、限流、上游与执行未知;敏感栈和供应凭据不返回客户。
验收需求:成功与空态;缺失/非法字段;未登录/跨账户/无权限;限流;资源不存在;重试与状态冲突;数据库提交后响应丢失(写操作);返回字段与既有协议兼容。
迁入差异:RESPONSE-SCHEMA-MISSING:上游响应未定义结构;以处理器和兼容用例补齐。
来源:router/api-router.go:368;controller.GetUserTask controller/task.go:385;上游 api.json 中 GET /api/task/self。