S Andrew
S Andrew

Reputation: 7198

How to update existing user in Azure AD using Microsoft Graph API

I have added a user in azure ad. Now using graph api I want to update its display name or let say password. I am referring to this guide https://learn.microsoft.com/en-us/graph/api/user-update?view=graph-rest-1.0&tabs=cs

First of all, I am not sure I am using correct URL to update the user but below is what I am using:

 https://graph.microsoft.com/v1.0/users/john@<myorg>.onmicrosoft.com

I am passing the userName of the user which I want to udpate in the url. Please let me know if this is not correct.

I am including the OAuth token as bearer token in my request and posting the below json:

{
  "accountEnabled": true,

  "displayName": "john12"

}

From the above json, I want to change the display name from john to john12. But I am getting below error:

{
    "error": {
        "code": "Request_BadRequest",
        "message": "Specified HTTP method is not allowed for the request target.",
        "innerError": {
            "request-id": "536fd7c1-db46-4927-9732-169da778811c",
            "date": "2019-06-06T04:58:26"
        }
    }
}

Please can anyone please let me know how can I update the existing user properties. Thanks

Upvotes: 2

Views: 7456

Answers (1)

Rohit Saigal
Rohit Saigal

Reputation: 9664

Most probably you're not using HTTP method PATCH. I say this looking at the error message Specified HTTP method is not allowed for the request target.

If you use anything other than PATCH, like a POST you will end up getting this error message.

The JSON body for your request looks fine. I tried updating an existing user with similar JSON and sending a PATCH request from Microsoft Graph Explorer and it worked fine.

I could reproduce the same error message that you're seeing when I used a POST or PUT call from Microsoft Graph Explorer.

enter image description here

Although same request URL with same JSON body worked fine once I changed POST to PATCH. Later on querying the user again (GET), I could see that displayName had been updated correctly

enter image description here

Upvotes: 1

Related Questions