Skip to main content
Technical Preview

Overview

A client-mode connector for a curated slice of the Power BI REST API focused on IIoT / edge telemetry into dashboards: Default BASE_ADDRESS is https://api.powerbi.com (no trailing slash). Topics use analytics/powerbi/<object>/<verb>. See the base guide: REST API Connectors.
Auth (v1.0): Authorization: Bearer &lt;Entra access token&gt;. Prefer Hub secrets (GET SECRET "POWER_BI_ACCESS_TOKEN" / "AZURE_AD_ACCESS_TOKEN"). Service principals need workspace access and Power BI API permissions (e.g. Dataset.ReadWrite.All / .default).
Streaming push URL: the Power BI service issues a full URL with an embedded key query param. Keep BASE_ADDRESS as https://api.powerbi.com and use PostStreamingPush (dataset_id + push_key) or PostStreamingPushPath (push_path = path+query). Do not send a Bearer header on those events.
Factory live smoke is blocked until an Entra token (and preferably a push dataset or streaming push key) is supplied. Point secrets / MQTT JSON at your workspace before production use.

Basic Syntax

Full deployable file: MicrosoftPowerBiRestApi.lot in the factory package (no ADD METADATA).

Topics

Configuration

  1. Set BASE_ADDRESS to https://api.powerbi.com.
  2. Store an Entra access token in Hub secrets; map into MQTT api_token for v1.0 events.
  3. For push datasets: create the dataset/table schema via the Power BI API, then PostRows / DeleteRows.
  4. For real-time streaming: create a streaming dataset in the Power BI service, copy the push URL, and use dataset_id + push_key (or push_path).
  5. For import datasets: use RefreshDataset (push PostRows does not apply).

References

Last modified on October 21, 2026