如何知道收件箱是哪个mailFolder?

Sos*_*lik 4 outlook-restapi microsoft-graph-api

调用/users/me/mailFolders将返回文件夹列表及其iddisplayNameparentFolderId和一些计数器。

如何确定哪个文件夹是“收件箱”?

我无法使用displayName,因为这可能是用户的母语。这Id只是一个随机字符串。

我需要这个,因为我的应用程序填充文件夹列表,并且我想将“选择”默认为收件箱(就像 Outlook 一样)。

Mar*_*eur 5

对于默认文件夹,您可以使用“众所周知的名称”(在本例中inbox)来获取正确的id. 从文档中:

Outlook 默认情况下会为用户创建某些文件夹。为了方便起见,您可以在访问mailFolder集合中的这些文件夹时使用以下众所周知的文件夹名称,而不是使用相应的文件夹ID值: 、、、 、、、和。ArchiveRootConversationHistoryDeletedItemsDraftsInboxJunkEmailOutboxSentItems

为了说明这一点,调用/me/mailFolders/inbox示例Graph Explorer租户会返回:

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('48d31887-5fad-4d73-a9f5-3c356e68a038')/mailFolders/$entity",
    "id": "AAMkAGVmMDEzMTM4LTZmYWUtNDdkNC1hMDZiLTU1OGY5OTZhYmY4OAAuAAAAAAAiQ8W967B7TKBjgx9rVEURAQAiIsqMbYjsT5e-T7KzowPTAAAAAAEMAAA=",
    "displayName": "Inbox",
    "parentFolderId": "AAMkAGVmMDEzMTM4LTZmYWUtNDdkNC1hMDZiLTU1OGY5OTZhYmY4OAAuAAAAAAAiQ8W967B7TKBjgx9rVEURAQAiIsqMbYjsT5e-T7KzowPTAAAAAAEIAAA=",
    "childFolderCount": 2,
    "unreadItemCount": 59,
    "totalItemCount": 60
}
Run Code Online (Sandbox Code Playgroud)