Capacities - Get Refreshables

Returns a list of refreshables for all capacities that the user has access to.

Power BI retains a seven-day refresh history for each dataset, up to a maximum of sixty refreshes.

Required Scope

Capacity.Read.All or Capacity.ReadWrite.All

GET https://api.powerbi.com/v1.0/myorg/capacities/refreshables?$top={$top}
GET https://api.powerbi.com/v1.0/myorg/capacities/refreshables?$expand={$expand}&$filter={$filter}&$top={$top}&$skip={$skip}

URI Parameters

Name In Required Type Description
$top
query True
  • integer
int32

Returns only the first n results.

$expand
query
  • string

Accepts a comma-separated list of data types, which will be expanded inline in the response. Supports capacities and groups.

$filter
query
  • string

Filters the results based on a boolean condition

$skip
query
  • integer
int32

Skips the first n results. Use with top to fetch results beyond the first 1000.

Responses

Name Type Description
200 OK

OK

Examples

Example
Get refreshables, filtering for an average refresh duration of greater than 30 minutes example.
Get refreshables with their 'capacity' and 'group' expanded example

Example

Sample Request

GET https://api.powerbi.com/v1.0/myorg/capacities/refreshables

Sample Response

{
  "value": [
    {
      "id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
      "name": "SalesMarketing",
      "kind": "Dataset",
      "startTime": "2017-06-13T09:25:43.153Z",
      "endTime": "2017-06-19T11:22:32.445Z",
      "refreshCount": 22,
      "refreshFailures": 0,
      "averageDuration": 289.3814,
      "medianDuration": 268.6245,
      "refreshesPerDay": 11,
      "lastRefresh": {
        "refreshType": "ViaApi",
        "startTime": "2017-06-13T09:25:43.153Z",
        "endTime": "2017-06-13T09:31:43.153Z",
        "status": "Completed",
        "requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
      },
      "refreshSchedule": {
        "days": [
          "Sunday",
          "Friday",
          "Saturday"
        ],
        "times": [
          "05:00",
          "11:30",
          "17:30",
          "23:00"
        ],
        "enabled": true,
        "localTimeZoneId": "UTC",
        "notifyOption": "MailOnFailure"
      },
      "configuredBy": [
        "john@contoso.com"
      ]
    }
  ]
}

Get refreshables, filtering for an average refresh duration of greater than 30 minutes example.

Sample Request

GET https://api.powerbi.com/v1.0/myorg/capacities/refreshables?$filter=averageDuration gt 1800

Sample Response

{
  "value": [
    {
      "id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
      "name": "SalesMarketing",
      "kind": "Dataset",
      "startTime": "2017-06-13T09:25:43.153Z",
      "endTime": "2017-06-19T11:22:32.445Z",
      "refreshCount": 22,
      "refreshFailures": 0,
      "averageDuration": 3289.3814,
      "medianDuration": 2268.6245,
      "refreshesPerDay": 11,
      "lastRefresh": {
        "refreshType": "ViaApi",
        "startTime": "2017-06-13T09:25:43.153Z",
        "endTime": "2017-06-13T09:58:05.221Z",
        "status": "Completed",
        "requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
      },
      "refreshSchedule": {
        "days": [
          "Sunday",
          "Friday",
          "Saturday"
        ],
        "times": [
          "05:00",
          "11:30",
          "17:30",
          "23:00"
        ],
        "enabled": true,
        "localTimeZoneId": "UTC",
        "notifyOption": "MailOnFailure"
      },
      "configuredBy": [
        "john@contoso.com"
      ]
    }
  ]
}

Get refreshables with their 'capacity' and 'group' expanded example

Sample Request

GET https://api.powerbi.com/v1.0/myorg/capacities/refreshables?$expand=capacity,group

Sample Response

{
  "value": [
    {
      "id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
      "name": "SalesMarketing",
      "kind": "Dataset",
      "startTime": "2017-06-13T09:25:43.153Z",
      "endTime": "2017-06-19T11:22:32.445Z",
      "refreshCount": 22,
      "refreshFailures": 0,
      "averageDuration": 289.3814,
      "medianDuration": 268.6245,
      "refreshesPerDay": 11,
      "lastRefresh": {
        "refreshType": "ViaApi",
        "startTime": "2017-06-13T09:25:43.153Z",
        "endTime": "2017-06-13T09:31:43.153Z",
        "status": "Completed",
        "requestId": "9399bb89-25d1-44f8-8576-136d7e9014b1"
      },
      "refreshSchedule": {
        "days": [
          "Sunday",
          "Friday",
          "Saturday"
        ],
        "times": [
          "05:00",
          "11:30",
          "17:30",
          "23:00"
        ],
        "enabled": true,
        "localTimeZoneId": "UTC",
        "notifyOption": "MailOnFailure"
      },
      "configuredBy": [
        "john@contoso.com"
      ],
      "capacity": {
        "id": "0f084df7-c13d-451b-af5f-ed0c466403b2",
        "displayName": "MyCapacity",
        "sku": "A1"
      },
      "group": {
        "id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
        "name": "SalesMarketing"
      }
    }
  ]
}

Definitions

Capacity

A Power BI capacity

CapacityState

The capacity state

capacityUserAccessRight

The access right that the user has on the capacity

Refresh

A Power BI refresh history entry

Refreshable

A Power BI refreshable is a dataset that's been refreshed at least once, or for which a valid refresh schedule exists. If a dataset doesn't meet either of these conditions, then it won't show up in the API response. Power BI retains a seven-day refresh history for each dataset, up to a maximum of sixty refreshes.

RefreshableGroup

A Power BI group associated to a Refreshable item

RefreshableKind

The refreshable kind

Refreshables

A Power BI refreshables list

RefreshSchedule

A Power BI refresh schedule for imported model

RefreshType

The type of refresh request

ScheduleNotifyOption

The notification option on termination of a scheduled refresh. Service principals only support the NoNotification value.

TenantKey

Encryption key information

Capacity

A Power BI capacity

Name Type Description
admins
  • string[]

An array of capacity admins

capacityUserAccessRight

The access right a user has on the capacity

displayName
  • string

The display name of the capacity

id
  • string

The capacity ID

region
  • string

The Azure region where the capacity was provisioned

sku
  • string

The capacity SKU

state

The capacity state

tenantKey

Encryption key information (only applies to admin routes)

tenantKeyId
  • string

The ID of an encryption key (only applicable to the admin route)

CapacityState

The capacity state

Name Type Description
Active
  • string

The capacity is ready to use

Deleted
  • string

The capacity was deleted and is unavailable

Deleting
  • string

Deletion of the capacity is in progress

Invalid
  • string

The capacity can't be used

NotActivated
  • string

Unsupported

PreSuspended
  • string

Unsupported

ProvisionFailed
  • string

Provisioning of the capacity failed

Provisioning
  • string

Activation of the capacity is in progress

Suspended
  • string

Use of the capacity is suspended

UpdatingSku
  • string

A capacity SKU change is in progress

capacityUserAccessRight

The access right that the user has on the capacity

Name Type Description
Admin
  • string

User has administrator rights on the capacity

Assign
  • string

User has contributor rights and can assign workspaces to the capacity

None
  • string

User doesn't have access to the capacity

Refresh

A Power BI refresh history entry

Name Type Description
endTime
  • string

The end date and time of the refresh (may be empty if a refresh is in progress)

refreshType

The type of refresh request

requestId
  • string

The identifier of the refresh request. Provide this identifier in all service requests.

serviceExceptionJson
  • string

Failure error code in JSON format (empty if no error)

startTime
  • string

The start date and time of the refresh

status
  • string
  • Unknown if the completion state is unknown or a refresh is in progress.
  • Completed for a successfully completed refresh.
  • Failed for an unsuccessful refresh (serviceExceptionJson will contain the error code).
  • Disabled if the refresh is disabled by a selective refresh.

Refreshable

A Power BI refreshable is a dataset that's been refreshed at least once, or for which a valid refresh schedule exists. If a dataset doesn't meet either of these conditions, then it won't show up in the API response. Power BI retains a seven-day refresh history for each dataset, up to a maximum of sixty refreshes.

Name Type Description
averageDuration
  • number

The average duration in seconds of a refresh during the time window for which refresh data exists

capacity

The capacity for the refreshable item

configuredBy
  • string[]

The refreshable owners

endTime
  • string

The end time of the window for which refresh data exists

group

The associated group for the refreshable item

id
  • string

The object ID of the refreshable

kind

The refreshable kind

lastRefresh

The last Power BI refresh history entry for the refreshable item

medianDuration
  • number

The median duration in seconds of a refresh within the time window for which refresh data exists

name
  • string

The display name of the refreshable

refreshCount
  • integer

The number of refreshes within the time window for which refresh data exists

refreshFailures
  • integer

The number of refresh failures within the time window for which refresh data exists

refreshSchedule

The refresh schedule for the refreshable item

refreshesPerDay
  • integer

The number of refreshes per day (scheduled and on-demand) within the time window for which refresh data exists

startTime
  • string

The start time of the window for which refresh data exists

RefreshableGroup

A Power BI group associated to a Refreshable item

Name Type Description
id
  • string

The workspace ID

name
  • string

The group name

RefreshableKind

The refreshable kind

Name Type Description
Dataset
  • string

Dataset

Refreshables

A Power BI refreshables list

Name Type Description
odata.context
  • string

OData context

value

The refreshables

RefreshSchedule

A Power BI refresh schedule for imported model

Name Type Description
NotifyOption

The notification option on termination of a scheduled refresh. Service principals only support the NoNotification value.

days
  • string[]

The days on which to execute the refresh

enabled
  • boolean

Whether the refresh is enabled

localTimeZoneId
  • string

The ID of the time zone to use. For more information, see Time zone info.

times
  • string[]

The times of day to execute the refresh

RefreshType

The type of refresh request

Name Type Description
OnDemand
  • string

The refresh was triggered interactively through the Power BI portal

OnDemandTraining
  • string

The refresh was triggered interactively through the Power BI portal with automatic aggregations training

Scheduled
  • string

The refresh was triggered by a dataset refresh schedule setting

ViaApi
  • string

The refresh was triggered by an API call

ViaEnhancedApi
  • string

The refresh was triggered by an enhanced refresh REST API call

ViaXmlaEndpoint
  • string

The refresh was triggered through Power BI public XMLA endpoint

ScheduleNotifyOption

The notification option on termination of a scheduled refresh. Service principals only support the NoNotification value.

Name Type Description
MailOnFailure
  • string

A mail notification will be sent on refresh failure

NoNotification
  • string

No notification will be sent

TenantKey

Encryption key information

Name Type Description
createdAt
  • string

The creation date and time of the encryption key

id
  • string

The ID of the encryption key

isDefault
  • boolean

Whether the encryption key is the default key for the entire tenant. Any newly created capacity inherits the default key.

keyVaultKeyIdentifier
  • string

The URI that uniquely specifies the encryption key in Azure Key Vault

name
  • string

The name of the encryption key

updatedAt
  • string

The last update date and time of the encryption key