1. 配置管理
Adventists - API文档
  • 总览
  • 更新日志
  • 基本配置
  • 2.5 更新
  • Quick Start
  • Demos
  • Emoji 表情定制指南
  • TCP语音对话
    • TCP接入
    • MCP协议接入
    • WebSocket快速接入
    • VAD 模式接入指南
    • Emoji 模式对接指南
    • TCP获取Token
      POST
  • 配置管理
    • 模版 与 角色
    • 名词和参数说明
    • Hippo 记忆管理服务 API 接口文档
    • 设备/角色封禁管理 API 接口文档
    • 模板
      • 查询公开模板列表
      • 查询当前组织模板(包含公开和私有模板)
      • 创建角色模板
      • 查询角色模板信息
      • 修改角色模板
      • 删除角色模板
      • 提交角色模板记忆
    • 角色
      • 创建角色(通过模板创建)
      • 创建角色
      • 查询角色
      • 修改角色
      • 删除角色
      • 发送角色记忆
      • 读取角色记忆
      • 创建角色(通过现有角色创建)
    • 技能书
      • 查询技能书列表
      • 预创建任务书
      • 上传任务书内容
      • 完成上传任务书
      • 查询技能书创建进度
    • 音色
      • 获取音色列表
      • 试听音色
      • 提交音色
      • 查询音色状态
    • Hippo记忆管理
      • 获取指定角色的个人知识图谱
      • 获取指定角色的人物关系数据
      • 获取指定角色的日记数据
      • 更新角色的 PKG
      • 触发做梦
    • 设备/角色封禁管理
      • 设备/角色封禁
      • 设备/角色解除封禁
      • 查询封禁列表
      • 查询单个封禁状态
  • 聊天辅助
    • 上传画面(Base64)
      POST
    • 上传画面(File)
      POST
    • 健康检查
      GET
  • 用量统计
    • 调用次数基本统计
  1. 配置管理

设备/角色封禁管理 API 接口文档

概述#

设备/角色封禁功能允许合作伙伴通过 API 管理其设备和角色的封禁状态。被封禁的设备或角色在调用 init_npc 时将被拒绝连接。
Base URL: https://hippo.adventists.cn
路由前缀: /api
数据格式: JSON
编码: UTF-8

鉴权方式#

所有管理接口通过 HTTP Header 鉴权:
Header类型必填说明
api_keystring是32 位 API 密钥
org_idstring是6 位组织 ID
鉴权失败时返回 401:
{
    "message": "Invalid API KEY or ORG ID"
}

接口一览#

方法路径说明
POST/api/device/block封禁设备/角色
POST/api/device/unblock解封设备/角色
GET/api/device/blocklist查询封禁列表
GET/api/device/block/check查询单个封禁状态

封禁设备/角色#

添加一条封禁记录。被封禁的设备或角色在 init_npc 时会被拒绝。
POST /api/device/block

请求体#

{
    "type": "device",
    "identifier": "ABC123",
    "reason": "违规使用"
}
参数类型必填说明
typestring是"device" 或 "npc"
identifierstring是设备 ID 或角色 ID(npcid)
reasonstring否封禁原因
当 type 为 "npc" 时,identifier 必须属于当前组织(即 identifier 前 6 位与 org_id 一致),否则返回 403。

成功响应(200)#

{
    "ok": true,
    "block_key": "device:ABC123"
}

错误响应#

400 - 参数错误
{
    "ok": false,
    "error": "Missing required field: type"
}
403 - 无权限
{
    "ok": false,
    "error": "Cannot block NPC belonging to another org"
}

cURL 示例#


解封设备/角色#

移除一条封禁记录。只能解封本组织创建的封禁记录。
POST /api/device/unblock

请求体#

{
    "type": "device",
    "identifier": "ABC123"
}
参数类型必填说明
typestring是"device" 或 "npc"
identifierstring是设备 ID 或角色 ID

成功响应(200)#

{
    "ok": true
}

错误响应#

404 - 记录不存在
{
    "ok": false,
    "error": "Block record not found"
}
403 - 无权限
{
    "ok": false,
    "error": "Cannot unblock record owned by another org"
}

cURL 示例#


查询封禁列表#

查询当前组织的所有封禁记录,支持按类型过滤。
GET /api/device/blocklist

查询参数#

参数类型必填说明
typestring否按类型过滤:"device" 或 "npc",不传则返回全部

成功响应(200)#

{
    "ok": true,
    "items": [
        {
            "block_key": "device:ABC123",
            "type": "device",
            "identifier": "ABC123",
            "created_at": "2026-04-10T15:30:00Z",
            "created_by": "WOQSOC",
            "reason": "违规使用"
        },
        {
            "block_key": "npc:WOQSOC7a8b9c1d2e3f4a5b6c7d8e9f0a1b2c3d",
            "type": "npc",
            "identifier": "WOQSOC7a8b9c1d2e3f4a5b6c7d8e9f0a1b2c3d",
            "created_at": "2026-04-10T16:00:00Z",
            "created_by": "WOQSOC",
            "reason": "角色停用"
        }
    ]
}

cURL 示例#


查询单个封禁状态#

查询指定设备或角色是否被封禁。
GET /api/device/block/check

查询参数#

参数类型必填说明
typestring是"device" 或 "npc"
identifierstring是设备 ID 或角色 ID

已封禁响应(200)#

{
    "ok": true,
    "blocked": true,
    "detail": {
        "reason": "违规使用",
        "created_at": "2026-04-10T15:30:00Z",
        "created_by": "WOQSOC"
    }
}

未封禁响应(200)#

{
    "ok": true,
    "blocked": false
}

cURL 示例#


init_npc 行为变更#

init_npc 接口新增可选参数 device_id,并在初始化前进行封禁检查。

新增请求参数#

参数类型必填说明
npcidstring是角色 ID
langstring否语言设置
device_idstring否设备 ID(新增,不传时跳过设备维度的封禁检查)

封禁检查顺序#

1.
若传入 device_id,检查该设备是否被封禁
2.
检查 npcid 是否被封禁
3.
两项均通过后执行原有初始化逻辑

封禁响应#

当设备或角色被封禁时,init_npc 返回(HTTP 200):
{
    "status": "blocked",
    "reason": "设备已被封禁"
}
TCP 侧通过 status 字段值为 "blocked" 判断连接被拒绝。
正常初始化的响应格式不变:
{
    "message": "NPC xxx initialized successfully",
    "status": "success",
    "code": 200
}

错误码汇总#

HTTP 状态码说明
200请求成功
400参数错误(缺少 type 或 identifier,type 值无效)
401api_key 或 org_id 无效
403无权限(尝试操作其他组织的 NPC)
404未找到(unblock 时封禁记录不存在)
500服务端错误
修改于 2026-04-14 02:35:54
上一页
Hippo 记忆管理服务 API 接口文档
下一页
查询公开模板列表
Built with