微软Graph创建日历事件接口是否支持设置类别?
问题解答
是的,POST /users/{id | userPrincipalName}/calendars/{id}/events 接口完全支持创建带类别的日历事件,你遇到的错误是请求JSON格式不符合Graph的要求,具体问题和修正方案如下:
错误原因分析
categories格式错误:Graph中categories字段是字符串数组,而非对象数组,不需要传入displayName或color属性,直接填写类别名称即可。- JSON语法错误:第一个请求中
categories数组的最后一个元素后多了一个逗号,导致序列化失败。 - 属性名大小写错误:Graph要求属性名使用驼峰命名,
ShowAs应改为showAs。
正确请求示例
{ "subject": "Test", "isAllDay": true, "showAs":"free", "categories": ["Red Category"], "start": { "dateTime": "2022-11-08T00:00:00.0000000", "timeZone": "Eastern Standard Time" }, "end": { "dateTime": "2022-11-09T00:00:00.0000000", "timeZone": "Eastern Standard Time" } }
补充说明
如果需要使用自定义颜色的类别,需先创建类别定义,之后在创建事件时直接引用该类别的名称即可,无需在事件请求中指定颜色。
内容的提问来源于stack exchange,提问作者voidmain
相关产品推荐
相关产品推荐

