group:validateProperties

命名空间:microsoft.graph

验证 Microsoft 365 组的显示名称或邮件昵称是否符合命名策略。 在尝试更新Microsoft 365组之前,客户端可以使用此 API 来确定显示名称或邮件昵称是否有效。 若要在创建组之前验证属性,请使用 directoryobject:validateProperties 函数

对显示名称和邮件昵称属性执行以下策略验证:

  1. 验证前缀和后缀命名策略
  2. 验证自定义禁止字词策略

此 API 仅返回遇到的第一个验证失败。 如果属性多次验证失败,则仅返回第一个验证失败。 但是,如果仅验证前缀和后缀命名策略,则可以验证邮件昵称和显示名称,并接收验证错误的集合。 若要详细了解如何配置命名策略,请参阅 “配置命名策略”。

权限

要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) Group.Read.All、Group.ReadWrite.All
委派(个人 Microsoft 帐户) 不支持。
Application Group.Read.All、Group.ReadWrite.All

HTTP 请求

POST /groups/{id}/validateProperties

请求标头

名称 说明
Authorization Bearer {token}。必需。
Content-Type application/json

请求正文

在请求正文中,提供具有以下参数的 JSON 对象。

参数 类型 说明
displayName 字符串 要验证的组的显示名称。 属性不是单独必需的。 但是,至少需要一个属性 (displayNamemailNickname) 。
mailNickname String 要验证的组的邮件昵称。 属性不是单独必需的。 但是,至少需要一个属性 (displayNamemailNickname) 。
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"
}

响应

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."
      }
    ]
  }
}