11183 lines
387 KiB
TypeScript
11183 lines
387 KiB
TypeScript
/**
|
||
* This file was auto-generated by openapi-typescript.
|
||
* Do not make direct changes to the file.
|
||
*/
|
||
|
||
export interface paths {
|
||
"/api/v1/ops/config-versions": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["listOpsConfigVersions"];
|
||
put?: never;
|
||
post: operations["createOpsConfigVersion"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/config-versions/{id}/submit": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** @description 执行结构、必填字段、密钥引用和敏感键校验,通过后进入待审批状态。 */
|
||
patch: operations["submitOpsConfigVersion"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/config-versions/{id}/publish": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** @description 由审批角色发布他人创建且离线评测通过的待审批版本;按租户、试验对象或设备组激活灰度范围,同一范围原版本自动结束。 */
|
||
patch: operations["publishOpsConfigVersion"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/config-versions/{id}/rollback": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 以指定历史版本内容创建新的已发布版本;不修改历史版本,幂等重放返回同一新版本。 */
|
||
post: operations["rollbackOpsConfigVersion"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/config-versions/{id}/evaluations": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["listOpsConfigEvaluations"];
|
||
put?: never;
|
||
post: operations["createOpsConfigEvaluation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/resource-references": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["listOpsResourceReferences"];
|
||
put?: never;
|
||
post: operations["createOpsResourceReference"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/resource-references/{id}/revoke": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** @description 撤销资源引用后,后续依赖该引用的配置不能发布;已冻结的历史会话不被改写。 */
|
||
patch: operations["revokeOpsResourceReference"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/integration-issues": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 查询当前客户组织最近100条联调问题和全量发布阻断汇总,可按闭环状态筛选;记录仅包含诊断引用,不包含字幕或录音正文。 */
|
||
get: operations["listOpsIntegrationIssues"];
|
||
put?: never;
|
||
/** @description 由运营操作角色登记带严重级别的联调问题;设备与通话编号若同时提供必须属于同一关联链。 */
|
||
post: operations["createOpsIntegrationIssue"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/integration-issues/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** @description 使用强ETag更新严重级别、责任方和闭环证据;已解决必须有解决结果、根因与修复版本,已验证或已关闭还必须有回归结论与脱敏回归证据。 */
|
||
patch: operations["updateOpsIntegrationIssue"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/search": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 按脱敏设备编号、通话编号、房间编号、供应商任务编号或请求关联编号查询联调状态;不返回短期凭证、字幕或录音。 */
|
||
get: operations["searchOpsDiagnostics"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/external-dependencies": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 查询API和Worker最近一次OIDC、方舟及RTC低成本探针结果。只返回归一化错误码、时间和连续失败次数,不返回端点、凭据或原始错误正文。 */
|
||
get: operations["listOpsExternalDependencies"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/platform-health": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 查询云端主机最近一次签名健康快照;仅返回脱敏检查名、状态和短值,不返回密钥、证书正文或业务数据。 */
|
||
get: operations["getOpsPlatformHealth"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/jobs": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 查询当前客户组织的死信任务摘要,不返回任务正文或业务内容。 */
|
||
get: operations["listOpsDiagnosticJobs"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/jobs/{id}/retry": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 由有权限运营人员把指定死信任务受控重置为待执行,保留人工重试次数、操作人和审计。 */
|
||
post: operations["retryOpsDiagnosticJob"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/bundles": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 按精确检索条件生成可下载的脱敏JSON诊断包,并记录导出原因和审计。 */
|
||
post: operations["exportOpsDiagnosticBundle"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/acceptance-snapshots": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 在单个数据库事务中冻结候选构建、迁移、必需外部探针、高严重度联调问题、任务积压和严重告警的脱敏技术预检状态。结果可归档,但不替代真实设备、真实供应商、灰度观察或发布审批。 */
|
||
post: operations["exportOpsAcceptanceSnapshot"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/pilot-daily-snapshots": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 绑定候选版本与不可变构建摘要,按指定IANA时区的自然日聚合设备、通话、供应商、上传、告警和费用状态,生成可下载且有审计记录的脱敏试点日报。活动统计采用自然日窗口,积压和在线状态采用生成时刻快照。 */
|
||
post: operations["exportOpsPilotDailySnapshot"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/pilot-weekly-snapshots": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 绑定候选版本与不可变构建摘要,按指定IANA时区、从周一开始的七个自然日聚合内容审核、记忆、隐私请求、固件分布和配置差异,生成可下载且有审计记录的脱敏试点周报。平台没有权威投诉台账,因此响应明确要求附客服或CRM外部证据。 */
|
||
post: operations["exportOpsPilotWeeklySnapshot"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/conversations/{id}/stop": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 由有权限运营人员安全停止或收敛指定通话,重复请求不创建第二个供应商停止任务。 */
|
||
post: operations["stopOpsDiagnosticConversation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/conversations/{id}/reconcile": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 对启动中或停止中的供应商任务可靠排队状态对账;稳定状态返回无需排队的结果。 */
|
||
post: operations["reconcileOpsDiagnosticConversation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/devices/{id}/config-refresh": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 为指定设备可靠创建一次应用当前期望配置版本的命令。 */
|
||
post: operations["refreshOpsDiagnosticDeviceConfig"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/diagnostics/devices/{id}/revoke": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 由运营管理员立即吊销设备身份,后续设备签名请求均被拒绝;若设备存在未结束通话则在同一事务中过期或可靠停止。操作要求原因、幂等键和审计。 */
|
||
post: operations["revokeOpsDiagnosticDevice"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/sensitive-access-requests": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 申请人只查看自己的临时访问申请;审批和管理员角色查看当前客户组织的审批队列。读取时自动把到期申请收敛为EXPIRED。 */
|
||
get: operations["listOpsSensitiveAccessRequests"];
|
||
put?: never;
|
||
/** @description 按单个通话申请字幕读取和/或录音播放能力,有效期至少5分钟且最长4小时;申请理由、操作人和范围进入审计。 */
|
||
post: operations["createOpsSensitiveAccessRequest"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/sensitive-access-requests/{id}/review": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 由另一名运营审批或管理员批准/拒绝申请;申请人禁止自批,决定和理由不可覆盖。 */
|
||
post: operations["reviewOpsSensitiveAccessRequest"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/sensitive-conversations/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 仅向已批准申请的原申请人返回本通话最终字幕;若同一申请同时包含录音能力,则附带已验证录音分片编号。每次成功或拒绝均写访问日志和审计。 */
|
||
get: operations["getOpsSensitiveConversation"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/sensitive-media/{id}/play": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 在申请人、租户、通话、RECORDING_PLAY能力、有效期和原始录音授权全部有效时,现场签发5分钟播放地址并逐次审计。 */
|
||
post: operations["createOpsSensitiveRecordingAccess"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/config-rollouts": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["listOpsConfigRollouts"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/config-rollouts/{id}/pause": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** @description 暂停活动投放,使其不再被后续新建通话选中;已建立通话继续使用其冻结配置。仅配置审批员或平台管理员可操作。 */
|
||
patch: operations["pauseOpsConfigRollout"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/config-rollouts/{id}/resume": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** @description 恢复尚未被替代的暂停投放。目标配置必须仍为已发布状态,且同一配置键和范围不存在其他活动投放。 */
|
||
patch: operations["resumeOpsConfigRollout"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/device-groups": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["listOpsDeviceGroups"];
|
||
put?: never;
|
||
post: operations["createOpsDeviceGroup"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/price-books": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["listOpsPriceBooks"];
|
||
put?: never;
|
||
/** @description 创建供应商价格草稿;单价按百万分之一货币单位保存,历史版本不可修改。 */
|
||
post: operations["createOpsPriceBook"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/price-books/{id}/publish": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** @description 由另一名审批人员发布价格版本;同一客户组织与供应商的旧发布版本自动退役,但历史费用不重算。 */
|
||
patch: operations["publishOpsPriceBook"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/quota-policies": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["listOpsQuotaPolicies"];
|
||
put?: never;
|
||
/** @description 创建并激活新的额度策略版本;同一范围原策略自动退役,创建操作仅允许审批角色执行并写审计。 */
|
||
post: operations["createOpsQuotaPolicy"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/cost-summary": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 按标准化用量类别、指标、单位和币种聚合已冻结费用,不返回供应商内部任务编号。 */
|
||
get: operations["getOpsCostSummary"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/alert-routing-policies": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["listOpsAlertRoutingPolicies"];
|
||
put?: never;
|
||
/** @description 创建并立即激活新的告警路由版本,原同分类同级别版本退役,全程写入运营审计。 */
|
||
post: operations["createOpsAlertRoutingPolicy"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/alert-delivery-tests": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 返回最近50次告警接收器联通测试及真实Outbox投递状态,不包含接收器地址、签名密钥或发起原因。 */
|
||
get: operations["listOpsAlertDeliveryTests"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/alert-routing-policies/{id}/delivery-tests": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 针对活动路由发起受控测试通知;复用正式Webhook签名、Worker与重试链路,但不创建正式告警事件。 */
|
||
post: operations["createOpsAlertDeliveryTest"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/alerts": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 按严重度和最后命中时间返回客户组织告警队列,不泄露其他客户组织的信号或处置记录。 */
|
||
get: operations["listOpsAlerts"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/alerts/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["getOpsAlert"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/alerts/{id}/acknowledge": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["acknowledgeOpsAlert"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/alerts/{id}/mitigate": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["mitigateOpsAlert"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/alerts/{id}/resolve": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["resolveOpsAlert"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/alert-silences": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["listOpsAlertSilences"];
|
||
put?: never;
|
||
/** @description 在规则、分类或资源范围创建最长30天的有因静默;静默只抑制处置队列,不删除命中记录。 */
|
||
post: operations["createOpsAlertSilence"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/ops/alert-silences/{id}/revoke": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["revokeOpsAlertSilence"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/sharing-grants": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["listSharingGrants"];
|
||
put?: never;
|
||
post: operations["createSharingGrant"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/public/shares/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 使用创建匿名分享时返回的一次口令读取资源;无需登录,口令只在创建响应中出现,服务端仅保存SHA-256摘要。 */
|
||
get: operations["accessPublicSharedResource"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/sharing-grants/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete: operations["revokeSharingGrant"];
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/sharing-grants/{id}/resource": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 仅授权中指定的登录用户可读取;故事和字幕返回文字,录音返回5分钟短期播放或下载地址。每次成功和拒绝均写入分享访问日志。 */
|
||
get: operations["accessSharedResource"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** @description 仅持有有效EDIT授权的指定登录用户可修改故事;每次修改形成新修订版本并保留原来源。 */
|
||
patch: operations["editSharedStory"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/events": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 以SSE推送当前账号仍有家庭成员权限的资源状态;首次连接从当前游标开始,断线后通过Last-Event-ID在15分钟窗口内续传。事件不包含字幕、录音地址、凭证、提示词或密钥。 */
|
||
get: operations["streamWebEvents"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/health/live": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["getLiveness"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/health/ready": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["getReadiness"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/version": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["getVersion"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/me": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["getCurrentUser"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/households": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["listHouseholds"];
|
||
put?: never;
|
||
post: operations["createHousehold"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/households/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getHousehold"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch: operations["updateHousehold"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/households/{id}/members": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listHouseholdMembers"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/households/{id}/members/{member_id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
member_id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete: operations["removeHouseholdMember"];
|
||
options?: never;
|
||
head?: never;
|
||
patch: operations["updateHouseholdMemberRole"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/households/{id}/invitations": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listMemberInvitations"];
|
||
put?: never;
|
||
post: operations["createMemberInvitation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/households/{id}/invitations/{invitation_id}/revoke": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
invitation_id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["revokeMemberInvitation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/member-invitations/preview": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 使用一次性邀请凭据只读预览目标客户组织、家庭、角色和到期时间;不创建账号或成员关系,正式接受时仍会重新校验。 */
|
||
post: operations["previewMemberInvitation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/member-invitations/accept": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["acceptMemberInvitation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/households/{id}/ownership": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["transferHouseholdOwnership"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/households/{id}/subjects": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listSubjects"];
|
||
put?: never;
|
||
post: operations["createSubject"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/subjects/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getSubject"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch: operations["updateSubject"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/subjects/{id}/conversation-readiness": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
/** @description 汇总家庭可处理的首次通话准备条件;额度、生产路由及并发通话仍在设备真正创建通话时原子校验,避免把瞬时结果误报为保证。 */
|
||
get: operations["getSubjectConversationReadiness"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/subjects/{id}/consents": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listSubjectConsents"];
|
||
put?: never;
|
||
post: operations["grantSubjectConsent"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/subjects/{id}/facts": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listSubjectFacts"];
|
||
put?: never;
|
||
post: operations["createSubjectFact"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/subjects/{id}/facts/{fact_id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
fact_id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch: operations["updateSubjectFact"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/subjects/{id}/consents/{consent_id}/withdraw": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
consent_id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 撤回时间首次写入后不可变;重复调用返回同一撤回结果。若活动通话冻结快照正在使用被撤回的字幕、原录音、故事整理或个性化记忆授权,同一事务把通话转为STOPPING并可靠停止Agent;尚未启动Agent的房间直接过期。设备后续心跳或遥测从权威通话状态取得stop动作。此行为不改变响应结构,对旧网页客户端向后兼容。 */
|
||
post: operations["withdrawSubjectConsent"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/device-claims": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 使用只保存摘要的一次性短期绑定码,把未绑定设备绑定到当前账号有管理权的家庭和长者。 */
|
||
post: operations["claimDevice"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/devices": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["listManagedDevices"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/devices/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getManagedDevice"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/devices/{id}/presence": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getDevicePresence"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/devices/{id}/twin": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getDeviceTwin"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch: operations["updateDeviceTwin"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/devices/{id}/commands": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listDeviceCommands"];
|
||
put?: never;
|
||
post: operations["createDeviceCommand"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/households/{id}/firmware-signing-keys": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listFirmwareSigningKeys"];
|
||
put?: never;
|
||
post: operations["registerFirmwareSigningKey"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/households/{id}/firmware-signing-keys/revoke": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["revokeFirmwareSigningKey"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/households/{id}/firmware-releases": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listFirmwareReleases"];
|
||
put?: never;
|
||
post: operations["prepareFirmwareRelease"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/firmware-releases/{id}/finalize": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["finalizeFirmwareRelease"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/firmware-releases/{id}/impact": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getFirmwareReleaseImpact"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/firmware-releases/{id}/upload-session": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["renewFirmwareUpload"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/firmware-releases/{id}/pause": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["pauseFirmwareRelease"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/firmware-releases/{id}/resume": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["resumeFirmwareRelease"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/firmware-releases/{id}/retire": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["retireFirmwareRelease"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/households/{id}/firmware-rollouts": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listFirmwareRollouts"];
|
||
put?: never;
|
||
post: operations["startFirmwareRollout"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/firmware-rollouts/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getFirmwareRollout"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/firmware-rollouts/{id}/pause": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["pauseFirmwareRollout"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/firmware-rollouts/{id}/rollback": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["rollbackFirmwareRollout"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/subjects/{id}/conversations": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listSubjectConversations"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/conversations/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getConversationDetail"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/conversations/{id}/usage": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
/** @description 返回家庭成员可查看的标准化用量与冻结费用;不返回供应商事件号、任务编号或内部价格资源编号。 */
|
||
get: operations["getConversationUsage"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/subjects/{id}/recording-access-grants": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
/** @description 仅家庭所有者或管理员可查看当前长者最近的录音访问授权及撤销、到期状态。 */
|
||
get: operations["listRecordingAccessGrants"];
|
||
put?: never;
|
||
/** @description 家庭所有者或管理员执行显式授权;家庭角色本身不产生播放或下载能力。 */
|
||
post: operations["grantRecordingAccess"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/recording-access-grants/{id}/revoke": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["revokeRecordingAccess"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/conversations/{id}/media": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
/** @description 仅在原录音保存授权和当前账号独立播放或下载授权均有效时返回已验证分片;响应不含对象地址。 */
|
||
get: operations["getConversationMedia"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/media-segments/{id}/access": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 每次访问重新核验成员关系、原录音授权和独立PLAY/DOWNLOAD授权,并记录成功或拒绝审计。 */
|
||
post: operations["createMediaAccess"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/conversations/{id}/turns": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listConversationTurns"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/conversations/{id}/summaries": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listConversationContentSummaries"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/subjects/{id}/stories": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listSubjectStories"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/stories/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getStory"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch: operations["reviseStory"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/stories/{id}/confirm": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["confirmStory"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/stories/{id}/reject": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["rejectStory"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/subjects/{id}/memories": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listSubjectMemories"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/memories/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getCuratedMemory"];
|
||
put?: never;
|
||
post?: never;
|
||
delete: operations["deleteCuratedMemory"];
|
||
options?: never;
|
||
head?: never;
|
||
/** @description 修订当前记忆正文或切换ACTIVE/DISABLED状态;PENDING_DELETE、SUPERSEDED和DELETED均为不可修改终态,不能通过本接口恢复。 */
|
||
patch: operations["updateCuratedMemory"];
|
||
trace?: never;
|
||
};
|
||
"/api/v1/subjects/{id}/privacy-requests": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listSubjectPrivacyRequests"];
|
||
put?: never;
|
||
post: operations["createSubjectPrivacyRequest"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/privacy-requests/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getPrivacyRequest"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/subjects/{id}/exports": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["listSubjectExports"];
|
||
put?: never;
|
||
post: operations["createSubjectExport"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/api/v1/exports/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getExportTask"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/bootstrap": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["getDeviceBootstrap"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/config": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["getDeviceConfig"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/commands": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get: operations["pullDeviceCommands"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/commands/{id}/ack": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["acknowledgeDeviceCommand"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/firmware-releases/{id}/download": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getDeviceFirmwareDownload"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/conversations/{id}/upload-batches": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 设备提交near/far录音分片清单;业务API仅返回单对象短期PUT地址,不接收录音字节。 */
|
||
post: operations["prepareMediaUploadBatch"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/upload-batches/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get: operations["getDeviceMediaUploadBatch"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/upload-batches/{id}/complete": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 设备声明本批上传完成,平台可靠投递后台对象校验任务;重复提交不会创建重复任务。 */
|
||
post: operations["completeMediaUploadBatch"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/media-segments/{id}/local-delete-ack": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 设备在平台给出的local_delete_after之后删除本地密文并回报结果;该操作不删除云端已验证对象,DELETED重复回报幂等。 */
|
||
post: operations["acknowledgeLocalMediaDelete"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/conversations": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 分配房间和短期入房凭证;此步骤不启动语音智能体。 */
|
||
post: operations["createDeviceConversation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/telemetry:batch": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 当前签名设备批量上报状态、有限错误码和命令执行结果;平台以设备内event_key和sequence_no原子去重,更新设备影子、命令状态和与当前设备通话关联的异常回收信号。 */
|
||
post: operations["submitDeviceTelemetry"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/conversations/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** @description 设备确认入房后读取云端权威通话状态和下一步动作;供应商永久拒绝启动或异步启动失败时返回稳定failure_code及leave_room,响应不包含供应商原始错误。 */
|
||
get: operations["getDeviceConversationState"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/conversations/{id}/activate": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 设备确认已进入指定RTC房间后,投递固定供应商语音任务。 */
|
||
post: operations["activateDeviceConversation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/conversations/{id}/heartbeat": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 按严格递增序号刷新设备在线状态和通话短期租约;重复或乱序心跳不会延长租约。 */
|
||
post: operations["heartbeatDeviceConversation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/conversations/{id}/stop": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 记录设备挂断并可靠停止固定供应商任务;重复执行不产生第二个外部副作用。 */
|
||
post: operations["stopDeviceConversation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/device/v2/conversations/{id}/turns:batch": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 当供应商最终转写缺失时由当前通话所属终端批量补传终稿;平台按turn_key和sequence_no与已有供应商终稿原子去重合并,任一内容冲突会拒绝整批请求。 */
|
||
post: operations["submitDeviceConversationTurns"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/callbacks/v1/vertc/voice-chat": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post: operations["receiveVoiceChatCallback"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/callbacks/v1/platform-health": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** @description 接收云端主机五分钟一次的脱敏健康快照;Unix时间戳和原始正文使用独立HMAC-SHA256密钥签名,完全重复的正文幂等返回原记录。 */
|
||
post: operations["receivePlatformHealthReport"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
}
|
||
export type webhooks = Record<string, never>;
|
||
export interface components {
|
||
schemas: {
|
||
CreateOpsConfigVersionRequest: {
|
||
/** @description 运营定义的稳定版本族标识;AGENT_BUNDLE和ROUTING无需使用保留键名,活动投放会按配置类型、范围优先级及激活时间参与新通话选择。 */
|
||
config_key: string;
|
||
display_name: string;
|
||
/** @enum {string} */
|
||
config_kind: "PERSONA" | "VOICE" | "MODEL" | "ROUTING" | "AGENT_BUNDLE";
|
||
/** @description 最大64KiB;禁止secret、password、token、private_key、api_key和credential等敏感键。AGENT_BUNDLE的四个组件字段必须是当前客户组织内相应类型且曾发布的不可变配置版本UUID。 */
|
||
payload: {
|
||
[key: string]: unknown;
|
||
};
|
||
/** @description 只保存KMS或受控配置引用,不保存明文密钥。 */
|
||
secret_refs: {
|
||
[key: string]: string;
|
||
};
|
||
change_summary: string;
|
||
};
|
||
OpsConfigTransitionRequest: {
|
||
reason: string;
|
||
rollout: components["schemas"]["OpsConfigRolloutRequest"];
|
||
};
|
||
OpsConfigRolloutRequest: {
|
||
/** @enum {string} */
|
||
scope_type: "TENANT" | "SUBJECT" | "DEVICE_GROUP";
|
||
/**
|
||
* Format: uuid
|
||
* @description SUBJECT或DEVICE_GROUP必填;TENANT必须省略。
|
||
*/
|
||
scope_id?: string;
|
||
/** @description SUBJECT固定为100。 */
|
||
rollout_percent: number;
|
||
max_concurrent_calls: number;
|
||
};
|
||
OpsReasonRequest: {
|
||
reason: string;
|
||
};
|
||
OpsConfigRollout: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
config_version_id: string;
|
||
config_key: string;
|
||
/** @enum {string} */
|
||
scope_type: "TENANT" | "SUBJECT" | "DEVICE_GROUP";
|
||
/** Format: uuid */
|
||
scope_id?: string;
|
||
rollout_percent: number;
|
||
max_concurrent_calls: number;
|
||
/** @enum {string} */
|
||
status: "ACTIVE" | "PAUSED" | "ENDED";
|
||
reason: string;
|
||
/** Format: uuid */
|
||
activated_by: string;
|
||
/** Format: date-time */
|
||
activated_at: string;
|
||
/** Format: date-time */
|
||
paused_at?: string;
|
||
/** Format: date-time */
|
||
ended_at?: string;
|
||
/** Format: int64 */
|
||
row_version: number;
|
||
};
|
||
OpsConfigRolloutListData: {
|
||
items: components["schemas"]["OpsConfigRollout"][];
|
||
};
|
||
OpsConfigRolloutListResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsConfigRolloutListData"];
|
||
};
|
||
OpsConfigRolloutResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsConfigRollout"];
|
||
};
|
||
CreateOpsConfigEvaluationRequest: {
|
||
/**
|
||
* @description AGENT_QUALITY_V1只能登记到AGENT_BUNDLE,并要求标准Agent评测指标;指标中的config_version_id和model_config_ref必须绑定目标组合及其模型组件。
|
||
* @default GENERIC
|
||
* @enum {string}
|
||
*/
|
||
evidence_type: "GENERIC" | "AGENT_QUALITY_V1";
|
||
suite_version: string;
|
||
/** @enum {string} */
|
||
result: "PASSED" | "FAILED";
|
||
/** @description 最大32KiB的离线评测指标快照。 */
|
||
metrics: {
|
||
[key: string]: unknown;
|
||
};
|
||
report_ref: string;
|
||
};
|
||
OpsConfigEvaluation: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
config_version_id: string;
|
||
/** @enum {string} */
|
||
evidence_type: "GENERIC" | "AGENT_QUALITY_V1";
|
||
suite_version: string;
|
||
/** @enum {string} */
|
||
result: "PASSED" | "FAILED";
|
||
metrics: {
|
||
[key: string]: unknown;
|
||
};
|
||
report_ref: string;
|
||
/** Format: uuid */
|
||
evaluated_by: string;
|
||
/** Format: date-time */
|
||
evaluated_at: string;
|
||
};
|
||
OpsConfigEvaluationResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsConfigEvaluation"];
|
||
};
|
||
OpsConfigEvaluationListData: {
|
||
items: components["schemas"]["OpsConfigEvaluation"][];
|
||
};
|
||
OpsConfigEvaluationListResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsConfigEvaluationListData"];
|
||
};
|
||
CreateOpsResourceReferenceRequest: {
|
||
/** @enum {string} */
|
||
resource_type: "PROVIDER_CREDENTIAL" | "VOICE_RESOURCE" | "MODEL_RESOURCE" | "CERTIFICATE";
|
||
reference_name: string;
|
||
display_name: string;
|
||
/** Format: date-time */
|
||
verified_at: string;
|
||
/**
|
||
* Format: date-time
|
||
* @description CERTIFICATE类型必填且必须晚于verified_at;其他类型必须省略。
|
||
*/
|
||
expires_at?: string;
|
||
};
|
||
OpsResourceReference: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
tenant_id: string;
|
||
/** @enum {string} */
|
||
resource_type: "PROVIDER_CREDENTIAL" | "VOICE_RESOURCE" | "MODEL_RESOURCE" | "CERTIFICATE";
|
||
reference_name: string;
|
||
display_name: string;
|
||
/** @enum {string} */
|
||
status: "ACTIVE" | "REVOKED";
|
||
/** Format: date-time */
|
||
verified_at: string;
|
||
/** Format: date-time */
|
||
last_rotated_at?: string;
|
||
/** Format: date-time */
|
||
expires_at?: string;
|
||
/** Format: uuid */
|
||
created_by: string;
|
||
/** Format: int64 */
|
||
row_version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
OpsResourceReferenceResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsResourceReference"];
|
||
};
|
||
OpsResourceReferenceListData: {
|
||
items: components["schemas"]["OpsResourceReference"][];
|
||
};
|
||
OpsResourceReferenceListResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsResourceReferenceListData"];
|
||
};
|
||
/** @enum {string} */
|
||
IntegrationIssueStatus: "OPEN" | "IN_PROGRESS" | "RESOLVED" | "VERIFIED" | "CLOSED";
|
||
/** @enum {string} */
|
||
IntegrationIssueSeverity: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
|
||
CreateIntegrationIssueRequest: {
|
||
phenomenon: string;
|
||
severity: components["schemas"]["IntegrationIssueSeverity"];
|
||
/** Format: uuid */
|
||
device_id?: string;
|
||
/** Format: uuid */
|
||
conversation_id?: string;
|
||
/** Format: date-time */
|
||
occurred_at: string;
|
||
request_id?: string;
|
||
responsible_party: string;
|
||
};
|
||
UpdateIntegrationIssueRequest: {
|
||
status?: components["schemas"]["IntegrationIssueStatus"];
|
||
severity?: components["schemas"]["IntegrationIssueSeverity"];
|
||
responsible_party?: string;
|
||
resolution_result?: string;
|
||
/** @description 根因结论,不得粘贴字幕、录音、凭据或带签名下载地址。 */
|
||
root_cause?: string;
|
||
/** @description 包含修复的候选版本或不可变构建标识。 */
|
||
fixed_version?: string;
|
||
regression_conclusion?: string;
|
||
/** @description 请求关联号、脱敏诊断包编号和重复次数等可复核证据。 */
|
||
regression_evidence?: string;
|
||
};
|
||
IntegrationIssue: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
tenant_id: string;
|
||
phenomenon: string;
|
||
severity: components["schemas"]["IntegrationIssueSeverity"];
|
||
/** Format: uuid */
|
||
device_id?: string;
|
||
/** Format: uuid */
|
||
conversation_id?: string;
|
||
/** Format: date-time */
|
||
occurred_at: string;
|
||
request_id?: string;
|
||
responsible_party: string;
|
||
status: components["schemas"]["IntegrationIssueStatus"];
|
||
resolution_result?: string;
|
||
root_cause?: string;
|
||
fixed_version?: string;
|
||
regression_conclusion?: string;
|
||
regression_evidence?: string;
|
||
/** Format: uuid */
|
||
created_by: string;
|
||
/** Format: uuid */
|
||
updated_by: string;
|
||
/** Format: int64 */
|
||
version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
IntegrationIssueResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["IntegrationIssue"];
|
||
};
|
||
IntegrationIssueListData: {
|
||
items: components["schemas"]["IntegrationIssue"][];
|
||
summary: components["schemas"]["IntegrationIssueSummary"];
|
||
};
|
||
IntegrationIssueSummary: {
|
||
/** Format: int64 */
|
||
total: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 所有未关闭问题数。
|
||
*/
|
||
open: number;
|
||
/** Format: int64 */
|
||
critical_open: number;
|
||
/** Format: int64 */
|
||
high_open: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 未关闭的CRITICAL或HIGH问题数。
|
||
*/
|
||
release_blocking: number;
|
||
/** @description 仅表示高严重度问题门禁,不替代其他生产发布门禁。 */
|
||
release_gate_satisfied: boolean;
|
||
};
|
||
IntegrationIssueListResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["IntegrationIssueListData"];
|
||
};
|
||
OpsDiagnosticReasonRequest: {
|
||
reason: string;
|
||
};
|
||
OpsDiagnosticRecord: {
|
||
/** Format: uuid */
|
||
device_id: string;
|
||
device_status: string;
|
||
device_online: boolean;
|
||
firmware_version?: string;
|
||
/** Format: int64 */
|
||
desired_config_revision: number;
|
||
/** Format: int64 */
|
||
reported_config_revision?: number;
|
||
last_device_error_code?: string;
|
||
/** Format: date-time */
|
||
last_device_error_at?: string;
|
||
/** Format: uuid */
|
||
conversation_id?: string;
|
||
conversation_status?: string;
|
||
/** @description 通话稳定失败码;context_preparation_failed与设备创建通话错误details中的failure_code一致。 */
|
||
conversation_failure_code?: string;
|
||
/** Format: date-time */
|
||
allocation_expires_at?: string;
|
||
/**
|
||
* Format: date-time
|
||
* @description 短期入房凭证签发时间;不返回凭证正文
|
||
*/
|
||
credential_issued_at?: string;
|
||
/**
|
||
* Format: date-time
|
||
* @description 短期入房凭证过期时间
|
||
*/
|
||
credential_expires_at?: string;
|
||
room_id?: string;
|
||
provider?: string;
|
||
provider_task_ref?: string;
|
||
provider_task_status?: string;
|
||
provider_start_attempts: number;
|
||
provider_stop_attempts: number;
|
||
/** Format: int64 */
|
||
provider_notification_count: number;
|
||
last_provider_event?: string;
|
||
last_provider_event_status?: string;
|
||
/** Format: date-time */
|
||
last_provider_event_at?: string;
|
||
last_request_id?: string;
|
||
timings?: components["schemas"]["OpsDiagnosticTimings"];
|
||
};
|
||
OpsDiagnosticTimings: {
|
||
/** Format: date-time */
|
||
conversation_created_at: string;
|
||
/** Format: date-time */
|
||
room_issued_at?: string;
|
||
/** Format: date-time */
|
||
device_activated_at?: string;
|
||
/** Format: date-time */
|
||
agent_active_at?: string;
|
||
/** Format: date-time */
|
||
stop_requested_at?: string;
|
||
/** Format: date-time */
|
||
conversation_ended_at?: string;
|
||
/**
|
||
* Format: int64
|
||
* @description 创建通话至房间资料签发耗时
|
||
*/
|
||
room_issue_ms?: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 房间资料签发至设备确认入房耗时
|
||
*/
|
||
device_join_ms?: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 设备确认入房至供应商智能体活动耗时
|
||
*/
|
||
agent_start_ms?: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 发起停止至通话终态耗时
|
||
*/
|
||
agent_stop_ms?: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 通话创建至终态总耗时
|
||
*/
|
||
total_ms?: number;
|
||
};
|
||
OpsDiagnosticSearchData: {
|
||
items: components["schemas"]["OpsDiagnosticRecord"][];
|
||
};
|
||
OpsDiagnosticSearchResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsDiagnosticSearchData"];
|
||
};
|
||
OpsExternalDependency: {
|
||
/** @enum {string} */
|
||
service_name: "api" | "worker" | "callbacks";
|
||
/** @enum {string} */
|
||
dependency: "oidc_jwks" | "ark_tls" | "volc_rtc_tls" | "content_safety_tls";
|
||
/** @enum {string} */
|
||
status: "AVAILABLE" | "UNAVAILABLE";
|
||
/** Format: date-time */
|
||
checked_at: string;
|
||
/** Format: date-time */
|
||
last_success_at?: string;
|
||
/** Format: date-time */
|
||
last_failure_at?: string;
|
||
/** @enum {string} */
|
||
last_error_code?: "TIMEOUT" | "CANCELED" | "NETWORK_ERROR" | "TLS_ERROR" | "JWKS_INVALID" | "PROBE_FAILED";
|
||
/** Format: int64 */
|
||
latency_ms: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 当前进程配置的探针周期;客户端可在超过三倍周期未更新时标记结果过期。
|
||
*/
|
||
probe_interval_ms: number;
|
||
consecutive_failures: number;
|
||
};
|
||
OpsExternalDependencyListData: {
|
||
items: components["schemas"]["OpsExternalDependency"][];
|
||
};
|
||
OpsExternalDependencyListResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsExternalDependencyListData"];
|
||
};
|
||
PlatformHealthCheck: {
|
||
name: string;
|
||
/** @enum {string} */
|
||
status: "healthy" | "warning" | "critical";
|
||
value: string;
|
||
};
|
||
PlatformHealthReport: {
|
||
/** @constant */
|
||
schema: "platform-server-health-v1";
|
||
/** @enum {string} */
|
||
status: "healthy" | "warning" | "critical";
|
||
/** Format: date-time */
|
||
observed_at: string;
|
||
checks: components["schemas"]["PlatformHealthCheck"][];
|
||
};
|
||
PlatformHealthSnapshot: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @constant */
|
||
schema: "platform-server-health-v1";
|
||
/** @enum {string} */
|
||
status: "healthy" | "warning" | "critical";
|
||
/** Format: date-time */
|
||
observed_at: string;
|
||
/** Format: date-time */
|
||
received_at: string;
|
||
checks: components["schemas"]["PlatformHealthCheck"][];
|
||
};
|
||
PlatformHealthSnapshotResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["PlatformHealthSnapshot"];
|
||
};
|
||
PlatformHealthReceipt: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
status: "healthy" | "warning" | "critical";
|
||
duplicate: boolean;
|
||
};
|
||
PlatformHealthReceiptResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["PlatformHealthReceipt"];
|
||
};
|
||
OpsDiagnosticAction: {
|
||
/** @enum {string} */
|
||
action: "stop_conversation" | "reconcile_conversation" | "refresh_config" | "revoke_device" | "retry_job";
|
||
/** Format: uuid */
|
||
device_id?: string;
|
||
/** Format: uuid */
|
||
conversation_id?: string;
|
||
conversation_status?: string;
|
||
/** Format: uuid */
|
||
command_id?: string;
|
||
command_status?: string;
|
||
/** Format: uuid */
|
||
job_id?: string;
|
||
job_type?: string;
|
||
manual_retry_count?: number;
|
||
queued: boolean;
|
||
};
|
||
OpsDiagnosticActionResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsDiagnosticAction"];
|
||
};
|
||
OpsDiagnosticJob: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
event_type: string;
|
||
aggregate_type: string;
|
||
/** @enum {string} */
|
||
status: "dead";
|
||
attempt_count: number;
|
||
manual_retry_count: number;
|
||
last_error_code?: string;
|
||
/** Format: date-time */
|
||
last_manual_retry_at?: string;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
};
|
||
OpsDiagnosticJobListData: {
|
||
items: components["schemas"]["OpsDiagnosticJob"][];
|
||
};
|
||
OpsDiagnosticJobListResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsDiagnosticJobListData"];
|
||
};
|
||
OpsDiagnosticBundleRequest: {
|
||
/** @enum {string} */
|
||
field: "device_id" | "conversation_id" | "room_id" | "provider_task_ref" | "request_id";
|
||
value: string;
|
||
reason: string;
|
||
};
|
||
OpsDiagnosticBundle: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: date-time */
|
||
generated_at: string;
|
||
search_field: string;
|
||
search_value: string;
|
||
/** @enum {string} */
|
||
redaction_policy: "ops-diagnostic-minimal-v1";
|
||
items: components["schemas"]["OpsDiagnosticRecord"][];
|
||
};
|
||
OpsDiagnosticBundleResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsDiagnosticBundle"];
|
||
};
|
||
OpsAcceptanceSnapshotRequest: {
|
||
candidate_version: string;
|
||
/** @description 候选容器镜像或不可变构建产物的SHA-256摘要。 */
|
||
build_digest: string;
|
||
/** @enum {string} */
|
||
environment: "LAB" | "STAGING" | "PRODUCTION";
|
||
/** @enum {string} */
|
||
run_type: "REAL_DEVICE_PROVIDER" | "PILOT" | "PRODUCTION_RELEASE";
|
||
/** @description 本次验收覆盖的设备、客户组织或灰度范围,不填写敏感业务内容。 */
|
||
scope: string;
|
||
required_dependencies: ("oidc_jwks" | "ark_tls" | "volc_rtc_tls" | "content_safety_tls")[];
|
||
reason: string;
|
||
};
|
||
OpsAcceptanceDatabaseState: {
|
||
/** Format: int64 */
|
||
migration_version: number;
|
||
dirty: boolean;
|
||
};
|
||
OpsAcceptancePlatformHealthState: {
|
||
/** @enum {string} */
|
||
state: "CURRENT" | "STALE" | "MISSING";
|
||
/** @enum {string} */
|
||
status?: "healthy" | "warning" | "critical";
|
||
/** Format: date-time */
|
||
observed_at?: string;
|
||
/** Format: date-time */
|
||
received_at?: string;
|
||
check_count: number;
|
||
warning_count: number;
|
||
critical_count: number;
|
||
/** @description 仅当快照未超过15分钟且综合状态及全部检查均为healthy时为true。 */
|
||
gate_satisfied: boolean;
|
||
};
|
||
OpsAcceptanceDependencyState: {
|
||
/** @enum {string} */
|
||
service_name: "api" | "worker";
|
||
/** @enum {string} */
|
||
dependency: "oidc_jwks" | "ark_tls" | "volc_rtc_tls" | "content_safety_tls";
|
||
/** @enum {string} */
|
||
status: "AVAILABLE" | "UNAVAILABLE" | "MISSING";
|
||
/** Format: date-time */
|
||
checked_at?: string;
|
||
/** Format: date-time */
|
||
last_success_at?: string;
|
||
/** Format: date-time */
|
||
last_failure_at?: string;
|
||
last_error_code?: string;
|
||
/** Format: int64 */
|
||
latency_ms: number;
|
||
/** Format: int64 */
|
||
probe_interval_ms: number;
|
||
consecutive_failures: number;
|
||
fresh: boolean;
|
||
gate_satisfied: boolean;
|
||
};
|
||
OpsAcceptanceOutboxState: {
|
||
/** Format: int64 */
|
||
pending: number;
|
||
/** Format: int64 */
|
||
processing: number;
|
||
/** Format: int64 */
|
||
dead: number;
|
||
};
|
||
OpsAcceptanceAlertState: {
|
||
/** Format: int64 */
|
||
critical_open: number;
|
||
/** Format: int64 */
|
||
high_open: number;
|
||
/** Format: int64 */
|
||
blocking: number;
|
||
blocking_items: components["schemas"]["OpsAcceptanceBlockingAlert"][];
|
||
/** @description true表示阻断告警超过100条,快照只携带最早的100条定位信息。 */
|
||
blocking_items_truncated: boolean;
|
||
};
|
||
OpsAcceptanceBlockingAlert: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
rule_code: string;
|
||
/** @enum {string} */
|
||
severity: "CRITICAL" | "HIGH";
|
||
/** @enum {string} */
|
||
status: "OPEN" | "ACKNOWLEDGED" | "MITIGATED" | "SILENCED";
|
||
resource_type?: string;
|
||
/** Format: uuid */
|
||
resource_id?: string;
|
||
/**
|
||
* @description 仅表示快照生成时关联公开资源是否存在;MISSING不能代替人工复核和关闭。
|
||
* @enum {string}
|
||
*/
|
||
resource_state: "PRESENT" | "MISSING" | "AGGREGATE" | "UNKNOWN";
|
||
/** Format: date-time */
|
||
first_detected_at: string;
|
||
/** Format: date-time */
|
||
last_detected_at: string;
|
||
};
|
||
OpsAcceptanceGate: {
|
||
/** @enum {string} */
|
||
code: "candidate_build_identified" | "database_migration_clean" | "required_dependencies_available" | "integration_issues_clear" | "outbox_clear" | "critical_alerts_clear" | "platform_health_current";
|
||
satisfied: boolean;
|
||
summary: string;
|
||
};
|
||
OpsAcceptanceSnapshot: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: date-time */
|
||
generated_at: string;
|
||
/** Format: uuid */
|
||
tenant_id: string;
|
||
candidate_version: string;
|
||
build_digest: string;
|
||
/** @enum {string} */
|
||
environment: "LAB" | "STAGING" | "PRODUCTION";
|
||
/** @enum {string} */
|
||
run_type: "REAL_DEVICE_PROVIDER" | "PILOT" | "PRODUCTION_RELEASE";
|
||
scope: string;
|
||
/** @enum {string} */
|
||
redaction_policy: "ops-acceptance-minimal-v1";
|
||
runtime_build: components["schemas"]["BuildInfo"];
|
||
database: components["schemas"]["OpsAcceptanceDatabaseState"];
|
||
integration_issues: components["schemas"]["IntegrationIssueSummary"];
|
||
external_dependencies: components["schemas"]["OpsAcceptanceDependencyState"][];
|
||
outbox: components["schemas"]["OpsAcceptanceOutboxState"];
|
||
alerts: components["schemas"]["OpsAcceptanceAlertState"];
|
||
platform_health: components["schemas"]["OpsAcceptancePlatformHealthState"];
|
||
gates: components["schemas"]["OpsAcceptanceGate"][];
|
||
overall_gate_satisfied: boolean;
|
||
disclaimer: string;
|
||
};
|
||
OpsAcceptanceSnapshotResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsAcceptanceSnapshot"];
|
||
};
|
||
OpsPilotDailySnapshotRequest: {
|
||
candidate_version: string;
|
||
build_digest: string;
|
||
/**
|
||
* Format: date
|
||
* @description 统计业务日期,不允许晚于指定时区的当前日期。
|
||
*/
|
||
local_date: string;
|
||
/**
|
||
* @description IANA时区名称,用于确定自然日边界和夏令时。
|
||
* @example Asia/Shanghai
|
||
*/
|
||
timezone: string;
|
||
reason: string;
|
||
};
|
||
OpsPilotDeviceState: {
|
||
/** Format: int64 */
|
||
bound: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 当前已绑定且状态为registered的设备。
|
||
*/
|
||
eligible: number;
|
||
/** Format: int64 */
|
||
quarantined: number;
|
||
/** Format: int64 */
|
||
revoked: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 生成时刻可用设备中的在线数量。
|
||
*/
|
||
online: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 生成时刻可用设备中的离线数量。
|
||
*/
|
||
offline: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 所选自然日内至少有一次最新孪生上报时间的当前可用设备数量。
|
||
*/
|
||
reported_during_day: number;
|
||
};
|
||
OpsPilotCountByStatus: {
|
||
/** @enum {string} */
|
||
status: "PREPARING" | "ROOM_ISSUED" | "STARTING_AGENT" | "ACTIVE" | "STOPPING" | "COMPLETED" | "FAILED" | "EXPIRED";
|
||
/** Format: int64 */
|
||
count: number;
|
||
};
|
||
OpsPilotConversationState: {
|
||
/**
|
||
* Format: int64
|
||
* @description 所选自然日内创建的通话数量。
|
||
*/
|
||
total: number;
|
||
statuses: components["schemas"]["OpsPilotCountByStatus"][];
|
||
};
|
||
OpsPilotProviderState: {
|
||
provider: string;
|
||
/** @enum {string} */
|
||
current_status: "AVAILABLE" | "DEGRADED" | "UNAVAILABLE" | "UNKNOWN";
|
||
/** Format: int64 */
|
||
consecutive_failures: number;
|
||
/** Format: int64 */
|
||
failed_events_during_day: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 所选自然日内首次进入FAILED状态且关联该供应商的通话数。
|
||
*/
|
||
failed_calls_during_day: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 生成时刻待处理或失败的供应商通知数量。
|
||
*/
|
||
notification_backlog: number;
|
||
};
|
||
OpsPilotUploadState: {
|
||
/** Format: int64 */
|
||
created_during_day: number;
|
||
/** Format: int64 */
|
||
completed_during_day: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 所选自然日内最后更新且当前为FAILED的批次数量。
|
||
*/
|
||
failed_during_day: number;
|
||
/** Format: int64 */
|
||
open_batches: number;
|
||
/** Format: int64 */
|
||
pending_segments: number;
|
||
/** Format: int64 */
|
||
rejected_segments: number;
|
||
};
|
||
OpsPilotAlertState: {
|
||
/** Format: int64 */
|
||
opened_during_day: number;
|
||
/** Format: int64 */
|
||
resolved_during_day: number;
|
||
/** Format: int64 */
|
||
open: number;
|
||
/** Format: int64 */
|
||
high_open: number;
|
||
/** Format: int64 */
|
||
critical_open: number;
|
||
};
|
||
OpsPilotCostState: {
|
||
currency: string;
|
||
/** Format: int64 */
|
||
cost_micros: number;
|
||
/** Format: int64 */
|
||
line_count: number;
|
||
};
|
||
OpsPilotDailySnapshot: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: date-time */
|
||
generated_at: string;
|
||
/** Format: uuid */
|
||
tenant_id: string;
|
||
candidate_version: string;
|
||
build_digest: string;
|
||
/** Format: date */
|
||
local_date: string;
|
||
timezone: string;
|
||
/** Format: date-time */
|
||
window_start: string;
|
||
/** Format: date-time */
|
||
window_end: string;
|
||
/** @enum {string} */
|
||
redaction_policy: "ops-pilot-daily-minimal-v1";
|
||
devices: components["schemas"]["OpsPilotDeviceState"];
|
||
conversations: components["schemas"]["OpsPilotConversationState"];
|
||
providers: components["schemas"]["OpsPilotProviderState"][];
|
||
uploads: components["schemas"]["OpsPilotUploadState"];
|
||
alerts: components["schemas"]["OpsPilotAlertState"];
|
||
costs: components["schemas"]["OpsPilotCostState"][];
|
||
disclaimer: string;
|
||
};
|
||
OpsPilotDailySnapshotResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsPilotDailySnapshot"];
|
||
};
|
||
OpsPilotWeeklySnapshotRequest: {
|
||
candidate_version: string;
|
||
build_digest: string;
|
||
/**
|
||
* Format: date
|
||
* @description 周一的业务日期,不允许晚于指定时区的当前日期。
|
||
*/
|
||
week_start: string;
|
||
/**
|
||
* @description IANA时区名称,用于确定七个自然日及夏令时边界。
|
||
* @example Asia/Shanghai
|
||
*/
|
||
timezone: string;
|
||
reason: string;
|
||
};
|
||
OpsPilotWeeklyContentReview: {
|
||
/** Format: int64 */
|
||
stories_generated: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 周内发生修订、确认或拒绝动作的去重故事数。
|
||
*/
|
||
stories_review_touched: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 周内发生用户修订的去重故事数。
|
||
*/
|
||
stories_manually_revised: number;
|
||
/** @description false表示本周没有审核触达故事,比例不可计算。 */
|
||
manual_revision_rate_available: boolean;
|
||
/**
|
||
* Format: int64
|
||
* @description 人工修订故事数除以审核触达故事数,单位为基点;仅在available为true时使用。
|
||
*/
|
||
manual_revision_rate_basis_points: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 周内成功确认动作数。
|
||
*/
|
||
stories_confirmed: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 周内成功拒绝动作数。
|
||
*/
|
||
stories_rejected: number;
|
||
/** @description false表示本周没有确认或拒绝决策,比例不可计算。 */
|
||
story_confirmation_rate_available: boolean;
|
||
/**
|
||
* Format: int64
|
||
* @description 确认数除以确认与拒绝之和,单位为基点;仅在available为true时使用。
|
||
*/
|
||
story_confirmation_rate_basis_points: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 周内确认的首版正式记忆数。
|
||
*/
|
||
memories_created: number;
|
||
/**
|
||
* Format: int64
|
||
* @description 周内确认的后续记忆版本数。
|
||
*/
|
||
memory_revisions: number;
|
||
/** Format: int64 */
|
||
current_memory_index_pending: number;
|
||
/** Format: int64 */
|
||
current_memory_index_failed: number;
|
||
};
|
||
OpsPilotWeeklyCountByType: {
|
||
/** @enum {string} */
|
||
type: "ACCESS" | "CORRECTION" | "CONSENT_WITHDRAWAL" | "DELETE";
|
||
/** Format: int64 */
|
||
count: number;
|
||
};
|
||
OpsPilotWeeklyCountByStatus: {
|
||
/** @enum {string} */
|
||
status: "SUBMITTED" | "VERIFYING" | "EXECUTING" | "COMPLETED" | "PARTIAL_FAILED";
|
||
/** Format: int64 */
|
||
count: number;
|
||
};
|
||
OpsPilotWeeklyPrivacyState: {
|
||
/** Format: int64 */
|
||
requests_created_during_week: number;
|
||
by_type: components["schemas"]["OpsPilotWeeklyCountByType"][];
|
||
by_status: components["schemas"]["OpsPilotWeeklyCountByStatus"][];
|
||
/**
|
||
* Format: int64
|
||
* @description 生成时刻所有非COMPLETED请求数,不限于所选周。
|
||
*/
|
||
current_open: number;
|
||
/** Format: int64 */
|
||
current_partial_failed: number;
|
||
};
|
||
OpsPilotWeeklyFirmwareVersion: {
|
||
model: string;
|
||
/** @description 设备尚未上报时为UNREPORTED。 */
|
||
firmware_version: string;
|
||
/** Format: int64 */
|
||
device_count: number;
|
||
};
|
||
OpsPilotWeeklyConfigState: {
|
||
/** Format: int64 */
|
||
eligible_devices: number;
|
||
/** Format: int64 */
|
||
aligned: number;
|
||
/** Format: int64 */
|
||
drifted: number;
|
||
/** Format: int64 */
|
||
unreported: number;
|
||
/** Format: int64 */
|
||
active_rollouts: number;
|
||
/** Format: int64 */
|
||
paused_rollouts: number;
|
||
};
|
||
OpsPilotWeeklyExternalEvidence: {
|
||
/** @enum {string} */
|
||
code: "complaints";
|
||
/** @enum {string} */
|
||
status: "REQUIRED";
|
||
reason: string;
|
||
};
|
||
OpsPilotWeeklySnapshot: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: date-time */
|
||
generated_at: string;
|
||
/** Format: uuid */
|
||
tenant_id: string;
|
||
candidate_version: string;
|
||
build_digest: string;
|
||
/** Format: date */
|
||
week_start: string;
|
||
timezone: string;
|
||
/** Format: date-time */
|
||
window_start: string;
|
||
/** Format: date-time */
|
||
window_end: string;
|
||
/** @description false表示所选自然周尚未结束,结果只能作为周中快照。 */
|
||
is_complete: boolean;
|
||
/** @enum {string} */
|
||
redaction_policy: "ops-pilot-weekly-minimal-v1";
|
||
content_review: components["schemas"]["OpsPilotWeeklyContentReview"];
|
||
privacy: components["schemas"]["OpsPilotWeeklyPrivacyState"];
|
||
firmware_versions: components["schemas"]["OpsPilotWeeklyFirmwareVersion"][];
|
||
config: components["schemas"]["OpsPilotWeeklyConfigState"];
|
||
external_evidence: components["schemas"]["OpsPilotWeeklyExternalEvidence"][];
|
||
disclaimer: string;
|
||
};
|
||
OpsPilotWeeklySnapshotResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsPilotWeeklySnapshot"];
|
||
};
|
||
/** @enum {string} */
|
||
OpsSensitiveAccessCapability: "TRANSCRIPT_READ" | "RECORDING_PLAY";
|
||
CreateOpsSensitiveAccessRequest: {
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
capabilities: components["schemas"]["OpsSensitiveAccessCapability"][];
|
||
reason: string;
|
||
/**
|
||
* Format: date-time
|
||
* @description 至少晚于当前时间5分钟且不超过4小时。
|
||
*/
|
||
expires_at: string;
|
||
};
|
||
ReviewOpsSensitiveAccessRequest: {
|
||
/** @enum {string} */
|
||
decision: "APPROVE" | "REJECT";
|
||
reason: string;
|
||
};
|
||
OpsSensitiveAccessRequest: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
/** Format: uuid */
|
||
requester_user_id: string;
|
||
capabilities: components["schemas"]["OpsSensitiveAccessCapability"][];
|
||
reason: string;
|
||
/** @enum {string} */
|
||
status: "PENDING" | "APPROVED" | "REJECTED" | "REVOKED" | "EXPIRED";
|
||
/** Format: date-time */
|
||
requested_expires_at: string;
|
||
/** Format: uuid */
|
||
reviewed_by?: string;
|
||
review_reason?: string;
|
||
/** Format: date-time */
|
||
reviewed_at?: string;
|
||
/** Format: date-time */
|
||
revoked_at?: string;
|
||
/** Format: int64 */
|
||
version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
};
|
||
OpsSensitiveAccessRequestResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsSensitiveAccessRequest"];
|
||
};
|
||
OpsSensitiveAccessRequestListData: {
|
||
items: components["schemas"]["OpsSensitiveAccessRequest"][];
|
||
};
|
||
OpsSensitiveAccessRequestListResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsSensitiveAccessRequestListData"];
|
||
};
|
||
OpsSensitiveTurn: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: int64 */
|
||
sequence_no: number;
|
||
/** @enum {string} */
|
||
speaker: "subject" | "agent";
|
||
/** Format: date-time */
|
||
start_at: string;
|
||
/** Format: date-time */
|
||
end_at: string;
|
||
final_text: string;
|
||
interrupted: boolean;
|
||
};
|
||
OpsSensitiveSegment: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
track: "near" | "far";
|
||
sequence_no: number;
|
||
content_type: string;
|
||
duration_ms: number;
|
||
};
|
||
OpsSensitiveConversation: {
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
/** Format: uuid */
|
||
grant_id: string;
|
||
/** Format: date-time */
|
||
access_until: string;
|
||
turns: components["schemas"]["OpsSensitiveTurn"][];
|
||
segments: components["schemas"]["OpsSensitiveSegment"][];
|
||
};
|
||
OpsSensitiveConversationResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsSensitiveConversation"];
|
||
};
|
||
OpsSensitiveRecordingAccessRequest: {
|
||
/** Format: uuid */
|
||
grant_id: string;
|
||
};
|
||
OpsSensitiveRecordingAccess: {
|
||
/** Format: uuid */
|
||
segment_id: string;
|
||
/** Format: uri */
|
||
access_url: string;
|
||
/** Format: date-time */
|
||
access_until: string;
|
||
};
|
||
OpsSensitiveRecordingAccessResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsSensitiveRecordingAccess"];
|
||
};
|
||
CreateOpsDeviceGroupRequest: {
|
||
name: string;
|
||
/** @description 保存创建时的分组说明或选择条件快照。 */
|
||
selector: {
|
||
[key: string]: unknown;
|
||
};
|
||
device_ids: string[];
|
||
};
|
||
OpsDeviceGroup: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
tenant_id: string;
|
||
name: string;
|
||
selector: {
|
||
[key: string]: unknown;
|
||
};
|
||
/** @enum {string} */
|
||
status: "ACTIVE" | "ARCHIVED";
|
||
device_ids: string[];
|
||
/** Format: uuid */
|
||
created_by: string;
|
||
/** Format: int64 */
|
||
row_version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
OpsDeviceGroupResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsDeviceGroup"];
|
||
};
|
||
OpsDeviceGroupListData: {
|
||
items: components["schemas"]["OpsDeviceGroup"][];
|
||
};
|
||
OpsDeviceGroupListResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsDeviceGroupListData"];
|
||
};
|
||
BillingRateInput: {
|
||
/** @enum {string} */
|
||
usage_category: "RTC" | "END_TO_END_VOICE" | "ASR" | "LLM" | "TTS" | "STORAGE" | "POST_PROCESSING";
|
||
metric_code: string;
|
||
unit: string;
|
||
/**
|
||
* Format: int64
|
||
* @description 每计量单位的百万分之一货币单位价格。
|
||
*/
|
||
unit_price_micros: number;
|
||
};
|
||
CreateBillingPriceBookRequest: {
|
||
provider: string;
|
||
/** @example CNY */
|
||
currency: string;
|
||
/** @description 受控报价单或合同引用,不保存供应商凭据。 */
|
||
source_ref: string;
|
||
change_summary: string;
|
||
/** Format: date-time */
|
||
effective_from: string;
|
||
rates: components["schemas"]["BillingRateInput"][];
|
||
};
|
||
BillingPriceRate: components["schemas"]["BillingRateInput"] & {
|
||
/** Format: uuid */
|
||
id: string;
|
||
};
|
||
BillingPriceBook: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
tenant_id: string;
|
||
provider: string;
|
||
currency: string;
|
||
version_no: number;
|
||
/** @enum {string} */
|
||
status: "DRAFT" | "PUBLISHED" | "RETIRED";
|
||
source_ref: string;
|
||
change_summary: string;
|
||
/** Format: date-time */
|
||
effective_from: string;
|
||
/** Format: uuid */
|
||
created_by: string;
|
||
/** Format: uuid */
|
||
published_by?: string;
|
||
/** Format: date-time */
|
||
published_at?: string;
|
||
/** Format: date-time */
|
||
retired_at?: string;
|
||
/** Format: int64 */
|
||
row_version: number;
|
||
rates: components["schemas"]["BillingPriceRate"][];
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
BillingPriceBookResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["BillingPriceBook"];
|
||
};
|
||
BillingPriceBookListData: {
|
||
items: components["schemas"]["BillingPriceBook"][];
|
||
};
|
||
BillingPriceBookListResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["BillingPriceBookListData"];
|
||
};
|
||
CreateQuotaPolicyRequest: {
|
||
/** @enum {string} */
|
||
scope_type: "TENANT" | "DEVICE";
|
||
/**
|
||
* Format: uuid
|
||
* @description DEVICE范围必填;TENANT范围必须省略。
|
||
*/
|
||
scope_id?: string;
|
||
/** @example Asia/Shanghai */
|
||
billing_timezone: string;
|
||
/** @example CNY */
|
||
currency: string;
|
||
/** Format: int64 */
|
||
daily_limit_micros: number;
|
||
/** Format: int64 */
|
||
monthly_limit_micros: number;
|
||
max_concurrent_calls: number;
|
||
max_call_duration_sec: number;
|
||
/** @enum {string} */
|
||
in_progress_action: "STOP_IMMEDIATELY" | "COMPLETE_CURRENT_TURN";
|
||
change_summary: string;
|
||
};
|
||
QuotaPolicy: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
tenant_id: string;
|
||
/** @enum {string} */
|
||
scope_type: "TENANT" | "DEVICE";
|
||
/** Format: uuid */
|
||
scope_id?: string;
|
||
version_no: number;
|
||
/** @enum {string} */
|
||
status: "ACTIVE" | "RETIRED";
|
||
billing_timezone: string;
|
||
currency: string;
|
||
/** Format: int64 */
|
||
daily_limit_micros: number;
|
||
/** Format: int64 */
|
||
monthly_limit_micros: number;
|
||
max_concurrent_calls: number;
|
||
max_call_duration_sec: number;
|
||
/** @enum {string} */
|
||
in_progress_action: "STOP_IMMEDIATELY" | "COMPLETE_CURRENT_TURN";
|
||
change_summary: string;
|
||
/** Format: uuid */
|
||
created_by: string;
|
||
/** Format: date-time */
|
||
retired_at?: string;
|
||
/** Format: int64 */
|
||
row_version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
QuotaPolicyResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["QuotaPolicy"];
|
||
};
|
||
QuotaPolicyListData: {
|
||
items: components["schemas"]["QuotaPolicy"][];
|
||
};
|
||
QuotaPolicyListResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["QuotaPolicyListData"];
|
||
};
|
||
CostSummaryLine: {
|
||
/** @enum {string} */
|
||
usage_category: "RTC" | "END_TO_END_VOICE" | "ASR" | "LLM" | "TTS" | "STORAGE" | "POST_PROCESSING";
|
||
metric_code: string;
|
||
quantity: string;
|
||
unit: string;
|
||
/** Format: int64 */
|
||
cost_micros: number;
|
||
currency: string;
|
||
};
|
||
CostSummary: {
|
||
/** Format: date-time */
|
||
from: string;
|
||
/** Format: date-time */
|
||
to: string;
|
||
/** Format: int64 */
|
||
cost_micros: number;
|
||
/** @description 无费用行时为空字符串。 */
|
||
currency: string;
|
||
lines: components["schemas"]["CostSummaryLine"][];
|
||
};
|
||
CostSummaryResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["CostSummary"];
|
||
};
|
||
/** @enum {string} */
|
||
AlertCategory: "BUSINESS" | "TECHNICAL" | "SECURITY" | "COST";
|
||
/** @enum {string} */
|
||
AlertSeverity: "CRITICAL" | "HIGH" | "MEDIUM" | "LOW";
|
||
/** @enum {string} */
|
||
AlertStatus: "OPEN" | "ACKNOWLEDGED" | "MITIGATED" | "RESOLVED" | "SILENCED";
|
||
CreateAlertRoutingPolicyRequest: {
|
||
category: components["schemas"]["AlertCategory"];
|
||
severity: components["schemas"]["AlertSeverity"];
|
||
receiver_group: string;
|
||
response_minutes: number;
|
||
/** @description 不得小于响应时限。 */
|
||
escalation_after_minutes: number;
|
||
escalation_receiver_group: string;
|
||
runbook_ref: string;
|
||
change_summary: string;
|
||
};
|
||
AlertRoutingPolicy: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
tenant_id: string;
|
||
category: components["schemas"]["AlertCategory"];
|
||
severity: components["schemas"]["AlertSeverity"];
|
||
version_no: number;
|
||
/** @enum {string} */
|
||
status: "ACTIVE" | "RETIRED";
|
||
receiver_group: string;
|
||
response_minutes: number;
|
||
escalation_after_minutes: number;
|
||
escalation_receiver_group: string;
|
||
runbook_ref: string;
|
||
change_summary: string;
|
||
/** Format: uuid */
|
||
created_by: string;
|
||
/** Format: date-time */
|
||
retired_at?: string;
|
||
/** Format: int64 */
|
||
row_version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
AlertRoutingPolicyResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["AlertRoutingPolicy"];
|
||
};
|
||
AlertRoutingPolicyListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["AlertRoutingPolicy"][];
|
||
};
|
||
};
|
||
CreateAlertDeliveryTestRequest: {
|
||
/** @description 仅写入运营审计,不发送给外部接收器。 */
|
||
reason: string;
|
||
};
|
||
AlertDeliveryTest: {
|
||
/**
|
||
* Format: uuid
|
||
* @description 投递任务公开编号;FAILED时可通过诊断任务重试接口受控重试。
|
||
*/
|
||
id: string;
|
||
/**
|
||
* Format: uuid
|
||
* @description 发送给接收器的联通测试关联号。
|
||
*/
|
||
test_ref: string;
|
||
/** Format: uuid */
|
||
routing_policy_id: string;
|
||
category: components["schemas"]["AlertCategory"];
|
||
severity: components["schemas"]["AlertSeverity"];
|
||
receiver_group: string;
|
||
runbook_ref: string;
|
||
/** @enum {string} */
|
||
status: "PENDING" | "PROCESSING" | "DELIVERED" | "FAILED";
|
||
attempt_count: number;
|
||
manual_retry_count: number;
|
||
last_error_code?: string;
|
||
/** Format: date-time */
|
||
last_manual_retry_at?: string;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
completed_at?: string;
|
||
/** Format: date-time */
|
||
dead_at?: string;
|
||
};
|
||
AlertDeliveryTestResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["AlertDeliveryTest"];
|
||
};
|
||
AlertDeliveryTestListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["AlertDeliveryTest"][];
|
||
};
|
||
};
|
||
AlertAction: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
action_type: "DETECTED" | "ACKNOWLEDGED" | "ASSIGNED" | "SILENCED" | "MITIGATED" | "RESOLVED" | "REOPENED" | "ESCALATED" | "COMMENTED";
|
||
from_status?: components["schemas"]["AlertStatus"];
|
||
to_status?: components["schemas"]["AlertStatus"];
|
||
/** @enum {string} */
|
||
actor_type: "system" | "user";
|
||
/** Format: uuid */
|
||
actor_user?: string;
|
||
note: string;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
};
|
||
AlertIncident: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
rule_code: string;
|
||
category: components["schemas"]["AlertCategory"];
|
||
severity: components["schemas"]["AlertSeverity"];
|
||
status: components["schemas"]["AlertStatus"];
|
||
fingerprint: string;
|
||
title: string;
|
||
summary: string;
|
||
resource_type?: string;
|
||
/** Format: uuid */
|
||
resource_id?: string;
|
||
request_id?: string;
|
||
receiver_group?: string;
|
||
runbook_ref?: string;
|
||
/** Format: uuid */
|
||
current_owner?: string;
|
||
/** Format: date-time */
|
||
first_detected_at: string;
|
||
/** Format: date-time */
|
||
last_detected_at: string;
|
||
/** Format: int64 */
|
||
occurrence_count: number;
|
||
/** Format: date-time */
|
||
acknowledged_at?: string;
|
||
/** Format: date-time */
|
||
mitigated_at?: string;
|
||
/** Format: date-time */
|
||
resolved_at?: string;
|
||
/** Format: date-time */
|
||
silenced_until?: string;
|
||
/** Format: date-time */
|
||
escalated_at?: string;
|
||
/** Format: int64 */
|
||
row_version: number;
|
||
actions: components["schemas"]["AlertAction"][];
|
||
};
|
||
AlertIncidentResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["AlertIncident"];
|
||
};
|
||
AlertIncidentListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["AlertIncident"][];
|
||
};
|
||
};
|
||
AlertTransitionRequest: {
|
||
note: string;
|
||
};
|
||
/** @description rule_code、category、resource_id至少填写一项。 */
|
||
CreateAlertSilenceRequest: {
|
||
rule_code?: string;
|
||
category?: components["schemas"]["AlertCategory"];
|
||
resource_type?: string;
|
||
/** Format: uuid */
|
||
resource_id?: string;
|
||
/** @default {} */
|
||
matcher: {
|
||
[key: string]: unknown;
|
||
};
|
||
reason: string;
|
||
/** Format: date-time */
|
||
starts_at: string;
|
||
/**
|
||
* Format: date-time
|
||
* @description 必须晚于开始时间且窗口不超过30天。
|
||
*/
|
||
ends_at: string;
|
||
};
|
||
AlertSilence: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
rule_code?: string;
|
||
category?: components["schemas"]["AlertCategory"];
|
||
resource_type?: string;
|
||
/** Format: uuid */
|
||
resource_id?: string;
|
||
matcher: {
|
||
[key: string]: unknown;
|
||
};
|
||
reason: string;
|
||
/** Format: date-time */
|
||
starts_at: string;
|
||
/** Format: date-time */
|
||
ends_at: string;
|
||
/** Format: uuid */
|
||
created_by: string;
|
||
/** Format: date-time */
|
||
revoked_at?: string;
|
||
/** Format: int64 */
|
||
row_version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
};
|
||
AlertSilenceResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["AlertSilence"];
|
||
};
|
||
AlertSilenceListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["AlertSilence"][];
|
||
};
|
||
};
|
||
OpsConfigVersion: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
tenant_id: string;
|
||
config_key: string;
|
||
display_name: string;
|
||
/** @enum {string} */
|
||
config_kind: "PERSONA" | "VOICE" | "MODEL" | "ROUTING" | "AGENT_BUNDLE";
|
||
version_no: number;
|
||
/** @enum {string} */
|
||
status: "DRAFT" | "PENDING_APPROVAL" | "PUBLISHED" | "RETIRED";
|
||
payload: {
|
||
[key: string]: unknown;
|
||
};
|
||
secret_refs: {
|
||
[key: string]: string;
|
||
};
|
||
change_summary: string;
|
||
validation_result: {
|
||
[key: string]: unknown;
|
||
};
|
||
/** Format: uuid */
|
||
created_by: string;
|
||
/** Format: uuid */
|
||
submitted_by?: string;
|
||
/** Format: date-time */
|
||
submitted_at?: string;
|
||
/** Format: uuid */
|
||
approved_by?: string;
|
||
/** Format: date-time */
|
||
approved_at?: string;
|
||
/** Format: uuid */
|
||
published_by?: string;
|
||
/** Format: date-time */
|
||
published_at?: string;
|
||
/** Format: date-time */
|
||
retired_at?: string;
|
||
/** Format: uuid */
|
||
supersedes_id?: string;
|
||
/** Format: uuid */
|
||
rollback_of_id?: string;
|
||
/** Format: int64 */
|
||
row_version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
OpsConfigVersionResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsConfigVersion"];
|
||
};
|
||
OpsConfigVersionListData: {
|
||
items: components["schemas"]["OpsConfigVersion"][];
|
||
};
|
||
OpsConfigVersionListResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["OpsConfigVersionListData"];
|
||
};
|
||
CreateSharingGrantRequest: {
|
||
/** @enum {string} */
|
||
resource_type: "STORY" | "TRANSCRIPT" | "RECORDING";
|
||
/** Format: uuid */
|
||
resource_id: string;
|
||
/**
|
||
* Format: uuid
|
||
* @description 同一客户组织内的活动用户公开编号。
|
||
*/
|
||
grantee_user_id: string;
|
||
/** @enum {string} */
|
||
permission: "VIEW_TEXT" | "LISTEN" | "DOWNLOAD" | "EDIT";
|
||
purpose: string;
|
||
/** Format: date-time */
|
||
expires_at: string;
|
||
/** @description false时创建匿名口令;EDIT权限必须为true。 */
|
||
login_required: boolean;
|
||
};
|
||
EditSharedStoryRequest: {
|
||
content: string;
|
||
reason: string;
|
||
};
|
||
SharingGrant: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
/** @enum {string} */
|
||
resource_type: "STORY" | "TRANSCRIPT" | "RECORDING";
|
||
/** Format: uuid */
|
||
resource_id: string;
|
||
/** Format: uuid */
|
||
grantee_user_id: string;
|
||
/** @enum {string} */
|
||
permission: "VIEW_TEXT" | "LISTEN" | "DOWNLOAD" | "EDIT";
|
||
purpose: string;
|
||
login_required: boolean;
|
||
/** Format: uuid */
|
||
granted_by: string;
|
||
/** Format: date-time */
|
||
granted_at: string;
|
||
/** Format: date-time */
|
||
expires_at: string;
|
||
/** Format: date-time */
|
||
revoked_at?: string;
|
||
/** Format: int64 */
|
||
version: number;
|
||
/** @description 仅匿名分享的创建或幂等重放响应返回;列表接口不返回。 */
|
||
access_token?: string;
|
||
};
|
||
SharedTurn: {
|
||
/** Format: int64 */
|
||
sequence_no: number;
|
||
/** @enum {string} */
|
||
speaker: "subject" | "agent";
|
||
/** Format: date-time */
|
||
start_at: string;
|
||
/** Format: date-time */
|
||
end_at?: string;
|
||
text: string;
|
||
interrupted: boolean;
|
||
};
|
||
SharedResource: {
|
||
/** Format: uuid */
|
||
grant_id: string;
|
||
/** @enum {string} */
|
||
resource_type: "STORY" | "TRANSCRIPT" | "RECORDING";
|
||
/** Format: uuid */
|
||
resource_id: string;
|
||
/** @enum {string} */
|
||
permission: "VIEW_TEXT" | "LISTEN" | "DOWNLOAD" | "EDIT";
|
||
title?: string;
|
||
text?: string;
|
||
turns?: components["schemas"]["SharedTurn"][];
|
||
/** Format: uri */
|
||
access_url?: string;
|
||
/** Format: date-time */
|
||
access_until?: string;
|
||
/** Format: int64 */
|
||
version?: number;
|
||
/** Format: int64 */
|
||
revision_no?: number;
|
||
};
|
||
SharingGrantResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["SharingGrant"];
|
||
};
|
||
SharingGrantListData: {
|
||
items: components["schemas"]["SharingGrant"][];
|
||
};
|
||
SharingGrantListResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["SharingGrantListData"];
|
||
};
|
||
SharedResourceResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["SharedResource"];
|
||
};
|
||
WebEvent: {
|
||
/** Format: int64 */
|
||
id: number;
|
||
/** @enum {string} */
|
||
type: "device.presence.changed" | "conversation.started" | "conversation.completed" | "conversation.failed" | "story.created" | "story.revised" | "media.upload.completed" | "export.ready" | "privacy_request.updated" | "device.command.updated";
|
||
resource_type: string;
|
||
/** Format: uuid */
|
||
resource_id: string;
|
||
/** Format: uuid */
|
||
subject_id?: string;
|
||
status: string;
|
||
/** Format: date-time */
|
||
occurred_at: string;
|
||
};
|
||
Liveness: {
|
||
/** @constant */
|
||
status: "alive";
|
||
service: string;
|
||
};
|
||
Readiness: {
|
||
/** @enum {string} */
|
||
status: "ready" | "not_ready";
|
||
checks: {
|
||
[key: string]: "up" | "down";
|
||
};
|
||
};
|
||
BuildInfo: {
|
||
version: string;
|
||
commit: string;
|
||
build_time: string;
|
||
};
|
||
Principal: {
|
||
/** Format: uri */
|
||
issuer: string;
|
||
subject: string;
|
||
display_name?: string;
|
||
preferred_username?: string;
|
||
};
|
||
HouseholdMembership: {
|
||
/** Format: uuid */
|
||
household_id: string;
|
||
household_name: string;
|
||
/** @enum {string} */
|
||
role: "owner" | "admin" | "editor" | "viewer";
|
||
capabilities: string[];
|
||
};
|
||
Account: {
|
||
/** Format: uuid */
|
||
user_id: string;
|
||
/** Format: uuid */
|
||
tenant_id: string;
|
||
tenant_name: string;
|
||
policy_version: string;
|
||
/** @enum {string} */
|
||
platform_role: "customer" | "ops_viewer" | "ops_operator" | "ops_approver" | "ops_admin";
|
||
display_name: string;
|
||
household_memberships: components["schemas"]["HouseholdMembership"][];
|
||
};
|
||
CurrentUser: {
|
||
identity: components["schemas"]["Principal"];
|
||
accounts: components["schemas"]["Account"][];
|
||
};
|
||
Household: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/**
|
||
* Format: uuid
|
||
* @description 公开客户组织编号
|
||
*/
|
||
tenant_id: string;
|
||
name: string;
|
||
/** @enum {string} */
|
||
status: "active" | "archived";
|
||
/** @enum {string} */
|
||
role: "owner" | "admin" | "editor" | "viewer";
|
||
capabilities: string[];
|
||
/** Format: int64 */
|
||
version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
CreateHouseholdRequest: {
|
||
name: string;
|
||
};
|
||
UpdateHouseholdRequest: components["schemas"]["CreateHouseholdRequest"];
|
||
HouseholdMember: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
user_id: string;
|
||
display_name: string;
|
||
/** @enum {string} */
|
||
role: "owner" | "admin" | "editor" | "viewer";
|
||
/** @enum {string} */
|
||
status: "active" | "removed";
|
||
/** Format: date-time */
|
||
joined_at: string;
|
||
/** Format: date-time */
|
||
removed_at?: string;
|
||
/** Format: int64 */
|
||
version: number;
|
||
is_owner: boolean;
|
||
};
|
||
UpdateHouseholdMemberRequest: {
|
||
/** @enum {string} */
|
||
role: "admin" | "editor" | "viewer";
|
||
};
|
||
TransferHouseholdOwnershipRequest: {
|
||
/** Format: uuid */
|
||
member_id: string;
|
||
};
|
||
MemberInvitation: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
household_id: string;
|
||
invitee_hint?: string;
|
||
/** @enum {string} */
|
||
role: "admin" | "editor" | "viewer";
|
||
/** Format: date-time */
|
||
expires_at: string;
|
||
/** Format: date-time */
|
||
used_at?: string;
|
||
/** Format: date-time */
|
||
revoked_at?: string;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** @enum {string} */
|
||
status: "pending" | "used" | "revoked" | "expired";
|
||
/** @description 仅创建邀请时返回一次,列表接口不返回。 */
|
||
token?: string;
|
||
};
|
||
CreateMemberInvitationRequest: {
|
||
invitee_hint?: string;
|
||
/** @enum {string} */
|
||
role: "admin" | "editor" | "viewer";
|
||
/** @default 168 */
|
||
expires_in_hours: number;
|
||
};
|
||
AcceptMemberInvitationRequest: {
|
||
token: string;
|
||
};
|
||
MemberInvitationPreview: {
|
||
/** Format: uuid */
|
||
tenant_id: string;
|
||
tenant_name: string;
|
||
/** Format: uuid */
|
||
household_id: string;
|
||
household_name: string;
|
||
invitee_hint?: string;
|
||
/** @enum {string} */
|
||
role: "admin" | "editor" | "viewer";
|
||
/** Format: date-time */
|
||
expires_at: string;
|
||
};
|
||
Subject: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
household_id: string;
|
||
preferred_name: string;
|
||
language: string;
|
||
/** @description IANA时区名称 */
|
||
timezone: string;
|
||
profile_data: components["schemas"]["SubjectProfileData"];
|
||
conversation_preferences: components["schemas"]["SubjectConversationPreferences"];
|
||
/** @enum {string} */
|
||
status: "active" | "suspended" | "deleting";
|
||
/** Format: int64 */
|
||
version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
CreateSubjectRequest: {
|
||
preferred_name: string;
|
||
language: string;
|
||
timezone: string;
|
||
profile_data: components["schemas"]["SubjectProfileData"];
|
||
conversation_preferences: components["schemas"]["SubjectConversationPreferences"];
|
||
};
|
||
UpdateSubjectRequest: {
|
||
preferred_name?: string;
|
||
language?: string;
|
||
timezone?: string;
|
||
profile_data?: components["schemas"]["SubjectProfileData"];
|
||
conversation_preferences?: components["schemas"]["SubjectConversationPreferences"];
|
||
/** @enum {string} */
|
||
status?: "active" | "suspended";
|
||
};
|
||
/** @description 档案可扩展对象;只有下列白名单字段会按档案版本冻结并进入新通话的供应商上下文,其他字段仅保存在SaaS业务域。 */
|
||
SubjectProfileData: {
|
||
/** @description 经家庭确认、允许用于陪伴交流的简要背景。 */
|
||
background?: string;
|
||
interests?: string[];
|
||
} & {
|
||
[key: string]: unknown;
|
||
};
|
||
/** @description 交流偏好可扩展对象;下列白名单字段会从下一次新通话起生效,进行中的通话继续使用原冻结版本。 */
|
||
SubjectConversationPreferences: {
|
||
conversation_goal?: string;
|
||
/** @enum {string} */
|
||
pace?: "slow" | "normal" | "lively";
|
||
preferred_topics?: string[];
|
||
} & {
|
||
[key: string]: unknown;
|
||
};
|
||
ConversationReadinessCheck: {
|
||
/** @enum {string} */
|
||
code: "SUBJECT_ACTIVE" | "PROFILE_BACKGROUND" | "CONVERSATION_GOAL" | "VOICE_CONSENT" | "DEVICE_BOUND" | "DEVICE_RUNTIME" | "FIRMWARE_POLICY" | "CONFIG_SYNC" | "RECENT_CONTACT";
|
||
/** @enum {string} */
|
||
status: "ready" | "blocked" | "attention";
|
||
blocking: boolean;
|
||
title: string;
|
||
detail: string;
|
||
/** @enum {string} */
|
||
action?: "EDIT_PROFILE" | "MANAGE_CONSENTS" | "BIND_DEVICE" | "OPEN_DEVICES";
|
||
};
|
||
ConversationReadinessDevice: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
model: string;
|
||
/** @enum {string} */
|
||
status: "registered" | "quarantined" | "revoked";
|
||
firmware_version?: string;
|
||
/** @description SemVer可按顺序比较;不符合SemVer的厂商版本只允许与最低版本精确相等。 */
|
||
minimum_firmware_version?: string;
|
||
/** Format: int64 */
|
||
desired_revision: number;
|
||
/** Format: int64 */
|
||
reported_revision?: number;
|
||
/** Format: date-time */
|
||
last_reported_at?: string;
|
||
};
|
||
ConversationReadiness: {
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
/** @description 家庭可处理的阻断项是否均已完成;不替代创建通话时的瞬时门禁。 */
|
||
ready: boolean;
|
||
/** Format: date-time */
|
||
evaluated_at: string;
|
||
checks: components["schemas"]["ConversationReadinessCheck"][];
|
||
devices: components["schemas"]["ConversationReadinessDevice"][];
|
||
start_time_checks: ("usage_quota" | "runtime_routing" | "no_active_conversation")[];
|
||
};
|
||
SubjectFact: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
fact_type: string;
|
||
content: string;
|
||
/** @enum {string} */
|
||
source_type: "subject_statement" | "family_entry" | "model_candidate" | "imported";
|
||
source_ref?: string;
|
||
/** @enum {string} */
|
||
confirmation_status: "pending" | "confirmed" | "rejected" | "superseded";
|
||
/** @enum {string} */
|
||
sensitivity: "normal" | "sensitive" | "high";
|
||
/** Format: date-time */
|
||
valid_from?: string;
|
||
/** Format: date-time */
|
||
valid_to?: string;
|
||
/** Format: int64 */
|
||
version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
CreateSubjectFactRequest: {
|
||
fact_type: string;
|
||
content: string;
|
||
/** @enum {string} */
|
||
source_type: "subject_statement" | "family_entry" | "model_candidate" | "imported";
|
||
source_ref?: string;
|
||
/** @enum {string} */
|
||
confirmation_status: "pending" | "confirmed" | "rejected" | "superseded";
|
||
/** @enum {string} */
|
||
sensitivity: "normal" | "sensitive" | "high";
|
||
/** Format: date-time */
|
||
valid_from?: string;
|
||
/** Format: date-time */
|
||
valid_to?: string;
|
||
};
|
||
UpdateSubjectFactRequest: {
|
||
fact_type?: string;
|
||
content?: string;
|
||
source_ref?: string;
|
||
/** @enum {string} */
|
||
confirmation_status?: "pending" | "confirmed" | "rejected" | "superseded";
|
||
/** @enum {string} */
|
||
sensitivity?: "normal" | "sensitive" | "high";
|
||
/** Format: date-time */
|
||
valid_from?: string;
|
||
/** Format: date-time */
|
||
valid_to?: string;
|
||
};
|
||
/** @enum {string} */
|
||
ConsentType: "transcript_storage" | "raw_audio_storage" | "story_extraction" | "personalized_memory" | "family_sharing";
|
||
Consent: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
type: components["schemas"]["ConsentType"];
|
||
scope: {
|
||
[key: string]: unknown;
|
||
};
|
||
policy_version: string;
|
||
notice_digest: string;
|
||
/** Format: uuid */
|
||
actor_user_id: string;
|
||
evidence_ref?: string;
|
||
/** Format: date-time */
|
||
granted_at: string;
|
||
/** Format: date-time */
|
||
expires_at?: string;
|
||
/** Format: date-time */
|
||
withdrawn_at?: string;
|
||
effective: boolean;
|
||
/** Format: int64 */
|
||
version: number;
|
||
};
|
||
GrantConsentRequest: {
|
||
type: components["schemas"]["ConsentType"];
|
||
scope: {
|
||
[key: string]: unknown;
|
||
};
|
||
policy_version: string;
|
||
notice_digest: string;
|
||
evidence_ref?: string;
|
||
/** Format: date-time */
|
||
expires_at?: string;
|
||
};
|
||
ManagedDevice: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
household_id: string;
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
subject_name: string;
|
||
model: string;
|
||
hardware_revision?: string;
|
||
/** @enum {string} */
|
||
status: "registered" | "quarantined" | "revoked";
|
||
minimum_security_version?: string;
|
||
/** @description 独立于安全基线标识的新通话最低固件版本。 */
|
||
minimum_firmware_version?: string;
|
||
firmware_version?: string;
|
||
/** Format: int64 */
|
||
desired_revision: number;
|
||
/** Format: int64 */
|
||
reported_revision?: number;
|
||
/** Format: date-time */
|
||
last_reported_at?: string;
|
||
/** Format: date-time */
|
||
bound_at: string;
|
||
/** Format: date-time */
|
||
registered_at: string;
|
||
/** Format: int64 */
|
||
version: number;
|
||
};
|
||
DevicePresence: {
|
||
/** Format: uuid */
|
||
device_id: string;
|
||
online: boolean;
|
||
status: string;
|
||
/** Format: uuid */
|
||
conversation_id?: string;
|
||
/** Format: int64 */
|
||
sequence_no?: number;
|
||
/** Format: date-time */
|
||
last_seen_at?: string;
|
||
firmware_version?: string;
|
||
/** @enum {string} */
|
||
source: "redis" | "database";
|
||
};
|
||
DeviceTwin: {
|
||
/** Format: uuid */
|
||
device_id: string;
|
||
/** Format: int64 */
|
||
desired_revision: number;
|
||
desired_config: {
|
||
[key: string]: unknown;
|
||
};
|
||
/** Format: int64 */
|
||
reported_revision?: number;
|
||
reported_config: {
|
||
[key: string]: unknown;
|
||
};
|
||
firmware_version?: string;
|
||
board_revision?: string;
|
||
rtc_sdk_version?: string;
|
||
capabilities: {
|
||
[key: string]: unknown;
|
||
};
|
||
/** Format: date-time */
|
||
last_reported_at?: string;
|
||
/** @description 终端最近一次脱敏错误码 */
|
||
last_error_code?: string;
|
||
/** @enum {string} */
|
||
last_error_severity?: "info" | "warning" | "error" | "critical";
|
||
/** Format: date-time */
|
||
last_error_at?: string;
|
||
/** @enum {string} */
|
||
sync_state: "never_reported" | "pending" | "applied";
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
/** @description 下发非敏感设备配置增量;服务端按顶层白名单分类合并并保留未提交的既有配置。扬声器音量必须为0至100的整数,修改需携带当前设备影子ETag。 */
|
||
UpdateDeviceTwinRequest: {
|
||
desired_config: {
|
||
volume?: {
|
||
/** @description 扬声器音量百分比 */
|
||
speaker?: number;
|
||
} & {
|
||
[key: string]: unknown;
|
||
};
|
||
interaction?: {
|
||
[key: string]: unknown;
|
||
};
|
||
upload?: {
|
||
[key: string]: unknown;
|
||
};
|
||
rtc?: {
|
||
[key: string]: unknown;
|
||
};
|
||
policy_refs?: {
|
||
[key: string]: unknown;
|
||
};
|
||
};
|
||
};
|
||
/** @enum {string} */
|
||
DeviceCommandStatus: "QUEUED" | "DELIVERED" | "ACKNOWLEDGED" | "SUCCEEDED" | "FAILED" | "EXPIRED" | "CANCELLED";
|
||
DeviceCommand: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
device_id: string;
|
||
/** @enum {string} */
|
||
type: "apply_config" | "reboot" | "diagnostics" | "firmware_update";
|
||
payload: {
|
||
[key: string]: unknown;
|
||
};
|
||
status: components["schemas"]["DeviceCommandStatus"];
|
||
result_summary: {
|
||
[key: string]: unknown;
|
||
};
|
||
/** Format: date-time */
|
||
expires_at: string;
|
||
delivery_attempts: number;
|
||
/** Format: int64 */
|
||
version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
DeviceCommandDelivery: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
type: "apply_config" | "reboot" | "diagnostics" | "firmware_update";
|
||
payload: {
|
||
[key: string]: unknown;
|
||
};
|
||
status: components["schemas"]["DeviceCommandStatus"];
|
||
/** Format: date-time */
|
||
expires_at: string;
|
||
delivery_attempts: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
};
|
||
CreateDeviceCommandRequest: {
|
||
/** @enum {string} */
|
||
type: "apply_config" | "reboot" | "diagnostics" | "firmware_update";
|
||
payload: {
|
||
[key: string]: unknown;
|
||
};
|
||
expires_in_sec: number;
|
||
};
|
||
DeviceCommandAckRequest: {
|
||
/** @enum {string} */
|
||
status: "ACKNOWLEDGED" | "SUCCEEDED" | "FAILED";
|
||
/** @description 固件命令可在ACKNOWLEDGED时上报phase=downloading、installing、staging、reboot_pending或boot_verifying及progress_percent;A/B设备可附active_slot、target_slot、boot_attempt_id和boot_health_deadline。成功时上报installed_version;启动健康失败并已自动回退时以FAILED上报phase=rolled_back、rollback_applied=true和rollback_version。 */
|
||
result_summary: {
|
||
[key: string]: unknown;
|
||
};
|
||
};
|
||
PrepareMediaUploadBatchRequest: {
|
||
segments: components["schemas"]["MediaSegmentDeclaration"][];
|
||
};
|
||
MediaSegmentDeclaration: {
|
||
/** @enum {string} */
|
||
track: "near" | "far";
|
||
sequence_no: number;
|
||
/**
|
||
* @description 当前基线仅在可解析WAV PCM16时进入VERIFIED;待硬件团队冻结编码后再增加Opus解析器。
|
||
* @enum {string}
|
||
*/
|
||
codec: "wav_pcm_s16le";
|
||
/** @enum {string} */
|
||
content_type: "audio/wav";
|
||
duration_ms: number;
|
||
/** Format: int64 */
|
||
expected_size: number;
|
||
expected_digest: string;
|
||
};
|
||
MediaSegment: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
track: "near" | "far";
|
||
sequence_no: number;
|
||
codec: string;
|
||
content_type: string;
|
||
duration_ms: number;
|
||
/** Format: int64 */
|
||
expected_size: number;
|
||
expected_digest: string;
|
||
/** @enum {string} */
|
||
status: "DECLARED" | "AUTHORIZED" | "UPLOADED" | "VERIFYING" | "VERIFIED" | "REJECTED" | "DELETED";
|
||
last_error_code?: string;
|
||
/**
|
||
* Format: uri
|
||
* @description 仅创建批次响应返回的单对象短期PUT地址
|
||
*/
|
||
upload_url?: string;
|
||
/** Format: date-time */
|
||
upload_until?: string;
|
||
/** Format: date-time */
|
||
verified_at?: string;
|
||
/**
|
||
* Format: date-time
|
||
* @description 仅VERIFIED分片返回;设备应延迟到该时间后删除本地密文
|
||
*/
|
||
local_delete_after?: string;
|
||
/**
|
||
* @description 设备最近一次本地密文删除回执;缺省表示尚未回报
|
||
* @enum {string}
|
||
*/
|
||
local_delete_status?: "DELETED" | "FAILED";
|
||
/** Format: date-time */
|
||
local_delete_reported_at?: string;
|
||
/** @description FAILED时由设备上报的稳定错误码 */
|
||
local_delete_error_code?: string;
|
||
};
|
||
MediaUploadBatch: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
/** @enum {string} */
|
||
status: "PENDING" | "UPLOADING" | "VERIFYING" | "COMPLETED" | "FAILED" | "EXPIRED";
|
||
segment_count: number;
|
||
/** Format: int64 */
|
||
expected_total_size: number;
|
||
verified_count: number;
|
||
rejected_count: number;
|
||
verification_attempts: number;
|
||
last_error_code?: string;
|
||
/** Format: date-time */
|
||
expires_at: string;
|
||
segments: components["schemas"]["MediaSegment"][];
|
||
};
|
||
GrantRecordingAccessRequest: {
|
||
/** Format: uuid */
|
||
grantee_user_id: string;
|
||
/** @enum {string} */
|
||
permission: "PLAY" | "DOWNLOAD";
|
||
purpose: string;
|
||
/** Format: date-time */
|
||
expires_at: string;
|
||
};
|
||
RecordingAccessGrant: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
/** Format: uuid */
|
||
grantee_user_id: string;
|
||
/** @enum {string} */
|
||
permission: "PLAY" | "DOWNLOAD";
|
||
purpose: string;
|
||
/** Format: uuid */
|
||
granted_by: string;
|
||
/** Format: date-time */
|
||
granted_at: string;
|
||
/** Format: date-time */
|
||
expires_at: string;
|
||
/** Format: date-time */
|
||
revoked_at?: string;
|
||
};
|
||
ConversationMedia: {
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
can_play: boolean;
|
||
can_download: boolean;
|
||
segments: components["schemas"]["MediaSegment"][];
|
||
};
|
||
CreateMediaAccessRequest: {
|
||
/** @enum {string} */
|
||
action: "PLAY" | "DOWNLOAD";
|
||
purpose: string;
|
||
};
|
||
LocalMediaDeleteReceiptRequest: {
|
||
/** @enum {string} */
|
||
status: "DELETED" | "FAILED";
|
||
/** @description FAILED时必填,DELETED时不得传入 */
|
||
error_code?: string;
|
||
};
|
||
MediaAccess: {
|
||
/** Format: uuid */
|
||
segment_id: string;
|
||
/** @enum {string} */
|
||
action: "PLAY" | "DOWNLOAD";
|
||
/** Format: uri */
|
||
access_url: string;
|
||
/** Format: date-time */
|
||
access_until: string;
|
||
};
|
||
RegisterFirmwareSigningKeyRequest: {
|
||
key_id: string;
|
||
/** @description Base64编码的32字节Ed25519公钥 */
|
||
public_key_base64: string;
|
||
};
|
||
RevokeFirmwareSigningKeyRequest: {
|
||
key_id: string;
|
||
};
|
||
FirmwareSigningKey: {
|
||
key_id: string;
|
||
fingerprint_sha256: string;
|
||
/** @enum {string} */
|
||
status: "ACTIVE" | "REVOKED";
|
||
/** Format: uuid */
|
||
created_by: string;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
revoked_at?: string;
|
||
uploading_releases: number;
|
||
ready_releases: number;
|
||
running_rollouts: number;
|
||
};
|
||
PrepareFirmwareReleaseRequest: {
|
||
model: string;
|
||
hardware_revision?: string;
|
||
version: string;
|
||
/** Format: int64 */
|
||
expected_size: number;
|
||
expected_digest: string;
|
||
/** @description 对firmware-manifest-v1规范文本的Ed25519签名Base64 */
|
||
signature: string;
|
||
signing_key_id: string;
|
||
minimum_security_version?: string;
|
||
release_notes?: string;
|
||
};
|
||
FirmwareRelease: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
model: string;
|
||
hardware_revision?: string;
|
||
version: string;
|
||
/** Format: int64 */
|
||
expected_size: number;
|
||
expected_digest: string;
|
||
/** @constant */
|
||
signature_algorithm: "ed25519";
|
||
signature: string;
|
||
signing_key_id: string;
|
||
minimum_security_version?: string;
|
||
release_notes?: string;
|
||
/** @enum {string} */
|
||
status: "UPLOADING" | "READY" | "PAUSED" | "RETIRED";
|
||
/** Format: date-time */
|
||
verified_at?: string;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
/**
|
||
* Format: uri
|
||
* @description 仅创建响应返回的短期私有PUT地址
|
||
*/
|
||
upload_url?: string;
|
||
/** Format: date-time */
|
||
upload_until?: string;
|
||
};
|
||
FirmwareReleaseImpact: {
|
||
/** Format: uuid */
|
||
release_id: string;
|
||
/** @enum {string} */
|
||
release_status: "UPLOADING" | "READY" | "PAUSED" | "RETIRED";
|
||
rollouts: components["schemas"]["FirmwareImpactRolloutCount"];
|
||
devices: components["schemas"]["FirmwareImpactDeviceCount"];
|
||
commands: components["schemas"]["FirmwareImpactCommandCount"];
|
||
observation_devices: components["schemas"]["FirmwareImpactDevice"][];
|
||
observation_devices_truncated: boolean;
|
||
/** Format: date-time */
|
||
calculated_at: string;
|
||
};
|
||
FirmwareImpactRolloutCount: {
|
||
total: number;
|
||
running: number;
|
||
paused: number;
|
||
completed: number;
|
||
rolled_back: number;
|
||
};
|
||
FirmwareImpactDeviceCount: {
|
||
total: number;
|
||
assigned: number;
|
||
downloading: number;
|
||
installing: number;
|
||
confirmed: number;
|
||
failed: number;
|
||
rolled_back: number;
|
||
observing: number;
|
||
};
|
||
FirmwareImpactCommandCount: {
|
||
total: number;
|
||
queued: number;
|
||
delivered: number;
|
||
acknowledged: number;
|
||
succeeded: number;
|
||
failed: number;
|
||
expired: number;
|
||
cancelled_before_delivery: number;
|
||
};
|
||
FirmwareImpactDevice: {
|
||
/** Format: uuid */
|
||
device_id: string;
|
||
device_model: string;
|
||
/** Format: uuid */
|
||
rollout_id: string;
|
||
rollout_name: string;
|
||
/** @enum {string} */
|
||
rollout_status: "DRAFT" | "RUNNING" | "PAUSED" | "COMPLETED" | "ROLLED_BACK";
|
||
/** @enum {string} */
|
||
assignment_status: "ASSIGNED" | "DOWNLOADING" | "INSTALLING" | "CONFIRMED" | "FAILED" | "ROLLED_BACK";
|
||
progress_percent?: number;
|
||
/** @enum {string} */
|
||
command_status: "QUEUED" | "DELIVERED" | "ACKNOWLEDGED" | "SUCCEEDED" | "FAILED" | "EXPIRED" | "CANCELLED" | "UNKNOWN";
|
||
/** @enum {string} */
|
||
observation_reason: "INSTALLATION_IN_PROGRESS" | "DOWNLOAD_IN_PROGRESS" | "COMMAND_DELIVERED" | "COMMAND_ACKNOWLEDGED" | "RESULT_RECONCILIATION_REQUIRED";
|
||
/** Format: date-time */
|
||
last_reported_at?: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
StartFirmwareRolloutRequest: {
|
||
/** Format: uuid */
|
||
release_id: string;
|
||
name: string;
|
||
target_percentage: number;
|
||
device_ids: string[];
|
||
};
|
||
RollbackFirmwareRolloutRequest: {
|
||
/** Format: uuid */
|
||
rollback_release_id: string;
|
||
};
|
||
FirmwareRollout: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
release_id: string;
|
||
/** Format: uuid */
|
||
household_id: string;
|
||
name: string;
|
||
/** @enum {string} */
|
||
status: "DRAFT" | "RUNNING" | "PAUSED" | "COMPLETED" | "ROLLED_BACK";
|
||
target_percentage: number;
|
||
targeted: number;
|
||
succeeded: number;
|
||
failed: number;
|
||
assignments?: components["schemas"]["FirmwareAssignment"][];
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
FirmwareAssignment: {
|
||
/** Format: uuid */
|
||
device_id: string;
|
||
device_model: string;
|
||
previous_version?: string;
|
||
/** @enum {string} */
|
||
status: "ASSIGNED" | "DOWNLOADING" | "INSTALLING" | "CONFIRMED" | "FAILED" | "ROLLED_BACK";
|
||
progress_percent?: number;
|
||
last_result: {
|
||
[key: string]: unknown;
|
||
};
|
||
/** @description 去重后的设备固件阶段回执时间线,按云端接收时间升序排列 */
|
||
events?: components["schemas"]["FirmwareAssignmentEvent"][];
|
||
/** Format: date-time */
|
||
last_reported_at?: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
FirmwareAssignmentEvent: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
command_id: string;
|
||
/** @enum {string} */
|
||
command_status: "ACKNOWLEDGED" | "SUCCEEDED" | "FAILED";
|
||
/** @enum {string} */
|
||
assignment_status: "DOWNLOADING" | "INSTALLING" | "CONFIRMED" | "FAILED";
|
||
phase?: string;
|
||
progress_percent?: number;
|
||
result_code?: string;
|
||
active_slot?: string;
|
||
target_slot?: string;
|
||
previous_slot?: string;
|
||
failed_slot?: string;
|
||
boot_attempt_id?: string;
|
||
boot_health_deadline?: string;
|
||
rollback_applied?: boolean;
|
||
rollback_version?: string;
|
||
installed_version?: string;
|
||
verified_sha256?: string;
|
||
verified_signing_key_id?: string;
|
||
result_digest: string;
|
||
/** Format: date-time */
|
||
reported_at: string;
|
||
};
|
||
DeviceClaimRequest: {
|
||
claim_code: string;
|
||
/** Format: uuid */
|
||
household_id: string;
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
};
|
||
DeviceClaimResult: {
|
||
/** Format: uuid */
|
||
binding_id: string;
|
||
/** Format: uuid */
|
||
device_id: string;
|
||
/** Format: uuid */
|
||
household_id: string;
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
/** Format: date-time */
|
||
bound_at: string;
|
||
};
|
||
/** @enum {string} */
|
||
ConversationStatus: "PREPARING" | "ROOM_ISSUED" | "STARTING_AGENT" | "ACTIVE" | "STOPPING" | "COMPLETED" | "FAILED" | "EXPIRED";
|
||
ConversationSummary: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
/** Format: uuid */
|
||
device_id: string;
|
||
status: components["schemas"]["ConversationStatus"];
|
||
/** @enum {string} */
|
||
engine_mode: "s2s_pure" | "s2s_hybrid" | "cascade";
|
||
/** @enum {string} */
|
||
retention_mode: "none" | "transcript_only" | "transcript_and_audio";
|
||
/** @description 只表示通话冻结策略允许保存原录音,不代表媒体已经上传或可播放。 */
|
||
audio_retention_enabled: boolean;
|
||
/** Format: date-time */
|
||
started_at?: string;
|
||
/** Format: date-time */
|
||
ended_at?: string;
|
||
/** Format: int64 */
|
||
duration_ms?: number;
|
||
stop_reason?: string;
|
||
failure_code?: string;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
ConversationStateEntry: {
|
||
from_status?: components["schemas"]["ConversationStatus"];
|
||
to_status: components["schemas"]["ConversationStatus"];
|
||
reason?: string;
|
||
/** @enum {string} */
|
||
source: "device" | "platform" | "provider" | "worker" | "operator";
|
||
/** Format: date-time */
|
||
occurred_at: string;
|
||
};
|
||
ConversationSnapshotSummary: {
|
||
/** Format: uuid */
|
||
consent_snapshot_id: string;
|
||
/** Format: int64 */
|
||
consent_snapshot_version: number;
|
||
/** Format: uuid */
|
||
context_snapshot_id: string;
|
||
/** Format: int64 */
|
||
profile_version: number;
|
||
prompt_bundle_version: string;
|
||
/** @enum {string} */
|
||
context_preparation_status: "READY" | "FAILED";
|
||
/** @description 背景资料准备失败时的稳定脱敏错误码。 */
|
||
context_preparation_failure_code?: string;
|
||
};
|
||
RTCTaskSummary: {
|
||
provider: string;
|
||
/** @enum {string} */
|
||
status: "ALLOCATED" | "STARTING" | "ACTIVE" | "STOPPING" | "COMPLETED" | "FAILED" | "UNKNOWN";
|
||
/** Format: date-time */
|
||
lease_expires_at?: string;
|
||
start_attempts: number;
|
||
stop_attempts: number;
|
||
/** Format: date-time */
|
||
last_checked_at?: string;
|
||
};
|
||
ConversationDetail: components["schemas"]["ConversationSummary"] & {
|
||
/** Format: uuid */
|
||
household_id: string;
|
||
snapshots: components["schemas"]["ConversationSnapshotSummary"];
|
||
/** @description 背景资料准备失败且未创建房间时省略。 */
|
||
rtc?: components["schemas"]["RTCTaskSummary"];
|
||
history: components["schemas"]["ConversationStateEntry"][];
|
||
};
|
||
ConversationUsage: {
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
/** Format: int64 */
|
||
cost_micros: number;
|
||
/** @description 尚无已核价用量时为空字符串。 */
|
||
currency: string;
|
||
lines: components["schemas"]["CostSummaryLine"][];
|
||
};
|
||
ConversationTurn: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: int64 */
|
||
sequence_no: number;
|
||
/** @enum {string} */
|
||
speaker: "subject" | "agent";
|
||
/** Format: date-time */
|
||
start_at: string;
|
||
/** Format: date-time */
|
||
end_at: string;
|
||
final_text: string;
|
||
/** @description 为true时表示该话轮在交互中被打断;被打断的智能体话轮不得作为长者已经听到的事实来源。 */
|
||
interrupted: boolean;
|
||
/** @enum {string} */
|
||
source_type: "provider" | "device";
|
||
};
|
||
ConversationContentSummary: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
type: "conversation_summary" | "open_topic";
|
||
content: string;
|
||
source_turn_ids: string[];
|
||
model_ref: string;
|
||
prompt_version: string;
|
||
/** Format: int64 */
|
||
generation_version: number;
|
||
/** @enum {string} */
|
||
status: "PROCESSING" | "READY" | "FAILED" | "SUPERSEDED";
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
};
|
||
/** @enum {string} */
|
||
StoryStatus: "CANDIDATE" | "IN_REVIEW" | "CONFIRMED" | "REJECTED" | "SUPERSEDED";
|
||
StorySource: {
|
||
/** Format: uuid */
|
||
turn_id: string;
|
||
/** Format: int64 */
|
||
sequence_no: number;
|
||
/** @enum {string} */
|
||
speaker: "subject" | "agent";
|
||
text: string;
|
||
start_offset?: number;
|
||
end_offset?: number;
|
||
};
|
||
FactCandidate: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
fact_type: string;
|
||
content: string;
|
||
/** @enum {string} */
|
||
statement_basis: "subject_statement" | "model_inference";
|
||
confidence?: number;
|
||
/** @enum {string} */
|
||
sensitivity: "normal" | "sensitive" | "high";
|
||
source_turn_ids: string[];
|
||
/** @enum {string} */
|
||
status: "CANDIDATE" | "CONFIRMED" | "REJECTED" | "SUPERSEDED";
|
||
/** Format: int64 */
|
||
version: number;
|
||
};
|
||
Story: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
title: string;
|
||
content: string;
|
||
status: components["schemas"]["StoryStatus"];
|
||
confidence?: number;
|
||
/** @enum {string} */
|
||
sensitivity: "normal" | "sensitive" | "high";
|
||
/** Format: int64 */
|
||
generation_version: number;
|
||
/** Format: int64 */
|
||
revision_no: number;
|
||
/** @enum {string} */
|
||
author_type: "model" | "user";
|
||
review_reason?: string;
|
||
/** Format: int64 */
|
||
version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
sources: components["schemas"]["StorySource"][];
|
||
facts: components["schemas"]["FactCandidate"][];
|
||
};
|
||
CuratedMemory: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
content: string;
|
||
source_refs: {
|
||
[key: string]: unknown;
|
||
}[];
|
||
/** @enum {string} */
|
||
status: "ACTIVE" | "DISABLED" | "SUPERSEDED" | "PENDING_DELETE" | "DELETED";
|
||
/** @enum {string} */
|
||
sensitivity: "normal" | "sensitive" | "high";
|
||
/** Format: int64 */
|
||
version_no: number;
|
||
/** Format: int64 */
|
||
version: number;
|
||
/** Format: uuid */
|
||
confirmed_by: string;
|
||
/** Format: date-time */
|
||
confirmed_at: string;
|
||
change_reason?: string;
|
||
/** @enum {string} */
|
||
index_status: "PENDING" | "ACTIVE" | "STALE" | "FAILED" | "DELETED";
|
||
last_index_error?: string;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
};
|
||
ReviseStoryRequest: {
|
||
content: string;
|
||
reason: string;
|
||
};
|
||
StoryDecisionRequest: {
|
||
reason: string;
|
||
};
|
||
UpdateMemoryRequest: {
|
||
content?: string;
|
||
/** @enum {string} */
|
||
status?: "ACTIVE" | "DISABLED";
|
||
reason: string;
|
||
} | unknown | unknown;
|
||
/** @enum {string} */
|
||
PrivacyCategory: "profile" | "consents" | "device_bindings" | "conversations" | "transcripts" | "summaries" | "stories" | "memories";
|
||
CreatePrivacyRequest: {
|
||
/** @enum {string} */
|
||
request_type: "ACCESS" | "DELETE";
|
||
scope: {
|
||
categories?: components["schemas"]["PrivacyCategory"][];
|
||
};
|
||
/** @description DELETE申请必填;正文不会持久化,仅保存摘要。 */
|
||
reason?: string;
|
||
/** @description DELETE申请必填,必须与当前主体称呼完全一致且不会持久化。 */
|
||
confirmation?: string;
|
||
} & unknown;
|
||
PrivacySubtask: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
subsystem: "postgresql" | "redis" | "object_storage" | "pgvector" | "provider_index" | "export_files";
|
||
target_type: string;
|
||
target_ref: string;
|
||
/** @enum {string} */
|
||
status: "PENDING" | "RUNNING" | "COMPLETED" | "FAILED" | "SKIPPED";
|
||
attempts: number;
|
||
/** Format: date-time */
|
||
next_attempt_at?: string;
|
||
last_error?: string;
|
||
/** Format: date-time */
|
||
completed_at?: string;
|
||
};
|
||
PrivacyRequest: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
/** @enum {string} */
|
||
request_type: "ACCESS" | "CORRECTION" | "CONSENT_WITHDRAWAL" | "DELETE";
|
||
scope: {
|
||
[key: string]: unknown;
|
||
};
|
||
/** @enum {string} */
|
||
status: "SUBMITTED" | "VERIFYING" | "EXECUTING" | "COMPLETED" | "PARTIAL_FAILED";
|
||
/** Format: date-time */
|
||
deadline_at?: string;
|
||
legal_hold: boolean;
|
||
result_summary: {
|
||
[key: string]: unknown;
|
||
};
|
||
/** Format: int64 */
|
||
version: number;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
/** Format: date-time */
|
||
completed_at?: string;
|
||
subtasks: components["schemas"]["PrivacySubtask"][];
|
||
};
|
||
CreateExportTask: {
|
||
scope: {
|
||
categories?: components["schemas"]["PrivacyCategory"][];
|
||
};
|
||
};
|
||
ExportTask: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
subject_id: string;
|
||
scope: {
|
||
[key: string]: unknown;
|
||
};
|
||
/** @enum {string} */
|
||
status: "QUEUED" | "RUNNING" | "READY" | "FAILED" | "EXPIRED";
|
||
/** Format: int64 */
|
||
object_size?: number;
|
||
content_digest?: string;
|
||
/** Format: date-time */
|
||
expires_at?: string;
|
||
attempts: number;
|
||
last_error?: string;
|
||
/** Format: date-time */
|
||
created_at: string;
|
||
/** Format: date-time */
|
||
updated_at: string;
|
||
/** Format: date-time */
|
||
completed_at?: string;
|
||
/** Format: uri */
|
||
download_url?: string;
|
||
/** Format: date-time */
|
||
download_until?: string;
|
||
};
|
||
DeviceBinding: {
|
||
bound: boolean;
|
||
/** Format: uuid */
|
||
household_id?: string;
|
||
/** Format: uuid */
|
||
subject_id?: string;
|
||
subject_name?: string;
|
||
};
|
||
DeviceBootstrap: {
|
||
/** Format: uuid */
|
||
device_id: string;
|
||
/** @enum {string} */
|
||
status: "registered" | "quarantined" | "revoked";
|
||
model: string;
|
||
hardware_revision?: string;
|
||
minimum_security_version?: string;
|
||
minimum_firmware_version?: string;
|
||
/** @description 本次上报固件是否满足最低固件策略;false时不得创建新通话。 */
|
||
firmware_compatible: boolean;
|
||
/** Format: int64 */
|
||
config_revision: number;
|
||
binding: components["schemas"]["DeviceBinding"];
|
||
};
|
||
DeviceBootstrapData: {
|
||
/** Format: date-time */
|
||
server_time: string;
|
||
/** Format: int64 */
|
||
clock_skew_ms: number;
|
||
device: components["schemas"]["DeviceBootstrap"];
|
||
};
|
||
DeviceConfiguration: {
|
||
/** Format: uuid */
|
||
device_id: string;
|
||
/** Format: int64 */
|
||
revision: number;
|
||
desired_config: {
|
||
[key: string]: unknown;
|
||
};
|
||
/** Format: int64 */
|
||
reported_revision?: number;
|
||
binding: components["schemas"]["DeviceBinding"];
|
||
};
|
||
DeviceCapabilities: {
|
||
/** @constant */
|
||
rtc: true;
|
||
audio_tracks: ("near" | "far")[];
|
||
upload_resume: boolean;
|
||
/** @description 可选能力协商位。仅明确为true时心跳才可能返回renew_rtc_credential;省略时保持旧版v2终端行为。 */
|
||
rtc_credential_renewal?: boolean;
|
||
};
|
||
DeviceNetwork: {
|
||
type: string;
|
||
rssi?: number;
|
||
};
|
||
CreateConversationRequest: {
|
||
/** Format: date-time */
|
||
device_time: string;
|
||
/** Format: int64 */
|
||
monotonic_ms?: number;
|
||
capabilities: components["schemas"]["DeviceCapabilities"];
|
||
network: components["schemas"]["DeviceNetwork"];
|
||
/** @constant */
|
||
requested_goal: "open_conversation";
|
||
};
|
||
RTCGrant: {
|
||
app_id: string;
|
||
room_id: string;
|
||
user_id: string;
|
||
agent_user_id: string;
|
||
/** @description 绑定房间和设备用户的短期凭证;只允许保存在设备运行内存。 */
|
||
token: string;
|
||
/** Format: date-time */
|
||
expires_at: string;
|
||
};
|
||
ConversationPrivacy: {
|
||
/** @enum {string} */
|
||
retention_mode: "none" | "transcript_only" | "transcript_and_audio";
|
||
record_near: boolean;
|
||
record_far: boolean;
|
||
upload_allowed: boolean;
|
||
};
|
||
ConversationSession: {
|
||
/**
|
||
* @description 仅用于云端诊断、成本和通话记录;设备不得据此改变采集、编码、发布、订阅或播放逻辑。
|
||
* @enum {string}
|
||
*/
|
||
engine_mode: "s2s_pure" | "s2s_hybrid" | "cascade";
|
||
heartbeat_interval_sec: number;
|
||
/** Format: date-time */
|
||
allocation_expires_at: string;
|
||
};
|
||
CreatedConversation: {
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
/** @constant */
|
||
status: "ROOM_ISSUED";
|
||
rtc: components["schemas"]["RTCGrant"];
|
||
privacy: components["schemas"]["ConversationPrivacy"];
|
||
session: components["schemas"]["ConversationSession"];
|
||
};
|
||
ActivateConversationRequest: {
|
||
/** Format: date-time */
|
||
joined_at: string;
|
||
room_id: string;
|
||
rtc_user_id: string;
|
||
/** @constant */
|
||
rtc_join_result: "success";
|
||
/** Format: int64 */
|
||
config_revision: number;
|
||
connection_reference?: string;
|
||
};
|
||
ActivatedConversation: {
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
/** @enum {string} */
|
||
status: "STARTING_AGENT" | "ACTIVE";
|
||
/** Format: date-time */
|
||
accepted_at: string;
|
||
};
|
||
DeviceConversationState: {
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
status: components["schemas"]["ConversationStatus"];
|
||
/**
|
||
* @description wait表示继续等待智能体启动,continue表示进入正常通话,leave_room表示立即退出RTC房间。
|
||
* @enum {string}
|
||
*/
|
||
action: "wait" | "continue" | "leave_room";
|
||
/** @description FAILED状态下返回稳定脱敏失败码,例如provider_start_rejected或provider_start_failed;不得展示供应商原始错误。 */
|
||
failure_code?: string;
|
||
};
|
||
RTCHeartbeat: {
|
||
joined: boolean;
|
||
uplink: boolean;
|
||
downlink: boolean;
|
||
};
|
||
RecordingQueue: {
|
||
pending_segments: number;
|
||
failed_segments: number;
|
||
/** @description 最近一次录音上传失败的稳定脱敏错误码 */
|
||
last_failure_code?: string;
|
||
/** Format: date-time */
|
||
last_failure_at?: string;
|
||
};
|
||
HeartbeatConversationRequest: {
|
||
/** Format: int64 */
|
||
sequence_no: number;
|
||
/** Format: date-time */
|
||
device_time: string;
|
||
/** Format: int64 */
|
||
monotonic_ms: number;
|
||
/** @enum {string} */
|
||
conversation_status: "PREPARING" | "ROOM_ISSUED" | "STARTING_AGENT" | "ACTIVE" | "STOPPING" | "COMPLETED" | "FAILED" | "EXPIRED";
|
||
rtc: components["schemas"]["RTCHeartbeat"];
|
||
network: components["schemas"]["DeviceNetwork"];
|
||
firmware_version: string;
|
||
/** Format: int64 */
|
||
reported_config_revision: number;
|
||
recording_queue: components["schemas"]["RecordingQueue"];
|
||
/**
|
||
* Format: date-time
|
||
* @description 设备当前使用的短期入房凭证过期时间;用于可靠续签与响应重放
|
||
*/
|
||
rtc_credential_expires_at?: string;
|
||
last_error?: string;
|
||
command_results: {
|
||
[key: string]: unknown;
|
||
}[];
|
||
};
|
||
DeviceTelemetryStatus: {
|
||
firmware_version: string;
|
||
/** Format: int64 */
|
||
reported_config_revision: number;
|
||
network: components["schemas"]["DeviceNetwork"];
|
||
rtc: components["schemas"]["RTCHeartbeat"];
|
||
recording_queue: components["schemas"]["RecordingQueue"];
|
||
/** @enum {string} */
|
||
conversation_status?: "PREPARING" | "ROOM_ISSUED" | "STARTING_AGENT" | "ACTIVE" | "STOPPING" | "COMPLETED" | "FAILED" | "EXPIRED";
|
||
};
|
||
DeviceTelemetryError: {
|
||
code: string;
|
||
/** @enum {string} */
|
||
severity: "warning" | "error" | "critical";
|
||
};
|
||
DeviceTelemetryCommandResult: {
|
||
/** Format: uuid */
|
||
command_id: string;
|
||
/** @enum {string} */
|
||
status: "ACKNOWLEDGED" | "SUCCEEDED" | "FAILED";
|
||
/** @description 只允许有限诊断结果,不得包含secret、token、password、credential、private_key或api_key字段。 */
|
||
result_summary: {
|
||
[key: string]: unknown;
|
||
};
|
||
};
|
||
/** @description event_type对应的同名对象必须存在,另外两个对象必须省略。 */
|
||
DeviceTelemetryEvent: {
|
||
event_key: string;
|
||
/** Format: int64 */
|
||
sequence_no: number;
|
||
/** Format: date-time */
|
||
occurred_at: string;
|
||
/** @enum {string} */
|
||
event_type: "status" | "error" | "command_result";
|
||
/** Format: uuid */
|
||
conversation_id?: string;
|
||
status?: components["schemas"]["DeviceTelemetryStatus"];
|
||
error?: components["schemas"]["DeviceTelemetryError"];
|
||
command_result?: components["schemas"]["DeviceTelemetryCommandResult"];
|
||
};
|
||
DeviceTelemetryBatchRequest: {
|
||
/** @description 同一请求内event_key和sequence_no分别唯一。 */
|
||
events: components["schemas"]["DeviceTelemetryEvent"][];
|
||
};
|
||
DeviceTelemetryAction: {
|
||
/** @enum {string} */
|
||
type: "refresh_config" | "pull_commands" | "stop_conversation";
|
||
/** Format: uuid */
|
||
conversation_id?: string;
|
||
};
|
||
DeviceTelemetryBatchResult: {
|
||
accepted_count: number;
|
||
duplicate_count: number;
|
||
/** Format: int64 */
|
||
desired_config_revision: number;
|
||
actions: components["schemas"]["DeviceTelemetryAction"][];
|
||
};
|
||
HeartbeatAction: {
|
||
/** @enum {string} */
|
||
type: "continue" | "stop" | "stop_after_turn" | "renew_rtc_credential";
|
||
/** @description 仅renew_rtc_credential动作返回;凭证只保存在设备运行内存。 */
|
||
rtc?: components["schemas"]["RTCGrant"];
|
||
};
|
||
HeartbeatResult: {
|
||
/** Format: date-time */
|
||
lease_expires_at?: string;
|
||
actions: components["schemas"]["HeartbeatAction"][];
|
||
/** Format: int64 */
|
||
desired_config_revision: number;
|
||
commands: {
|
||
[key: string]: unknown;
|
||
}[];
|
||
};
|
||
StopRecording: {
|
||
near_segments: number;
|
||
far_segments: number;
|
||
};
|
||
StopConversationRequest: {
|
||
reason: string;
|
||
/** Format: date-time */
|
||
device_time: string;
|
||
/** Format: int64 */
|
||
last_heartbeat_sequence: number;
|
||
rtc_left: boolean;
|
||
recording: components["schemas"]["StopRecording"];
|
||
};
|
||
StoppedConversation: {
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
/** @enum {string} */
|
||
status: "STOPPING" | "COMPLETED" | "FAILED" | "EXPIRED";
|
||
/** Format: date-time */
|
||
accepted_at: string;
|
||
};
|
||
VoiceProviderEvent: {
|
||
/** @enum {string} */
|
||
provider: "mock" | "vertc";
|
||
event_id: string;
|
||
task_ref: string;
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
/** @enum {string} */
|
||
event_type: "voice_chat.started" | "voice_chat.transcript.final" | "voice_chat.usage" | "voice_chat.stopped" | "voice_chat.failed";
|
||
/** @enum {string} */
|
||
status: "ACTIVE" | "FINAL" | "COMPLETED" | "FAILED";
|
||
/** Format: date-time */
|
||
occurred_at: string;
|
||
/** @description 仅voice_chat.transcript.final事件允许携带最终话轮;状态事件必须为空。 */
|
||
turns?: components["schemas"]["ProviderFinalTurn"][];
|
||
/** @description 仅voice_chat.usage最终事件允许携带;同一供应商事件键重复投递只计一次费用。 */
|
||
usage?: components["schemas"]["ProviderUsageMetric"][];
|
||
};
|
||
ProviderUsageMetric: {
|
||
/** @enum {string} */
|
||
usage_category: "RTC" | "END_TO_END_VOICE" | "ASR" | "LLM" | "TTS" | "STORAGE" | "POST_PROCESSING";
|
||
metric_code: string;
|
||
quantity: string;
|
||
unit: string;
|
||
};
|
||
ProviderFinalTurn: {
|
||
turn_key: string;
|
||
/** Format: int64 */
|
||
sequence_no: number;
|
||
/** @enum {string} */
|
||
speaker: "subject" | "agent";
|
||
/** Format: date-time */
|
||
start_at: string;
|
||
/** Format: date-time */
|
||
end_at: string;
|
||
final_text: string;
|
||
interrupted: boolean;
|
||
provider_ref?: string;
|
||
};
|
||
DeviceFinalTurn: {
|
||
turn_key: string;
|
||
/** Format: int64 */
|
||
sequence_no: number;
|
||
/** @enum {string} */
|
||
speaker: "subject" | "agent";
|
||
/** Format: date-time */
|
||
start_at: string;
|
||
/**
|
||
* Format: date-time
|
||
* @description 必须不早于start_at。
|
||
*/
|
||
end_at: string;
|
||
final_text: string;
|
||
interrupted: boolean;
|
||
};
|
||
DeviceTranscriptBatchRequest: {
|
||
/** @description 同一请求内turn_key和sequence_no分别唯一。 */
|
||
turns: components["schemas"]["DeviceFinalTurn"][];
|
||
};
|
||
DeviceTranscriptBatchResult: {
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
accepted_count: number;
|
||
duplicate_count: number;
|
||
};
|
||
ProviderCallbackResult: {
|
||
/** Format: uuid */
|
||
conversation_id: string;
|
||
/** @enum {string} */
|
||
status: "PREPARING" | "ROOM_ISSUED" | "STARTING_AGENT" | "ACTIVE" | "STOPPING" | "COMPLETED" | "FAILED" | "EXPIRED";
|
||
duplicate: boolean;
|
||
ignored: boolean;
|
||
turns_accepted?: number;
|
||
usage_accepted?: number;
|
||
};
|
||
APIError: {
|
||
code: string;
|
||
message: string;
|
||
retryable: boolean;
|
||
field_errors: {
|
||
field: string;
|
||
message: string;
|
||
}[];
|
||
details: {
|
||
[key: string]: unknown;
|
||
};
|
||
};
|
||
LivenessResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["Liveness"];
|
||
};
|
||
ReadinessResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["Readiness"];
|
||
};
|
||
VersionResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["BuildInfo"];
|
||
};
|
||
CurrentUserResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["CurrentUser"];
|
||
};
|
||
HouseholdResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["Household"];
|
||
};
|
||
HouseholdListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["Household"][];
|
||
};
|
||
};
|
||
HouseholdMemberResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["HouseholdMember"];
|
||
};
|
||
HouseholdMemberListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["HouseholdMember"][];
|
||
};
|
||
};
|
||
MemberInvitationResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["MemberInvitation"];
|
||
};
|
||
MemberInvitationListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["MemberInvitation"][];
|
||
};
|
||
};
|
||
MemberInvitationPreviewResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["MemberInvitationPreview"];
|
||
};
|
||
SubjectResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["Subject"];
|
||
};
|
||
ConversationReadinessResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["ConversationReadiness"];
|
||
};
|
||
SubjectListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["Subject"][];
|
||
};
|
||
};
|
||
SubjectFactResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["SubjectFact"];
|
||
};
|
||
SubjectFactListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["SubjectFact"][];
|
||
};
|
||
};
|
||
ConsentResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["Consent"];
|
||
};
|
||
ConsentListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["Consent"][];
|
||
};
|
||
};
|
||
ManagedDeviceResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["ManagedDevice"];
|
||
};
|
||
DeviceClaimResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["DeviceClaimResult"];
|
||
};
|
||
ManagedDeviceListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["ManagedDevice"][];
|
||
};
|
||
};
|
||
DevicePresenceResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["DevicePresence"];
|
||
};
|
||
DeviceTwinResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["DeviceTwin"];
|
||
};
|
||
DeviceCommandResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["DeviceCommand"];
|
||
};
|
||
DeviceCommandListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["DeviceCommand"][];
|
||
};
|
||
};
|
||
DeviceCommandDeliveryResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["DeviceCommandDelivery"];
|
||
};
|
||
DeviceCommandDeliveryListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["DeviceCommandDelivery"][];
|
||
};
|
||
};
|
||
MediaUploadBatchResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["MediaUploadBatch"];
|
||
};
|
||
RecordingAccessGrantResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["RecordingAccessGrant"];
|
||
};
|
||
RecordingAccessGrantListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["RecordingAccessGrant"][];
|
||
};
|
||
};
|
||
MediaSegmentResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["MediaSegment"];
|
||
};
|
||
ConversationMediaResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["ConversationMedia"];
|
||
};
|
||
MediaAccessResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["MediaAccess"];
|
||
};
|
||
FirmwareReleaseResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["FirmwareRelease"];
|
||
};
|
||
FirmwareReleaseImpactResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["FirmwareReleaseImpact"];
|
||
};
|
||
FirmwareSigningKeyResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["FirmwareSigningKey"];
|
||
};
|
||
FirmwareSigningKeyListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["FirmwareSigningKey"][];
|
||
};
|
||
};
|
||
FirmwareReleaseListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["FirmwareRelease"][];
|
||
};
|
||
};
|
||
FirmwareRolloutResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["FirmwareRollout"];
|
||
};
|
||
FirmwareRolloutListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["FirmwareRollout"][];
|
||
};
|
||
};
|
||
ConversationPageResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["ConversationSummary"][];
|
||
next_cursor?: string;
|
||
};
|
||
};
|
||
ConversationDetailResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["ConversationDetail"];
|
||
};
|
||
ConversationUsageResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["ConversationUsage"];
|
||
};
|
||
ConversationTurnPageResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["ConversationTurn"][];
|
||
next_cursor?: string;
|
||
};
|
||
};
|
||
ConversationContentSummaryListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["ConversationContentSummary"][];
|
||
};
|
||
};
|
||
StoryResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["Story"];
|
||
};
|
||
StoryListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["Story"][];
|
||
};
|
||
};
|
||
StoryConfirmationResponse: {
|
||
request_id: string;
|
||
data: {
|
||
story: components["schemas"]["Story"];
|
||
memory: components["schemas"]["CuratedMemory"];
|
||
};
|
||
};
|
||
CuratedMemoryResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["CuratedMemory"];
|
||
};
|
||
CuratedMemoryListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["CuratedMemory"][];
|
||
};
|
||
};
|
||
PrivacyRequestResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["PrivacyRequest"];
|
||
};
|
||
PrivacyRequestListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["PrivacyRequest"][];
|
||
};
|
||
};
|
||
ExportTaskResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["ExportTask"];
|
||
};
|
||
ExportTaskListResponse: {
|
||
request_id: string;
|
||
data: {
|
||
items: components["schemas"]["ExportTask"][];
|
||
};
|
||
};
|
||
DeviceBootstrapResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["DeviceBootstrapData"];
|
||
};
|
||
DeviceConfigResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["DeviceConfiguration"];
|
||
};
|
||
CreateConversationResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["CreatedConversation"];
|
||
};
|
||
ActivateConversationResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["ActivatedConversation"];
|
||
};
|
||
DeviceConversationStateResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["DeviceConversationState"];
|
||
};
|
||
HeartbeatConversationResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["HeartbeatResult"];
|
||
};
|
||
StopConversationResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["StoppedConversation"];
|
||
};
|
||
DeviceTranscriptBatchResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["DeviceTranscriptBatchResult"];
|
||
};
|
||
DeviceTelemetryBatchResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["DeviceTelemetryBatchResult"];
|
||
};
|
||
ProviderCallbackResponse: {
|
||
request_id: string;
|
||
data: components["schemas"]["ProviderCallbackResult"];
|
||
};
|
||
ErrorResponse: {
|
||
request_id: string;
|
||
error: components["schemas"]["APIError"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 请求字段、路径或请求头不符合契约 */
|
||
ValidationError: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 未登录、令牌无效或令牌过期 */
|
||
AuthenticationError: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 当前身份在资源所属客户组织或家庭中没有所需能力 */
|
||
AccessDeniedError: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 请求的资源不存在 */
|
||
NotFoundError: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 当前资源状态不允许执行请求 */
|
||
ConflictError: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description If-Match对应的版本已不是当前版本 */
|
||
VersionConflictError: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 修改请求缺少If-Match */
|
||
PreconditionRequiredError: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
parameters: {
|
||
/** @description 公开客户组织编号;仅用于选择范围,服务端仍验证账号映射。 */
|
||
TenantSelectionHeader: string;
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
RequiredTenantSelectionHeader: string;
|
||
ResourceID: string;
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
IfMatchHeader: string;
|
||
DeviceIdHeader: string;
|
||
DeviceTimestampHeader: string;
|
||
DeviceNonceHeader: string;
|
||
DeviceContentDigestHeader: string;
|
||
DeviceSignatureHeader: string;
|
||
IdempotencyKeyHeader: string;
|
||
/** @description 已批准且未过期的临时敏感数据访问申请公开编号。 */
|
||
OpsAccessGrantHeader: string;
|
||
ProviderTimestampHeader: string;
|
||
ProviderSignatureHeader: string;
|
||
PlatformTimestampHeader: string;
|
||
PlatformSignatureHeader: string;
|
||
};
|
||
requestBodies: never;
|
||
headers: {
|
||
/** @description 资源强版本标签,例如"v2"。 */
|
||
StrongETag: string;
|
||
};
|
||
pathItems: never;
|
||
}
|
||
export type $defs = Record<string, never>;
|
||
export interface operations {
|
||
listOpsConfigVersions: {
|
||
parameters: {
|
||
query?: {
|
||
config_key?: string;
|
||
};
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 当前运营账号可查看的配置版本历史 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsConfigVersionListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createOpsConfigVersion: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateOpsConfigVersionRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 不可变配置草稿版本已创建 */
|
||
201: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsConfigVersionResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 幂等键正文冲突 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
submitOpsConfigVersion: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 配置已提交审批 */
|
||
200: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsConfigVersionResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
publishOpsConfigVersion: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsConfigTransitionRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 配置已审批并发布 */
|
||
200: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsConfigVersionResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 状态冲突或创建人尝试审批自己的变更 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
rollbackOpsConfigVersion: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsConfigTransitionRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 回滚产生的新发布版本 */
|
||
201: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsConfigVersionResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
listOpsConfigEvaluations: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 指定配置版本的离线评测证据 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsConfigEvaluationListResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createOpsConfigEvaluation: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateOpsConfigEvaluationRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 离线评测证据已登记 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsConfigEvaluationResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
listOpsResourceReferences: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 已登记的受控资源引用 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsResourceReferenceListResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createOpsResourceReference: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateOpsResourceReferenceRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 只含引用标识的资源记录已创建 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsResourceReferenceResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
revokeOpsResourceReference: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsReasonRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 资源引用已撤销 */
|
||
200: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsResourceReferenceResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
listOpsIntegrationIssues: {
|
||
parameters: {
|
||
query?: {
|
||
status?: components["schemas"]["IntegrationIssueStatus"];
|
||
};
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 联调问题清单 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["IntegrationIssueListResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createOpsIntegrationIssue: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateIntegrationIssueRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 幂等重放原联调问题 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["IntegrationIssueResponse"];
|
||
};
|
||
};
|
||
/** @description 联调问题已登记 */
|
||
201: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["IntegrationIssueResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
updateOpsIntegrationIssue: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["UpdateIntegrationIssueRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 联调问题已更新 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["IntegrationIssueResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
searchOpsDiagnostics: {
|
||
parameters: {
|
||
query: {
|
||
field: "device_id" | "conversation_id" | "room_id" | "provider_task_ref" | "request_id";
|
||
value: string;
|
||
};
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 联调诊断结果 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticSearchResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
listOpsExternalDependencies: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 平台外部依赖预检状态 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsExternalDependencyListResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
getOpsPlatformHealth: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 云端主机最新健康快照 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PlatformHealthSnapshotResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
};
|
||
};
|
||
listOpsDiagnosticJobs: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 死信任务列表 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticJobListResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
retryOpsDiagnosticJob: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticReasonRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 任务已受控重试 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticActionResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
exportOpsDiagnosticBundle: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticBundleRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 诊断包幂等重放 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticBundleResponse"];
|
||
};
|
||
};
|
||
/** @description 脱敏诊断包已生成 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticBundleResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
exportOpsAcceptanceSnapshot: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsAcceptanceSnapshotRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 验收快照幂等重放 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsAcceptanceSnapshotResponse"];
|
||
};
|
||
};
|
||
/** @description 脱敏技术验收快照已生成 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsAcceptanceSnapshotResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
exportOpsPilotDailySnapshot: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsPilotDailySnapshotRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 试点日报幂等重放 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsPilotDailySnapshotResponse"];
|
||
};
|
||
};
|
||
/** @description 脱敏试点日报已生成 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsPilotDailySnapshotResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
exportOpsPilotWeeklySnapshot: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsPilotWeeklySnapshotRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 试点周报幂等重放 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsPilotWeeklySnapshotResponse"];
|
||
};
|
||
};
|
||
/** @description 脱敏试点周报已生成 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsPilotWeeklySnapshotResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
stopOpsDiagnosticConversation: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticReasonRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 停止动作结果 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticActionResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
reconcileOpsDiagnosticConversation: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticReasonRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 对账动作结果 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticActionResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
refreshOpsDiagnosticDeviceConfig: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticReasonRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 配置刷新幂等重放 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticActionResponse"];
|
||
};
|
||
};
|
||
/** @description 配置刷新命令已排队 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticActionResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
revokeOpsDiagnosticDevice: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticReasonRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 设备已吊销或幂等重放 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDiagnosticActionResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
listOpsSensitiveAccessRequests: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 临时访问申请列表 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsSensitiveAccessRequestListResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createOpsSensitiveAccessRequest: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateOpsSensitiveAccessRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 幂等重放 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsSensitiveAccessRequestResponse"];
|
||
};
|
||
};
|
||
/** @description 申请已进入待审批队列 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsSensitiveAccessRequestResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
reviewOpsSensitiveAccessRequest: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["ReviewOpsSensitiveAccessRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 审批决定已记录 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsSensitiveAccessRequestResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
getOpsSensitiveConversation: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
/** @description 已批准且未过期的临时敏感数据访问申请公开编号。 */
|
||
"X-Ops-Access-Grant": components["parameters"]["OpsAccessGrantHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 当前批准范围内的敏感通话数据 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsSensitiveConversationResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
};
|
||
};
|
||
createOpsSensitiveRecordingAccess: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsSensitiveRecordingAccessRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 短期录音播放地址已签发 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsSensitiveRecordingAccessResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
};
|
||
};
|
||
listOpsConfigRollouts: {
|
||
parameters: {
|
||
query?: {
|
||
config_key?: string;
|
||
};
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 当前和历史配置投放范围 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsConfigRolloutListResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
pauseOpsConfigRollout: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsReasonRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 投放已暂停 */
|
||
200: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsConfigRolloutResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
409: components["responses"]["ConflictError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
resumeOpsConfigRollout: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsReasonRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 投放已恢复 */
|
||
200: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsConfigRolloutResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
409: components["responses"]["ConflictError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
listOpsDeviceGroups: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 可用于灰度范围的设备组 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDeviceGroupListResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createOpsDeviceGroup: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateOpsDeviceGroupRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 设备组已创建 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["OpsDeviceGroupResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
listOpsPriceBooks: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 当前客户组织的价格版本历史及不可变单价 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["BillingPriceBookListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createOpsPriceBook: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateBillingPriceBookRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 价格草稿已创建 */
|
||
201: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["BillingPriceBookResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
publishOpsPriceBook: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsReasonRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 价格版本已发布 */
|
||
200: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["BillingPriceBookResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 状态冲突或创建人尝试审批自己的价格版本 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
listOpsQuotaPolicies: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 客户组织与设备维度的当前及历史额度策略 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["QuotaPolicyListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createOpsQuotaPolicy: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateQuotaPolicyRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 新额度策略版本已激活 */
|
||
201: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["QuotaPolicyResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
getOpsCostSummary: {
|
||
parameters: {
|
||
query: {
|
||
from: string;
|
||
to: string;
|
||
};
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 指定时间范围的费用汇总 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["CostSummaryResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
listOpsAlertRoutingPolicies: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 告警分类与级别对应的当前和历史接收、响应、升级及运行手册策略 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AlertRoutingPolicyListResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createOpsAlertRoutingPolicy: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateAlertRoutingPolicyRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 告警路由版本已激活 */
|
||
201: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AlertRoutingPolicyResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
listOpsAlertDeliveryTests: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 最近的告警接收器联通测试 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AlertDeliveryTestListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createOpsAlertDeliveryTest: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateAlertDeliveryTestRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 联通测试已进入可靠投递队列 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AlertDeliveryTestResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
listOpsAlerts: {
|
||
parameters: {
|
||
query?: {
|
||
status?: components["schemas"]["AlertStatus"];
|
||
};
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 告警队列 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AlertIncidentListResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
getOpsAlert: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 告警详情及完整处置动作时间线 */
|
||
200: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AlertIncidentResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
};
|
||
};
|
||
acknowledgeOpsAlert: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["AlertTransitionRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 告警已确认并记录负责人 */
|
||
200: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AlertIncidentResponse"];
|
||
};
|
||
};
|
||
409: components["responses"]["ConflictError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
mitigateOpsAlert: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["AlertTransitionRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 告警已完成缓解 */
|
||
200: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AlertIncidentResponse"];
|
||
};
|
||
};
|
||
409: components["responses"]["ConflictError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
resolveOpsAlert: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["AlertTransitionRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 告警已闭环 */
|
||
200: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AlertIncidentResponse"];
|
||
};
|
||
};
|
||
409: components["responses"]["ConflictError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
listOpsAlertSilences: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 当前和历史告警静默窗口 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AlertSilenceListResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createOpsAlertSilence: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateAlertSilenceRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 静默窗口已创建 */
|
||
201: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AlertSilenceResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
revokeOpsAlertSilence: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["OpsReasonRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 静默窗口已撤销 */
|
||
200: {
|
||
headers: {
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AlertSilenceResponse"];
|
||
};
|
||
};
|
||
409: components["responses"]["ConflictError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
listSharingGrants: {
|
||
parameters: {
|
||
query: {
|
||
subject_id: string;
|
||
};
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 当前长者的分享授权历史 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SharingGrantListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createSharingGrant: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateSharingGrantRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 定向分享授权已建立 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SharingGrantResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 幂等键正文冲突 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
accessPublicSharedResource: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Share-Token": string;
|
||
};
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 按匿名分享权限返回最小资源内容 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SharedResourceResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
/** @description 分享已撤销或过期 */
|
||
410: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
revokeSharingGrant: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 分享已撤销;重复撤销返回当前结果 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SharingGrantResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
};
|
||
};
|
||
accessSharedResource: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 按授权权限返回最小资源内容 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SharedResourceResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
/** @description 分享已撤销或过期 */
|
||
410: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
editSharedStory: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["EditSharedStoryRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 新修订版本 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SharedResourceResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 分享已撤销或过期 */
|
||
410: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
streamWebEvents: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: {
|
||
/** @description 最近成功处理的SSE事件编号。 */
|
||
"Last-Event-ID"?: string;
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 服务器状态事件流;连接约25秒后主动轮换,客户端携带最后事件编号重连。 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"text/event-stream": string;
|
||
};
|
||
};
|
||
/** @description 事件编号格式不正确 */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
/** @description 事件编号不存在、无权访问或已经超过续传窗口,客户端应执行一次完整刷新并无游标重连 */
|
||
410: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
getLiveness: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 进程存活 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["LivenessResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getReadiness: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 所有必要依赖可用 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ReadinessResponse"];
|
||
};
|
||
};
|
||
/** @description 至少一个必要依赖不可用 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ReadinessResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getVersion: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 构建版本信息 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["VersionResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getCurrentUser: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 当前外部身份在平台中的客户组织和家庭成员关系 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["CurrentUserResponse"];
|
||
};
|
||
};
|
||
/** @description 未登录、令牌无效或令牌已过期 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 外部身份没有有效的平台账号映射 */
|
||
403: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
listHouseholds: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: {
|
||
/** @description 公开客户组织编号;仅用于选择范围,服务端仍验证账号映射。 */
|
||
"X-Tenant-Id"?: components["parameters"]["TenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 当前账号可访问的家庭;租户选择仍由服务端验证 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["HouseholdListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
};
|
||
};
|
||
createHousehold: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 待创建资源所属的公开客户组织编号,不能是数据库内部主键。 */
|
||
"X-Tenant-Id": components["parameters"]["RequiredTenantSelectionHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateHouseholdRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 家庭及创建者所有者成员关系已在同一事务中创建 */
|
||
201: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["HouseholdResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
getHousehold: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 家庭详情及当前账号角色能力 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["HouseholdResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
updateHousehold: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["UpdateHouseholdRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 家庭已按指定版本修改 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["HouseholdResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
listHouseholdMembers: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 当前家庭的有效成员;成员角色不等同于高敏感资源授权 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["HouseholdMemberListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
removeHouseholdMember: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
member_id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 成员关系已标记为移除;所有者必须先转移所有权 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["HouseholdMemberResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
updateHouseholdMemberRole: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
member_id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["UpdateHouseholdMemberRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 非所有者成员角色已修改 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["HouseholdMemberResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
listMemberInvitations: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 邀请历史不包含明文邀请凭据 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["MemberInvitationListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createMemberInvitation: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateMemberInvitationRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 明文token仅在本次响应中返回;服务端只保存SHA-256摘要 */
|
||
201: {
|
||
headers: {
|
||
"Cache-Control"?: "no-store";
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["MemberInvitationResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
revokeMemberInvitation: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
invitation_id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 未使用邀请已撤销 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["MemberInvitationResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
404: components["responses"]["NotFoundError"];
|
||
};
|
||
};
|
||
previewMemberInvitation: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["AcceptMemberInvitationRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 邀请仍有效,可供当前登录用户确认目标关系 */
|
||
200: {
|
||
headers: {
|
||
"Cache-Control"?: "no-store";
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["MemberInvitationPreviewResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
acceptMemberInvitation: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["AcceptMemberInvitationRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 当前登录账号已加入邀请指定的客户组织和家庭 */
|
||
201: {
|
||
headers: {
|
||
"Cache-Control"?: "no-store";
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["HouseholdMemberResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
};
|
||
};
|
||
transferHouseholdOwnership: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["TransferHouseholdOwnershipRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 目标成员成为所有者,原所有者降为管理员 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["HouseholdResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
409: components["responses"]["ConflictError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
listSubjects: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 家庭内未删除的长者档案 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SubjectListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createSubject: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateSubjectRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 长者档案已创建 */
|
||
201: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SubjectResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
getSubject: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 长者档案详情 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SubjectResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
updateSubject: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["UpdateSubjectRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 长者档案已按指定版本修改 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SubjectResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
getSubjectConversationReadiness: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 当前长者的首次通话就绪清单 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ConversationReadinessResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
listSubjectConsents: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 授权追加历史;effective标明查询时刻是否生效 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ConsentListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
grantSubjectConsent: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["GrantConsentRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 授权记录已追加,并创建新的不可变授权快照 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ConsentResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 同类型已有有效授权,或政策版本已更新 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
listSubjectFacts: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 长者稳定事实、来源、确认状态和敏感等级 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SubjectFactListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createSubjectFact: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateSubjectFactRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 稳定事实或待核对候选已创建;事实正文不会进入审计详情 */
|
||
201: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SubjectFactResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
updateSubjectFact: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
fact_id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["UpdateSubjectFactRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 事实已按指定版本修改或完成核对 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SubjectFactResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 事实不属于指定长者 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 确认事实但缺少可追溯来源 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
withdrawSubjectConsent: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
consent_id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 授权已撤回或此前已经撤回;相关活动通话的停止意图已与撤回事务同时保存 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ConsentResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 授权编号不属于该长者 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
claimDevice: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceClaimRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 首次绑定或同一绑定的安全重试 */
|
||
201: {
|
||
headers: {
|
||
/** @description 同一绑定码再次提交完全相同目标时出现。 */
|
||
"Idempotency-Replayed"?: "true";
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceClaimResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 绑定码无效、过期、撤销、用于其他目标,或设备已有有效绑定 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
listManagedDevices: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 当前账号家庭内具有有效绑定的设备 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ManagedDeviceListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
};
|
||
};
|
||
getManagedDevice: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 设备登记、当前绑定和配置版本摘要 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ManagedDeviceResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
getDevicePresence: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Redis实时在线状态;无热状态时返回PostgreSQL最后上报时间并标记离线 */
|
||
200: {
|
||
headers: {
|
||
"Cache-Control"?: "no-store";
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DevicePresenceResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
getDeviceTwin: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 云端期望配置、设备实际配置、版本差异和最后同步时间 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceTwinResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
updateDeviceTwin: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["UpdateDeviceTwinRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 新的期望配置版本已经保存,设备可在下次在线时应用 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceTwinResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
listDeviceCommands: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回设备最近100条命令及执行状态 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceCommandListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createDeviceCommand: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateDeviceCommandRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 幂等重放 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceCommandResponse"];
|
||
};
|
||
};
|
||
/** @description 命令已可靠排队等待设备拉取 */
|
||
202: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceCommandResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 幂等冲突 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
listFirmwareSigningKeys: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回租户可信公钥指纹、状态和固件引用统计 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareSigningKeyListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
registerFirmwareSigningKey: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["RegisterFirmwareSigningKeyRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Ed25519可信公钥已登记 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 密钥编号已绑定其他公钥或已被吊销 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
revokeFirmwareSigningKey: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["RevokeFirmwareSigningKeyRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 活动公钥已吊销且不能再用于新制品或新灰度 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareSigningKeyResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 密钥不存在,或仍被上传中版本/运行中灰度引用 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listFirmwareReleases: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回当前家庭最近100个固件版本 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareReleaseListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
prepareFirmwareRelease: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["PrepareFirmwareReleaseRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 创建UPLOADING版本并返回15分钟私有上传地址 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareReleaseResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
finalizeFirmwareRelease: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 大小、SHA-256和可信Ed25519签名均通过后进入READY */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareReleaseResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 制品或签名校验失败 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
getFirmwareReleaseImpact: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回关联批次、设备阶段、命令处置和最多100条仍需观察设备 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareReleaseImpactResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
renewFirmwareUpload: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 为仍处于UPLOADING的版本重新签发15分钟私有上传地址 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareReleaseResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 固件版本已经就绪、暂停或退役 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
pauseFirmwareRelease: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 将READY版本转为PAUSED,同时暂停关联运行批次并取消未投递命令 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareReleaseResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 只有READY或已PAUSED版本允许执行该操作 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
resumeFirmwareRelease: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 在签名公钥仍活动时将PAUSED版本恢复为READY;旧批次不会自动恢复 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareReleaseResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 版本状态不允许恢复,或签名公钥已吊销 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
retireFirmwareRelease: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 将版本转为RETIRED;未完成对象尝试清理,已验证对象和历史记录保留 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareReleaseResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 版本状态不允许退役,或仍有运行中灰度批次需先通过版本暂停操作处置 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listFirmwareRollouts: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回当前家庭最近100个固件批次及结果汇总 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareRolloutListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
startFirmwareRollout: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["StartFirmwareRolloutRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 兼容目标已按稳定哈希比例进入升级批次 */
|
||
202: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareRolloutResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 版本未就绪或目标不兼容 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
getFirmwareRollout: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 批次目标、成功和失败统计 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareRolloutResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
pauseFirmwareRollout: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 暂停批次并取消尚未投递的命令 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareRolloutResponse"];
|
||
};
|
||
};
|
||
/** @description 批次不是RUNNING */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
rollbackFirmwareRollout: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["RollbackFirmwareRolloutRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 原批次暂停并以已验证旧版本创建100%回滚批次 */
|
||
202: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["FirmwareRolloutResponse"];
|
||
};
|
||
};
|
||
/** @description 回滚版本不可用 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listSubjectConversations: {
|
||
parameters: {
|
||
query?: {
|
||
status?: components["schemas"]["ConversationStatus"];
|
||
engine_mode?: "s2s_pure" | "s2s_hybrid" | "cascade";
|
||
/** @description 创建时间下界,包含。 */
|
||
from?: string;
|
||
/** @description 创建时间上界,不包含。 */
|
||
to?: string;
|
||
limit?: number;
|
||
/** @description 服务端签发的HMAC游标,禁止由客户端拼接。 */
|
||
cursor?: string;
|
||
};
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 指定长者的通话分页列表 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ConversationPageResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
getConversationDetail: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 脱敏通话详情、冻结快照版本、RTC任务摘要和完整状态历史;不返回Token或供应商任务引用 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ConversationDetailResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
getConversationUsage: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 当前通话的用量和费用汇总 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ConversationUsageResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
listRecordingAccessGrants: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 最近200条录音访问授权 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["RecordingAccessGrantListResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
grantRecordingAccess: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["GrantRecordingAccessRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 播放或下载授权已追加保存 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["RecordingAccessGrantResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
revokeRecordingAccess: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 授权已撤销;重复撤销返回同一结果 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["RecordingAccessGrantResponse"];
|
||
};
|
||
};
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 授权不存在 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
getConversationMedia: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回near/far已验证分片和当前账号的播放/下载能力 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ConversationMediaResponse"];
|
||
};
|
||
};
|
||
/** @description 当前账号无独立录音访问授权 */
|
||
403: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 通话不存在或不属于当前家庭 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
createMediaAccess: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateMediaAccessRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 返回单个对象5分钟短期地址 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["MediaAccessResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
/** @description 当前账号没有对应的播放或下载授权 */
|
||
403: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 分片不存在、未验证或不属于当前租户 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listConversationTurns: {
|
||
parameters: {
|
||
query?: {
|
||
limit?: number;
|
||
/** @description 服务端签发的话轮顺序游标。 */
|
||
cursor?: string;
|
||
};
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 仅返回授权允许保存的最终话轮;按供应商最终序号稳定排序。 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ConversationTurnPageResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
listConversationContentSummaries: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回版本化的通话摘要和开放话题,均保留源话轮编号。 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ConversationContentSummaryListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
listSubjectStories: {
|
||
parameters: {
|
||
query?: {
|
||
status?: components["schemas"]["StoryStatus"];
|
||
};
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 指定长者的故事候选及审核状态列表;列表不展开来源和事实。 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["StoryListResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
getStory: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 故事当前版本、逐条原话来源和事实候选。 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["StoryResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
reviseStory: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["ReviseStoryRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 创建新的人工修订版本,保留旧版本及来源,不覆盖历史内容。 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["StoryResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 故事审核状态不允许修订 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
confirmStory: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["StoryDecisionRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 人工确认故事并在当前有效个性化记忆授权下创建待索引记忆。 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["StoryConfirmationResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 缺少来源、缺少个性化记忆授权或审核状态冲突 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
rejectStory: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["StoryDecisionRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 拒绝故事及其仍为候选状态的事实,不创建记忆。 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["StoryResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 故事审核状态不允许拒绝 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
listSubjectMemories: {
|
||
parameters: {
|
||
query?: {
|
||
/** @description 在当前长者、当前家庭权限边界内搜索记忆正文。 */
|
||
q?: string;
|
||
};
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回未删除的已确认记忆及索引状态。 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["CuratedMemoryListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
getCuratedMemory: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回当前记忆版本、来源、确认人及索引状态。 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["CuratedMemoryResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
deleteCuratedMemory: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["StoryDecisionRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 删除请求已受理;记忆立即停止召回,后台清理索引并清除数据库正文。 */
|
||
202: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["CuratedMemoryResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
updateCuratedMemory: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
/** @description 最近一次读取返回的强ETag,不接受通配符或弱ETag。 */
|
||
"If-Match": components["parameters"]["IfMatchHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["UpdateMemoryRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 创建新的记忆版本,或停用/重新启用记忆;旧索引立即失效。 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["CuratedMemoryResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 缺少当前个性化记忆授权、资源状态无变化或记忆已进入删除流程 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
412: components["responses"]["VersionConflictError"];
|
||
428: components["responses"]["PreconditionRequiredError"];
|
||
};
|
||
};
|
||
listSubjectPrivacyRequests: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回当前长者的隐私请求及处理结果。 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PrivacyRequestListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createSubjectPrivacyRequest: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreatePrivacyRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 幂等重放,返回原隐私请求。 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PrivacyRequestResponse"];
|
||
};
|
||
};
|
||
/** @description 数据访问或主体删除申请已受理并进入后台处理;DELETE 会立即冻结主体。 */
|
||
202: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PrivacyRequestResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 幂等键已用于不同请求 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getPrivacyRequest: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回隐私请求、数据盘点结果和子任务状态;响应禁止缓存。 */
|
||
200: {
|
||
headers: {
|
||
ETag: components["headers"]["StrongETag"];
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PrivacyRequestResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
listSubjectExports: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回当前长者的私有导出任务,不返回对象存储内部路径或长期地址。 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ExportTaskListResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
};
|
||
};
|
||
createSubjectExport: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateExportTask"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 幂等重放,返回原导出任务。 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ExportTaskResponse"];
|
||
};
|
||
};
|
||
/** @description 导出任务已受理,文件将由Worker生成到私有对象存储。 */
|
||
202: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ExportTaskResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 幂等键已用于不同请求 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getExportTask: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 查询导出状态;仅READY且未过期时现场签发短期下载地址。 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ExportTaskResponse"];
|
||
};
|
||
};
|
||
401: components["responses"]["AuthenticationError"];
|
||
403: components["responses"]["AccessDeniedError"];
|
||
/** @description 对象存储或签名服务暂时不可用 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getDeviceBootstrap: {
|
||
parameters: {
|
||
query: {
|
||
firmware_version: string;
|
||
board_rev?: string;
|
||
rtc_sdk_version?: string;
|
||
codec?: string;
|
||
sample_rate?: number;
|
||
device_time: string;
|
||
network?: string;
|
||
};
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回可信设备状态、服务器时间、绑定和最低安全版本 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceBootstrapResponse"];
|
||
};
|
||
};
|
||
/** @description 启动参数不正确 */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 设备签名无效、过期、重放或设备已吊销 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 设备身份依赖暂时不可用 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getDeviceConfig: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
/** @description 已缓存配置的强ETag;匹配时返回304。 */
|
||
"If-None-Match"?: string;
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回设备期望配置及当前绑定 */
|
||
200: {
|
||
headers: {
|
||
/** @description 配置版本强ETag。 */
|
||
ETag?: string;
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceConfigResponse"];
|
||
};
|
||
};
|
||
/** @description 配置未变化 */
|
||
304: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 配置服务暂时不可用 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
pullDeviceCommands: {
|
||
parameters: {
|
||
query?: {
|
||
limit?: number;
|
||
};
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回未过期的待执行命令并记录投递次数 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceCommandDeliveryListResponse"];
|
||
};
|
||
};
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 命令服务暂时不可用 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
acknowledgeDeviceCommand: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceCommandAckRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 回执已保存 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceCommandDeliveryResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 命令不存在、已过期或状态冲突 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getDeviceFirmwareDownload: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 仅向当前灰度目标签发5分钟私有下载地址 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 设备不属于该批次或版本不可用 */
|
||
403: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
prepareMediaUploadBatch: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["PrepareMediaUploadBatchRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 返回尚未验证分片的10至20分钟单对象上传地址 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["MediaUploadBatchResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 当前归属、通话状态或原录音授权不允许上传 */
|
||
403: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 幂等键或已有轨道序号对应不同文件元数据 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
getDeviceMediaUploadBatch: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回分片校验结果;只有VERIFIED分片才包含local_delete_after */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["MediaUploadBatchResponse"];
|
||
};
|
||
};
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 批次不存在或不属于当前设备 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
completeMediaUploadBatch: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 批次已进入VERIFYING或已经完成 */
|
||
202: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["MediaUploadBatchResponse"];
|
||
};
|
||
};
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 批次不存在或不属于当前设备 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 批次状态冲突 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 上传批次已经过期 */
|
||
410: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
acknowledgeLocalMediaDelete: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
};
|
||
path: {
|
||
id: components["parameters"]["ResourceID"];
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["LocalMediaDeleteReceiptRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 已保存本地删除回执 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["MediaSegmentResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 分片不存在或不属于当前设备 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description 分片未验证、尚未到允许删除时间或状态冲突 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
createDeviceConversation: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CreateConversationRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 房间资料已分配;重复请求返回相同通话和相同确定性短期Token */
|
||
201: {
|
||
headers: {
|
||
/** @description 仅在返回已有幂等结果时出现。 */
|
||
"Idempotency-Replayed"?: "true";
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["CreateConversationResponse"];
|
||
};
|
||
};
|
||
/** @description 请求或幂等键不符合契约 */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 缺少语音通话授权 */
|
||
403: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 设备已有未结束通话或幂等键冲突 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 背景资料准备失败;错误码为AGENT_CONTEXT_PREPARATION_FAILED,details返回已持久化的conversation_id、FAILED状态和稳定failure_code;同一幂等键重放同一结果且不会创建RTC房间 */
|
||
422: {
|
||
headers: {
|
||
/** @description 仅在返回已有幂等失败结果时出现。 */
|
||
"Idempotency-Replayed"?: "true";
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 当前上报固件低于设备最低固件策略;错误码为FIRMWARE_UPDATE_REQUIRED */
|
||
426: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 客户组织或设备的日/月费用额度或并发通话上限已达到;错误码为USAGE_QUOTA_EXCEEDED */
|
||
429: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 通话创建服务暂时不可用 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
submitDeviceTelemetry: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceTelemetryBatchRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 整批遥测已接收;完全相同的已有事件计入duplicate_count */
|
||
200: {
|
||
headers: {
|
||
/** @description 仅在返回同一幂等请求的原结果时出现。 */
|
||
"Idempotency-Replayed"?: "true";
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceTelemetryBatchResponse"];
|
||
};
|
||
};
|
||
/** @description 请求、批量限制、事件字段或幂等键不符合契约 */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 事件关联的通话不存在或不属于当前设备 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 配置版本、命令状态、事件业务键或幂等键冲突;事件冲突详情位于error.details.conflicts */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 遥测服务暂时不可用 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getDeviceConversationState: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
};
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description 返回当前设备所属通话的权威状态和设备动作 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceConversationStateResponse"];
|
||
};
|
||
};
|
||
/** @description 通话编号不符合契约 */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 通话不存在或不属于当前设备 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 通话状态暂时不可读取 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
activateDeviceConversation: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["ActivateConversationRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 入房确认已接受;语音智能体正在启动或已经启动 */
|
||
202: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ActivateConversationResponse"];
|
||
};
|
||
};
|
||
/** @description 请求字段不符合契约 */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 通话不属于当前设备或不存在 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 房间、用户、配置版本、状态或幂等键冲突 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 激活服务暂时不可用 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
heartbeatDeviceConversation: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
};
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["HeartbeatConversationRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 心跳已接受,或已按序号判定为安全重放/乱序请求 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["HeartbeatConversationResponse"];
|
||
};
|
||
};
|
||
/** @description 心跳字段不符合契约 */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 通话不属于当前设备或不存在 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 通话状态或设备报告的配置版本冲突 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 心跳持久化服务暂时不可用 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
stopDeviceConversation: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["StopConversationRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 停止请求已接受,或通话已经处于停止中/终态 */
|
||
202: {
|
||
headers: {
|
||
/** @description 仅在返回同一幂等请求的原结果时出现。 */
|
||
"Idempotency-Replayed"?: "true";
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["StopConversationResponse"];
|
||
};
|
||
};
|
||
/** @description 请求或幂等键不符合契约 */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 通话不属于当前设备或不存在 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 当前状态或幂等键冲突 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 停止服务暂时不可用 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
submitDeviceConversationTurns: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Device-Id": components["parameters"]["DeviceIdHeader"];
|
||
"X-Device-Timestamp": components["parameters"]["DeviceTimestampHeader"];
|
||
"X-Device-Nonce": components["parameters"]["DeviceNonceHeader"];
|
||
"X-Device-Content-SHA256": components["parameters"]["DeviceContentDigestHeader"];
|
||
"X-Device-Signature": components["parameters"]["DeviceSignatureHeader"];
|
||
"Idempotency-Key": components["parameters"]["IdempotencyKeyHeader"];
|
||
};
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceTranscriptBatchRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 整批终稿已合并;完全相同的已有终稿计入duplicate_count而不重复保存 */
|
||
200: {
|
||
headers: {
|
||
/** @description 仅在返回同一幂等请求的原结果时出现。 */
|
||
"Idempotency-Replayed"?: "true";
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DeviceTranscriptBatchResponse"];
|
||
};
|
||
};
|
||
/** @description 请求、批量限制、终稿字段或幂等键不符合契约 */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 设备身份验证失败 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 当前留存策略或已撤回的文字留存授权禁止保存终稿;错误码为TRANSCRIPT_STORAGE_NOT_ALLOWED */
|
||
403: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 通话不属于当前设备或不存在 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 通话状态、幂等键或终稿业务键内容冲突;终稿冲突详情位于error.details.conflicts */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 终稿补传服务暂时不可用 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
receiveVoiceChatCallback: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Provider-Timestamp": components["parameters"]["ProviderTimestampHeader"];
|
||
"X-Provider-Signature": components["parameters"]["ProviderSignatureHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["VoiceProviderEvent"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 事件已处理、忽略或判定为重复 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ProviderCallbackResponse"];
|
||
};
|
||
};
|
||
/** @description 回调字段不符合契约 */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 回调签名无效或时间窗已过 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 固定供应商任务不存在 */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 同一供应商事件编号对应不同正文 */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 回调处理暂时不可用 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
receivePlatformHealthReport: {
|
||
parameters: {
|
||
query?: never;
|
||
header: {
|
||
"X-Platform-Timestamp": components["parameters"]["PlatformTimestampHeader"];
|
||
"X-Platform-Signature": components["parameters"]["PlatformSignatureHeader"];
|
||
};
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["PlatformHealthReport"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description 完全重复的健康快照已幂等确认 */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PlatformHealthReceiptResponse"];
|
||
};
|
||
};
|
||
/** @description 新健康快照已保存 */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PlatformHealthReceiptResponse"];
|
||
};
|
||
};
|
||
400: components["responses"]["ValidationError"];
|
||
/** @description 签名无效或时间窗已过 */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
/** @description 健康快照暂时无法保存 */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ErrorResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
}
|