问题标签 [office365-restapi]
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.
office365 - 使用 ASP 的 Exchange Online 上的事件时区问题。使用 Rest api 的网络 MVC 应用程序
我正在尝试使用 o365 event rest api 为全天创建事件,但出现错误的开始和结束时间应该是午夜(dd/MM/yyyy) 结束日期: 02/01/2016 12:00 AM (dd/MM/yyyy) 正如 api 所说,全天活动应该有 24 小时的间隔,我以同样的方式做了同样的事情,仍然是它的抛出错误。
我尝试了不同的情况来创建事件,但是我传递给rest api的日期之间存在差异,我也尝试过传递时区,但仍然存在差异。
使用 API 2.0 得到不同的问题。发现了不兼容的类型。发现类型“Microsoft.OutlookServices.DateTimeTimeZone”属于“复杂”类型,而不是预期的“原始”类型。
node.js - 在 Node.js 中更改 Outlook 日历事件的组织者
如何以编程方式更改 Outlook 日历活动的组织者?我使用 Outlook Rest API 创建了一个包含两名与会者的日历活动,因此我想成为其中一名与会者的组织者。
有人对此有想法吗?
谢谢你。
office365 - 使用 microsoft graph api 更新邮件的 Internet 标头
我正在尝试使用图形 API 编辑 Office 365 的 Outlook 邮件的 Internet 标头。但我发现使用REST
调用GET
https://graph.microsoft.com/v1.0/me/messages
我什至无法获取邮件的 Internet 标头详细信息(我正在获取其他字段,例如正文、主题等)。
也使用REST
调用PATCH
https://graph.microsoft.com/v1.0/me/messages/
我无法更新互联网标题。是否可以使用 GRAPH API 以任何方式更新邮件的 Internet 标头?
office365 - Office 365 邮件文件夹列表 API 返回 404,未找到邮件文件夹
注意:同样的流程适用于 Office 365 许可证。
Exchange 设置信息:我们有一个混合环境,主要 Exchange 服务器在本地,并且在线存档用户邮箱以进行交换。
许可:Exchange Online Archiving
场景:我们正在使用Office 365 rest apis。我已使用全局管理员授权并将生成的刷新令牌存储在安全位置。使用刷新令牌,我获取访问令牌。然后使用此访问令牌获取用户的邮件端点。
然后为了获取用户的邮件文件夹,我创建了client_credentials 类型的新 access_token,然后在上述端点上查询文件夹列表。
以下是详细的请求/响应。出于隐私原因,user_name 和 access_token 已被有意删除。
我的问题:
- 交换在线归档许可证不支持 office 365 REST API 吗?如果它们受支持,那么为什么我会收到 404 错误消息“找不到指定的文件夹”?
office365 - 使用 GRAPH API 从共享点删除文件
从尝试使用 Microsoft Graph api 搜索 Sharepoint 文件,我知道要访问 sharepoint,我需要省略“me”并使用端点。
https://graph.microsoft.com/v1.0/drive/root
但是,当我按照https://graph.microsoft.io/en-us/docs/api-reference/v1.0/api/item_delete上的文档进行操作时,我收到错误代码“未经身份验证”作为响应。
我可以使用上述方法从 OneDrive 中删除文件,但不能从 sharepoint 中删除文件。什么是可能的解决方案?
sharepoint-2013 - SharePoint REST api /CSOM 以获取站点和 Web 中非活动功能的详细信息
我需要访问未使用 REST api 或使用 CSOM 激活的网站和网站的功能详细信息。有什么办法吗?
office365api - 在 MS Graph API 中使用仅限应用程序的方法时如何获取其他用户事件(尊重权限)?
我有一个调用 MS Graph API 来获取用户事件的应用程序。此应用程序使用仅应用程序身份验证模式 ( http://graph.microsoft.io/en-us/docs/authorization/app_only )。我可以为每个用户获取事件,但我希望能够为用户获取事件,A
而不是作为用户A
(所以我得到所有包含所有详细信息的事件),而是作为用户B
,所以我看到A
's 事件尊重A
's 日历的可见性(即仅在B
无法访问事件时才看到“忙碌” )。
如何使用 Graph API 和 app-only auth 模式来做到这一点?
javascript - 获取 O365 日历的授权令牌
我正在制作一个需要访问 Office 365 日历内容的应用程序。该应用程序不需要直接的用户操作来登录和检索其数据,因此我不能使用标准的 OAuth 方式来获取此令牌。
我对谷歌的日历方式有点熟悉,它是“服务帐户”逻辑,涉及到一个非对称的 RSA 密钥,所以我试图为 O365 找到类似的东西。
我找到了这个博客: https : //blogs.msdn.microsoft.com/arsen/2015/09/18/certificate-based-auth-with-azure-service-principals-from-linux-command-line/帮助我配置应用程序并设置双方的所有键以允许连接。最后,我设法让它工作,获得了一个令牌并列出了资源组。
一切都很好,我希望它可以很容易地与 Microsoft 图形 API 一起工作。所以: - 我在我的应用程序的 Azure 管理授权中添加了 Microsft Graph API,并在所有用户的日历上添加了所有读/写权限(在应用程序的授权和委托授权中) - 我重新生成了令牌,因此新的权限可以是添加到它 - 我使用这个令牌来获取日历列表
它从来没有奏效。我有令牌,请求给了我很好的范围。所以我知道我在正确的应用程序上,以及一切。当我将令牌提供给 outlook.office.com 时,我收到以下消息:<>
我可能在某个地方错过了一步,但我找不到在哪里。在我的要求中?在我的 Azure 帐户中?
请问有什么帮助吗?
请求(没有模糊任何东西,反正只是一个测试帐户)。
获取令牌请求:
获取令牌答案:
日历列表请求:
回答为空,但在标题中:
office365 - 如何通过自定义守护程序和图形 REST API 访问多个用户的 OneDrive 文件?
我们正在开发一个守护程序服务,该服务将定期自动连接到 Microsoft Graph API,以列出所有用户驱动器中包含敏感内容的任何文件。我们在我们的 Azure/Office365 租户帐户中设置了一个自定义应用程序,该应用程序启用了许多权限(所有 Graph 和 Sharepoint privs(以及其他一些),为了测试)。
使用 Graph Explorer 工具和我的个人登录帐户,我可以使用/me/drive/root/children
端点和/users('<user-id>')/drive/root/children
端点(当用户 ID 是我自己的)列出我自己的驱动器帐户中的文件。当我尝试使用 curl 和 a 进行连接grant_type
时client_credentials
,使用Azure 中的自定义应用程序中的client_id
and会返回正确的驱动器 ID,但只返回一个空的子级列表。client_secret
/users('<user-id>')/drive
/users('<user-id>')/drive/root/children
是否有一些我遗漏的许可我们需要在某个地方设置?
这是 Graph API 当前状态的限制吗?
这是client_credentials
授权类型的限制吗?
rest - Outlook rest api“同步消息”在后续调用中忽略 $expand
我正在尝试使用 Outlook Rest Api 的 beta 版本同步 Outlook 文件夹(比如收件箱),请参阅此处的文档
我只需要检索属性IsRead和PR_INTERNET_MESSAGE_ID
因此,按照文档,对于第一次同步,我的请求如下所示:
始终添加以下 Http 标头:
第一个初始完全同步请求
https://outlook.office365.com/api/beta/Me/MailFolders('inbox')/messages?$select=IsRead&$expand=SingleValueExtendedProperties($filter=(PropertyId eq 'String 0x1035'))
良好的结果
value
数组包含我需要的东西。第一个请求之后的第二个请求使用deltatoken
https://outlook.office365.com/api/beta/Me/MailFolders('inbox')/messages?$select=IsRead,Subject&$expand=SingleValueExtendedProperties($filter=(PropertyId eq 'String 0x1035'))&$deltatoken=a758b90491954a61ad463ef3a0e690a2
结果不好,没有 SingleValueExtendedProperties 条目
下一个使用skiptoken的分页请求...
https://outlook.office365.com/api/beta/Me/MailFolders('inbox')/messages?$select=IsRead,Subject&$expand=SingleValueExtendedProperties($filter=(PropertyId eq 'String 0x1035'))&$skiptoken=e99ad10324464488b6b219ca5ed6be1c
再次糟糕的结果,与2相同。
对我来说它看起来像一个错误。你能提供一个解决方法吗?从ItemId列表中是否可以有效地轻松检索相应PR_InternetMessage_Id的列表(不是每个项目)?
另请注意,在文档中写道:
响应将包含一个 Preference-Applied: odata.track-changes 标头。如果您尝试同步不受支持的资源,则不会在响应中返回此标头。在处理响应之前检查此标头以避免错误。
似乎对于 2. 和 3. 调用此响应标头“Preference-Applied”未设置。