You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Power Automate中用HTTP请求更新SharePoint日历遇400错误求助

问题解决思路

一、优先推荐更简单的替代方案

直接使用Power Automate内置的SharePoint - 创建项动作,无需手动编写HTTP请求:

  • 选择目标SharePoint站点与「Events」列表
  • 直接映射休假请求的对应字段(标题、开始日期、结束日期、类别等),动作会自动处理字段格式、权限验证等问题,彻底规避手动构造JSON的各类错误。

二、若坚持使用HTTP请求,需修复以下核心错误:

1. URI引号格式错误

错误示例:_api/web/lists/getByTitle(‘Events’)/items
问题:使用了中文单引号‘’,SharePoint API仅识别英文单引号''
修正后:_api/web/lists/getByTitle('Events')/items

2. 请求头拼写错误

错误示例:"Content-Type": "applications/json;odata=nometadata"
问题:applications多了多余的s,且Accept头里的制表符\t会干扰格式解析
修正后请求头:

{
    "Accept": "application/json;odata=nometadata",
    "Content-Type": "application/json;odata=nometadata"
}

3. 请求Body的JSON语法与格式错误

  • 日期格式:EventDate和EndDate需为ISO标准字符串(如"2023-05-15T00:00:00Z"),原代码中存在多余单引号(2023-05-15'')的语法错误
  • fAllDayEvent:需为布尔值true,而非字符串'true'
  • 注释:JSON不支持//格式的注释,需全部删除

修正后的Body示例:

{
    "__metadata": {
       "type": "SP.Data.EventsListItem"
    },
    "fAllDayEvent": true,
    "EventDate": "2023-05-15T00:00:00Z",
    "EndDate": "2023-05-16T00:00:00Z",
    "Title": "Test Event from Flow: IR",
    "Category": "SICK",
    "Description": ""
}

4. 确认Metadata类型正确性

SP.Data.EventsListItem中的Events需与列表的内部名称一致(可能和显示名称不同),可通过访问以下地址获取正确类型:

https://MyTenant.sharepoint.com/sites/Ian_DevSandBox/_api/web/lists/getByTitle('Events')?$select=ListItemEntityTypeFullName

三、其他注意事项

  • 确保Power Automate连接账号拥有「Events」列表的编辑权限
  • 休假请求的日期字段需转换为UTC时间格式,避免时区偏差

内容的提问来源于stack exchange,提问作者Ian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 00:37:05