获取 mailFolder
本文内容
命名空间:microsoft.graph
重要
Microsoft Graph版本下的 /beta API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
检索邮件文件夹对象的属性和关系。
在下列两种情况下,应用可获取其他用户的邮件文件夹:
如果该应用具有应用程序权限,或者
如果应用具有来自某个用户的相应委派权限 ,而另一个用户与该用户共享了邮件文件夹,或者已为该用户授予委派的访问权限。请参阅详细信息和示例 。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限 。
权限类型
权限(从最低特权到最高特权)
委派(工作或学校帐户)
Mail.ReadBasic、Mail.Read、Mail.ReadWrite
委派(个人 Microsoft 帐户)
Mail.ReadBasic、Mail.Read、Mail.ReadWrite
应用程序
Mail.ReadBasic.All、Mail.Read、Mail.ReadWrite
HTTP 请求
GET /me/mailFolders/{id}
GET /users/{id | userPrincipalName}/mailFolders/{id}
可选的查询参数
此方法支持 OData 查询参数 来帮助自定义响应。
名称
类型
说明
Authorization
string
Bearer {token}。必需。
请求正文
请勿提供此方法的请求正文。
响应
如果成功,此方法在响应正文中返回 200 OK 响应代码和 MailFolder 对象。
示例
示例 1:获取邮件文件夹
请求
下面展示了示例请求。
GET https://graph.microsoft.com/beta/me/mailFolders/AAMkAGVmMDEzM
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var mailFolder = await graphClient.Me.MailFolders["{mailFolder-id}"]
.Request()
.GetAsync();
const options = {
authProvider,
};
const client = Client.init(options);
let mailFolder = await client.api('/me/mailFolders/AAMkAGVmMDEzM')
.version('beta')
.get();
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/me/mailFolders/AAMkAGVmMDEzM"]]];
[urlRequest setHTTPMethod:@"GET"];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
MSGraphMailFolder *mailFolder = [[MSGraphMailFolder alloc] initWithData:data error:&nserror];
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
MailFolder mailFolder = graphClient.me().mailFolders("AAMkAGVmMDEzM")
.buildRequest()
.get();
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
mailFolderId := "mailFolder-id"
result, err := graphClient.Me().MailFoldersById(&mailFolderId).Get()
Import-Module Microsoft.Graph.Mail
# A UPN can also be used as -UserId.
Get-MgUserMailFolder -UserId $userId -MailFolderId $mailFolderId
响应
下面展示了示例响应。
注意: 为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-type: application/json
{
"id": "AAMkAGVmMDEzM",
"displayName": "Inbox",
"parentFolderId": "AAMkAGVmMDEzI",
"childFolderCount": 2,
"unreadItemCount": 59,
"totalItemCount": 60,
"wellKnownName": "inbox",
"isHidden": false
}
示例 2:获取邮件搜索文件夹
请求
下面展示了示例请求。
GET https://graph.microsoft.com/beta/me/mailFolders/AAMkAGVmMDEzN
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var mailFolder = await graphClient.Me.MailFolders["{mailFolder-id}"]
.Request()
.GetAsync();
const options = {
authProvider,
};
const client = Client.init(options);
let mailFolder = await client.api('/me/mailFolders/AAMkAGVmMDEzN')
.version('beta')
.get();
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/me/mailFolders/AAMkAGVmMDEzN"]]];
[urlRequest setHTTPMethod:@"GET"];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
MSGraphMailFolder *mailFolder = [[MSGraphMailFolder alloc] initWithData:data error:&nserror];
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
MailFolder mailFolder = graphClient.me().mailFolders("AAMkAGVmMDEzN")
.buildRequest()
.get();
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
mailFolderId := "mailFolder-id"
result, err := graphClient.Me().MailFoldersById(&mailFolderId).Get()
Import-Module Microsoft.Graph.Mail
# A UPN can also be used as -UserId.
Get-MgUserMailFolder -UserId $userId -MailFolderId $mailFolderId
响应
下面展示了示例响应。
注意: 为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.type": "#microsoft.graph.mailSearchFolder",
"id": "AAMkAGVmMDEzN",
"displayName": "Get MyAnalytics",
"parentFolderId": "AAMkAGVmMDEzI",
"childFolderCount": 0,
"unreadItemCount": 6,
"totalItemCount": 6,
"wellKnownName": null,
"isHidden": false,
"isSupported": true,
"includeNestedFolders": true,
"sourceFolderIds": [
"AAMkAGVmMDEzM"
],
"filterQuery": "contains(subject, 'MyAnalytics')"
}