文档
Core 接口

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:337controller.GetAllQuotaDates controller/usedata.go:31;上游 api.jsonGET /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:340controller.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:341controller.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:339controller.GetUserQuotaDates controller/usedata.go:63;上游 api.jsonGET /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:338controller.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:312controller.GetAllLogs controller/log.go:13;上游 api.jsonGET /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:316controller.SearchAllLogs controller/log.go:64;上游 api.jsonGET /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:317controller.GetUserLogs controller/log.go:41;上游 api.jsonGET /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:318controller.SearchUserLogs controller/log.go:72;上游 api.jsonGET /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:314controller.GetLogsSelfStat controller/log.go:130;上游 api.jsonGET /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:313controller.GetLogsStat controller/log.go:103;上游 api.jsonGET /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:364controller.GetAllMidjourney controller/midjourney.go:281;上游 api.jsonGET /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:363controller.GetUserMidjourney controller/midjourney.go:306;上游 api.jsonGET /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:369controller.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:370controller.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:368controller.GetUserTask controller/task.go:385;上游 api.jsonGET /api/task/self

On this page