本文档旨在为开发者提供一套完整的API接口,以便在企业级工作空间中高效地管理项目文件夹和项目。通过这些API,可以创建新的项目文件夹,检索特定文件夹,更新文件夹属性,以及添加或移除项目。
通过发送POST请求到/:workspace/groups
,可以创建一个新的项目文件夹。在请求头中设置Content-Type
为application/json
,并在请求体中包含必要的参数。
请求参数包括:
curl --location 'https://api.roboflow.com/<workspace_id>/groups?api_key=<api_key>' \
--header 'Content-Type: application/json' \
--data '{
"name": "Client Demos",
"projects": ["client-demo-project-1", "another-project-id"],
"external_id": "jfowke123jfiowje",
"auth_groups": {
"read": [],
"write": []
}
}'
成功创建项目文件夹后,将收到一个包含项目文件夹ID的响应。
要检索特定项目文件夹,发送GET请求到/:workspace/groups/:folderId
。同样,在请求头中设置Content-Type
为application/json
,并在查询参数中包含api_key
。
curl --location 'https://api.roboflow.com/<workspace_id>/groups?api_key=<your_api_key>' \
--header 'Content-Type: application/json'
如果项目文件夹存在,将收到一个包含项目文件夹数据的响应。如果文件夹不存在或没有项目文件夹属于提供的API密钥,将收到404错误。
要更新项目文件夹的属性,发送POST请求到/:workspace/groups/:folderId
。在请求头中设置Content-Type
为application/json
,并在请求体中包含更新后的参数。
curl --location 'https://api.roboflow.com/<workspace_id>/groups/<folder_id>?api_key=<api_key>&returnUpdated=true' \
--header 'Content-Type: application/json' \
--data '{
"name": "A new name"
}'
如果更新成功,将收到204状态码,表示资源已成功更新。如果查询参数?returnUpdated=true
被设置,还将收到包含更新后的项目文件夹数据的响应。
要将一个或多个项目添加到现有文件夹,发送PATCH请求到/:workspace/groups/:folderId/projects
。在请求头中设置Content-Type
为application/json
,并在请求体中包含要添加的项目ID列表。
curl --location --request PATCH 'https://api.roboflow.com/<workspace_id>/groups/example-folder-id/projects?api_key=<api_key>' \
--header 'Content-Type: application/json' \
--data '{
"projects": ["dog-breeds-mi53"]
}'
如果项目成功添加到文件夹,将收到204状态码,表示项目已成功添加。
要将一个或多个项目从现有文件夹中移除,发送DELETE请求到/:workspace/groups/:folderId/projects
。在请求头中设置Content-Type
为application/json
,并在请求体中包含要移除的项目ID列表。
curl --location --request DELETE 'https://api.roboflow.com/<workspace_id>/groups/example-folder-id/projects?api_key=<api_key>' \
--header 'Content-Type: application/json' \
--data '{
"projects": ["dog-breeds-mi53"]
}'
如果项目成功从文件夹中移除,将收到204状态码,表示项目已成功移除。
要删除一个项目文件夹,发送DELETE请求到/:workspace/groups/:folderId
。在请求头中设置Content-Type
为application/json
。
curl --location --request DELETE 'https://api.roboflow.com/<workspace_id>/groups/example-folder-id/projects?api_key=<api_key>' \
--header 'Content-Type: application/json'