SharePoint Online和OneDrive for Business支持版本控制,可以保留文件的版本历史,方便用户随时查看和恢复以前的版本。但该功能也会占用大量SharePoint Online或OneDrive for Business存储空间。官方删除版本历史的方法无法批量操作,故今天提供一种使用Power Automate来删除SharePoint Online或OneDrive for Business文件版本历史。
第一步:添加“Get files(properties only)”操作,以获取列表中的文件。
第二步:添加“Send an HTTP request to SharePoint”操作:
Method: GETUri: _api/web/GetFolderByServerRelativeUrl('Dynamic content of Folder Path')/Files('Dynamic content of File name with extension')/Versions
第三步:“Parse JSON”,将上一个动作的正文放入解析 JSON 动作的内容中,然后点击“使用示例负载”按钮生成 schema 粘贴如下 schema:
{"type": "object","properties": {"d": {"type": "object","properties": {"results": {"type": "array","items": {"type": "object","properties": {"__metadata": {"type": "object","properties": {"id": {"type": "string"},"uri": {"type": "string"},"type": {"type": "string"}}},"CreatedBy": {"type": "object","properties": {"__deferred": {"type": "object","properties": {"uri": {"type": "string"}}}}},"CheckInComment": {"type": "string"},"Created": {"type": "string"},"ID": {"type": "integer"},"IsCurrentVersion": {"type": "boolean"},"Length": {"type": "string"},"Size": {"type": "integer"},"Url": {"type": "string"},"VersionLabel": {"type": "string"}},"required": ["__metadata","CreatedBy","CheckInComment","Created","ID","IsCurrentVersion","Length","Size","Url","VersionLabel"]}}}}}}
第四步:创建另一个“Send an Http request to SharePoint”:
Method: DELETEUri: _api/web/GetFolderByServerRelativeUrl('Dynamic content of Folder Path')/Files('Dynamic content of File name with extension')/Versions(ID from the previous action)