Power Automate Desktop - 尝试一下使用MSGraph进行邮件的发送
Power Automate Desktop中有些action是需要premium license才能够执行的,比如Office 365 Outlook,这时候也可以尝试使用一下MSGraph Api进行邮件的发送。Microsoft 365 邮件发送的Graph Api可以参考这个sendMail这边将尝试一下使用Invoke Web Service action去调用sendMail acti
1.简单介绍
Power Automate Desktop中有些action是需要premium license才能够执行的,比如Office 365 Outlook,这时候也可以尝试使用一下MSGraph Api进行邮件的发送。

Microsoft 365 邮件发送的Graph Api可以参考这个sendMail
这边将尝试一下使用Invoke Web Service action去调用sendMail action进行邮件的发送
2.具体说明
2.1 注册应用程序
使用Microsoft Graph Api一般需要在Microsoft Extra ID中注册应用程序的,
1) 在App Registration门户中,点击 New registration进行注册应用程序的创建,如下图所示,

2) 创建好注册应用程序后,需要记录一下Application ID(Client Id)和Directory ID(Tenant Id)

3) 创建一下Client Secret,这个secret的值也需要记录一下。

4)对注册应用程序分配一下Mail.Send的权限

5)创建并配置好注册应用程序之后,可以试着使用Postman调用Send email Rest Api,这时候需要使用到前面记录的Application ID, Tenant ID和Secret Value了。 先获取到access token,如下图

6) 然后调用MSGraph Send email api如下图,

发现返回状态码202,表示Microsoft 365已经接收了发送邮件的任务,如果exchange online没有邮件的限制,则最后能够正常收到邮件的。

2.2 制作PAD flow
这边采用的Power Automate Desktop中的普通action-Invoke Web Service来调用Graph Api的,

1) 获取access token的步骤如下图所示,

2) 发送邮件的action如下图

3)最后对send email操作的response status code进行判断,如果是202,则弹出窗口,让用户检查一下outlook inbox进行邮件的确认。

2.3 运行一下
1) 点击Power Automate Desktop flow右边的运行按钮,如下图

2) flow 运行的过程,如下图所示,


3) 如果调用MSgraph Send Mail Api成功,则会返回状态码202,这时候Pad flow会弹出如下的信息dialog。

4) 检查一下Exchange online outlook inbox邮件,确实有收到邮件,如下图
3.总结
本文简单介绍了一下使用Power Automate Desktop中的Invoke Web Service进行Exchange Online邮件发送的过程。使用的是MSGraph Api进行的邮件发送,这样的话,就不需要额外购买Premium license了。当然如果有Premium license,直接使用内置的 Send an email(V2),还是会方便很多的

本文如果哪里有错误,麻烦告之,谢谢谢谢!
更多推荐


所有评论(0)