【问题标题】:Is there a way to combine multiple powerbi api requests in to a single restapi call? Something like a batch request to get a collective response?有没有办法将多个 power bi api 请求组合成一个 rest api 调用?类似于批处理请求以获得集体响应?
【发布时间】:2025-12-20 11:05:07
【问题描述】:

我正在尝试减少从 powerbi rest api 中获取数据的 api 调用。当我调用像 /Groups 这样的端点时,响应在单个 api 调用中是直接的,我得到了所有组。为了获取数据集、仪表板和报告,我必须将每个组 id 传递给报告、数据集等的端点。

例如。 GET https://api.powerbi.com/v1.0/myorg/groups/{groupId}/datasets

有没有办法组合这些请求,例如我在单个 api 调用中发送多个组 id 以从各自组中获取所有数据集?

我还没有找到一种方法将它们组合在一起以进行单个批处理 api 调用。

但是,我尝试了从 MSDocs 中找到的不同端点以避免输入组 ID。

获取https://api.powerbi.com/v1.0/myorg/datasets

但是这样做的问题是,响应不会包含数据集属于哪个组的信息。没有组信息,检索到的数据对我没有用。

https://docs.microsoft.com/en-us/rest/api/power-bi/datasets

【问题讨论】:

    标签: azure rest powerbi


    【解决方案1】:

    您必须使用 API 的 admin 部分。要获取组织中所有组的列表,请致电 GetGroupsAsAdmin(您也可以过滤您想要获取的内容)。同样,调用GetDatasetsAsAdmin 获取数据集列表。查看他们的webUrl 属性以找到他们的组。

    https://api.powerbi.com/v1.0/myorg/datasets 不会返回所有数据集(或来自多个组的数据集),但会为您提供位于您自己的 My workspace 中的数据集。

    【讨论】:

    • 嗨,安德烈,我知道这一点。我的问题更像。我如何在单个 api 调用中传递多个 id.. 像`api.powerbi.com/v1.0/myorg/groups{group 1}/datasets api.powerbi.com/v1.0/myorg/groups{group 2}/datasets` 是否可以在单个 api 调用中同时发送 group1 和 group2。诸如批处理请求之类的东西。所以在一个响应中,我得到了多个组的结果。
    • 不,这是不可能的。如果您可以在管理员调用中提供有意义的过滤器,请使用它。否则需要多次调用API