使用Graph API在SharePoint列表创建术语列报invalidRequest错误如何解决
修复请求体必填项
当前请求缺失3个必要参数,是触发invalidRequest错误的核心原因:
- 缺失列显示名称字段
displayName,该字段为SharePoint列表中列对外展示的名称 - 缺失列分组字段
columnGroup,可填写默认分组Custom Columns或者自定义分组名 term节点下的termSet仅填写了术语集ID,需补充所属术语组IDgroupId
修正后的请求体示例:
{ "description": "test2", "enforceUniqueValues": false, "hidden": false, "indexed": false, "name": "test2", "displayName": "测试术语列", "columnGroup": "Custom Columns", "term": { "allowMultipleValues": true, "termSet": { "id": "f6ad7041-6336-4b8e-b449-444441d69753", "groupId": "替换为对应术语集所属的术语组ID" }, "showFullyQualifiedName": false } }
权限校验
确保你调用接口使用的身份已被授予以下任意一种Graph API权限,且已完成管理员同意:
- Sites.Manage.All
- Sites.FullControl.All
参数合法性校验
- 确认
site-id、list-id、术语集ID、术语组ID归属同一个SharePoint站点,跨站点调用会触发无效请求错误 - 确认使用的身份有对应术语集的访问权限,术语集未被删除或设置权限限制
高级排查
如果修改后仍报错,可在请求头添加Prefer: include-errors参数,返回的报错信息会携带更具体的错误原因,方便定位问题。
内容的提问来源于stack exchange,提问作者Ravichandran Krishnasamy
相关产品推荐
相关产品推荐

