directoryObject: validateProperties

Namespace: microsoft.graph

Valide se o nome de exibição ou apelido de email de um grupo da Microsoft 365 está em conformidade com as políticas de nomenclatura. Os clientes podem usar essa API para determinar se um nome de exibição ou apelido de email é válido antes de tentar criar um Microsoft 365 grupo. Para validar as propriedades de um grupo existente, use a função group: validateProperties .

As seguintes validações de política são executadas para as propriedades de nome de exibição e apelido de email:

  1. Validar a política de nomeação de prefixo e sufixo
  2. Validar a política de palavras proibidas personalizada
  3. Validar se o apelido de email é exclusivo

Essa API retorna apenas a primeira falha de validação encontrada. Se as propriedades falharem em várias validações, somente a primeira falha de validação será retornada. No entanto, você pode validar o apelido de email e o nome de exibição e receber uma coleção de erros de validação se estiver validando apenas a política de nomenis de prefixo e sufixo. Para saber mais sobre como configurar políticas de nomenização, consulte Configure noming policy.

Permissões

Uma das seguintes permissões é obrigatória para chamar esta API. Para saber mais, incluindo como escolher permissões, confira Permissões.

Tipo de permissão Permissões (da com menos para a com mais privilégios)
Delegado (conta corporativa ou de estudante) Group.Read.All, Directory.Read.All, Directory.ReadWrite.All
Delegado (conta pessoal da Microsoft) Sem suporte.
Aplicativo Group.Read.All, Group.ReadWrite.All, Directory.Read.All, Directory.ReadWrite.All

Solicitação HTTP

POST /directoryObjects/validateProperties

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório.
Content-Type application/json

Corpo da solicitação

Forneça um objeto JSON com os seguintes parâmetros no corpo da solicitação.

Parâmetro Tipo Descrição
entityType String O grupo é o único tipo de entidade com suporte.
displayName String O nome de exibição do grupo a ser validado. A propriedade não é necessária individualmente. No entanto, pelo menos uma propriedade (displayName ou mailNickname) é necessária.
mailNickname String O apelido de email do grupo a ser validado. A propriedade não é necessária individualmente. No entanto, pelo menos uma propriedade (displayName ou mailNickname) é necessária.
onBehalfOfUserId Guid A ID do usuário a ser personificado ao chamar a API. Os resultados da validação são para os atributos e funções de onBehalfOfUserId .

Resposta

Se tiver êxito e não houver erros de validação, o método retornará o 204 No Content código de resposta. Não retorna nada no corpo da resposta.

Se a solicitação for inválida, o método retornará o 400 Bad Request código de resposta. Uma mensagem de erro com detalhes sobre a solicitação inválida é retornada no corpo da resposta.

Se houver um erro de validação, o método retornará o 422 Unprocessable Entity código de resposta. Uma mensagem de erro e uma coleção de detalhes de erro é retornada no corpo da resposta.

Exemplos

Exemplo 1: Solicitação de validação bem-sucedida

Este é um exemplo de uma solicitação de validação bem-sucedida.

Solicitação

POST https://graph.microsoft.com/v1.0/directoryObjects/validateProperties
Content-type: application/json

{
  "entityType": "Group",
  "displayName": "Myprefix_test_mysuffix",
  "mailNickname": "Myprefix_test_mysuffix",
  "onBehalfOfUserId": "onBehalfOfUserId-value"
}

Resposta

HTTP/1.1 204 No Content

Exemplo 2: Solicitação com erros de validação

Este é um exemplo de uma solicitação com erros de validação.

Solicitação

POST https://graph.microsoft.com/v1.0/directoryObjects/validateProperties
Content-type: application/json

{
  "entityType": "Group",
  "displayName": "test",
  "mailNickname": "test",
  "onBehalfOfUserId": "onBehalfOfUserId-value"
}

Resposta

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