Outlook 中的 403 ErrorAccessDenied API
403 ErrorAccessDenied in Outlook API
使用 Outlook API 我可以提取日历事件。接下来我要做的是,如果某个活动有与会者电子邮件,则从 Outlook 的联系人 REST API 中提取该与会者的其余联系人数据。我相信我在 URL 中对 ?search="foo@bar.com"
进行了正确的查询,但是当我显示来自 cURL:
的响应时,我得到了以下信息
string '{"error":{"code":"ErrorAccessDenied","message":"Access is denied. Check credentials and try again."}}' (length=101)
我的凭据似乎足以获取日历事件,但在稍后尝试获取联系人时不知何故无效。我错过了什么?
您的应用在进行身份验证时请求哪些权限?假设您正在使用 v2 应用程序模型进行身份验证,这是在授权请求 URL:
的 scope
参数中传递的内容
https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=<SOME GUID>
&redirect_uri=https%3A%2F%2Fcid.azurewebsites.net&response_type=code
&scope=openid+https%3A%2F%2Foutlook.office.com%2Fmail.read
要访问联系人,您需要 https://outlook.office.com/contacts.read
或 https://outlook.office.com/contacts.readwrite
,具体取决于您是否需要写入权限。
另一种搜索方式:
https://outlook.office365.com/api/v2.0/me/MailFolders/Inbox/messages?$search="from:foo@bar.com"&$select=Subject,Sender,ReceivedDateTime&$top=500
使用 Outlook API 我可以提取日历事件。接下来我要做的是,如果某个活动有与会者电子邮件,则从 Outlook 的联系人 REST API 中提取该与会者的其余联系人数据。我相信我在 URL 中对 ?search="foo@bar.com"
进行了正确的查询,但是当我显示来自 cURL:
string '{"error":{"code":"ErrorAccessDenied","message":"Access is denied. Check credentials and try again."}}' (length=101)
我的凭据似乎足以获取日历事件,但在稍后尝试获取联系人时不知何故无效。我错过了什么?
您的应用在进行身份验证时请求哪些权限?假设您正在使用 v2 应用程序模型进行身份验证,这是在授权请求 URL:
的scope
参数中传递的内容
https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=<SOME GUID>
&redirect_uri=https%3A%2F%2Fcid.azurewebsites.net&response_type=code
&scope=openid+https%3A%2F%2Foutlook.office.com%2Fmail.read
要访问联系人,您需要 https://outlook.office.com/contacts.read
或 https://outlook.office.com/contacts.readwrite
,具体取决于您是否需要写入权限。
另一种搜索方式: https://outlook.office365.com/api/v2.0/me/MailFolders/Inbox/messages?$search="from:foo@bar.com"&$select=Subject,Sender,ReceivedDateTime&$top=500