# Power BI

The **Power BI Node** allows you to interact with your Power BI workspace directly from your workflow. You can retrieve information about datasets and reports, list all available datasets/reports, and get detailed metadata for each. This is useful for integrating business analytics, dashboards, and data insights into your automated processes.

***

### Available Actions

#### 1. List Datasets

* **Purpose:** Retrieve a list of all datasets in your Power BI workspace.
* **Inputs:** None required.
* **Outputs:**
  * `datasets`: Array of datasets, each with:
    * `id`: Dataset ID
    * `name`: Dataset name
    * `is_refreshable`: Whether the dataset can be refreshed
    * `configured_by`: Who configured it
    * `is_on_prem_gateway_required`: If an on-premises gateway is needed
    * `web_url`: Link to the dataset
  * `count`: Total number of datasets

***

#### 2. Get Dataset

* **Purpose:** Retrieve detailed information about a specific dataset.
* **Inputs:**
  * `dataset_id` (string, required): The ID of the dataset you want details for.
* **Outputs:**
  * `dataset`: Object with:
    * `id`, `name`, `web_url`, `datasource_type`, `configured_by`, `created_date`

***

#### 3. List Reports

* **Purpose:** Retrieve a list of all reports in your Power BI workspace.
* **Inputs:** None required.
* **Outputs:**
  * `reports`: Array of reports, each with:
    * `id`: Report ID
    * `name`: Report name
    * `web_url`: Link to view the report
    * `embed_url`: URL for embedding
    * `dataset_id`: Associated dataset
    * `report_type`: Type (PaginatedReport or PowerBIReport)
    * `is_owned_by_me`: If you can modify/copy it
  * `count`: Total number of reports

***

#### 4. Get Report

* **Purpose:** Retrieve detailed information about a specific report.
* **Inputs:**
  * `report_id` (string, required): The ID of the report you want details for.
* **Outputs:**
  * `report`: Object with:
    * `id`, `name`, `web_url`, `embed_url`, `dataset_id`, `report_type`, `description`

***

### How to Use the Power BI Node

1. **List Datasets/Reports:**
   * Add the Power BI node and select the "List Datasets" or "List Reports" action.
   * No input is needed; the node will output a list of all datasets or reports in your workspace.
2. **Get Dataset/Report Details:**
   * First, use "List Datasets" or "List Reports" to get the IDs.
   * Add another Power BI node and select "Get Dataset" or "Get Report".
   * Provide the `dataset_id` or `report_id` as input (can be referenced from the output of the previous node).
3. **Connect to Output or LLM:**
   * You can send the results to an Output node for display, or to an LLM node for further analysis or summarization.
4. **Use a Connection ID:**
   * If you have a Power BI connection, add the connection ID in the node’s configuration to access your specific workspace.

***

### Example Workflow

* **Step 1:** Use "List Reports" to get all reports.
* **Step 2:** Use "Get Report" with a selected report ID to get detailed info.
* **Step 3:** Send the report details to an Output node or summarize with an LLM.

***

### Summary Table

| Action        | Input(s)    | Output(s)       | Description                        |
| ------------- | ----------- | --------------- | ---------------------------------- |
| List Datasets | None        | datasets, count | List all datasets in workspace     |
| Get Dataset   | dataset\_id | dataset         | Get details for a specific dataset |
| List Reports  | None        | reports, count  | List all reports in workspace      |
| Get Report    | report\_id  | report          | Get details for a specific report  |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.stackai.com/workflow-builder/apps/power-bi.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
