如何使用Microsoft Graph API发送邀请电子邮件

时间:2019-10-03 09:52:23

标签: c# azure-active-directory microsoft-graph microsoft-graph-sdks

我想邀请我们Active Directory / Tenant中的用户。为此,请使用Micorosoft Graph API。代码使用如下

  IConfidentialClientApplication confidentialClientApplication = ConfidentialClientApplicationBuilder
            .Create(clientId)
            .WithTenantId(tenantID)
            .WithClientSecret(clientSecret)
            .Build();

        ClientCredentialProvider authProvider = new ClientCredentialProvider(confidentialClientApplication);

        GraphServiceClient graphClient = new GraphServiceClient(authProvider);

        var invitation = new Invitation
        {
            InvitedUserEmailAddress = "myemailaddress@gmail.com",
            InviteRedirectUrl = "https://myapp.com"
        };

        await graphClient.Invitations
            .Request()
            .AddAsync(invitation);

此后,我可以在Azure的Active Directory门户中看到该用户。但是没有收到邀请电子邮件。

但是,当我单击Azure门户中的重新发送邀请时,邀请电子邮件便来了。

您能指导一下,为什么从API发送邀请时为什么没有收到邀请电子邮件?

1 个答案:

答案 0 :(得分:1)

您需要在SendInvitationMessage对象中将true设置为Invitation

var invitation = new Invitation
        {
            InvitedUserEmailAddress = "myemailaddress@gmail.com",
            InviteRedirectUrl = "https://myapp.com",
            SendInvitationMessage = true
        };

有关更多信息,您可以阅读Docs

  

sendInvitationMessage布尔值指示是否应该发送电子邮件   发送给是否被邀请的用户。默认值为false。