This commit is contained in:
+119
-1
@@ -1,7 +1,7 @@
|
||||
openapi: 3.1.0
|
||||
info:
|
||||
title: 数据采集终端—云端系统 API
|
||||
version: 0.70.0
|
||||
version: 0.73.0
|
||||
description: 工程框架、SaaS核心业务、设备v2能力协商与智能体启动状态查询、首次通话就绪与最低固件门禁、背景资料准备失败闭环、活动通话授权撤回安全停止、语音内容闭环、终端终稿补传、批量设备遥测、录音上传队列、隐私对账、固件、双轨录音、状态事件、具体资源分享、受控运营配置、Agent组合组件引用、质量证据门禁、运营自定义版本族投放、新通话运行时冻结与供应商启动传递、带并发版本校验的配置投放暂停恢复、带严重度和验收证据门禁的联调问题闭环、含阻断告警定位、当前主机健康及生产部署标记、实际应用环境、身份服务模式、异地备份、外部告警与模拟服务强制条件的发布候选技术验收快照、绑定候选版本与构建摘要并按业务时区生成的可审计试点日/周运行证据、可审计且不生成正式告警的接收器联通测试、外部依赖预检台账、证书到期清单,以及带价格版本冻结、供应商用量去重和硬额度控制的费用治理接口。
|
||||
servers:
|
||||
- url: http://localhost:58080
|
||||
@@ -36,6 +36,53 @@ paths:
|
||||
'200': { description: 按生成模型和提示词版本聚合的候选确认、修改、拒绝和质量问题类型, content: { application/json: { schema: { $ref: '#/components/schemas/ContentQualityListResponse' } } } }
|
||||
'401': { $ref: '#/components/responses/AuthenticationError' }
|
||||
'403': { $ref: '#/components/responses/AccessDeniedError' }
|
||||
/api/v1/content-models:
|
||||
get:
|
||||
operationId: listContentModels
|
||||
tags: [content-review]
|
||||
security: [{ oidcBearer: [] }]
|
||||
parameters: [{ $ref: '#/components/parameters/RequiredTenantSelectionHeader' }]
|
||||
responses:
|
||||
'200': { description: 当前账号空间可用的总结模型;不返回密钥明文, content: { application/json: { schema: { $ref: '#/components/schemas/ContentModelListResponse' } } } }
|
||||
'403': { $ref: '#/components/responses/AccessDeniedError' }
|
||||
post:
|
||||
operationId: createContentModel
|
||||
tags: [content-review]
|
||||
security: [{ oidcBearer: [] }]
|
||||
parameters: [{ $ref: '#/components/parameters/RequiredTenantSelectionHeader' }]
|
||||
requestBody: { required: true, content: { application/json: { schema: { $ref: '#/components/schemas/CreateContentModelRequest' } } } }
|
||||
responses:
|
||||
'201': { description: 模型配置和加密凭据已保存, headers: { ETag: { $ref: '#/components/headers/StrongETag' } }, content: { application/json: { schema: { $ref: '#/components/schemas/ContentModelResponse' } } } }
|
||||
'400': { $ref: '#/components/responses/ValidationError' }
|
||||
'403': { $ref: '#/components/responses/AccessDeniedError' }
|
||||
/api/v1/content-models/{id}/test:
|
||||
post:
|
||||
operationId: testContentModel
|
||||
tags: [content-review]
|
||||
security: [{ oidcBearer: [] }]
|
||||
parameters: [{ $ref: '#/components/parameters/ResourceID' }, { $ref: '#/components/parameters/RequiredTenantSelectionHeader' }]
|
||||
responses:
|
||||
'200': { description: 使用无家庭数据的固定文本完成连通性测试, headers: { ETag: { $ref: '#/components/headers/StrongETag' } }, content: { application/json: { schema: { $ref: '#/components/schemas/ContentModelResponse' } } } }
|
||||
'403': { $ref: '#/components/responses/AccessDeniedError' }
|
||||
/api/v1/content-models/{id}/activate:
|
||||
post:
|
||||
operationId: activateContentModel
|
||||
tags: [content-review]
|
||||
security: [{ oidcBearer: [] }]
|
||||
parameters: [{ $ref: '#/components/parameters/ResourceID' }, { $ref: '#/components/parameters/RequiredTenantSelectionHeader' }, { $ref: '#/components/parameters/IfMatchHeader' }]
|
||||
responses:
|
||||
'200': { description: 已通过测试的模型成为该账号空间唯一活动总结模型, headers: { ETag: { $ref: '#/components/headers/StrongETag' } }, content: { application/json: { schema: { $ref: '#/components/schemas/ContentModelResponse' } } } }
|
||||
'409': { $ref: '#/components/responses/ConflictError' }
|
||||
'412': { $ref: '#/components/responses/VersionConflictError' }
|
||||
/api/v1/content-models/{id}:
|
||||
delete:
|
||||
operationId: revokeContentModel
|
||||
tags: [content-review]
|
||||
security: [{ oidcBearer: [] }]
|
||||
parameters: [{ $ref: '#/components/parameters/ResourceID' }, { $ref: '#/components/parameters/RequiredTenantSelectionHeader' }, { $ref: '#/components/parameters/IfMatchHeader' }]
|
||||
responses:
|
||||
'200': { description: 未激活配置已撤销且密钥材料已清除, content: { application/json: { schema: { $ref: '#/components/schemas/ContentModelResponse' } } } }
|
||||
'409': { $ref: '#/components/responses/ConflictError' }
|
||||
/api/v1/ops/config-versions:
|
||||
get:
|
||||
operationId: listOpsConfigVersions
|
||||
@@ -1956,6 +2003,16 @@ paths:
|
||||
content: { application/json: { schema: { $ref: '#/components/schemas/ConversationContentSummaryListResponse' } } }
|
||||
'401': { $ref: '#/components/responses/AuthenticationError' }
|
||||
'403': { $ref: '#/components/responses/AccessDeniedError' }
|
||||
/api/v1/conversations/{id}/summaries:regenerate:
|
||||
parameters: [{ $ref: '#/components/parameters/ResourceID' }]
|
||||
post:
|
||||
operationId: regenerateConversationSummary
|
||||
tags: [content-review]
|
||||
security: [{ oidcBearer: [] }]
|
||||
responses:
|
||||
'202': { description: 已按当前激活模型排队生成新的版本化摘要, content: { application/json: { schema: { $ref: '#/components/schemas/ConversationSummaryRegenerationResponse' } } } }
|
||||
'403': { $ref: '#/components/responses/AccessDeniedError' }
|
||||
'409': { $ref: '#/components/responses/ConflictError' }
|
||||
/api/v1/subjects/{id}/stories:
|
||||
parameters: [{ $ref: '#/components/parameters/ResourceID' }]
|
||||
get:
|
||||
@@ -5603,6 +5660,40 @@ components:
|
||||
generation_version: { type: integer, format: int64, minimum: 1 }
|
||||
status: { type: string, enum: [PROCESSING, READY, FAILED, SUPERSEDED] }
|
||||
created_at: { type: string, format: date-time }
|
||||
ContentModel:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
required: [id, tenant_id, display_name, provider, base_url, model_id, credential_hint, temperature, max_tokens, status, test_status, version, created_at, updated_at]
|
||||
properties:
|
||||
id: { type: string, format: uuid }
|
||||
tenant_id: { type: string, format: uuid }
|
||||
display_name: { type: string, minLength: 1, maxLength: 120 }
|
||||
provider: { type: string, enum: [ark, openai_compatible] }
|
||||
base_url: { type: string, format: uri }
|
||||
model_id: { type: string, minLength: 1, maxLength: 200 }
|
||||
credential_hint: { type: string, description: 仅包含掩码和密钥末四位。 }
|
||||
temperature: { type: number, minimum: 0, maximum: 2 }
|
||||
max_tokens: { type: integer, minimum: 256, maximum: 8192 }
|
||||
status: { type: string, enum: [inactive, active, revoked] }
|
||||
test_status: { type: string, enum: [untested, passed, failed] }
|
||||
last_tested_at: { type: string, format: date-time }
|
||||
last_error_code: { type: string }
|
||||
activated_at: { type: string, format: date-time }
|
||||
version: { type: integer, format: int64, minimum: 1 }
|
||||
created_at: { type: string, format: date-time }
|
||||
updated_at: { type: string, format: date-time }
|
||||
CreateContentModelRequest:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
required: [display_name, provider, base_url, model_id, api_key, temperature, max_tokens]
|
||||
properties:
|
||||
display_name: { type: string, minLength: 1, maxLength: 120 }
|
||||
provider: { type: string, enum: [ark, openai_compatible] }
|
||||
base_url: { type: string, format: uri, maxLength: 500 }
|
||||
model_id: { type: string, minLength: 1, maxLength: 200 }
|
||||
api_key: { type: string, minLength: 8, maxLength: 1000, writeOnly: true }
|
||||
temperature: { type: number, minimum: 0, maximum: 2 }
|
||||
max_tokens: { type: integer, minimum: 256, maximum: 8192 }
|
||||
StoryStatus:
|
||||
type: string
|
||||
enum: [CANDIDATE, IN_REVIEW, CONFIRMED, REJECTED, SUPERSEDED]
|
||||
@@ -6627,6 +6718,33 @@ components:
|
||||
required: [items]
|
||||
properties:
|
||||
items: { type: array, items: { $ref: '#/components/schemas/ConversationContentSummary' } }
|
||||
ConversationSummaryRegenerationResponse:
|
||||
type: object
|
||||
required: [request_id, data]
|
||||
properties:
|
||||
request_id: { type: string }
|
||||
data:
|
||||
type: object
|
||||
required: [generation_version, status]
|
||||
properties:
|
||||
generation_version: { type: integer, format: int64, minimum: 1 }
|
||||
status: { type: string, enum: [queued] }
|
||||
ContentModelResponse:
|
||||
type: object
|
||||
required: [request_id, data]
|
||||
properties:
|
||||
request_id: { type: string }
|
||||
data: { $ref: '#/components/schemas/ContentModel' }
|
||||
ContentModelListResponse:
|
||||
type: object
|
||||
required: [request_id, data]
|
||||
properties:
|
||||
request_id: { type: string }
|
||||
data:
|
||||
type: object
|
||||
required: [items]
|
||||
properties:
|
||||
items: { type: array, items: { $ref: '#/components/schemas/ContentModel' } }
|
||||
StoryResponse:
|
||||
type: object
|
||||
required: [request_id, data]
|
||||
|
||||
Reference in New Issue
Block a user