Atualizar usuário

Namespace: microsoft.graph

Atualizar as propriedades de um objeto usuário. Nem todas as propriedades podem ser atualizadas por usuários Membros ou Convidados com suas permissões padrão sem Funções de administrador. Compare as permissões padrão de membros e convidados para ver as propriedades que eles podem gerenciar.

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) User.ReadWrite, User.ReadWrite.All, User.ManageIdentities.All, Directory.ReadWrite.All
Delegado (conta pessoal da Microsoft) User.ReadWrite
Aplicativo User.ReadWrite.All, User.ManageIdentities.All, Directory.ReadWrite.All

Observação

  • A atualização da propriedade businessPhones, mobilePhone ou otherMails de outro usuário é permitida apenas em usuários que não sejam administradores ou que tenham uma das seguintes funções: Leitor de Diretório, Emissor de Convites Independente, Leitor do Centro de Mensagens e Leitor de Relatórios. Para obter mais detalhes, confira Administrador de suporte técnico (senha) em funções internas do Azure Active Directory. Esse é o caso de aplicativos que receberam as permissões User.ReadWrite.All ou Directory.ReadWrite.All delegadas ou de aplicativo. Apenas um Administrador Global atribuído à permissão Directory.AccessAsUser.All pode atualizar essas propriedades aos administradores mais privilegiados.
  • Sua conta Microsoft pessoal deve estar vinculada a um locatário do AAD para atualizar seu perfil com a permissão delegada User.ReadWrite em uma conta Microsoft pessoal.
  • A atualização da propriedade Identidades exige a permissão User.ManageIdentities.All. Além disso, adicionar uma conta local B2C a um objeto usuário existente não é permitido, a menos que o objeto usuário já contenha uma identidade de conta local.

Solicitação HTTP

PATCH /users/{id | userPrincipalName}

Cabeçalhos de solicitação

Cabeçalho Valor
Autorização {token} de portador. Obrigatório.
Content-Type application/json

Corpo da solicitação

No corpo da solicitação, forneça os valores para os campos relevantes que devem ser atualizados. Propriedades existentes que não estão incluídas no corpo da solicitação terão seus valores anteriores mantidos ou serão recalculadas com base nas alterações a outros valores de propriedade. Para obter melhor desempenho, não inclua valores existentes que não foram alterados.

Propriedade Tipo Descrição
aboutMe String Um campo de entrada de texto em forma livre para o usuário se descrever.
accountEnabled Booliano true se a conta estiver habilitada; caso contrário, false. Essa propriedade é obrigatória quando um usuário é criado. Um administrador global com a permissão delegada Directory.AccessAsUser.All pode atualizar o status accountEnabled de todos os administradores no locatário.
ageGroup ageGroup Define a faixa etária do usuário. Valores permitidos: null, Minor, NotAdult e Adult. Confira as definições de propriedades da faixa etária legal para obter mais informações.
birthday DateTimeOffset O aniversário do usuário. O tipo de carimbo de data/hora representa informações de data e hora usando o formato ISO 8601 e está sempre no horário UTC. Por exemplo, meia-noite UTC em 1º de janeiro de 2014 é 2014-01-01T00:00:00Z
businessPhones String collection Números de telefone para o usuário. OBSERVAÇÃO: Embora isso seja uma coleção de cadeias de caracteres, somente um número pode ser definido para essa propriedade.
city String A cidade em que o usuário está localizado.
CompanyName String O nome da empresa em que o usuário está associado. Essa propriedade pode ser útil para descrever a empresa de onde procede um usuário externo. O tamanho máximo é de 64 caracteres.
consentProvidedForMinor consentProvidedForMinor Define se o consentimento foi obtido para menores. Valores permitidos: null, Granted, Denied e NotRequired. Confira as definições de propriedades da faixa etária legal para obter mais informações.
country Cadeia de caracteres O país/região em que o usuário está localizado; por exemplo, US ou UK.
department String O nome do departamento no qual o usuário trabalha.
displayName String O nome exibido no catálogo de endereços do usuário. É geralmente a combinação do nome, da inicial do meio e do sobrenome do usuário. Essa propriedade é obrigatória quando um usuário é criado e não pode ser apagado durante atualizações.
employeeId String O identificador de funcionário atribuído ao usuário pela organização. O comprimento máximo é de 16 caracteres.
employeeType String Captura o tipo de trabalhador corporativo. Por exemplo, Employee, Contractor, Consultant ou Vendor. Retornado apenas em $select.
givenName String O nome fornecido (nome) do usuário.
employeeHireDate DateTimeOffset A data de contratação do usuário. O tipo de Carimbo de data/hora representa informações de data e hora usando o formato ISO 8601 e está sempre no horário UTC. Por exemplo, meia-noite UTC em 1 de janeiro de 2014 é 2014-01-01T00:00:00Z
interests Coleção de cadeias de caracteres Uma lista para o usuário descrever os interesses dele.
jobTitle String O cargo do usuário.
email String O endereço SMTP do usuário, por exemplo, jeff@contoso.onmicrosoft.com. As alterações feitas nessa propriedade também atualizarão a coleção proxyAddresses do usuário para incluir o valor como um endereço SMTP. Para contas do Azure AD B2C, esta propriedade só pode ser atualizada até dez vezes com endereços SMTP exclusivos.
mailNickname String O alias de e-mail do usuário. Essa propriedade deve ser especificada quando um usuário é criado.
mobilePhone String O número de celular principal do usuário.
mySite String A URL do site pessoal do usuário.
officeLocation String A localização do escritório no local de trabalho do usuário.
onPremisesExtensionAttributes onPremisesExtensionAttributes Contém extensionAttributes 1-15 para o usuário. Observe que os atributos de extensão individuais não são selecionáveis nem filtráveis. Para um usuário do onPremisesSyncEnabled, a fonte de autoridade desse conjunto de propriedades é o local e é somente leitura. Esses atributos de extensão também são conhecidos como atributos personalizados do Exchange 1-15.
onPremisesImmutableId String Essa propriedade é usada para associar uma conta de usuário do Active Directory local com seu objeto de usuário do Azure AD. Esta propriedade deverá ser especificada ao criar uma nova conta de usuário no Graph se você estiver usando um domínio federado para a propriedade userPrincipalName (UPN) do usuário. Importante: Os caracteres $ e _ não podem ser usados ao especificar essa propriedade.
otherMails Coleção String Uma lista de endereços de email adicional para o usuário; Por exemplo: ["bob@contoso.com", "Robert@fabrikam.com"].
passwordPolicies String Especifica as políticas de senha do usuário. Esse valor é uma enumeração cujo um dos valores possíveis é DisableStrongPassword, o que permite especificar senhas mais fracas do que a política padrão. Também é possível especificar DisablePasswordExpiration. Ambos podem ser especificados juntos; por exemplo: DisablePasswordExpiration, DisableStrongPassword.
passwordProfile PasswordProfile Especifica o perfil de senha do usuário. O perfil contém a senha do usuário. Essa propriedade é obrigatória quando um usuário é criado. A senha no perfil deve atender a requisitos mínimos, conforme especificado pela propriedade passwordPolicies. Por padrão, é obrigatória uma senha forte. Isso não pode ser usado para usuários federados.

No acesso delegado, o aplicativo de chamada deve receber a permissão delegada Directory.AccessAsUser.All em nome do usuário conectado. No acesso somente ao aplicativo, o aplicativo de chamada deve receber a permissão do aplicativo User.ReadWrite.All e pelo menos a função de Administrador do Usuário do Azure AD.
pastProjects Coleção de cadeias de caracteres Uma lista para o usuário enumerar seus projetos anteriores.
postalCode String O código postal do endereço postal do usuário. O código postal é específico para o país/região do usuário. Nos Estados Unidos, esse atributo contém o CEP.
preferredLanguage Cadeia de caracteres O idioma preferencial do usuário. Deve seguir o Código ISO 639-1; por exemplo, en-US.
responsibilities Coleção de cadeias de caracteres Uma lista para o usuário enumerar suas responsabilidades.
schools Coleção de cadeias de caracteres Uma lista para o usuário enumerar as escolas que ele frequentou.
skills Coleção de cadeias de caracteres Uma lista para o usuário enumerar suas qualificações.
state String O estado ou município no endereço do usuário.
streetAddress String O endereço do local de trabalho do usuário.
surname String O sobrenome do usuário (nome de família ou sobrenome).
usageLocation String Um código de duas letras (padrão ISO 3166). Obrigatório para os usuários que receberão licenças devido à exigência legal de verificar a disponibilidade de serviços nos países/regiões. Por exemplo: US, JP, e GB. Não anulável.
userPrincipalName Cadeia de caracteres O nome UPN do usuário. O UPN é uma ID de logon do usuário ao estilo da Internet com base na RFC 822 padrão da Internet. Por convenção, ele deve ser mapeado para o nome de email do usuário. O formato geral é alias@domain, em que o domínio deve estar presente na coleção de domínios verificados do locatário. Os domínios verificados do locatário podem ser acessados pela propriedade verifiedDomains da organização.
OBSERVAÇÃO: esta propriedade não pode conter caracteres de ênfase. Somente os seguintes caracteres são permitidos A - Z, a - z, 0 - 9, ' . - _ ! # ^ ~. Para obter a lista completa de caracteres permitidos, consulte as políticas de nome de usuário.
userType String Um valor de string que pode ser usado para classificar tipos de usuário em seu diretório, como Member e Guest.

Observação

  • As propriedades a seguir não podem ser atualizadas por um aplicativo apenas com permissões de aplicativo: aboutMe, birthday, employeeHireDate, interests, mySite, pastProjects, responsabilidades, escolas e habilidades.
  • Para atualizar as propriedades a seguir, você deve especificá-las em sua própria solicitação PATCH, sem incluir as outras propriedades listadas na tabela acima: aboutMe, aniversário, interesses, mySite, pastProjects, responsabilidades, escolas e habilidades.

Gerenciar extensões e dados associados

Use essa API para gerenciar o diretório, o esquema e as extensões abertas e seus dados para os usuários, da seguinte maneira:

  • Adicionar, atualizar e armazenar dados nas extensões de um usuário existente
  • Para extensões de diretório e esquema, remova todos os dados armazenados definindo o valor da propriedade de extensão personalizada como null. Para extensões abertas, use a API Excluir a extensão aberta.

Resposta

Se tiver êxito, este método retornará um código de resposta 204 No Content.

Exemplo

Exemplo 1: atualizar as propriedades do usuário conectado

Solicitação

O exemplo a seguir mostra uma solicitação.

PATCH https://graph.microsoft.com/v1.0/me
Content-type: application/json

{
  "businessPhones": [
    "+1 425 555 0109"
  ],
  "officeLocation": "18/2111"
}

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 204 No Content

Exemplo 2: atualizar as propriedades do usuário especificado

Solicitação

O exemplo a seguir mostra uma solicitação.

PATCH https://graph.microsoft.com/v1.0/users/{id}
Content-type: application/json

{
  "businessPhones": [
    "+1 425 555 0109"
  ],
  "officeLocation": "18/2111"
}

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 204 No Content

Exemplo 3: atualizar o passwordProfile de um usuário para redefinir sua senha

O exemplo a seguir mostra uma solicitação para redefinir a senha de outro usuário.

Solicitação

PATCH https://graph.microsoft.com/v1.0/users/{id}
Content-type: application/json

{
  "passwordProfile": {
    "forceChangePasswordNextSignIn": false,
    "password": "xWwvJ]6NMw+bWH-d"
  }
}

Resposta

HTTP/1.1 204 No Content

Exemplo 4: Adicionar ou atualizar os valores de uma extensão de esquema para um usuário

Você pode atualizar ou atribuir um valor a uma única propriedade ou a todas as propriedades na extensão.

Solicitação

PATCH https://graph.microsoft.com/v1.0/users/4562bcc8-c436-4f95-b7c0-4f8ce89dca5e
Content-type: application/json

{
    "ext55gb1l09_msLearnCourses": {
        "courseType": "Admin"
    }
}

Resposta

HTTP/1.1 204 No Content

Observação: Para remover o valor da extensão do esquema do objeto do usuário, defina a propriedade como null. Por exemplo:

PATCH https://graph.microsoft.com/v1.0/users/4562bcc8-c436-4f95-b7c0-4f8ce89dca5e
Content-type: application/json

{
   "ext55gb1l09_msLearnCourses": null
}

Confira também