A question was asked about displaying a single dashboard view and linking to PowerBI for a specific dashboard. The ControlUp team confirmed that displaying a single dashboard view is currently not possible, but the RBAC team plans to implement this feature. It is possible to replicate the widgets in PowerBI with some work, and a template PowerBI query was provided. Additionally, it is possible to link to a single dashboard with filled in variables and a date range in the URL. The ControlUp team also mentioned the possibility of limiting access to specific devices groups in the dashboard and creating a viewer RBAC role for dashboards.
Read the entire ‘ControlUp Dashboard Views and PowerBI Integration’ thread below:
Is there a way to show one dashboard view ? If not is there a way of linking to powerbi so I can just provide the c suite with a single view. They just want AI usage dashboard. When I try a test they can see every dashboard.
There is not. Although I think RBAC on individual dashboards is something the dashboard team wants to do. See the previous conversation in this channel.
Having said that. You can definitely replicate the widgets in PowerBI. It’ll take some work though.
For example. You can use this as a baseline PowerBI query and modify it where you need it.
“`let
// 1. Define the dynamic date range for the last calendar month
Now = DateTime.LocalNow(),
StartOfCurrentMonth = Date.StartOfMonth(Now),
StartOfLastMonth = Date.AddMonths(StartOfCurrentMonth, -1),
// 2. Format dates into ISO 8601 text for the JSON payload
StartOfLastMonthText = DateTime.ToText(StartOfLastMonth, "yyyy-MM-ddTHH:mm:ssZ"),
StartOfCurrentMonthText = DateTime.ToText(StartOfCurrentMonth, "yyyy-MM-ddTHH:mm:ssZ"),
ApiUrl = "",
JsonBody = Json.FromValue(
[
export = false,
device_query = [],
data_query = [
query = [
bool = [
must =
{
[
range = [
_created_local = [
gte = StartOfLastMonthText,
lt = StartOfCurrentMonthText
]
]
]
}
]
],
aggs = [
// New top-level aggregation to group by the ‘platform’ field
by_platform = [
terms = [
field = "platform"
],
// The unique count is now nested to run for each platform
aggs = [
unique_devices = [
cardinality = [
field = "_device_id.keyword"
]
]
]
]
],
size = 0 // We only want the aggregation result, not the actual documents
]
]
),
Source = Web.Contents(
ApiUrl,
[
Headers = [
#"Content-Type" = "application/json",
#"Accept" = "application/json",
#"Authorization" = "Bearer YOUR_API_KEY_HERE"
],
Content = JsonBody
]
),
ParsedJson = Json.Document(Source),
aggregations = ParsedJson[aggregations],
by_platform = aggregations[by_platform],
buckets = by_platform[buckets],
#"Converted to Table" = Table.FromList(buckets, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table", "Column1", {"key", "doc_count", "unique_devices"}, {"Column1.key", "Column1.doc_count", "Column1.unique_devices"}),
#"Expanded Column1.unique_devices" = Table.ExpandRecordColumn(#"Expanded Column1", "Column1.unique_devices", {"value"}, {"Column1.unique_devices.value"})
in
#"Expanded Column1.unique_devices"“`
Each dashboard widget has a JSON button that can show you the query it is actually running.

Thank you
Hi @member you can also directly hyperlink to just one dashboard even with filled in variables and date range in the URL. To view dashboards we have created the viewer RBAC role so they wont be able to edit or make dashboards. Also within the dashboard it self we adhere to RBAC rules on devices group someone might see so you can limit the dashboard to only show data of the group there assigned too. Hope this helps for now!
When converting to PowerBI you only will need the data query { part the index needs to be in the URL 🙂
Continue reading and comment on the thread ‘ControlUp Dashboard Views and PowerBI Integration’. Not a member? Join Here!
Categories: All Archives, ControlUp Dashboards
