Power BI · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Power BI REST Datasets API
11 actions
11 updates
phrasing
extends
openapi/power-bi-datasets-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Power BI's API. It is a proposal applied on top of the contract, not a document Power BI publishes.
What the actions change
x-apievangelist-phrasing
Targets 11
$.info
$.paths['/datasets'].get
$.paths['/datasets'].post
$.paths['/datasets/{datasetId}'].get
$.paths['/datasets/{datasetId}'].delete
$.paths['/datasets/{datasetId}/refreshes'].get
$.paths['/datasets/{datasetId}/refreshes'].post
$.paths['/datasets/{datasetId}/datasources'].get
$.paths['/datasets/{datasetId}/parameters'].get
$.paths['/datasets/{datasetId}/parameters'].post
$.paths['/groups/{groupId}/datasets'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Power BI REST Datasets API
version: 1.0.0
extends: openapi/power-bi-datasets-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 10
- target: $.paths['/datasets'].get
update:
x-apievangelist-phrasing:
intent: List datasets in My Workspace
effect: read
questions:
- What datasets are in my personal My Workspace?
- Which of my datasets are push datasets and which are refreshable?
instructions:
- text: List the datasets in My Workspace.
- text: Show me which of my My Workspace datasets can be refreshed.
method: generated
generated: '2026-10-01'
- target: $.paths['/datasets'].post
update:
x-apievangelist-phrasing:
intent: Create a push dataset
effect: write
questions:
- How do I create a push dataset so my app can stream rows into Power BI?
- Can I define tables and relationships when creating a real-time dataset?
- Is there a way to set a retention policy on a new push dataset?
instructions:
- text: Create a push dataset named {name} with tables {tables}.
slots:
name: requestBody.name
tables: requestBody.tables
- text: Create push dataset {name} with tables {tables} and retention policy {defaultRetentionPolicy}.
slots:
name: requestBody.name
tables: requestBody.tables
defaultRetentionPolicy: query.defaultRetentionPolicy
method: generated
generated: '2026-10-01'
- target: $.paths['/datasets/{datasetId}'].get
update:
x-apievangelist-phrasing:
intent: Get a dataset's details
effect: read
questions:
- How can I see the tables and configuration of one dataset?
- What data source details does a specific dataset have?
instructions:
- text: Get dataset {datasetId}.
slots:
datasetId: path.datasetId
- text: Show me the configuration and tables of dataset {datasetId}.
slots:
datasetId: path.datasetId
method: generated
generated: '2026-10-01'
- target: $.paths['/datasets/{datasetId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a dataset
effect: destructive
questions:
- How do I delete a dataset from My Workspace?
- Does removing a dataset also delete the reports and tiles built on it?
instructions:
- text: Delete dataset {datasetId}.
slots:
datasetId: path.datasetId
- text: Remove dataset {datasetId} along with its dependent reports and tiles.
slots:
datasetId: path.datasetId
method: generated
generated: '2026-10-01'
- target: $.paths['/datasets/{datasetId}/refreshes'].get
update:
x-apievangelist-phrasing:
intent: Check a dataset's refresh history
effect: read
questions:
- Did my dataset's last refresh succeed or fail?
- When did a dataset's recent refreshes start and finish?
- Can I limit refresh history to just the most recent few runs?
instructions:
- text: Show the refresh history of dataset {datasetId}.
slots:
datasetId: path.datasetId
- text: Get the last {top} refreshes for dataset {datasetId}.
slots:
top: query.$top
datasetId: path.datasetId
method: generated
generated: '2026-10-01'
- target: $.paths['/datasets/{datasetId}/refreshes'].post
update:
x-apievangelist-phrasing:
intent: Trigger a dataset refresh
effect: write
questions:
- How do I kick off a refresh of a dataset on demand?
- Can I refresh only specific tables or partitions instead of the whole dataset?
- Is it possible to set a retry count when starting a refresh?
instructions:
- text: Refresh dataset {datasetId} now.
slots:
datasetId: path.datasetId
- text: Refresh only {objects} in dataset {datasetId}.
slots:
objects: requestBody.objects
datasetId: path.datasetId
- text: Start a {type} refresh of dataset {datasetId} with {retryCount} retries.
slots:
type: requestBody.type
datasetId: path.datasetId
retryCount: requestBody.retryCount
method: generated
generated: '2026-10-01'
- target: $.paths['/datasets/{datasetId}/datasources'].get
update:
x-apievangelist-phrasing:
intent: List a dataset's data sources
effect: read
questions:
- Which server and database does a dataset pull its data from?
- What kinds of data sources is a given dataset connected to?
instructions:
- text: List the data sources of dataset {datasetId}.
slots:
datasetId: path.datasetId
- text: Show the connection details behind dataset {datasetId}.
slots:
datasetId: path.datasetId
method: generated
generated: '2026-10-01'
- target: $.paths['/datasets/{datasetId}/parameters'].get
update:
x-apievangelist-phrasing:
intent: List a dataset's parameters
effect: read
questions:
- What parameters does a dataset expose for its connections and queries?
- Can I view the current parameter values on one dataset?
instructions:
- text: List the parameters of dataset {datasetId}.
slots:
datasetId: path.datasetId
- text: Show current parameter values for dataset {datasetId}.
slots:
datasetId: path.datasetId
method: generated
generated: '2026-10-01'
- target: $.paths['/datasets/{datasetId}/parameters'].post
update:
x-apievangelist-phrasing:
intent: Update a dataset's parameter values
effect: write
questions:
- How do I change a dataset's parameter values, like pointing it at another server?
- Do new parameter values take effect immediately or after a refresh?
instructions:
- text: Update the parameters of dataset {datasetId} with {updateDetails}.
slots:
datasetId: path.datasetId
updateDetails: requestBody.updateDetails
- text: Set new parameter values {updateDetails} on dataset {datasetId}.
slots:
updateDetails: requestBody.updateDetails
datasetId: path.datasetId
method: generated
generated: '2026-10-01'
- target: $.paths['/groups/{groupId}/datasets'].get
update:
x-apievangelist-phrasing:
intent: List datasets in a workspace
effect: read
questions:
- Which datasets are in a shared team workspace?
- Can I list datasets for a workspace other than My Workspace?
instructions:
- text: List the datasets in workspace {groupId}.
slots:
groupId: path.groupId
- text: Show all datasets inside the {groupId} workspace.
slots:
groupId: path.groupId
method: generated
generated: '2026-10-01'