{ "swagger": "2.0", "info": { "version": "2017-10-01", "title": "PowerBIDedicated", "description": "PowerBI Dedicated Web API provides a RESTful set of web services that enables users to create, retrieve, update, and delete Power BI dedicated capacities", "x-ms-code-generation-settings": { "name": "PowerBIDedicatedManagementClient" } }, "host": "management.azure.com", "schemes": [ "https" ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "security": [ { "azure_auth": [ "user_impersonation" ] } ], "securityDefinitions": { "azure_auth": { "type": "oauth2", "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", "flow": "implicit", "description": "Azure Active Directory OAuth2 Flow", "scopes": { "user_impersonation": "impersonate your user account" } } }, "paths": { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PowerBIDedicated/capacities/{dedicatedCapacityName}": { "get": { "description": "Gets details about the specified dedicated capacity.", "x-ms-examples": { "Get details of a capacity": { "$ref": "./examples/getCapacity.json" } }, "tags": [ "Capacities" ], "operationId": "Capacities_GetDetails", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" }, { "name": "dedicatedCapacityName", "in": "path", "required": true, "type": "string", "pattern": "^[a-z][a-z0-9]*$", "minLength": 3, "maxLength": 63, "description": "The name of the dedicated capacity. It must be a minimum of 3 characters, and a maximum of 63." }, { "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK. The operation was successful.", "schema": { "$ref": "#/definitions/DedicatedCapacity" } }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } }, "put": { "description": "Provisions the specified dedicated capacity based on the configuration specified in the request. You can’t create a capacity with a name that’s used by another capacity in another tenant in the target location.", "x-ms-examples": { "Create capacity": { "$ref": "./examples/createCapacity.json" } }, "tags": [ "Capacities" ], "operationId": "Capacities_Create", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" }, { "name": "dedicatedCapacityName", "in": "path", "required": true, "type": "string", "pattern": "^[a-z][a-z0-9]*$", "minLength": 3, "maxLength": 63, "description": "The name of the Dedicated capacity. It must be a minimum of 3 characters, and a maximum of 63." }, { "name": "capacityParameters", "in": "body", "required": true, "schema": { "$ref": "#/definitions/DedicatedCapacity" }, "description": "Contains the information used to provision the Dedicated capacity." }, { "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK. The operation completed successfully.", "schema": { "$ref": "#/definitions/DedicatedCapacity" } }, "201": { "description": "InProgress. The operation is still in progress.", "schema": { "$ref": "#/definitions/DedicatedCapacity" } }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/ErrorResponse" } } }, "x-ms-long-running-operation": true }, "delete": { "description": "Deletes the specified Dedicated capacity.", "x-ms-examples": { "Get details of a capacity": { "$ref": "./examples/deleteCapacity.json" } }, "tags": [ "Capacities" ], "operationId": "Capacities_Delete", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" }, { "name": "dedicatedCapacityName", "in": "path", "required": true, "type": "string", "pattern": "^[a-z][a-z0-9]*$", "minLength": 3, "maxLength": 63, "description": "The name of the Dedicated capacity. It must be at least 3 characters in length, and no more than 63." }, { "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK." }, "204": { "description": "No Content." }, "202": { "description": "Accepted." }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/ErrorResponse" } } }, "x-ms-long-running-operation": true }, "patch": { "description": "Updates the current state of the specified Dedicated capacity.", "x-ms-examples": { "Update capacity parameters": { "$ref": "./examples/updateCapacity.json" } }, "tags": [ "Capacities" ], "operationId": "Capacities_Update", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" }, { "name": "dedicatedCapacityName", "in": "path", "required": true, "type": "string", "pattern": "^[a-z][a-z0-9]*$", "minLength": 3, "maxLength": 63, "description": "The name of the Dedicated capacity. It must be at least 3 characters in length, and no more than 63." }, { "name": "capacityUpdateParameters", "in": "body", "required": true, "schema": { "$ref": "#/definitions/DedicatedCapacityUpdateParameters" }, "description": "Request object that contains the updated information for the capacity." }, { "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/DedicatedCapacity" } }, "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/DedicatedCapacity" } }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/ErrorResponse" } } }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PowerBIDedicated/capacities/{dedicatedCapacityName}/suspend": { "post": { "description": "Suspends operation of the specified dedicated capacity instance.", "x-ms-examples": { "Suspend capacity": { "$ref": "./examples/suspendCapacity.json" } }, "tags": [ "Capacities" ], "operationId": "Capacities_Suspend", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" }, { "name": "dedicatedCapacityName", "in": "path", "required": true, "type": "string", "pattern": "^[a-z][a-z0-9]*$", "minLength": 3, "maxLength": 63, "description": "The name of the Dedicated capacity. It must be at least 3 characters in length, and no more than 63." }, { "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK." }, "202": { "description": "Accepted." }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/ErrorResponse" } } }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PowerBIDedicated/capacities/{dedicatedCapacityName}/resume": { "post": { "description": "Resumes operation of the specified Dedicated capacity instance.", "x-ms-examples": { "Get details of a capacity": { "$ref": "./examples/resumeCapacity.json" } }, "tags": [ "Capacities" ], "operationId": "Capacities_Resume", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" }, { "name": "dedicatedCapacityName", "in": "path", "required": true, "type": "string", "pattern": "^[a-z][a-z0-9]*$", "minLength": 3, "maxLength": 63, "description": "The name of the Dedicated capacity. It must be at least 3 characters in length, and no more than 63." }, { "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK" }, "202": { "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/ErrorResponse" } } }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PowerBIDedicated/capacities": { "get": { "description": "Gets all the Dedicated capacities for the given resource group.", "x-ms-examples": { "List capacities in resource group": { "$ref": "./examples/listCapacitiesInResourceGroup.json" } }, "tags": [ "Capacities" ], "operationId": "Capacities_ListByResourceGroup", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/DedicatedCapacities" } }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/ErrorResponse" } } }, "x-ms-pageable": { "nextLinkName": null } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.PowerBIDedicated/capacities": { "get": { "description": "Lists all the Dedicated capacities for the given subscription.", "x-ms-examples": { "Get details of a capacity": { "$ref": "./examples/listCapacitiesInSubscription.json" } }, "tags": [ "Capacities" ], "operationId": "Capacities_List", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/DedicatedCapacities" } }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/ErrorResponse" } } }, "x-ms-pageable": { "nextLinkName": null } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.PowerBIDedicated/skus": { "get": { "description": "Lists eligible SKUs for PowerBI Dedicated resource provider.", "x-ms-examples": { "List eligible SKUs for a new capacity": { "$ref": "./examples/listSKUsForNew.json" } }, "operationId": "Capacities_ListSkus", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/SkuEnumerationForNewResourceResult" } }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PowerBIDedicated/capacities/{dedicatedCapacityName}/skus": { "get": { "description": "Lists eligible SKUs for a PowerBI Dedicated resource.", "x-ms-examples": { "List eligible SKUs for an existing capacity": { "$ref": "./examples/listSKUsForExisting.json" } }, "tags": [ "Capacities" ], "operationId": "Capacities_ListSkusForCapacity", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" }, { "name": "dedicatedCapacityName", "in": "path", "required": true, "type": "string", "pattern": "^[a-z][a-z0-9]*$", "minLength": 3, "maxLength": 63, "description": "The name of the Dedicated capacity. It must be at least 3 characters in length, and no more than 63." }, { "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/SkuEnumerationForExistingResourceResult" } }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/providers/Microsoft.PowerBIDedicated/operations": { "get": { "tags": [ "Operations" ], "operationId": "Operations_List", "description": "Lists all of the available PowerBIDedicated REST API operations.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "OK. The request has succeeded.", "schema": { "$ref": "#/definitions/OperationListResult" } }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/ErrorResponse" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.PowerBIDedicated/locations/{location}/checkNameAvailability": { "post": { "x-ms-examples": { "Check name availability of a capacity": { "$ref": "./examples/checkNameAvailability.json" } }, "tags": [ "Capacities" ], "operationId": "Capacities_CheckNameAvailability", "description": "Check the name availability in the target location. The name isn’t available if it’s used by another capacity in another tenant in the target location.", "parameters": [ { "name": "location", "in": "path", "required": true, "type": "string", "description": "The region name which the operation will lookup into." }, { "name": "capacityParameters", "in": "body", "required": true, "schema": { "$ref": "#/definitions/CheckCapacityNameAvailabilityParameters" }, "description": "The name of the capacity." }, { "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "OK. The request has succeeded.", "schema": { "$ref": "#/definitions/CheckCapacityNameAvailabilityResult" } }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } } }, "definitions": { "OperationListResult": { "description": "Result listing capacities. It contains a list of operations and a URL link to get the next set of results.", "properties": { "value": { "description": "List of capacities supported by the Microsoft.PowerBIDedicated resource provider.", "type": "array", "readOnly": true, "items": { "$ref": "#/definitions/Operation" } }, "nextLink": { "description": "URL to get the next set of operation list results if there are any.", "type": "string", "readOnly": true } } }, "Operation": { "description": "Capacities REST API operation.", "type": "object", "properties": { "name": { "description": "Operation name: {provider}/{resource}/{operation}.", "type": "string", "readOnly": true }, "display": { "description": "The object that represents the operation.", "properties": { "provider": { "description": "Service provider: Microsoft.PowerBIDedicated.", "type": "string", "readOnly": true }, "resource": { "description": "Resource on which the operation is performed: capacity, etc.", "type": "string", "readOnly": true }, "operation": { "description": "Operation type: create, update, delete, etc.", "type": "string", "readOnly": true }, "description": { "type": "string", "description": "Localized description of the operation." } } }, "origin": { "type": "string", "description": "Executor of the operation.", "readOnly": true }, "properties": { "type": "object", "description": "Additional properties to expose performance metrics to shoebox.", "properties": { "serviceSpecification": { "$ref": "#/definitions/ServiceSpecification", "description": "Service specification for exposing performance metrics to shoebox." } } } } }, "Resource": { "description": "Represents an instance of an PowerBI Dedicated resource.", "type": "object", "properties": { "id": { "type": "string", "readOnly": true, "description": "An identifier that represents the PowerBI Dedicated resource." }, "name": { "type": "string", "readOnly": true, "description": "The name of the PowerBI Dedicated resource." }, "type": { "type": "string", "readOnly": true, "description": "The type of the PowerBI Dedicated resource." }, "location": { "type": "string", "description": "Location of the PowerBI Dedicated resource." }, "sku": { "$ref": "#/definitions/ResourceSku", "description": "The SKU of the PowerBI Dedicated resource." }, "tags": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Key-value pairs of additional resource provisioning properties." } }, "required": [ "location", "sku" ], "x-ms-azure-resource": true }, "DedicatedCapacity": { "description": "Represents an instance of a Dedicated Capacity resource.", "type": "object", "properties": { "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/DedicatedCapacityProperties", "description": "Properties of the provision operation request." } }, "allOf": [ { "$ref": "#/definitions/Resource" } ] }, "DedicatedCapacities": { "description": "An array of Dedicated capacities resources.", "type": "object", "properties": { "value": { "type": "array", "items": { "$ref": "#/definitions/DedicatedCapacity" }, "description": "An array of Dedicated capacities resources." } }, "required": [ "value" ] }, "DedicatedCapacityUpdateParameters": { "description": "Provision request specification", "type": "object", "properties": { "sku": { "$ref": "#/definitions/ResourceSku", "description": "The SKU of the Dedicated capacity resource." }, "tags": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Key-value pairs of additional provisioning properties." }, "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/DedicatedCapacityMutableProperties", "description": "Properties of the provision operation request." } } }, "DedicatedCapacityProperties": { "description": "Properties of Dedicated Capacity resource.", "type": "object", "properties": { "state": { "type": "string", "enum": [ "Deleting", "Succeeded", "Failed", "Paused", "Suspended", "Provisioning", "Updating", "Suspending", "Pausing", "Resuming", "Preparing", "Scaling" ], "x-ms-enum": { "name": "State", "modelAsString": true }, "readOnly": true, "description": "The current state of PowerBI Dedicated resource. The state is to indicate more states outside of resource provisioning." }, "provisioningState": { "type": "string", "enum": [ "Deleting", "Succeeded", "Failed", "Paused", "Suspended", "Provisioning", "Updating", "Suspending", "Pausing", "Resuming", "Preparing", "Scaling" ], "x-ms-enum": { "name": "ProvisioningState", "modelAsString": true }, "readOnly": true, "description": "The current deployment state of PowerBI Dedicated resource. The provisioningState is to indicate states for resource provisioning." } }, "allOf": [ { "$ref": "#/definitions/DedicatedCapacityMutableProperties" } ] }, "ResourceSku": { "description": "Represents the SKU name and Azure pricing tier for PowerBI Dedicated resource.", "type": "object", "properties": { "name": { "type": "string", "description": "Name of the SKU level." }, "tier": { "type": "string", "enum": [ "PBIE_Azure" ], "x-ms-enum": { "name": "SkuTier", "modelAsString": true }, "description": "The name of the Azure pricing tier to which the SKU applies." }, "capacity": { "type": "integer", "format": "int32", "description": "The capacity of the SKU." } }, "required": [ "name" ] }, "DedicatedCapacityMutableProperties": { "description": "An object that represents a set of mutable Dedicated capacity resource properties.", "type": "object", "properties": { "administration": { "$ref": "#/definitions/DedicatedCapacityAdministrators", "description": "A collection of Dedicated capacity administrators" }, "mode": { "description": "The capacity mode.", "type": "string", "readOnly": true }, "tenantId": { "type": "string", "description": "Tenant ID for the capacity. Used for creating Pro Plus capacity.", "readOnly": true }, "friendlyName": { "type": "string", "description": "Capacity name", "readOnly": true } } }, "DedicatedCapacityAdministrators": { "description": "An array of administrator user identities", "type": "object", "properties": { "members": { "type": "array", "items": { "type": "string", "description": "The UPN of the user. For example: johnsmith@contoso.com." }, "description": "An array of administrator user identities." } } }, "SkuEnumerationForNewResourceResult": { "description": "An object that represents enumerating SKUs for new resources", "type": "object", "properties": { "value": { "type": "array", "items": { "$ref": "#/definitions/ResourceSku" }, "description": "The collection of available SKUs for new resources" } } }, "SkuEnumerationForExistingResourceResult": { "description": "An object that represents enumerating SKUs for existing resources", "type": "object", "properties": { "value": { "type": "array", "items": { "$ref": "#/definitions/SkuDetailsForExistingResource" }, "description": "The collection of available SKUs for existing resources" } } }, "SkuDetailsForExistingResource": { "description": "An object that represents SKU details for existing resources", "type": "object", "properties": { "resourceType": { "type": "string", "description": "The resource type" }, "sku": { "$ref": "#/definitions/ResourceSku", "description": "The SKU in SKU details for existing resources." } } }, "ErrorResponse": { "type": "object", "description": "Describes the format of Error response.", "properties": { "error": { "description": "The error object", "properties": { "code": { "type": "string", "description": "Error code" }, "message": { "type": "string", "description": "Error message indicating why the operation failed." } } } } }, "CheckCapacityNameAvailabilityParameters": { "description": "Details of capacity name request body.", "type": "object", "properties": { "name": { "type": "string", "pattern": "^[a-z][a-z0-9]*$", "minLength": 3, "maxLength": 63, "description": "Name for checking availability." }, "type": { "type": "string", "default": "Microsoft.PowerBIDedicated/capacities", "description": "The resource type of PowerBI dedicated." } } }, "CheckCapacityNameAvailabilityResult": { "description": "The checking result of capacity name availability.", "type": "object", "properties": { "nameAvailable": { "type": "boolean", "description": "Indicator of availability of the capacity name." }, "reason": { "type": "string", "description": "The reason of unavailability." }, "message": { "type": "string", "description": "The detailed message of the request unavailability." } } }, "ServiceSpecification": { "type": "object", "description": "Service specification for exposing performance metrics to shoebox.", "properties": { "metricSpecifications": { "type": "array", "description": "Metric specifications for exposing performance metrics to shoebox.", "items": { "$ref": "#/definitions/MetricSpecification" } }, "logSpecifications": { "type": "array", "description": "Log specifications for exposing diagnostic logs to shoebox.", "items": { "$ref": "#/definitions/LogSpecification" } } } }, "MetricSpecification": { "type": "object", "description": "Metric specification for exposing performance metrics to shoebox.", "properties": { "name": { "type": "string", "description": "Metric name", "readOnly": true }, "displayName": { "type": "string", "description": "Localizable metric name" }, "displayDescription": { "type": "string", "description": "Localizable description of metric" }, "unit": { "type": "string", "description": "Unit for the metric", "readOnly": true }, "aggregationType": { "type": "string", "description": "Aggregation type for the metric", "readOnly": true }, "metricFilterPattern": { "type": "string", "description": "Pattern used to filter the metric", "readOnly": true }, "dimensions": { "type": "array", "description": "For describing multi dimensional metrics", "items": { "type": "object", "properties": { "name": { "type": "string", "description": "Dimension of the metric", "readOnly": true }, "displayName": { "type": "string", "description": "Localizable dimension of the metric" } } } } } }, "LogSpecification": { "description": "Log specification for exposing diagnostic logs to shoebox.", "type": "object", "properties": { "name": { "type": "string", "description": "Name of the log", "readOnly": true }, "displayName": { "type": "string", "description": "Localizable name of the log" }, "blobDuration": { "type": "string", "description": "Blob duration for the log", "readOnly": true } } } }, "parameters": { "SubscriptionIdParameter": { "name": "subscriptionId", "in": "path", "required": true, "type": "string", "description": "A unique identifier for a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." }, "ApiVersionParameter": { "name": "api-version", "in": "query", "required": true, "type": "string", "description": "The client API version." }, "ResourceGroupNameParameter": { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90, "x-ms-parameter-location": "method", "description": "The name of the Azure Resource group of which a given PowerBIDedicated capacity is part. This name must be at least 1 character in length, and no more than 90." } } }