You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Microsoft Graph中枚举外部连接的externalItem对象?

如何列出Microsoft Graph外部连接中的externalItem对象

Microsoft Graph并没有提供直接列出外部连接所有externalItem的端点(你尝试的GET /external/connections/<id>/items/确实无效),但可以通过以下两种可靠方法实现需求:

方法1:使用搜索API检索所有外部项

通过/search/query端点,指定你的外部连接作为数据源,执行全量搜索来获取所有externalItem:

请求示例

POST https://graph.microsoft.com/v1.0/search/query
Content-Type: application/json

{
  "requests": [
    {
      "entityTypes": ["externalItem"],
      "query": {
        "queryString": "*"
      },
      "from": 0,
      "size": 25,
      "dataSource": {
        "externalConnectionId": "{你的外部连接ID}"
      }
    }
  ]
}

注意事项

  • 单次请求最多返回25条结果,需要通过from参数分页遍历所有数据,直到返回的value数组为空。
  • 所需权限:ExternalItem.Read.All 或 ExternalItem.ReadWrite.All(根据你的操作场景选择)。

方法2:使用Delta查询追踪外部项(推荐用于同步场景)

如果你需要定期同步并删除过时项,Delta查询是更高效的方案:它首次调用会返回所有当前存在的externalItem,后续调用仅返回新增、修改或删除的项,避免全量检索的开销。

请求示例(首次调用)

GET https://graph.microsoft.com/v1.0/external/connections/{你的外部连接ID}/items/delta

后续增量查询

首次调用会返回一个@odata.deltaLink,后续直接请求该链接即可获取自上次查询以来的所有变更:

GET {返回的deltaLink URL}

注意事项

  • Delta查询会自动标记已删除的项,你可以根据返回结果中的@removed属性来处理过时项的删除。
  • 所需权限:ExternalItem.ReadWrite.All(因为需要处理删除操作)。

内容的提问来源于stack exchange,提问作者Jacob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 05:04:58