用途:通过 ibl.ai Data Manager API 管理组织目录中的媒体资源,将视频、图片、文档、音频或外部链接关联到课程、单元、资源项或其组合。
主要能力:支持媒体资源的列表与筛选、搜索、按目录项查询,以及创建、读取、更新、删除(CRUD)。item_type 由服务端根据传入的 course_id / unit_id / item_id 自动推导,客户端不可写。
使用方式:基础 URL 为 https://api.iblai.app/dm,所有路由位于 /api/media/orgs/{org}/users/{user_id}/media/media-resources/ 下。每个请求需带请求头 Authorization: Api-Token $IBLAI_API_KEY。{org} 对应 $IBLAI_ORG,{user_id} 为数字用户 ID(非用户名)。未连接时先运行 /iblai-login 填充 IBLAI_ORG、IBLAI_USERNAME 和 IBLAI_API_KEY。
读取:GET …/media-resources/ 列出资源,支持 search、course_id、unit_id、item_id 筛选;GET …/media-resources/{id}/ 获取单条;GET …/media-resources/search/ 需 q 参数;GET …/media-resources/by_item/ 需 item_type 和 item_id。
写入:POST 创建、PUT 全量更新、PATCH 部分更新、DELETE 删除,均仅限管理员。创建时至少提供 course_id / unit_id / item_id 之一,需提供 file(multipart 上传)或 file_url(外部链接),同一 item 重复文件或 URL 会被拒绝(400)。删除、上传等操作应先与用户确认。
限制:路径中的 {user_id} 必须拥有指向 {org} 平台的有效 UserPlatformLink;读取仅需该链接,写入还需该链接为管理员。分页使用 page_size(默认 10,最大 100)和 page,返回自定义信封结构。item_type 和 media_type 取值固定,item_type 只读。未知组织返回空结果或写入权限失败。