创建 profileCardProperty
命名空间:microsoft.graph
重要
Microsoft Graph版本下的 /beta API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
为组织创建新的 profileCardProperty。 新属性由它的 directoryPropertyName 属性标识。
有关向组织的配置文件卡添加属性的信息,请参阅 自定义配置文件卡。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限。
| 权限类型 |
权限(从最低特权到最高特权) |
| 委派(工作或学校帐户) |
User.ReadWrite、User.ReadWrite.All |
| 委派(个人 Microsoft 帐户) |
不支持。 |
| 应用程序 |
不支持。 |
注意: 对此操作使用委派权限要求登录用户具有租户管理员或全局管理员角色。
HTTP 请求
POST https://graph.microsoft.com/beta/organization/{organizationId}/settings/profileCardProperties
| 名称 |
说明 |
| Authorization |
Bearer {token}。必需。 |
| Content-Type |
application/json. Required. |
请求正文
在请求正文中,提供 profileCardProperty 对象的 JSON 表示形式。
响应
如果成功,此方法在响应正文中返回 响应代码和新 201 Created profileCardProperty 对象。
示例
请求
下面展示了示例请求。
POST https://graph.microsoft.com/beta/organization/{organizationId}/settings/profileCardProperties
Content-type: application/json
{
"directoryPropertyName": "CustomAttribute1",
"annotations": [
{
"displayName": "Cost Center",
"localizations": [
{
"languageTag": "ru-RU",
"displayName": "центр затрат"
}
]
}
]
}
const options = {
authProvider,
};
const client = Client.init(options);
const profileCardProperty = {
directoryPropertyName: 'CustomAttribute1',
annotations: [
{
displayName: 'Cost Center',
localizations: [
{
languageTag: 'ru-RU',
displayName: 'центр затрат'
}
]
}
]
};
await client.api('/organization/{organizationId}/settings/profileCardProperties')
.version('beta')
.post(profileCardProperty);
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var profileCardProperty = new ProfileCardProperty
{
DirectoryPropertyName = "CustomAttribute1",
Annotations = new List<ProfileCardAnnotation>()
{
new ProfileCardAnnotation
{
DisplayName = "Cost Center",
Localizations = new List<DisplayNameLocalization>()
{
new DisplayNameLocalization
{
LanguageTag = "ru-RU",
DisplayName = "центр затрат"
}
}
}
}
};
await graphClient.Organization["{organization-id}"].Settings.ProfileCardProperties
.Request()
.AddAsync(profileCardProperty);
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/organization/{organizationId}/settings/profileCardProperties"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphProfileCardProperty *profileCardProperty = [[MSGraphProfileCardProperty alloc] init];
[profileCardProperty setDirectoryPropertyName:@"CustomAttribute1"];
NSMutableArray *annotationsList = [[NSMutableArray alloc] init];
MSGraphProfileCardAnnotation *annotations = [[MSGraphProfileCardAnnotation alloc] init];
[annotations setDisplayName:@"Cost Center"];
NSMutableArray *localizationsList = [[NSMutableArray alloc] init];
MSGraphDisplayNameLocalization *localizations = [[MSGraphDisplayNameLocalization alloc] init];
[localizations setLanguageTag:@"ru-RU"];
[localizations setDisplayName:@"центр затрат"];
[localizationsList addObject: localizations];
[annotations setLocalizations:localizationsList];
[annotationsList addObject: annotations];
[profileCardProperty setAnnotations:annotationsList];
NSError *error;
NSData *profileCardPropertyData = [profileCardProperty getSerializedDataWithError:&error];
[urlRequest setHTTPBody:profileCardPropertyData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
ProfileCardProperty profileCardProperty = new ProfileCardProperty();
profileCardProperty.directoryPropertyName = "CustomAttribute1";
LinkedList<ProfileCardAnnotation> annotationsList = new LinkedList<ProfileCardAnnotation>();
ProfileCardAnnotation annotations = new ProfileCardAnnotation();
annotations.displayName = "Cost Center";
LinkedList<DisplayNameLocalization> localizationsList = new LinkedList<DisplayNameLocalization>();
DisplayNameLocalization localizations = new DisplayNameLocalization();
localizations.languageTag = "ru-RU";
localizations.displayName = "центр затрат";
localizationsList.add(localizations);
annotations.localizations = localizationsList;
annotationsList.add(annotations);
profileCardProperty.annotations = annotationsList;
graphClient.organization("{organizationId}").settings().profileCardProperties()
.buildRequest()
.post(profileCardProperty);
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewProfileCardProperty()
directoryPropertyName := "CustomAttribute1"
requestBody.SetDirectoryPropertyName(&directoryPropertyName)
requestBody.SetAnnotations( []ProfileCardAnnotation {
msgraphsdk.NewProfileCardAnnotation(),
displayName := "Cost Center"
SetDisplayName(&displayName)
SetLocalizations( []DisplayNameLocalization {
msgraphsdk.NewDisplayNameLocalization(),
languageTag := "ru-RU"
SetLanguageTag(&languageTag)
displayName := "центр затрат"
SetDisplayName(&displayName)
}
}
organizationId := "organization-id"
result, err := graphClient.OrganizationById(&organizationId).Settings().ProfileCardProperties().Post(requestBody)
Import-Module Microsoft.Graph.Identity.DirectoryManagement
$params = @{
DirectoryPropertyName = "CustomAttribute1"
Annotations = @(
@{
DisplayName = "Cost Center"
Localizations = @(
@{
LanguageTag = "ru-RU"
DisplayName = "центр затрат"
}
)
}
)
}
New-MgOrganizationSettingProfileCardProperty -OrganizationId $organizationId -BodyParameter $params
响应
下面展示了示例响应。
注意: 为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 201 Created
Content-type: application/json
{
"directoryPropertyName": "CustomAttribute1",
"annotations": [
{
"displayName": "Cost Center",
"localizations": [
{
"languageTag": "ru-RU",
"displayName": "центр затрат"
}
]
}
]
}