问题标签 [microsoft-graph-calendar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
151 浏览

microsoft-graph-api - Microsoft Graph:获取用户时区

通过用户的委派权限,我们可以访问其他用户的日历可用性 ( Calendars.ReadWrite.Shared)。多亏了这一点,我们可以为多个利益相关者(user.findMeetingTimes)找到合适的会议时间,然后从同意用户的日历中发送邀请。

但是,我们无法在任何地方找到时区信息:我们需要知道其他用户的时区,以便我们可以根据时间限制正确安排事件。

目前,我们使用MailboxSettings.Read需要管理员同意的应用程序范围,但我们遇到了一些拒绝授予委派管理员权限的组的问题。我能看到的唯一替代方案是 Oauth2 流,对于每个用户,允许我们读取这些信息,但这会给一些非常基本的数据带来很多不必要的摩擦。

有没有我错过的替代方案?在此先感谢您的帮助。

0 投票
1 回答
127 浏览

microsoft-graph-api - Outlook 事件 RSVP 图 api 问题

使用 Microsoft Graph 创建了一个事件:

如果我尝试接受来自sachin@live.com用户的事件,则会引发错误:

样品要求:

结果是,NotFoundError但这适用于 UI。我尝试了不同的解决方案(更新权限、主日历)但没有任何效果

此流程在 API 级别是否有任何限制?

0 投票
2 回答
371 浏览

microsoft-graph-api - 在向 o365 日历创建新事件时向与会者发送通知电子邮件

我正在使用 MS Graph API 在人们的日历中创建事件(会议)。我们曾经有本地办公室,创建一个事件会自动通知人们新的日历事件。

迁移到 o365 后,我们开始使用 Graph-Calendar API 来创建这些事件。现在与会者根本不会收到任何电子邮件通知。

当您从 Outlook 日历打开事件时,“收件人”字段为空。我的猜测是这可能是原因,但我完全不确定。

这是我发送到 api 的示例 json:

}

任何帮助深表感谢。

0 投票
1 回答
137 浏览

java - Microsoft Graph:守护程序应用程序只能访问一个用户的共享日历

我的场景:

  • 我希望用户能够与守护程序应用程序共享他们的一些日历。
  • 我想要守护程序应用程序。仅对这些共享日历具有读写访问权限。

这个想法是用户可以简单地通过创建一个日历并与守护程序共享它然后取消共享它以选择退出来“选择加入”服务。我想避免让管理人员来管理权限。我还想避免制作一些程序来管理权限。共享部分使我的守护进程很容易找到它必须使用的日历。

我的解决方案:

  1. 使用电子邮件和日历创建服务帐户。用户与此帐户共享他们想要的日历。
  2. 创建具有日历和电子邮件权限的应用程序帐户。
  3. 创建具有电子邮件访问权限的安全组并将服务帐户添加到该组。
  4. 使用New-ApplicationAccessPolicy PowerShell cmdlet将应用程序限制为只能访问安全组。

问题是这个 cmdlet 似乎不理解共享日历。在支持的权限和其他资源列表中,它没有提到共享日历。(我会尽快尝试,但我怀疑它会失败)

有没有办法绕过这个限制?这个问题似乎与应用程序的其他问题相似。应该“充当”特定用户,而其他答案通常是“做不到”。

新的ApplicationAccessPolicy 文档

Mail-Enabled-Security-Group 文档

解决方案必须使用 Java。

0 投票
1 回答
69 浏览

microsoft-graph-api - 使用 Graph API 和 Office365 以编程方式创建日历

我想将约会列表从 php 后端同步到 Office365 中的组织范围日历。我没有发现任何可能性将日历创建为应用程序而不使用服务用户作为所有者。

0 投票
1 回答
84 浏览

c# - 如何使用 Microsoft.Graph 与登录用户共享日历

使用以下代码,我从登录用户的日历中获取具有委派权限的事件。

我的问题是

如何获取与该用户共享的日历列表(至少是特定日历或两者都更好)?

0 投票
6 回答
10903 浏览

node.js - CompactToken 解析失败,错误代码:80049217 使用护照库访问 Microsoft Graph API 时

我正在使用“passport-azure-ad-oauth2” npm 模块来获取访问令牌,然后我可以将其传递给 MS Graph API。

然后,使用'@microsoft/microsoft-graph-client' npm 模块,从 Graph API 获取日历事件,如下所示:

但是,使用成功登录时提供的 accessToken,我收到以下错误: CompactToken parsing failed with error code: 80049217

任何建议我做错了什么???

更新:这些是我使用的范围:'openid,profile,offline_access,calendars.read'

更新:稍微编辑范围后,现在我收到以下错误:无效的受众。

在解码在 jwt.ms 收到的令牌时,这是“aud”的值:“00000002-0000-0000-c000-000000000000”

是不是passport-azure-ad-oauth2是用于检索 MS Graph API 令牌的错误库?

0 投票
0 回答
30 浏览

microsoft-graph-api - 使用 Graph beta API 为新创建的日历事件添加参考附件时附件未打开

根据我的用例,我正在使用以下 API 端点下载参考附件

附件响应 JSON 如下所示:

在这一步之后,我想在新创建的日历上重新创建一个事件。这样做时,我使用下面的 API 端点将附件添加到新事件。

附件已成功添加到相应事件。现在,当我尝试在 Microsoft 日历上打开附件时,我被重定向到浏览器上的“深层链接 URL”,并且出现了一个连续的“加载”图标。附件打不开。我可以完整地下载附件。

我的问题是为什么它没有打开?

笔记:

我下载附件的事件,附件权限设置为“收件人可以查看”。我正在尝试的附件是图像

添加的附件应在 Microsoft 日历上打开。

0 投票
2 回答
454 浏览

node.js - 尝试使用 MS Graph API 访问其他租户用户日历时出错

我有一个 node.js/express 应用程序。我正在尝试使用 Microsoft Graph API 来获取用户的日历 [只读]​​。

用于登录的 OAuth2 库: passport-microsoft npm 模块。

我在 Azure 门户中按照以下步骤操作:

  1. 转到活动目录

  2. 单击左侧窗格中的应用注册

  3. 点击新注册并创建一个应用程序
  4. 转到新应用
  5. 单击左侧面板中的身份验证并添加重定向 URI
  6. 转到 API 权限并启用以下内容:

    一个。委托:Calendars.Read、Calendars.Read.Shared、profile

  7. 为所有需要它的权限提供管理员同意。

但是,只有属于我已注册 Web 应用程序的 azure 组织的用户才能登录。

其他组织用户无法登录。我收到以下错误消息:

您可以在此处阅读我之前的问题以供参考

0 投票
1 回答
100 浏览

microsoft-graph-api - 在后台应用程序中无需 UI 即可访问 Outlook 日历的更好方法

访问日历的场景通常涉及用户登录并同意授予委派权限。这似乎适用于 Office 365 和 Graph API。

我在这里看到了在没有 UI 的情况下访问日历的解决方案,但它涉及存储用户名和密码,这比预期的要少。另一种选择是使用具有应用程序权限的 Graph API - 不幸的是,Calendars.ReadWrite 权限适用于所有用户:“在所有邮箱中读取和写入日历”。当我在一家大公司工作时,我不太可能获得管理员授予的访问权限,更不用说我根本不需要那么多访问权限。

所以我的问题是,有没有什么方法可以让少数用户获得应用程序权限(或任何其他方式在没有 UI 的情况下访问 Outlook 日历)?