跳转到正文
开发者文档/开放 API

文件夹管理

搜索目录、创建文件夹树并读取路径与自动标签。

最近更新

文件夹管理接口

获取文件夹路径

接口地址: /folder-path

请求方式:POST

接口描述: 获取指定文件夹的完整路径信息

请求参数:

json
[123, 456, 789]

参数说明:

  • 文件夹ID列表

响应结果:

json
{
"code": "200",
"message": "OK",
"result": {
"123": "根目录/子文件夹1/子文件夹2",
"456": "根目录/其他文件夹",
"789": "根目录/测试文件夹"
}
}

业务逻辑:

  • 根据文件夹的treeCode构建完整路径
  • 返回文件夹ID到路径字符串的映射
  • 路径使用"/"分隔符连接

获取子文件夹ID列表

接口地址: /get-sub-folder-ids

请求方式:POST

接口描述: 获取指定文件夹的所有子文件夹ID

请求参数:

json
[123, 456, 789]

参数说明:

  • 父文件夹ID列表

响应结果:

json
{
"code": "200",
"message": "OK",
"result": {
"123": [123,124, 125, 126],
"456": [456,457, 458],
"789": [789]
}
}

业务逻辑:

  • 递归查询所有层级的子文件夹
  • 返回父文件夹ID到子文件夹ID列表的映射
  • 支持批量查询多个文件夹的子文件夹

查询文件夹自动标签

接口路径:/folder-auto-tags

请求方式:POST

接口描述:批量查询指定文件夹上配置的自动标签。仅返回文件夹自身绑定的标签(不含祖先文件夹标签)。

请求参数:

字段名类型必填描述
folderIdsList<Long>是文件夹 ID 列表;单次最多 50 个;须为当前团队内存在的文件夹

响应:Map<Long, List>,key 为 folderId;无自动标签时对应空数组。

字段名类型描述
idLong标签 ID
nameString标签名称
parentIdLong父标签 ID
parentObject父标签(递归);无父级时为 null

请求示例:

bash
curl --location --request POST 'https://open.musedam.cc/api/muse/folder-auto-tags' \
--header 'Authorization: Bearer your_api_key' \
--header 'Content-Type: application/json' \
--data-raw '{
"folderIds": [10001, 10002]
}'

搜索文件夹

接口地址: /search-folders

请求方式: POST

请求参数:

参数名类型必填说明默认值
parentIdLong否指定搜索目录,包括所有子孙。不传则搜索全部文件夹. 0表示根目录-
needChildrenBoolean否是否需要子级目录下的文件夹。当parentId存在时,true表示搜索该文件夹及其所有子文件夹,false表示只搜索该文件夹的直接子文件夹false
keywordsList<String>否搜索关键字列表,支持多个关键字,parentId=0的时候,关键词搜索无效-
sortObject否排序条件-
sort.sortNameString是(当sort存在时)排序字段,可选值:CREATE_TIME(创建时间)、UPDATE_TIME(更新时间)、NAME(名称)、SIZE(大小)、SCORE(评分)-
sort.sortTypeString否排序类型,可选值:ASC(正序)、DESC(倒序)DESC
startPointInteger否分页参数,开始索引0
endPointInteger否分页参数,结束索引10
currentUserIdLong否仅搜索该用户有权限的文件夹
folderIdsList<Long>否按指定文件夹 ID 列表查询;传入时走按 ID 查询分支,而非普通关键词和分页搜索

请求示例:

json
{
"parentId": 1234567890,
"needChildren": false,
"keywords": ["测试"],
"sort": {
"sortName": "CREATE_TIME",
"sortType": "DESC"
},
"startPoint": 0,
"endPoint": 10
}

请求示例:

bash
curl --location --request POST 'https://open.musedam.cc/api/muse/search-folders' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"parentId": 1234567890,
"needChildren": false,
"keywords": ["测试"],
"sort": {
"sortName": "CREATE_TIME",
"sortType": "DESC"
},
"startPoint": 0,
"endPoint": 10
}'

返回结果:

字段名类型说明
codeString响应码,"0"表示成功
messageString响应消息
resultObject返回结果对象
result.foldersArray文件夹列表
result.folders[].idLong文件夹ID
result.folders[].nameString文件夹名称
result.folders[].createUserLong创建人userId
result.folders[].userIdLong所有人userId
result.totalLong符合条件的文件夹总数
traceIdString追踪ID

返回示例:

json
{
"code": "0",
"message": "OK",
"result": {
"folders": [
{
"id": 1234567890,
"name": "测试文件夹",
"createUser": 1765276754630496256,
"userId": 1765276754630496256
},
{
"id": 1234567891,
"name": "另一个文件夹",
"createUser": 1765276754630496257,
"userId": 1765276754630496257
}
],
"total": 2
},
"traceId": "17561978534182325498"
}

创建文件夹

接口地址: /create-folder

请求方式: POST

请求参数:

参数名类型必填说明
nameString是文件夹名称,不能为空
parentFolderIdLong是父文件夹ID,必须大于0。创建的文件夹将作为该父文件夹的子文件夹

请求示例:

json
{
"name": "新文件夹",
"parentFolderId": 1234567890
}

请求示例:

bash
curl --location --request POST 'https://open.musedam.cc/api/muse/create-folder' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "新文件夹",
"parentFolderId": 1234567890
}'

返回结果:

字段名类型说明
codeString响应码,"0"表示成功
messageString响应消息
resultObject返回结果对象
result.folderIdLong创建的文件夹ID
traceIdString追踪ID

返回示例:

json
{
"code": "0",
"message": "OK",
"result": {
"folderId": 1234567891
},
"traceId": "17561978534182325498"
}

注意事项:

  • 父文件夹必须存在,否则会返回错误
  • 创建人默认为当前团队所有者用户ID
  • 文件夹状态默认为团队内协作

批量创建文件夹树

接口路径:/create-folder-tree

请求方式:POST

接口描述:在指定父文件夹下一次性创建完整子树。同级已存在同名文件夹时自动改名为 name (2)、name (3)…。创建人默认为团队所有者;协作者从父文件夹继承。

请求参数:

字段名类型必填说明
parentFolderIdLong是父文件夹 ID;>0 挂到该文件夹下,0 表示团队根目录
nodesList<Node>是待创建子树根节点列表

Node:

字段名类型必填说明
nameString是文件夹名称
childrenList<Node>否子文件夹,可嵌套

响应:

字段名类型说明
parentFolderIdLong父文件夹 ID
createdCountInteger实际新建文件夹数量
pathToFolderIdMap<String, Long>相对路径 → 文件夹 ID。路径使用请求中的原始名称拼接(不含父目录),即使落库发生了同名改名

请求示例:

bash
curl --location --request POST 'https://open.musedam.cc/api/muse/create-folder-tree' \
--header 'Authorization: Bearer your_api_key' \
--header 'Content-Type: application/json' \
--data-raw '{
"parentFolderId": 123,
"nodes": [
{
"name": "项目素材",
"children": [
{ "name": "产品图", "children": [] },
{ "name": "海报", "children": [] }
]
}
]
}'
MuseDAM Developer PlatformAPI · Integrations · MCP
    文件夹管理 | MuseDAM Developers