3 Ways to Update Users in Microsoft 365

Explore three practical methods to update user profiles in Microsoft 365, ensuring accurate info and smoother administration
The author of the article Chris Shuptrine
Aug 2025
3 Ways to Update Users in Microsoft 365

Keeping user profiles current in Microsoft 365 isn’t busywork; it’s the glue that holds collaboration, compliance, and automated workflows together. Wrong phone numbers or titles slow everyone down and clog help-desk queues.

Below, you’ll see three practical ways to update those records, direct edits in the Microsoft 365 admin center, a bulk CSV import, and a targeted PowerShell script. Pick the route that fits your workload, keep data clean, and let users focus on real work.

Table of Contents

Use Microsoft 365’s UI

You’ll work in the Microsoft 365 admin center to tweak anything from a display name to license assignments.

Step 1: Sign in and reach Active users

  • Open admin.microsoft.com and sign in with admin credentials.
  • From the left rail, pick Users, then Active users.

The user list appears in the main panel.

Step 2: Find the user you need

  • Type the person’s name or email in the Search box above the list.
  • Click the user’s name to open their details pane.

Step 3: Edit basic profile details

  • In the pane, choose the Account tab.
  • Select Manage username and email or Manage personal info based on what you need.
  • Update fields like:
  • Display name
  • Username (this also changes their sign-in ID)
  • First or last name
  • Select Save changes.

Step 4: Change contact info

  • Still in the user pane, open Contact information.
  • Edit phone, address, or job title.
  • Save when finished.

Step 5: Adjust roles

  • Select Roles.
  • Choose either User (no admin access) or Admin center access.
  • For admin roles, tick the boxes that fit, such as Password admin or Teams admin.
  • Save.

Step 6: Update licenses and apps

  • Click Licenses and apps.
  • Turn license toggles on or off.

Removing a license also pulls connected services such as Exchange.

  • Use App toggles below if you only want specific services inside a suite.
  • Save.

Step 7: Review and close

  • Confirm the green banner that says “Saved.”
  • Close the pane. Changes sync across Microsoft 365 in a few minutes.

Use Torii

Instead of accessing Microsoft 365 directly, consider managing user updates with Torii, a SaaS Management Platform. SMPs give companies a single dashboard for all SaaS applications, letting you programmatically onboard or offboard users, inspect license allocations, and more.

When you use Torii, the task is fully automated: once a selected event happens, the change is carried out without human intervention. Events might include a new employee joining, someone leaving, an upcoming contract renewal. Automating these frequent jobs keeps you from repeating the same manual steps.

To push user updates to Microsoft 365 through Torii, follow these quick steps and let the platform do the heavy lifting:

1. Sign up for Torii

Contact Torii and request a free two-week proof-of-concept.

2. Connect your Microsoft 365 account to Torii

After your Torii workspace is live, link it to your existing Microsoft 365 tenant; if you need detailed guidance, here are the instructions for the Microsoft 365 integration.

torii microsoft 365 dashboard

3. Create a Torii workflow for Microsoft 365

Within Torii, open the Workflows tab, choose a trigger, and add the action that updates the user record in Microsoft 365. From then on, every time the trigger criteria are met, Torii will automatically apply the update to Microsoft 365.

creating microsoft 365 workflows in torii

Use Microsoft 365’s API

Here’s the direct route to update user details with Microsoft Graph, the Microsoft 365 REST API.

1. Grab an access token that can edit users

  • Your token must carry the User.ReadWrite.All scope.
  • Any auth flow works (client credentials, auth code, on-behalf-of) as long as the token ends up with that scope.

GET https://login.microsoftonline.com/{tenant-id}/oauth2/v2.0/token

2. Pick the user you need to change

  • You can PATCH by either id, userPrincipalName, or mail.
  • Example identifier: 28d76429-1c4e-4c07-a6d1-1f13e43c34d2

3. Build the PATCH call

Only include the properties you intend to change; everything else can stay out of the payload. Use this template as a starting point.

PATCH https://graph.microsoft.com/v1.0/users/28d76429-1c4e-4c07-a6d1-1f13e43c34d2
Authorization: Bearer {access_token}
Content-Type: application/json
{
    "department": "Marketing",
    "mobilePhone": "+1 555 010 9999",
    "jobTitle": "Content Specialist"
}

4. Send the request

  • 204 No Content means it worked.
  • Anything in the 4xx or 5xx range means something went wrong; the JSON error tells you why.

5. Double-check the update

Send a quick GET request after the patch to make sure the values really changed.

GET https://graph.microsoft.com/v1.0/users/28d76429-1c4e-4c07-a6d1-1f13e43c34d2?$select=id,displayName,department,mobilePhone,jobTitle
Authorization: Bearer {access_token}

6. Handle common snags

  • 403 Forbidden: the token is missing User.ReadWrite.All or admin consent.
  • 400 Bad Request: you tried to change a property that can’t be patched or sent an invalid value.
  • 404 Not Found: the user identifier is wrong or the account is in a different tenant.

With those simple steps, your update process is complete and requires nothing more than a valid token. One token, one PATCH, and the user record is up to date.

Torii for SaaS Management

Looking to regain control of your growing SaaS toolset and spend? Our team can show you where to start and how to get results fast without extra headcount. Torii’s SaaS Management Platform enables you to:

  • Uncover shadow IT: AI scans user activity across every department and flags unapproved apps the moment an employee starts using them.
  • Slash spending: Remove idle seats and duplicate tools so finance sees immediate savings and teams never pay for what they don’t use.
  • Automate provisioning and offboarding: Hand off repetitive IT tasks (including onboarding and deprovisioning) to trusted automation that runs quietly in the background.
  • Stay ahead of renewals: Receive timely renewal alerts and contract details, giving procurement the runway it needs to renegotiate or cancel on time.

Torii delivers the first end-to-end SaaS Management Platform, giving Finance, IT, and Security teams a single source of truth.

Visit Torii to explore product details, customer stories, and practical tips for taming your SaaS footprint.

Frequently Asked Questions

Microsoft 365 profiles can be refreshed in three ways: edit each user in the admin center UI, upload a populated CSV for mass changes, or run a PowerShell/Graph script that PATCHes specific fields. Pick the path that matches your volume and technical comfort.

Yes. Download the Microsoft 365 user CSV template, complete or modify the rows you need, then import it back through the admin center. The wizard validates headers, applies each change in bulk, and shows a confirmation banner when everything synchronizes.

Your token must include the "User.ReadWrite.All" scope and have admin consent. Request it through any OAuth flow, pass it in the Authorization header, then PATCH the user endpoint. Missing or insufficient scope will trigger a 403 Forbidden response.

Accurate profiles mean correct phone numbers, titles, and departments in Teams, Outlook, SharePoint, and automated flows. Clean data speeds collaboration, meets compliance requirements, and keeps help-desk tickets down because people no longer chase wrong details or stalled approvals.

Torii connects to your Microsoft 365 tenant, lets you build workflows with a simple trigger-and-action editor, and then pushes profile changes automatically. Once enabled, every onboarding, offboarding, or department move updates licenses, roles, and contact fields without manual clicks.

The Graph API commonly returns 400 for invalid properties, 403 when the scope or consent is missing, and 404 if the user ID or tenant is wrong. Double-check your payload, grant "User.ReadWrite.All," and verify the identifier to resolve them.