Push Datasets - Datasets PostDataset

Creates a new dataset on My workspace.

Required scope

Dataset.ReadWrite.All

Limitations

This API only supports push datasets.

POST https://api.powerbi.com/v1.0/myorg/datasets
POST https://api.powerbi.com/v1.0/myorg/datasets?defaultRetentionPolicy={defaultRetentionPolicy}

URI Parameters

Name In Required Type Description
defaultRetentionPolicy
query

The default retention policy

Request Body

Name Required Type Description
name True
  • string

The dataset name

tables True

The dataset tables.

datasources

The datasources associated with this dataset.

defaultMode

The dataset mode or type.

relationships

The dataset relationships.

Responses

Name Type Description
201 Created

Created

202 Accepted

Accepted

Examples

Push example

Sample Request

POST https://api.powerbi.com/v1.0/myorg/datasets?defaultRetentionPolicy=basicFIFO
{
  "name": "SalesMarketing",
  "defaultMode": "Push",
  "tables": [
    {
      "name": "Product",
      "columns": [
        {
          "name": "ProductID",
          "dataType": "Int64"
        },
        {
          "name": "Name",
          "dataType": "string"
        },
        {
          "name": "Category",
          "dataType": "string"
        },
        {
          "name": "IsCompete",
          "dataType": "bool"
        },
        {
          "name": "ManufacturedOn",
          "dataType": "DateTime"
        },
        {
          "name": "Sales",
          "dataType": "Int64",
          "formatString": "Currency"
        }
      ]
    }
  ]
}

Sample Response

{
  "id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
  "name": "SalesMarketing",
  "defaultRetentionPolicy": "basicFIFO"
}

Definitions

ASMashupExpression

A dataset table source

Column

A dataset column

CreateDatasetRequest

A Power BI dataset

CrossFilteringBehavior

The filter direction of the relationship

Dataset

A Power BI dataset. Below is a list of properties that may be returned for a dataset. Only a subset of the properties will be returned depending on the API called, the caller permissions and the availability of the data in the Power BI database.

DatasetMode

The dataset mode or type.

DatasetUser

A Power BI user access right entry for dataset

DatasetUserAccessRight

Access rights user has for the dataset (Permission level)

Datasource

A Power BI datasource

DatasourceConnectionDetails

A Power BI datasource connection details

DatasourceUsage

Datasource usage

DefaultRetentionPolicy

The default retention policy

DependentDataflow

A Power BI Dependent dataflow

Encryption

Encryption information for a dataset

EncryptionStatus

Dataset encryption status

EndorsementDetails

Power BI endorsement details

Measure

A Power BI measure

PrincipalType

The principal type

Relationship

A relationship between tables in a dataset

Row

A data row in a dataset

SensitivityLabel

Artifact sensitivity label info

Table

A dataset table

ASMashupExpression

A dataset table source

Name Type Description
expression
  • string

The source expression

Column

A dataset column

Name Type Description
dataCategory
  • string

(Optional) String value to be used for the data category which describes the data within this column

dataType
  • string

The column data type

formatString
  • string

(Optional) The format of the column as specified in FORMAT_STRING

isHidden
  • boolean

(Optional) Property indicating if the column is hidden from view. Default is false.

name
  • string

The column name

sortByColumn
  • string

(Optional) String name of a column in the same table to be used to order the current column

summarizeBy
  • string

(Optional) Aggregate Function to use for summarizing this column

CreateDatasetRequest

A Power BI dataset

Name Type Description
datasources

The datasources associated with this dataset.

defaultMode

The dataset mode or type.

name
  • string

The dataset name

relationships

The dataset relationships.

tables

The dataset tables.

CrossFilteringBehavior

The filter direction of the relationship

Name Type Description
Automatic
  • string

Cross filtering behavior defined automatically

BothDirections
  • string

For filtering purposes, both tables are treated as if they're a single table

OneDirection
  • string

For filtering purposes, filter will be applied on the table where values are being aggregated

Dataset

A Power BI dataset. Below is a list of properties that may be returned for a dataset. Only a subset of the properties will be returned depending on the API called, the caller permissions and the availability of the data in the Power BI database.

Name Type Description
ContentProviderType
  • string

The content provider type for the dataset

CreateReportEmbedURL
  • string

The dataset create report embed url

CreatedDate
  • string

DateTime of creation of this dataset

Encryption

The dataset encryption information (Only applicable when $expand is specified)

IsEffectiveIdentityRequired
  • boolean

Whether the dataset requires an effective identity. This indicates that you must send an effective identity using the GenerateToken API.

IsEffectiveIdentityRolesRequired
  • boolean

Whether RLS is defined inside the PBIX file. This indicates that you must specify a role.

IsOnPremGatewayRequired
  • boolean

Dataset requires an On-premises Data Gateway

IsRefreshable
  • boolean

Can this dataset be refreshed

QnaEmbedURL
  • string

The dataset qna embed url

addRowsAPIEnabled
  • boolean

Whether the dataset allows adding new rows

configuredBy
  • string

The dataset owner

datasourceUsages

Datasource usages

description
  • string

The dataset description

endorsementDetails

The dataset endorsement details

id
  • string

The dataset ID

name
  • string

The dataset name

schemaMayNotBeUpToDate
  • boolean

Whether dataset schema may not be up to date

schemaRetrievalError
  • string

The dataset schema retrieval error

sensitivityLabel

The dataset sensitivity label. Only available for admin APIs.

tables

The dataset tables

upstreamDataflows

Upstream Dataflows

users

The Dataset User Access Details. This value will be empty. It will be removed from the payload response in an upcoming release. To retrieve user information on an artifact, please consider using the Get Dataset User as Admin APIs, or the PostWorkspaceInfo API with the getArtifactUser parameter.

webUrl
  • string

The dataset web url

DatasetMode

The dataset mode or type.

Name Type Description
AsAzure
  • string

A dataset with a live connection to Azure Analysis Service

AsOnPrem
  • string

A dataset with a live connection to On-premise Analysis Service

Push
  • string

A dataset which allows programmatic access for pushing data into PowerBI, learn more

PushStreaming
  • string

A dataset which supports data streaming and allows programmatic access for pushing data into Power BI

Streaming
  • string

A dataset which supports data streaming, learn more

DatasetUser

A Power BI user access right entry for dataset

Name Type Description
datasetUserAccessRight

Access rights user has for the dataset (Permission level)

displayName
  • string

Display name of the principal

emailAddress
  • string

Email address of the user

graphId
  • string

Identifier of the principal in Microsoft Graph. Only available for admin APIs.

identifier
  • string

Identifier of the principal

principalType

The principal type

DatasetUserAccessRight

Access rights user has for the dataset (Permission level)

Name Type Description
None
  • string

Removes permission to content in dataset

Read
  • string

Grants Read access to content in dataset

ReadExplore
  • string

Grants Read and Explore access to content in dataset

ReadReshare
  • string

Grants Read and Reshare access to content in dataset

ReadReshareExplore
  • string

Grants Read, Reshare and Explore access to content in dataset

ReadWrite
  • string

Grants Read and Write access to content in dataset

ReadWriteExplore
  • string

Grants Read, Write and Explore access to content in dataset

ReadWriteReshare
  • string

Grants Read, Write and Reshare access to content in dataset

ReadWriteReshareExplore
  • string

Grants Read, Write, Reshare and Explore access to content in dataset

Datasource

A Power BI datasource

Name Type Description
connectionDetails

The datasource connection details

connectionString
  • string

(Deprecated) The datasource connection string. Available only for DirectQuery.

datasourceId
  • string

The bound datasource ID, which is empty when not bound to a gateway

datasourceType
  • string

The datasource type

gatewayId
  • string

The bound gateway ID. Empty when not bound to a gateway. When using a gateway cluster, the gateway ID refers to the primary (first) gateway in the cluster. In such cases, gateway ID is similar to gateway cluster ID.

name
  • string

(Deprecated) The datasource name. Available only for DirectQuery.

DatasourceConnectionDetails

A Power BI datasource connection details

Name Type Description
database
  • string

The connection database.

server
  • string

The connection server.

url
  • string

The connection url

DatasourceUsage

Datasource usage

Name Type Description
datasourceInstanceId
  • string

The datasource instance ID

DefaultRetentionPolicy

The default retention policy

Name Type Description
None
  • string

None

basicFIFO
  • string

basicFIFO

DependentDataflow

A Power BI Dependent dataflow

Name Type Description
groupId
  • string

The target group ID

targetDataflowId
  • string

The target dataflow ID

Encryption

Encryption information for a dataset

Name Type Description
EncryptionStatus

Dataset encryption status

EncryptionStatus

Dataset encryption status

Name Type Description
InSyncWithWorkspace
  • string

Encryption is supported and is in sync with the encryption settings

NotInSyncWithWorkspace
  • string

Encryption is supported and not in sync with the encryption settings

NotSupported
  • string

Encryption is not supported for this dataset

Unknown
  • string

Unable to determine state due to dataset corruption

EndorsementDetails

Power BI endorsement details

Name Type Description
certifiedBy
  • string

The user that certified the artifact

endorsement
  • string

The endorsement status

Measure

A Power BI measure

Name Type Description
description
  • string

(Optional) Measure description

expression
  • string

A valid DAX expression

formatString
  • string

(Optional) A string describing how the value should be formatted when it is displayed as specified in FORMAT_STRING

isHidden
  • boolean

(Optional) Is measure hidden

name
  • string

The measure name

PrincipalType

The principal type

Name Type Description
App
  • string

Service principal type

Group
  • string

Group principal type

None
  • string

None principal type, used for whole organization level access.

User
  • string

User principal type

Relationship

A relationship between tables in a dataset

Name Type Description
crossFilteringBehavior

The filter direction of the relationship

fromColumn
  • string

The name of the foreign key column

fromTable
  • string

The name of the foreign key table

name
  • string

The relationship name and identifier

toColumn
  • string

The name of the primary key column

toTable
  • string

The name of the primary key table

Row

A data row in a dataset

Name Type Description
id
  • string

The unique row ID

SensitivityLabel

Artifact sensitivity label info

Name Type Description
labelId
  • string

The sensitivity label ID

Table

A dataset table

Name Type Description
columns

The column schema for this table

description
  • string

The table description

isHidden
  • boolean

(Optional) Whether dataset table is hidden

measures

The measures within this table

name
  • string

The table name

rows

The data rows within this table

source

The table source