group: validateProperties
-
[アーティクル]
-
-
名前空間: microsoft.graph
Microsoft 365 グループの表示名またはメールのニックネームが名前付けポリシーに準拠していることを検証します。 クライアントは、この API を使用して、Microsoft 365 グループを更新する前に、表示名またはメール のニックネームが有効かどうかを判断できます。 グループを作成する前にプロパティを検証するには、 directoryobject:validateProperties 関数を 使用します。
表示名とメール ニックネームのプロパティに対して、次のポリシー検証が実行されます。
- プレフィックスとサフィックスの名前付けポリシーを検証する
- カスタム禁止単語ポリシーを検証する
この API は、発生した最初の検証エラーのみを返します。 プロパティが複数の検証に失敗した場合は、最初の検証エラーのみが返されます。 ただし、プレフィックスとサフィックスの名前付けポリシーのみを検証する場合は、メール のニックネームと表示名の両方を検証し、検証エラーのコレクションを受け取ることができます。 名前付けポリシーの構成の詳細については、「名前付け ポリシーの構成」を参照してください。
アクセス許可
この API を呼び出すには、次のいずれかのアクセス許可が必要です。アクセス許可の選択方法などの詳細については、「アクセス許可」を参照してください。
| アクセス許可の種類 |
アクセス許可 (特権の小さいものから大きいものへ) |
| 委任 (職場または学校のアカウント) |
Group.Read.All、Group.ReadWrite.All |
| 委任 (個人用 Microsoft アカウント) |
サポートされていません。 |
| アプリケーション |
Group.Read.All、Group.ReadWrite.All |
HTTP 要求
POST /groups/{id}/validateProperties
| 名前 |
説明 |
| Authorization |
ベアラー {token}。必須。 |
| Content-Type |
application/json |
要求本文
要求本文で、次のパラメーターを含む JSON オブジェクトを指定します。
| パラメーター |
型 |
説明 |
| displayName |
String |
検証するグループの表示名。 プロパティは個別に必要ありません。 ただし、少なくとも 1 つのプロパティ (displayName または mailNickname) が必要です。 |
| mailNickname |
String |
検証するグループのメール ニックネーム。 プロパティは個別に必要ありません。 ただし、少なくとも 1 つのプロパティ (displayName または mailNickname) が必要です。 |
| onBehalfOfUserId |
Guid |
API を呼び出すときに偽装するユーザーの ID。 検証結果は、 onBehalfOfUserId の 属性とロールに対するものです。 |
応答
成功し、検証エラーがない場合、メソッドは応答コードを返します 204 No Content 。 応答本文には何も返されません。
要求が無効な場合、メソッドは応答コードを返します 400 Bad Request 。 無効な要求の詳細を含むエラー メッセージが応答本文に返されます。
検証エラーがある場合。 メソッドは応答コードを返します 422 Unprocessable Entity 。 エラー メッセージとエラーの詳細のコレクションが応答本文に返されます。
例
例 1: 検証要求の成功
これは、検証要求が成功した例です。
要求
POST https://graph.microsoft.com/v1.0/groups/{id}/validateProperties
Content-type: application/json
{
"displayName": "Myprefix_test_mysuffix",
"mailNickname": "Myprefix_test_mysuffix",
"onBehalfOfUserId": "onBehalfOfUserId-value"
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var displayName = "Myprefix_test_mysuffix";
var mailNickname = "Myprefix_test_mysuffix";
var onBehalfOfUserId = Guid.Parse("onBehalfOfUserId-value");
await graphClient.Groups["{group-id}"]
.ValidateProperties(displayName,mailNickname,onBehalfOfUserId)
.Request()
.PostAsync();
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var displayName = "Myprefix_test_mysuffix";
var mailNickname = "Myprefix_test_mysuffix";
var onBehalfOfUserId = Guid.Parse("onBehalfOfUserId-value");
await graphClient.Groups["{group-id}"]
.ValidateProperties(displayName,mailNickname,onBehalfOfUserId)
.Request()
.PostAsync();
SDK をプロジェクトに追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
const options = {
authProvider,
};
const client = Client.init(options);
const validateProperties = {
displayName: 'Myprefix_test_mysuffix',
mailNickname: 'Myprefix_test_mysuffix',
onBehalfOfUserId: 'onBehalfOfUserId-value'
};
await client.api('/groups/{id}/validateProperties')
.post(validateProperties);
const options = {
authProvider,
};
const client = Client.init(options);
const validateProperties = {
displayName: 'Myprefix_test_mysuffix',
mailNickname: 'Myprefix_test_mysuffix',
onBehalfOfUserId: 'onBehalfOfUserId-value'
};
await client.api('/groups/{id}/validateProperties')
.post(validateProperties);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/groups/{id}/validateProperties"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
NSMutableDictionary *payloadDictionary = [[NSMutableDictionary alloc] init];
NSString *displayName = @"Myprefix_test_mysuffix";
payloadDictionary[@"displayName"] = displayName;
NSString *mailNickname = @"Myprefix_test_mysuffix";
payloadDictionary[@"mailNickname"] = mailNickname;
NSString *onBehalfOfUserId = @"onBehalfOfUserId-value";
payloadDictionary[@"onBehalfOfUserId"] = onBehalfOfUserId;
NSData *data = [NSJSONSerialization dataWithJSONObject:payloadDictionary options:kNilOptions error:&error];
[urlRequest setHTTPBody:data];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/groups/{id}/validateProperties"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
NSMutableDictionary *payloadDictionary = [[NSMutableDictionary alloc] init];
NSString *displayName = @"Myprefix_test_mysuffix";
payloadDictionary[@"displayName"] = displayName;
NSString *mailNickname = @"Myprefix_test_mysuffix";
payloadDictionary[@"mailNickname"] = mailNickname;
NSString *onBehalfOfUserId = @"onBehalfOfUserId-value";
payloadDictionary[@"onBehalfOfUserId"] = onBehalfOfUserId;
NSData *data = [NSJSONSerialization dataWithJSONObject:payloadDictionary options:kNilOptions error:&error];
[urlRequest setHTTPBody:data];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
SDK をプロジェクトに追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
String displayName = "Myprefix_test_mysuffix";
String mailNickname = "Myprefix_test_mysuffix";
UUID onBehalfOfUserId = UUID.fromString("onBehalfOfUserId-value");
graphClient.groups("{id}")
.validateProperties(GroupValidatePropertiesParameterSet
.newBuilder()
.withDisplayName(displayName)
.withMailNickname(mailNickname)
.withOnBehalfOfUserId(onBehalfOfUserId)
.build())
.buildRequest()
.post();
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
String displayName = "Myprefix_test_mysuffix";
String mailNickname = "Myprefix_test_mysuffix";
UUID onBehalfOfUserId = UUID.fromString("onBehalfOfUserId-value");
graphClient.groups("{id}")
.validateProperties(GroupValidatePropertiesParameterSet
.newBuilder()
.withDisplayName(displayName)
.withMailNickname(mailNickname)
.withOnBehalfOfUserId(onBehalfOfUserId)
.build())
.buildRequest()
.post();
SDK をプロジェクトに追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.New()
displayName := "Myprefix_test_mysuffix"
requestBody.SetDisplayName(&displayName)
mailNickname := "Myprefix_test_mysuffix"
requestBody.SetMailNickname(&mailNickname)
onBehalfOfUserId := "onBehalfOfUserId-value"
requestBody.SetOnBehalfOfUserId(&onBehalfOfUserId)
groupId := "group-id"
graphClient.GroupsById(&groupId).ValidateProperties(group-id).Post(requestBody)
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.New()
displayName := "Myprefix_test_mysuffix"
requestBody.SetDisplayName(&displayName)
mailNickname := "Myprefix_test_mysuffix"
requestBody.SetMailNickname(&mailNickname)
onBehalfOfUserId := "onBehalfOfUserId-value"
requestBody.SetOnBehalfOfUserId(&onBehalfOfUserId)
groupId := "group-id"
graphClient.GroupsById(&groupId).ValidateProperties(group-id).Post(requestBody)
SDK をプロジェクトに追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
Import-Module Microsoft.Graph.Groups
$params = @{
DisplayName = "Myprefix_test_mysuffix"
MailNickname = "Myprefix_test_mysuffix"
OnBehalfOfUserId = "onBehalfOfUserId-value"
}
Test-MgGroupProperty -GroupId $groupId -BodyParameter $params
Import-Module Microsoft.Graph.Groups
$params = @{
DisplayName = "Myprefix_test_mysuffix"
MailNickname = "Myprefix_test_mysuffix"
OnBehalfOfUserId = "onBehalfOfUserId-value"
}
Test-MgGroupProperty -GroupId $groupId -BodyParameter $params
SDK をプロジェクトに追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
応答
HTTP/1.1 204 No Content
例 2: 検証エラーを含む要求
これは、検証エラーがある要求の例です。
要求
POST https://graph.microsoft.com/v1.0/groups/{id}/validateProperties
Content-type: application/json
{
"displayName": "MyPrefix_test_mysuffix",
"mailNickname": "MyPrefix_test_mysuffix"
}
応答
HTTP/1.1 422
Content-type: application/json
{
"error": {
"code": "Request_UnprocessableEntity",
"message": "The values provided contain one or more validation errors.",
"innerError": {
"request-id": "id-value",
"date": "date-value"
},
"details": [
{
"target": "mailNickname",
"code": "PropertyConflict",
"message": "Another object with the same value for property mailNickname already exists."
}
]
}
}