使用 Outlook 日历 REST 设置活动组织者 API

setting event organizer with Outlook Calendar REST API

我正在使用 Outlook REST API 根据 this 文档

创建活动和发送邀请

我对登录用户进行身份验证,并通过请求的授权 header 发送其不记名令牌,并在其内容上发送 json-formatted 事件。

如果我将 "Organizer" 设置为另一个用户而不是经过身份验证的用户,以及将 "IsOrganizer" 属性 设置为 "false",它会被完全忽略并设置当前登录用户作为组织者。

任何可能发生的事情的线索? 还有其他方法吗?

谢谢!

这是正确的行为。您无法在用户 A 的日历上创建活动,但可以将组织者设置为用户 B。

我发布这个是为了防止其他人发现并需要这个场景的答案...

您(账户 A)可以 通过 Office365 REST API 以其他人(账户 B)的身份创建日历活动,只要该账户有权发送作为其他用户帐户。

步骤如下:

1) 调用 Office365 REST API 如下,其中 {{{user2email}}} 是您希望创建事件的用户 as(账户 B 的电子邮件地址): https://outlook.office365.com/api/v1.0/users/{{{user2email}}}/日历

这应该是 return 帐户 B 的用户日历 ID。

2) 传入您的 JSON - 以下是我在单元测试期间使用的示例:

{
      "Subject": "Test - Created using Office365 Calendar REST API should be from Technology Notice",
      "IsOrganizer": "False",
      "Body": {
        "ContentType": "HTML",
        "Content": "This is where body copy goes HTML supported"
      },
      "Start": "2015-12-11T19:00:00Z",
      "End": "2015-12-11T20:00:00Z",
      "Attendees": [
        {
          "EmailAddress": {
            "Address": "attendee1@yourcompany.com",
            "Name": "Attendee One"
          },
          "Type": "Required"
        }
      ],
      "Organizer": {
        "EmailAddress": {
          "Address": "tnotice@yourcompany.com",
          "Name": "Technology Notice"
        }
      }
    }

'Technology Notice' 将成为日历邀请的 来自

3) 在您的 POST 请求中使用第 2 步中的 ID,例如: https://outlook.office365.com/api/v1.0/users/{{{user2email}}}/calendars/ {{{ID}}}/events

注意:确保您发送 POST 请求的身份是经过身份验证的用户帐户(帐户 A),该帐户是 mailbox/calendar 它实际所属的帐户到.

如果一切正常,您应该能够发送日历邀请并显示为来自帐户 B 而不是帐户 A。

希望这对某人有所帮助。