Microsoft Power BI logo

Microsoft Power BI AI employee

Viktor is an AI employee that connects to Microsoft Power BI and helps you query data and build dashboards and reports, running 15 Microsoft Power BI actions for you like Get Reports, List Reports, and List Datasets. Ask in plain English from your workspace; Viktor does the work in Microsoft Power BI and reports back. Viktor connects in one click via OAuth.

Free to start
No credit card
SOC 2 Type 1
Works in Slack & Microsoft Teams

What is a Microsoft Power BI AI agent?

A Microsoft Power BI AI agent is an AI that connects to your Microsoft Power BI account and completes work in it - it doesn't just answer questions about Microsoft Power BI, it takes the actions. Viktor is an AI employee that works in Microsoft Power BI on your behalf and delivers the finished result to your workspace.

Unlike workflow builders such as Zapier or Make, there is nothing to configure - no triggers to map, no workflows to maintain. You describe the outcome in plain English, and Viktor picks the right Microsoft Power BI actions, chains them with the other 3,200+ tools it connects to, and asks for approval before anything sensitive runs.

About Microsoft Power BI

Visualize any data and integrate the visuals into the apps you use every day with Power BI, a unified platform for self-service and business intelligence.

  1. You ask in your workspace

    Describe what you need in plain English

  2. Viktor picks the actions

    Selects from 15 Microsoft Power BI actions, chains them together

  3. Runs in Microsoft Power BI

    Helps you query data and build dashboards and reports - your real data.

  4. Reports back

    Delivers the finished result to your workspace

Try asking Viktor

What can you ask Viktor to do in Microsoft Power BI?

Messages you'd actually send. Paste one into your workspace, swap in your specifics, and Viktor takes it from there.

  • Query Microsoft Power BI for last month's key metrics and build a quick dashboard.

    — you, to @Viktor

  • Pull this week's numbers from Microsoft Power BI and post a summary every Monday.

    — you, to @Viktor

  • Investigate why a metric moved in Microsoft Power BI last week and report what you find.

    — you, to @Viktor

  • Watch a key dashboard in Microsoft Power BI for anomalies and alert me with context.

    — you, to @Viktor

How it works

How does Viktor work with Microsoft Power BI?

Step 1: Connect your stack

27 native integrations. 3,200+ tools via managed connectors. Most are one-click OAuth, some use API keys - Viktor handles auth and starts working. No webhooks, no Zapier zaps.

Maya Patel11:32 AM
@Viktor check this week's Stripe revenue against HubSpot and flag anything off before the board call.
Viktor
ViktorApp11:33 AM
On it. Cross-checking Stripe against HubSpot and fixing anything that doesn't line up before your board call.

Step 2: Tell Viktor what you need

Message Viktor in Slack like you'd message a teammate. "Reconcile this month's invoices and flag anything weird." "Pause Meta campaigns above $40 CPA and move the budget to winners." Plain English, any tool.

Viktor
ViktorApp9:12 AM
📊 Revenue check:
$84,210 (+6.4% WoW).
3 deals didn't match HubSpot.
Fixed 2, one needs your call.

revenue_raport.pdf

4 pages·PDF

Step 3: Viktor operates, you review

Viktor opens the tools, runs the work, and posts back what changed. Sensitive actions wait for your approval. Everything is logged. You stop doing the work and start reviewing it.

Actions

What can Viktor do in Microsoft Power BI?

Ask in plain English from your workspace. Viktor picks the right Microsoft Power BI actions, runs the work, and reports back. No workflows to build.

  • Other

    Execute DAX Query

    Execute a DAX (Data Analysis Expressions) query against a Power BI dataset (semantic model). This is the primary analytics tool — use it to answer questions about values, aggregates, or filtered rows in a dataset. Use List Datasets first to resolve a dataset name → datasetId. The query must be a single valid DAX expression starting with EVALUATE. Table discovery (standard datasets): For datasets published from Power BI Desktop, the REST GET /datasets/{id}/tables endpoint is scoped to push datasets only and will not list tables. Use EVALUATE INFO.TABLES() instead — it returns every table name in the semantic model. Typical agent flow: List Workspaces → List Datasets → Execute DAX Query (EVALUATE INFO.TABLES()) → Execute DAX Query (EVALUATE 'TableName'). Common patterns: • Discover all tables — EVALUATE INFO.TABLES() (use this before querying an unknown dataset) • List all rows of a table — EVALUATE 'Species' • Filter — EVALUATE FILTER('Species', 'Species'[dietType] = "Carnivore") • Top N by column — EVALUATE TOPN(5, 'Species', 'Species'[weightKg], DESC) • Aggregate single value — EVALUATE ROW("Total", SUMX('Species', 'Species'[weightKg])) • Peek at a table's columns — EVALUATE TOPN(0, 'Species') (returns an empty rowset with column names in the response). Limits: max 100,000 rows or 1,000,000 values per query, and DEFINE/multiple-statement queries are not supported via REST. The tenant must have 'Dataset Execute Queries REST API' enabled (admin setting) or the call returns 401/403. Pass workspaceId (from List Workspaces) or workspaceName to target a specific workspace, or omit both for My workspace.

  • Other

    Refresh Dataset

    Trigger a refresh of a Power BI dataset. Returns 202 Accepted on success; the request ID is available in the Location response header (last path segment) and x-ms-request-id header — use Get Refresh History to check status. Use List Datasets first to resolve a dataset name → datasetId. Pass workspaceId (from List Workspaces) or workspaceName to target a specific workspace, or omit both for My workspace. notifyOption controls email notifications on refresh outcome: NoNotification (default), MailOnCompletion, or MailOnFailure. Power BI Pro licenses allow up to 8 scheduled refreshes per day; Premium allows 48. Note: Push datasets accept this endpoint but the refresh is metadata-only (tile refresh), not a data refresh — no cancellable history entry is produced.

  • Other

    List Workspaces

    List the Power BI workspaces (groups) the authenticated user can access. Use this tool first whenever the user refers to a workspace by name — it returns the id you need to pass as workspaceId to other tools. Power BI has no /me endpoint, so the set of accessible workspaces is the user's primary context (the 'who am I' signal for this app). Every item in the response includes id, name, isReadOnly, isOnDedicatedCapacity, and type. Note: when a user says 'my workspace' without a name, they may mean personal My workspace (implicit — pass no workspaceId to other tools) OR a specific named workspace — ask only if ambiguous.

  • Reports

    List Reports

    List Power BI reports in a workspace. Defaults to the authenticated user's personal My workspace when no workspace is specified. Pass workspaceId (preferred, from List Workspaces) OR workspaceName to scope to a specific workspace — the tool resolves the name to an ID server-side. Each report includes id, name, webUrl, embedUrl, datasetId, and reportType (PowerBIReport or PaginatedReport). Note: reports cannot be created via the REST API — they are published from Power BI Desktop.

  • Other

    List Datasets

    List Power BI datasets (semantic models) in a workspace. Defaults to the authenticated user's personal My workspace when no workspace is specified. Pass workspaceId (preferred, from List Workspaces) OR workspaceName to scope to a specific workspace. Each dataset includes id, name, webUrl, addRowsAPIEnabled (true for Push Datasets), isRefreshable, and defaultMode (Push, Streaming, PushStreaming, AsOnPrem, AsAzure). Use this tool to resolve a dataset name → ID before calling Refresh Dataset, Execute DAX Query, Get Refresh History, or Add Rows To Push Dataset. For push-dataset row inserts, call the dataset's GET tables endpoint (not exposed as a separate tool) by inspecting the dataset's name → tables are defined at dataset creation; the table name is the string configured at creation time (e.g., Species).

  • Other

    List Dashboards

    List Power BI dashboards in a workspace. Defaults to the authenticated user's personal My workspace when no workspace is specified. Pass workspaceId (preferred, from List Workspaces) OR workspaceName to scope to a specific workspace. Each dashboard includes id, displayName, isReadOnly, webUrl, and embedUrl. Note: dashboards cannot be created via the REST API — they are built interactively in the Power BI service.

  • Reports

    Get Reports

    Get reports from a Power BI workspace.

  • Other

    Get Report by id

    Retrieve metadata for a single Power BI report by ID. Uses My workspace by default; set Workspace (Group) ID for a specific workspace.

  • Other

    Get Refresh History

    Get the refresh history for a Power BI dataset. Use List Datasets first to resolve a dataset name → datasetId. Pass workspaceId (from List Workspaces) or workspaceName to scope to a specific workspace, or omit both for My workspace. Each entry includes requestId, refreshType (OnDemand, Scheduled, ViaApi, etc.), startTime, endTime, status (Completed, Failed, Disabled, Cancelled, Unknown — Unknown means still in progress), and serviceExceptionJson on failures.

Works with your stack

Viktor uses Microsoft Power BI together with your other tools

Ask for outcomes that span tools - Viktor pulls from Microsoft Power BI, cross-references the rest of your stack, and delivers one finished result.

Trusted by 63,000+ teams

The moment Viktor becomes part of the team.

Infrastructure for a $1M/yr agency built in 9 days
I discovered Viktor 9 days ago, and I have already built the infrastructure for a $1,000,000 a year content agency with zero staff.
Troy Dean

Troy Dean

Founder, Agency Mavericks

Saved:1 FTE/1 full time employee
Literally a game-changer for me, like adding another employee (or two).
Krysta Mueggenburg

Krysta Mueggenburg

Owner, Element Turf & Outdoor Solutions

Saved:10+ hrs/week
Claude Tag writes better specs. Viktor executes faster across tools. Viktor actually goes and creates the tickets.
Toni Lopez

Toni Lopez

Co-founder, Karumi (YC F25)

Microsoft Power BI integration FAQ

Yes. Microsoft Power BI is one of the 3,200+ tools Viktor connects to, via a managed connector. Once connected, anyone on your team can put Viktor to work in Microsoft Power BI from their workspace - no workflow builder, no code.

4.9 on G2G2 rating: 4.9 out of 5 stars

One hire. The output of a team.

Viktor works nights, remembers every decision, and connects to 3,200 tools. Start free with $100 in credits, then $50 a month.

Get Started for Free