更新 itememail
命名空间:microsoft.graph
重要
Microsoft Graph版本下的 /beta API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
更新用户配置文件 中的 itemEmail 对象 的属性。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限。
| 权限类型 |
权限(从最低特权到最高特权) |
| 委派(工作或学校帐户) |
User.ReadWrite、User.ReadWrite.All |
| 委派(个人 Microsoft 帐户) |
User.ReadWrite、User.ReadWrite.All |
| 应用程序 |
User.ReadWrite.All |
HTTP 请求
PATCH /me/profile/emails/{id}
PATCH /users/{id | userPrincipalName}/profile/emails/{id}
| 名称 |
说明 |
| Authorization |
Bearer {token}。必需。 |
| Content-Type |
application/json. Required. |
请求正文
在请求正文中,提供应更新的相关字段的值。 请求正文中不包括的现有属性将保留其以前的值,或根据对其他属性值的更改重新计算。 为了获得最佳性能,请勿加入尚未更改的现有值。
下表显示了在用户配置文件中的现有 itemEmail 对象中可以更新 的属性。
| 属性 |
类型 |
说明 |
| address |
String |
电子邮件地址本身。 |
| allowedAudiences |
String |
能够查看实体中包含的值的访问群体。 继承自 itemFacet。 可取值为:me、family、contacts、groupMembers、organization、federatedOrganizations、everyone、unknownFutureValue。 |
| displayName |
String |
用户与特定电子邮件地址关联的名称或标签。 |
| inference |
inferenceData |
如果实体是由创建或修改应用程序推断出来的,则包含推断详细信息。 继承自 itemFacet。 |
| source |
personDataSource |
如果从另一个服务同步,则值源自何处。 继承自 itemFacet。 |
| type |
emailType |
电子邮件地址的类型。 可取值为:unknown、work、personal、main、other。 |
响应
如果成功,此方法在响应正文中返回 响应代码和更新的 200 OK itemEmail 对象。
示例
请求
PATCH https://graph.microsoft.com/beta/users/{userId}/profile/emails/{id}
Content-Type: application/json
{
"displayName": "Business Email",
"type": "work"
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var itemEmail = new ItemEmail
{
DisplayName = "Business Email",
Type = EmailType.Work
};
await graphClient.Users["{user-id}"].Profile.Emails["{itemEmail-id}"]
.Request()
.UpdateAsync(itemEmail);
const options = {
authProvider,
};
const client = Client.init(options);
const itemEmail = {
displayName: 'Business Email',
type: 'work'
};
await client.api('/users/{userId}/profile/emails/{id}')
.version('beta')
.update(itemEmail);
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/users/{userId}/profile/emails/{id}"]]];
[urlRequest setHTTPMethod:@"PATCH"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphItemEmail *itemEmail = [[MSGraphItemEmail alloc] init];
[itemEmail setDisplayName:@"Business Email"];
[itemEmail setType: [MSGraphEmailType work]];
NSError *error;
NSData *itemEmailData = [itemEmail getSerializedDataWithError:&error];
[urlRequest setHTTPBody:itemEmailData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
ItemEmail itemEmail = new ItemEmail();
itemEmail.displayName = "Business Email";
itemEmail.type = EmailType.WORK;
graphClient.users("{userId}").profile().emails("{id}")
.buildRequest()
.patch(itemEmail);
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewItemEmail()
displayName := "Business Email"
requestBody.SetDisplayName(&displayName)
type := "work"
requestBody.SetType(&type)
userId := "user-id"
itemEmailId := "itemEmail-id"
graphClient.UsersById(&userId).Profile().EmailsById(&itemEmailId).Patch(requestBody)
Import-Module Microsoft.Graph.People
$params = @{
DisplayName = "Business Email"
Type = "work"
}
Update-MgUserProfileEmail -UserId $userId -ItemEmailId $itemEmailId -BodyParameter $params
响应
注意: 为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": "0fb4c1e3-c1e3-0fb4-e3c1-b40fe3c1b40f",
"allowedAudiences": "organization",
"inference": null,
"createdDateTime": "2020-07-06T06:34:12.2294868Z",
"createdBy": {
"application": null,
"device": null,
"user": {
"displayName": "Innocenty Popov",
"id": "db789417-4ccb-41d1-a0a9-47b01a09ea49"
}
},
"lastModifiedDateTime": "2020-07-06T06:34:12.2294868Z",
"lastModifiedBy": {
"application": null,
"device": null,
"user": {
"displayName": "Innocenty Popov",
"id": "db789417-4ccb-41d1-a0a9-47b01a09ea49"
}
},
"address": "Innocenty.Popov@adventureworks.com",
"displayName": "Business Email",
"type": "work"
}