是否可以使用图形API创建项目文档集?

时间:2018-01-11 13:15:40

标签: api sharepoint microsoft-graph onedrive document-set

到目前为止,我还没有找到任何有关如何使用Graph API在我的Sharepoint环境中创建项目文档集的信息。我已尝试过Sharepoint的'Create item'和OneDrive 'Create Folder'。 Sharepoint API说:

"Files and folders should only be added to a DocumentLibrary via the OneDrive API"

OneDrive API说:

"Either 'folder' or 'file' must be provided, but not both."

从响应中可以看出,它似乎仅限于创建文件夹或文件的选项。它是否正确?有没有办法使用不同的API调用将文件夹变为文档集?

我尝试将内容类型ID添加到不同的请求主体,在每种情况下都不提供进一步的解决方案。

希望有人知道可能的解决方案,并可以帮助我。谢谢!

2 个答案:

答案 0 :(得分:0)

我一直在调查这个问题并走进同一堵墙。 目前,不幸的是,没有组合方法。 您可以使用它们将它组合到您自己的文档集中。

亲切的问候, R Schouten

答案 1 :(得分:0)

我今天也处理过同样的问题。经过一些业务逻辑后,我需要在文档库的根级别中创建一个文档集。

这是我做到这一点的方法:

1-获取文档库的驱动器ID

GET https://graph.microsoft.com/v1.0/sites/${siteId}/lists/${listId}?$expand=drive

2-创建文件夹

POST https://graph.microsoft.com/v1.0/drives/${library.drive.id}/root/children

记住将正文设置为:

{
    "name": ${nameOfTheFolder},
    "folder": {},
}

3-获取文件夹的SharePoint项目ID

GET https://graph.microsoft.com/v1.0/sites/${siteId}/drives/${library.drive.id}/items/${folder.id}?expand=sharepointids 

4-更新文档库中的项目,以便将其更新为所需的文档集

PATCH https://graph.microsoft.com/v1.0/sites/${siteId}/lists/${listId}/items/${sharepointIds.listItemId}

别忘了将主体设置为:

{
  "contentType": {
    "id": "content-type-id-of-the-document-set"
  },
  "fields": {
    //whatever fields you want to set
  }
}

希望有帮助