MSGraphMailbag - 利用 Power Automate 自定义连接器执行批量请求

在这篇文章中,我们将介绍为 Microsoft Graph 构建 Power automation 自定义连接器的好处。这包括Microsoft Graph JSON批处理的详细信息、创建自定义连接器的方法以及如何在自动化流中使用它们。Power automation 是一个无代码/低代码的平台,它为我们提供了关于手动任务自动化的一切。您可以通过使用 Power automation 的内置连接器,也可以构建自己的自定义连接器在流中使用。
在这里插入图片描述
关于如何为 Power Automate 创建 Microsoft Graph JSON 批处理自定义连接器的 step-by-step 指南

使用内置的连接器 VS 构建自定义连接器

有许多现成的 Power automation 连接器,他们使用 Microsoft Graph 与 Microsoft 产品的特定端点通信。但是,没有能够覆盖整个 API 的直接与 Microsoft Graph 通信的内置连接器,因此有些场景可能需要通过 Power automation 的流去调用 Microsoft Graph。
在这里插入图片描述
为了解决直接调用 Microsoft Graph 而不需要缓存用户凭证的情况,Microsoft Power automation 中的 HTTP 连接器支持灵活的集成。另一方面,对于需要用户凭据以授予特定委托权限的情况,可以创建自定义连接器来提供 Microsoft Graph API 的封装,并允许使用带有委托权限的 API。构建自定义连接器的另一个好处是能够在不同的 Power automation 流中利用和重用相同的连接器。

为什么使用 Microsoft Graph JSON 批处理

举个例子,需要创建 Microsoft Graph 自定义连接器的场景可能是在 Microsoft team 上自动化 team 的创建和配置过程。对于这个场景,我们可以创建一个使用 Microsoft Graph Teams API 来创建团队的自定义连接器。此外,我们希望添加成员并创建频道,然后还需要为这些操作创建新的自定义连接器。
在这里插入图片描述
基于上述情况,更好的办法是为 Microsoft Graph JSON 批处理端点创建自定义连接器,以在 Power automation 流中支持多个 Microsoft Graph 调用,这样我们就可以在不同的 Microsoft Graph 相关场景中重用我们的自定义连接器。

=>Microsoft Graph 批处理<=

在 Graph Explorer 中测试批处理

在创建自定义连接器之前,我们可以先在 Graph Explorer 中测试一下,如下所示
在这里插入图片描述
将请求的内容替换为以下内容

{
    "requests": [
        {
            "url": "/me/photo/$value",
            "method": "GET",
            "id": "1"
        },
        {
            "url": "/me/joinedTeams",
            "method": "GET",
            "id": "2"
        },
        {
            "url": "/me/events",
            "method": "GET",
            "id": "3"
        }
    ]
}

选择创建自定义连接器的方式

在 Power automation 中,有多种方法可以创建新的自定义连接器。如果您喜欢一步一步的 UI 指导,您可以从一个空白模板创建自定义连接器。您还可以将 Microsoft Graph 的自定义连接器作为 OpenAPI 文件、URL、Postman 集合或从 GitHub 导入。
在这里插入图片描述
对于任何使用 Microsoft Graph 的自定义连接器,我们都需要将 OAuth 2.0 设置为身份验证类型,并将 Azure Active Directory 设置为身份提供者。

创建时需要的信息大致为:

  • Verb: POST
  • URL: https://graph.microsoft.com/v1.0/$batch
  • Headers:留空
  • Body: {}

如图所示进行创建。
在这里插入图片描述
在这里插入图片描述
我们的最终配置是对自定义连接器进行授权和测试,以确保连接器可以使用。可以在 Microsoft Power automation 的 Data -> Connection 部分完成这一步。

更多详细信息可以访问下面两个DOC文档。
=>创建自定义连接器<=
=>为连接器授权<=

创建一个流

连接器创建好之后如何在 Power Automate 的流中使用呢?如下图。
在这里插入图片描述
可以参考下面的测试请求内容,但有些属性需要根据我们实际的环境去修改。

{
  "requests": [
    {
      "id": 1,
      "url": "/teams/REPLACE/channels",
      "headers": {
        "Content-Type": "application/json"
      },
      "method": "POST",
      "body": {
        "displayName": "Marketing Collateral",
        "description": "Marketing collateral and documentation."
      }
    },
    {
      "id": 2,
      "dependsOn": [
        "1"
      ],
      "url": "/teams/REPLACE/channels",
      "headers": {
        "Content-Type": "application/json"
      },
      "method": "POST",
      "body": {
        "displayName": "Vendor Contracts",
        "description": "Vendor documents, contracts, agreements and schedules."
      }
    },
    {
      "id": 3,
      "dependsOn": [
        "2"
      ],
      "url": "/teams/REPLACE/channels",
      "headers": {
        "Content-Type": "application/json"
      },
      "method": "POST",
      "body": {
        "displayName": "General Client Agreements",
        "description": "General Client documents and agreements."
      }
    }
  ]
}

成功后的效果如下图
在这里插入图片描述
本篇完

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值