title | description | ms.localizationpriority | author | ms.subservice | doc_type |
---|---|---|---|---|---|
directoryObject: validateProperties |
Validate that a Microsoft 365 group's display name or mail nickname complies with naming policies. |
medium |
keylimesoda |
entra-directory-management |
apiPageType |
Namespace: microsoft.graph
Validate that a Microsoft 365 group's display name or mail nickname complies with naming policies. Clients can use this API to determine whether a display name or mail nickname is valid before trying to create a Microsoft 365 group. For validating properties of an existing group, use the validateProperties function for groups.
The following validations are performed for the display name and mail nickname properties:
- Validate the prefix and suffix naming policy
- Validate the custom banned words policy
- Validate the mail nickname is unique
This API returns with the first failure encountered. If one or more properties fail multiple validations, only the property with the first validation failure is returned. However, you can validate both the mail nickname and the display name and receive a collection of validation errors if you are only validating the prefix and suffix naming policy.
[!INCLUDE national-cloud-support]
Choose the permission or permissions marked as least privileged for this API. Use a higher privileged permission or permissions only if your app requires it. For details about delegated and application permissions, see Permission types. To learn more about these permissions, see the permissions reference.
[!INCLUDE permissions-table]
POST /directoryObjects/validateProperties
Name | Description |
---|---|
Authorization | Bearer {code}. Required. |
Content-Type | application/json. Required. |
In the request body, provide a JSON object with the following parameters.
Parameter | Type | Description |
---|---|---|
entityType | String | Group is the only supported entity type. |
displayName | String | The display name of the group to validate. The property is not individually required. However, at least one property (displayName or mailNickname) is required. |
mailNickname | String | The mail nickname of the group to validate. The property is not individually required. However, at least one property (displayName or mailNickname) is required. |
onBehalfOfUserId | Guid | The object ID of the user to impersonate when calling the API. The validation results are for the onBehalfOfUserId's attributes and roles. |
If successful and there are no validation errors, the method returns 204 No Content
response code. It doesn't return anything in the response body.
If the request is invalid, the method returns 400 Bad Request
response code. An error message with details about the invalid request is returned in the response body.
If there is a validation error, the method returns 422 Unprocessable Entity
response code. An error message and a collection of error details is returned in the response body.
This is an example of a successful validation request.
POST https://graph.microsoft.com/beta/directoryObjects/validateProperties
Content-type: application/json
{
"entityType": "Group",
"displayName": "Myprefix_test_mysuffix",
"mailNickname": "Myprefix_test_mysuffix",
"onBehalfOfUserId": "onBehalfOfUserId-value"
}
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
HTTP/1.1 204 No Content
This is an example of a request with validation errors.
POST https://graph.microsoft.com/beta/directoryObjects/validateProperties
Content-type: application/json
{
"entityType": "Group",
"displayName": "test",
"mailNickname": "test",
"onBehalfOfUserId": "onBehalfOfUserId-value"
}
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": "request-id-value",
"date": "date-value"
},
"details": [
{
"target": "displayName",
"code": "MissingPrefixSuffix",
"message": "Property mailNickname is missing a required prefix/suffix per your organization's Group naming requirements.",
"prefix": "Myprefix_",
"suffix": "_mysuffix"
},
{
"target": "mailNickname",
"code": "MissingPrefixSuffix",
"message": "Property mailNickname is missing a required prefix/suffix per your organization's Group naming requirements.",
"prefix": "Myprefix_",
"suffix": "_mysuffix"
}
]
}
}