microsoftgraph / microsoftgraph/msgraph-sdk-powershell

No New-MgInvitation errors but guest user not created

Open
#3,399 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Service issue type:bug
Dominant language
C#
Stars
898
Forks
230
Avg merge
2d 5h
Merged PRs (30d)
31

Description

Describe the bug

I'm using Microsoft.Graph v2.30.0 module on PowerShell 7.5.3.
Following issue started to appear recently with New-MgInvitation cmdlet while inviting new Guest users.

I launch this cmdlet::

New-MgInvitation -InvitedUserEmailAddress <EmailAddress> -InviteRedirectUrl <MyCustoUrl> -InvitedUserType 'Guest'

All is working fine: the cmdlet returns Microsoft.Graph.PowerShell.Models.MicrosoftGraphInvitation object containing:

Id                      : <Guid>
InviteRedeemUrl         : https://login.microsoftonline.com/redeem?...                          
InviteRedirectUrl       : <MyCustomUrl>
InvitedUser             : Microsoft.Graph.PowerShell.Models.MicrosoftGraphUser
InvitedUserDisplayName  :
InvitedUserEmailAddress : <EmailAddress>
InvitedUserMessageInfo  : Microsoft.Graph.PowerShell.Models.MicrosoftGraphInvitedUserMessageInfo
InvitedUserSponsors     :
InvitedUserType         : Guest
ResetRedemption         : False
SendInvitationMessage   : False
Status                  : PendingAcceptance
AdditionalProperties    : {[@odata.context, https://graph.microsoft.com/v1.0/$metadata#invitations/$entity]}

However, the user has not been created in Entra ID: it does not appear either when running Get-MgUser -Filter "UserType eq 'Guest' and Mail eq '<EmailAddress>' or in Entra ID Portal.

These are the scopes enabled in the Microsoft Graph connection (Get-MgContext).Scopes:

  • Directory.Read.All
  • Directory.ReadWrite.All
  • User.ReadWrite.All
    ...
Expected behavior

I would expect that, since the cmdlet does not return any errors but instead an object indicating it completed successfully, the user should be created in Entra ID.

How to reproduce
  1. Open PowerShell 7.5.3
  2. Import-Module Microsoft.Graph
  3. Connect-MgGraph
  4. New-MgInvitation -InvitedUserEmailAddress <EmailAddress> -InviteRedirectUrl <MyCustoUrl> -InvitedUserType 'Guest'
SDK Version

2.30.0

Latest version known to work for scenario above?

2.30.0

Known Workarounds

The creation of a new guest user from the Entra ID portal works correctly.

Debug output
Click to expand log DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
POST

Absolute Uri:
https://graph.microsoft.com/v1.0/invitations

Headers:
FeatureFlag : 00000003
Cache-Control : no-store, no-cache
User-Agent : Mozilla/5.0,(Windows NT 10.0; Microsoft Windows 10.0.26100; en-US),PowerShell/7.5.3
SdkVersion : graph-powershell/2.30.0
client-request-id : eb4fc89e-6494-4106-8f0b-9ee5133c7c4c
Accept-Encoding : gzip,deflate,br

Body:
{
"invitedUserEmailAddress": "EmailAddress",
"invitedUserType": "Guest",
"inviteRedirectUrl": "MyCustomUrl"
}

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
Created

Headers:
Cache-Control : no-store, must-revalidate, no-cache
Location : https://graph.microsoft.com/
Vary : Accept-Encoding
Strict-Transport-Security : max-age=31536000
request-id : f34f78b8-7942-4018-89c6-9cce5dcd8173
client-request-id : eb4fc89e-6494-4106-8f0b-9ee5133c7c4c
x-ms-ags-diagnostic : {"ServerInfo":{"DataCenter":"Italy North","Slice":"E","Ring":"3","ScaleUnit":"002","RoleInstance":"MI3PEPF00004A49"}}
odata-version : 4.0
Date : Fri, 19 Sep 2025 11:48:56 GMT

Body:
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#invitations/$entity",
"id": "249c3056-3bbe-45e6-819f-b73fbed317c0",
"inviteRedeemUrl": "https://login.microsoftonline.com/redeem?...",
"invitedUserDisplayName": null,
"invitedUserType": "Guest",
"invitedUserEmailAddress": "EmailAddress",
"sendInvitationMessage": false,
"resetRedemption": false,
"inviteRedirectUrl": "MyCustomUrl",
"status": "PendingAcceptance",
"invitedUserMessageInfo": {
"messageLanguage": null,
"customizedMessageBody": null,
"ccRecipients": [
{
"emailAddress": {
"name": null,
"address": null
}
}
]
},
"invitedUser": {
"id": "a8255d08-0507-412c-a67b-19e0adcf74f6",
"userPrincipalName": "EmailPrefix_EmailSuffix#EXT#@MyTenant.onmicrosoft.com"
}
}

DEBUG: [CmdletEndProcessing]: - New-MgInvitation end processing.
Id InviteRedeemUrl


249c3056-3bbe-45e6-819f-b73fbed317c0 https://login.microsoftonline.com/redeem?...

Configuration
  • OS: Windows 11 24H2
  • Architecture: x64
$PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.5.3
PSEdition                      Core
GitCommitId                    7.5.3
OS                             Microsoft Windows 10.0.26100
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0
Other information

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the New-MgInvitation entry point and its POST request to /v1.0/invitations, then compare the returned invitedUser id with Get-MgUser and the Entra ID portal. Determine whether the discrepancy is in the PowerShell SDK response or the Microsoft Graph service, and document a reproducible result and next action.

Written by the indexing model from the issue text.

Assessment

Tech stack
powershell
Domain
api
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.