msgraph-sdk-powershell icon indicating copy to clipboard operation
msgraph-sdk-powershell copied to clipboard

No New-MgInvitation errors but guest user not created

Open lucafabbri365 opened this issue 3 months ago • 2 comments

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

lucafabbri365 avatar Sep 19 '25 11:09 lucafabbri365

As the HTTP requests are being sent to the server and received correctly this appears to be an issue with the underlying HTTP API.

I'm leaving this open until we can move it to the team that owns that specific API

gavinbarron avatar Oct 02 '25 23:10 gavinbarron

BTW, this works with V2.32 of the SDK:

New-MgInvitation -InvitedUserEmailAddress '[email protected]' -InvitedUserDisplayName 'Joe T. Smoke' -InvitedUserType 'Guest' -InviteRedirectUrl "https://myapps.microsoft.com"

12Knocksinna avatar Nov 12 '25 18:11 12Knocksinna

Thanks Tony!

@lucafabbri365 can you please re-test with the latest version of the PowerShell cmdlets. If you have issues please post the output that you get when running the cmdlets with the -Debug flag to help us route this to the correct teams

gavinbarron avatar Dec 18 '25 03:12 gavinbarron