IT Error Decoder

How to Fix Microsoft Graph: Concurrent updates conflict (412 Precondition Failed)

Last reviewed

Error message

412 Precondition Failed — concurrent update detected. The ETag does not match.

412 is the optimistic-concurrency safety mechanism. It prevents lost updates when multiple writers touch the same object.

What this error means

Your update attempt included an If-Match header (or ETag check) that doesn't match the resource's current version. The resource changed between when you read it and when you tried to write.

Why this happens

Another process modified the same object first, or you held a stale ETag for too long.

Quick fix (for end users)

  • Re-fetch the resource and retry the update.
  • If the cmdlet retries automatically, just wait and try again.

Admin / engineer fix

  • Re-read the object before updating to get the latest ETag.

    command
    $user = Get-MgUser -UserId <upn>
    Update-MgUser -UserId $user.Id -DisplayName 'New Name'
  • Implement retry with exponential backoff for batch operations.

Step-by-step fix

  1. Re-fetch the object.

  2. Retry the update with the fresh ETag.

Affected products

Microsoft Graph

Common variations of this error

People also see these phrasings of the same problem:

  • 412 Precondition Failed
  • ETag mismatch

Still broken? Try these

  • If 412s are persistent, another script may be writing to the same object continuously — investigate concurrent automations.

Related errors

Related searches

  • microsoft graph concurrent update
  • graph 412 precondition

Frequently asked questions

What does "Microsoft Graph: Concurrent updates conflict (412 Precondition Failed)" mean?

Your update attempt included an If-Match header (or ETag check) that doesn't match the resource's current version. The resource changed between when you read it and when you tried to write.

What causes "Microsoft Graph: Concurrent updates conflict (412 Precondition Failed)"?

Another process modified the same object first, or you held a stale ETag for too long.

How do I fix "Microsoft Graph: Concurrent updates conflict (412 Precondition Failed)"?

1. Re-fetch the object. 2. Retry the update with the fresh ETag. Always test changes in a non-production environment first.

Browse more errors in Microsoft Graph PowerShell: Fix Microsoft Graph PowerShell errors. Insufficient privileges, invalid object ID, missing cmdlets, token problems, and more. Or paste your own error into the error decoder tool to find a match. You can also go back to the homepage to browse common errors by topic.