diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/common-types.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/common-types.json new file mode 100644 index 000000000000..286119be63a9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/common-types.json @@ -0,0 +1,71 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-10-01", + "title": "Cost Management common types" + }, + "paths": {}, + "definitions": { + "ErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "ErrorDetails": { + "description": "The details of the error.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + } + } + }, + "ProxyResource": { + "description": "The Resource model definition.", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "eTag": { + "type": "string", + "description": "eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not." + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request." + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/costmanagement.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/costmanagement.json new file mode 100644 index 000000000000..f3a01f01a6c9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/costmanagement.json @@ -0,0 +1,2891 @@ +{ + "swagger": "2.0", + "info": { + "version": "2022-07-01-preview", + "title": "CostManagementClient" + }, + "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": { + "/providers/Microsoft.CostManagement/views": { + "get": { + "tags": [ + "Views" + ], + "operationId": "Views_List", + "description": "Lists all views by tenant and object.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "PrivateViewList": { + "$ref": "./examples/PrivateViewList.json" + } + }, + "parameters": [ + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ViewListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/views": { + "get": { + "tags": [ + "Views" + ], + "operationId": "Views_ListByScope", + "description": "Lists all views at the given scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ResourceGroupViewList": { + "$ref": "./examples/ViewListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeViewParameter" + }, + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ViewListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.CostManagement/views/{viewName}": { + "get": { + "tags": [ + "Views" + ], + "operationId": "Views_Get", + "description": "Gets the view by view name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "PrivateView": { + "$ref": "./examples/PrivateView.json" + } + }, + "parameters": [ + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/viewNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/View" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Views" + ], + "operationId": "Views_CreateOrUpdate", + "description": "The operation to create or update a view. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "CreateOrUpdatePrivateView": { + "$ref": "./examples/PrivateViewCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/viewNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/View" + }, + "description": "Parameters supplied to the CreateOrUpdate View operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/View" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/View" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Views" + ], + "operationId": "Views_Delete", + "description": "The operation to delete a view.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "DeletePrivateView": { + "$ref": "./examples/PrivateViewDelete.json" + } + }, + "parameters": [ + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/viewNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "204": { + "description": "NoContent. Resource is not available." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/views/{viewName}": { + "get": { + "tags": [ + "Views" + ], + "operationId": "Views_GetByScope", + "description": "Gets the view for the defined scope by view name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ResourceGroupView": { + "$ref": "./examples/ViewByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeViewParameter" + }, + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/viewNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/View" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Views" + ], + "operationId": "Views_CreateOrUpdateByScope", + "description": "The operation to create or update a view. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ResourceGroupCreateOrUpdateView": { + "$ref": "./examples/ViewCreateOrUpdateByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeViewParameter" + }, + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/viewNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/View" + }, + "description": "Parameters supplied to the CreateOrUpdate View operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/View" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/View" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Views" + ], + "operationId": "Views_DeleteByScope", + "description": "The operation to delete a view.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ResourceGroupDeleteView": { + "$ref": "./examples/ViewDeleteByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeViewParameter" + }, + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/viewNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "204": { + "description": "NoContent. Resource is not available." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/alerts": { + "get": { + "tags": [ + "Alerts" + ], + "operationId": "Alerts_List", + "description": "Lists the alerts for scope defined.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "BillingAccountAlerts": { + "$ref": "./examples/BillingAccountAlerts.json" + }, + "BillingProfileAlerts": { + "$ref": "./examples/BillingProfileAlerts.json" + }, + "InvoiceSectionAlerts": { + "$ref": "./examples/InvoiceSectionAlerts.json" + }, + "EnrollmentAccountAlerts": { + "$ref": "./examples/EnrollmentAccountAlerts.json" + }, + "DepartmentAlerts": { + "$ref": "./examples/DepartmentAlerts.json" + }, + "SubscriptionAlerts": { + "$ref": "./examples/SubscriptionAlerts.json" + }, + "ResourceGroupAlerts": { + "$ref": "./examples/ResourceGroupAlerts.json" + } + }, + "parameters": [ + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/scopeAlertParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AlertsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/alerts/{alertId}": { + "get": { + "tags": [ + "Alerts" + ], + "operationId": "Alerts_Get", + "description": "Gets the alert for the scope by alert ID.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SingleSubscriptionAlerts": { + "$ref": "./examples/SingleSubscriptionAlert.json" + }, + "SingleResourceGroupAlerts": { + "$ref": "./examples/SingleResourceGroupAlert.json" + } + }, + "parameters": [ + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/scopeAlertParameter" + }, + { + "$ref": "#/parameters/alertIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Alert" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Alerts" + ], + "operationId": "Alerts_Dismiss", + "description": "Dismisses the specified alert", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "PatchSubscriptionAlerts": { + "$ref": "./examples/DismissSubscriptionAlerts.json" + }, + "PatchResourceGroupAlerts": { + "$ref": "./examples/DismissResourceGroupAlerts.json" + } + }, + "parameters": [ + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/scopeAlertParameter" + }, + { + "$ref": "#/parameters/alertIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DismissAlertPayload" + }, + "description": "Parameters supplied to the Dismiss Alert operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Alert" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.CostManagement/{externalCloudProviderType}/{externalCloudProviderId}/alerts": { + "get": { + "tags": [ + "Alerts" + ], + "operationId": "Alerts_ListExternal", + "description": "Lists the Alerts for external cloud provider type defined.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExternalBillingAccountAlerts": { + "$ref": "./examples/ExternalBillingAccountAlerts.json" + }, + "ExternalSubscriptionAlerts": { + "$ref": "./examples/ExternalSubscriptionAlerts.json" + } + }, + "parameters": [ + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/externalCloudProviderTypeParameter" + }, + { + "$ref": "#/parameters/externalCloudProviderIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AlertsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/forecast": { + "post": { + "tags": [ + "Forecast" + ], + "operationId": "Forecast_Usage", + "description": "Lists the forecast charges for scope defined.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "BillingAccountForecast": { + "$ref": "./examples/BillingAccountForecast.json" + }, + "BillingProfileForecast": { + "$ref": "./examples/BillingProfileForecast.json" + }, + "InvoiceSectionForecast": { + "$ref": "./examples/InvoiceSectionForecast.json" + }, + "EnrollmentAccountForecast": { + "$ref": "./examples/EnrollmentAccountForecast.json" + }, + "DepartmentForecast": { + "$ref": "./examples/DepartmentForecast.json" + }, + "SubscriptionForecast": { + "$ref": "./examples/SubscriptionForecast.json" + }, + "ResourceGroupForecast": { + "$ref": "./examples/ResourceGroupForecast.json" + } + }, + "parameters": [ + { + "name": "$filter", + "description": "May be used to filter forecasts by properties/usageDate (Utc time), properties/chargeType or properties/grain. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/scopeForecastParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ForecastDefinition" + }, + "description": "Parameters supplied to the CreateOrUpdate Forecast Config operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/QueryResult" + } + }, + "204": { + "description": "No Content. Resource is not available." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.CostManagement/{externalCloudProviderType}/{externalCloudProviderId}/forecast": { + "post": { + "tags": [ + "Forecast" + ], + "operationId": "Forecast_ExternalCloudProviderUsage", + "description": "Lists the forecast charges for external cloud provider type defined.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExternalBillingAccountForecast": { + "$ref": "./examples/ExternalBillingAccountForecast.json" + }, + "ExternalSubscriptionForecast": { + "$ref": "./examples/ExternalSubscriptionForecast.json" + } + }, + "parameters": [ + { + "name": "$filter", + "description": "May be used to filter forecasts by properties/usageDate (Utc time), properties/chargeType or properties/grain. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/externalCloudProviderTypeParameter" + }, + { + "$ref": "#/parameters/externalCloudProviderIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ForecastDefinition" + }, + "description": "Parameters supplied to the CreateOrUpdate Forecast Config operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/QueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/dimensions": { + "get": { + "tags": [ + "Dimensions" + ], + "x-ms-odata": "#/definitions/Dimension", + "operationId": "Dimensions_List", + "description": "Lists the dimensions by the defined scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionDimensionsList-Legacy": { + "$ref": "./examples/SubscriptionDimensionsList.json" + }, + "ResourceGroupDimensionsList-Legacy": { + "$ref": "./examples/ResourceGroupDimensionsList.json" + }, + "ManagementGroupDimensionsList-Legacy": { + "$ref": "./examples/ManagementGroupDimensionsList.json" + }, + "ManagementGroupDimensionsListExpandAndTop-Legacy": { + "$ref": "./examples/ManagementGroupDimensionsListExpandAndTop.json" + }, + "ManagementGroupDimensionsListWithFilter-Legacy": { + "$ref": "./examples/ManagementGroupDimensionsListWithFilter.json" + }, + "DepartmentDimensionsList-Legacy": { + "$ref": "./examples/DepartmentDimensionsList.json" + }, + "DepartmentDimensionsListExpandAndTop-Legacy": { + "$ref": "./examples/DepartmentDimensionsListExpandAndTop.json" + }, + "DepartmentDimensionsListWithFilter-Legacy": { + "$ref": "./examples/DepartmentDimensionsListWithFilter.json" + }, + "EnrollmentAccountDimensionsList-Legacy": { + "$ref": "./examples/EnrollmentAccountDimensionsList.json" + }, + "EnrollmentAccountDimensionsListExpandAndTop-Legacy": { + "$ref": "./examples/EnrollmentAccountDimensionsListExpandAndTop.json" + }, + "EnrollmentAccountDimensionsListWithFilter-Legacy": { + "$ref": "./examples/EnrollmentAccountDimensionsListWithFilter.json" + }, + "BillingAccountDimensionsList-Legacy": { + "$ref": "./examples/BillingAccountDimensionsList.json" + }, + "BillingAccountDimensionsListExpandAndTop-Legacy": { + "$ref": "./examples/BillingAccountDimensionsListExpandAndTop.json" + }, + "BillingAccountDimensionsListWithFilter-Legacy": { + "$ref": "./examples/BillingAccountDimensionsListWithFilter.json" + }, + "BillingAccountDimensionsList-Modern": { + "$ref": "./examples/MCABillingAccountDimensionsList.json" + }, + "BillingAccountDimensionsListExpandAndTop-Modern": { + "$ref": "./examples/MCABillingAccountDimensionsListExpandAndTop.json" + }, + "BillingAccountDimensionsListWithFilter-Modern": { + "$ref": "./examples/MCABillingAccountDimensionsListWithFilter.json" + }, + "BillingProfileDimensionsList-Modern": { + "$ref": "./examples/MCABillingProfileDimensionsList.json" + }, + "BillingProfileDimensionsListExpandAndTop-Modern": { + "$ref": "./examples/MCABillingProfileDimensionsListExpandAndTop.json" + }, + "BillingProfileDimensionsListWithFilter-Modern": { + "$ref": "./examples/MCABillingProfileDimensionsListWithFilter.json" + }, + "InvoiceSectionDimensionsList-Modern": { + "$ref": "./examples/MCAInvoiceSectionDimensionsList.json" + }, + "InvoiceSectionDimensionsListExpandAndTop-Modern": { + "$ref": "./examples/MCAInvoiceSectionDimensionsListExpandAndTop.json" + }, + "InvoiceSectionDimensionsListWithFilter-Modern": { + "$ref": "./examples/MCAInvoiceSectionDimensionsListWithFilter.json" + }, + "CustomerDimensionsList-Modern": { + "$ref": "./examples/MCACustomerDimensionsList.json" + }, + "CustomerDimensionsListExpandAndTop-Modern": { + "$ref": "./examples/MCACustomerDimensionsListExpandAndTop.json" + }, + "CustomerDimensionsListWithFilter-Modern": { + "$ref": "./examples/MCACustomerDimensionsListWithFilter.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeDimensionParameter" + }, + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "description": "May be used to filter dimensions by properties/category, properties/usageStart, properties/usageEnd. Supported operators are 'eq','lt', 'gt', 'le', 'ge'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$expand", + "description": "May be used to expand the properties/data within a dimension category. By default, data is not included when listing dimensions.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the most recent N dimension data.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000, + "format": "int32" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DimensionsListResult" + } + }, + "204": { + "description": "No Content. Resource is not available." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/providers/Microsoft.CostManagement/{externalCloudProviderType}/{externalCloudProviderId}/dimensions": { + "get": { + "tags": [ + "Dimensions" + ], + "x-ms-odata": "#/definitions/Dimension", + "operationId": "Dimensions_ByExternalCloudProviderType", + "description": "Lists the dimensions by the external cloud provider type.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExternalBillingAccountDimensionList": { + "$ref": "./examples/ExternalBillingAccountsDimensions.json" + }, + "ExternalSubscriptionDimensionList": { + "$ref": "./examples/ExternalSubscriptionsDimensions.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/externalCloudProviderTypeParameter" + }, + { + "$ref": "#/parameters/externalCloudProviderIdParameter" + }, + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "description": "May be used to filter dimensions by properties/category, properties/usageStart, properties/usageEnd. Supported operators are 'eq','lt', 'gt', 'le', 'ge'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$expand", + "description": "May be used to expand the properties/data within a dimension category. By default, data is not included when listing dimensions.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the most recent N dimension data.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000, + "format": "int32" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DimensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/query": { + "post": { + "tags": [ + "Query" + ], + "operationId": "Query_Usage", + "description": "Query the usage data for scope defined.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionQuery-Legacy": { + "$ref": "./examples/SubscriptionQuery.json" + }, + "SubscriptionQueryGrouping-Legacy": { + "$ref": "./examples/SubscriptionQueryGrouping.json" + }, + "ResourceGroupQuery-Legacy": { + "$ref": "./examples/ResourceGroupQuery.json" + }, + "ResourceGroupQueryGrouping-Legacy": { + "$ref": "./examples/ResourceGroupQueryGrouping.json" + }, + "BillingAccountQuery-Legacy": { + "$ref": "./examples/BillingAccountQuery.json" + }, + "BillingAccountQueryGrouping-Legacy": { + "$ref": "./examples/BillingAccountQueryGrouping.json" + }, + "EnrollmentAccountQuery-Legacy": { + "$ref": "./examples/EnrollmentAccountQuery.json" + }, + "EnrollmentAccountQueryGrouping-Legacy": { + "$ref": "./examples/EnrollmentAccountQueryGrouping.json" + }, + "DepartmentQuery-Legacy": { + "$ref": "./examples/DepartmentQuery.json" + }, + "DepartmentQueryGrouping-Legacy": { + "$ref": "./examples/DepartmentQueryGrouping.json" + }, + "ManagementGroupQuery-Legacy": { + "$ref": "./examples/ManagementGroupQuery.json" + }, + "ManagementGroupQueryGrouping-Legacy": { + "$ref": "./examples/ManagementGroupQueryGrouping.json" + }, + "BillingAccountQuery-Modern": { + "$ref": "./examples/MCABillingAccountQuery.json" + }, + "BillingAccountQueryGrouping-Modern": { + "$ref": "./examples/MCABillingAccountQueryGrouping.json" + }, + "BillingProfileQuery-Modern": { + "$ref": "./examples/MCABillingProfileQuery.json" + }, + "BillingProfileQueryGrouping-Modern": { + "$ref": "./examples/MCABillingProfileQueryGrouping.json" + }, + "InvoiceSectionQuery-Modern": { + "$ref": "./examples/MCAInvoiceSectionQuery.json" + }, + "InvoiceSectionQueryGrouping-Modern": { + "$ref": "./examples/MCAInvoiceSectionQueryGrouping.json" + }, + "CustomerQuery-Modern": { + "$ref": "./examples/MCACustomerQuery.json" + }, + "CustomerQueryGrouping-Modern": { + "$ref": "./examples/MCACustomerQueryGrouping.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryDefinition" + }, + "description": "Parameters supplied to the CreateOrUpdate Query Config operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/QueryResult" + } + }, + "204": { + "description": "No Content. Resource is not available." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.CostManagement/{externalCloudProviderType}/{externalCloudProviderId}/query": { + "post": { + "tags": [ + "Query" + ], + "operationId": "Query_UsageByExternalCloudProviderType", + "description": "Query the usage data for external cloud provider type defined.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExternalBillingAccountQueryList": { + "$ref": "./examples/ExternalBillingAccountsQuery.json" + }, + "ExternalSubscriptionsQuery": { + "$ref": "./examples/ExternalSubscriptionsQuery.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/externalCloudProviderTypeParameter" + }, + { + "$ref": "#/parameters/externalCloudProviderIdParameter" + }, + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryDefinition" + }, + "description": "Parameters supplied to the CreateOrUpdate Query Config operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/QueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.CostManagement/generateReservationDetailsReport": { + "post": { + "tags": [ + "ReservedInstances" + ], + "operationId": "GenerateReservationDetailsReport_ByBillingAccountId", + "description": "Generates the reservations details report for provided date range asynchronously based on enrollment id. The Reservation usage details can be viewed only by certain enterprise roles. For more details on the roles see, https://docs.microsoft.com/en-us/azure/cost-management-billing/manage/understand-ea-roles#usage-and-costs-access-by-role", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ReservationDetails": { + "$ref": "./examples/GenerateReservationDetailsReportByBillingAccount.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "parameters": [ + { + "$ref": "#/parameters/enrollmentIdParameter" + }, + { + "$ref": "#/parameters/startDateParameter" + }, + { + "$ref": "#/parameters/endDateParameter" + }, + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request processing completed.", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "202": { + "description": "Accepted. Request will be processed. Use the location header to check the status.", + "headers": { + "Location": { + "description": "The URL to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The amount of delay to use while the status of the operation is checked. The value is expressed in seconds.", + "format": "int32", + "type": "integer" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.CostManagement/generateReservationDetailsReport": { + "post": { + "tags": [ + "ReservedInstances" + ], + "operationId": "GenerateReservationDetailsReport_ByBillingProfileId", + "description": "Generates the reservations details report for provided date range asynchronously by billing profile. The Reservation usage details can be viewed by only certain enterprise roles by default. For more details on the roles see, https://docs.microsoft.com/en-us/azure/cost-management-billing/reservations/reservation-utilization#view-utilization-in-the-azure-portal-with-azure-rbac-access", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ReservationDetails": { + "$ref": "./examples/GenerateReservationDetailsReportByBillingProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/billingProfileIdParameter" + }, + { + "$ref": "#/parameters/startDateParameter" + }, + { + "$ref": "#/parameters/endDateParameter" + }, + { + "$ref": "common-types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request processing completed.", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "202": { + "description": "Accepted. Request will be processed. Use the Location header to check the status.", + "headers": { + "Location": { + "description": "The URL to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The amount of delay to use while the status of the operation is checked. The value is expressed in seconds.", + "format": "int32", + "type": "integer" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "common-types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.CostManagement/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available cost management REST API operations.", + "x-ms-examples": { + "OperationList": { + "$ref": "./examples/OperationList.json" + } + }, + "parameters": [ + { + "$ref": "common-types.json#/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": "common-types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ReportConfigDefinition": { + "description": "The definition of a report config.", + "type": "object", + "properties": { + "type": { + "description": "The type of the report. Usage represents actual usage, forecast represents forecasted data and UsageAndForecast represents both usage and forecasted data. Actual usage and forecasted data can be differentiated based on dates.", + "type": "string", + "enum": [ + "Usage" + ], + "x-ms-enum": { + "name": "ReportType", + "modelAsString": true + } + }, + "timeframe": { + "description": "The time frame for pulling data for the report. If custom, then a specific time period must be provided.", + "type": "string", + "enum": [ + "WeekToDate", + "MonthToDate", + "YearToDate", + "Custom" + ], + "x-ms-enum": { + "name": "ReportTimeframeType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has time period for pulling data for the report.", + "$ref": "#/definitions/ReportConfigTimePeriod" + }, + "dataSet": { + "description": "Has definition for data in this report config.", + "$ref": "#/definitions/ReportConfigDataset" + }, + "includeMonetaryCommitment": { + "description": "If true, report includes monetary commitment.", + "type": "boolean" + } + }, + "required": [ + "type", + "timeframe" + ] + }, + "ReportConfigTimePeriod": { + "description": "The start and end date for pulling data for the report.", + "type": "object", + "properties": { + "from": { + "description": "The start date to pull data from.", + "type": "string", + "format": "date-time" + }, + "to": { + "description": "The end date to pull data to.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "from", + "to" + ] + }, + "ReportConfigDataset": { + "description": "The definition of data present in the report.", + "type": "object", + "properties": { + "granularity": { + "description": "The granularity of rows in the report.", + "type": "string", + "enum": [ + "Daily", + "Monthly" + ], + "x-ms-enum": { + "name": "ReportGranularityType", + "modelAsString": true + } + }, + "configuration": { + "description": "Has configuration information for the data in the report. The configuration will be ignored if aggregation and grouping are provided.", + "$ref": "#/definitions/ReportConfigDatasetConfiguration" + }, + "aggregation": { + "type": "object", + "description": "Dictionary of aggregation expression to use in the report. The key of each item in the dictionary is the alias for the aggregated column. Report can have up to 2 aggregation clauses.", + "additionalProperties": { + "type": "object", + "$ref": "#/definitions/ReportConfigAggregation" + }, + "x-ms-identifiers": [ + "name" + ], + "maxItems": 2 + }, + "grouping": { + "description": "Array of group by expression to use in the report. Report can have up to 2 group by clauses.", + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigGrouping" + }, + "x-ms-identifiers": [ + "name", + "type" + ], + "maxItems": 2 + }, + "sorting": { + "description": "Array of order by expression to use in the report.", + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigSorting" + }, + "x-ms-identifiers": [] + }, + "filter": { + "type": "object", + "description": "Has filter expression to use in the report.", + "$ref": "#/definitions/ReportConfigFilter" + } + } + }, + "ReportConfigDatasetConfiguration": { + "description": "The configuration of dataset in the report.", + "type": "object", + "properties": { + "columns": { + "description": "Array of column names to be included in the report. Any valid report column name is allowed. If not provided, then report includes all columns.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ReportConfigAggregation": { + "description": "The aggregation expression to be used in the report.", + "type": "object", + "properties": { + "name": { + "description": "The name of the column to aggregate.", + "type": "string" + }, + "function": { + "description": "The name of the aggregation function to use.", + "type": "string", + "enum": [ + "Sum" + ], + "x-ms-enum": { + "name": "FunctionType", + "modelAsString": true + } + } + }, + "required": [ + "name", + "function" + ] + }, + "ReportConfigSorting": { + "description": "The order by expression to be used in the report.", + "type": "object", + "properties": { + "direction": { + "description": "Direction of sort.", + "type": "string", + "enum": [ + "Ascending", + "Descending" + ], + "x-ms-enum": { + "name": "ReportConfigSortingType", + "modelAsString": true + } + }, + "name": { + "description": "The name of the column to sort.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "ReportConfigGrouping": { + "description": "The group by expression to be used in the report.", + "type": "object", + "properties": { + "type": { + "description": "Has type of the column to group.", + "$ref": "#/definitions/ReportConfigColumnType" + }, + "name": { + "description": "The name of the column to group. This version supports subscription lowest possible grain.", + "type": "string" + } + }, + "required": [ + "type", + "name" + ] + }, + "ReportConfigFilter": { + "description": "The filter expression to be used in the report.", + "type": "object", + "properties": { + "and": { + "description": "The logical \"AND\" expression. Must have at least 2 items.", + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigFilter" + }, + "x-ms-identifiers": [], + "minItems": 2 + }, + "or": { + "description": "The logical \"OR\" expression. Must have at least 2 items.", + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigFilter" + }, + "x-ms-identifiers": [], + "minItems": 2 + }, + "dimensions": { + "description": "Has comparison expression for a dimension", + "$ref": "#/definitions/ReportConfigComparisonExpression" + }, + "tags": { + "description": "Has comparison expression for a tag", + "$ref": "#/definitions/ReportConfigComparisonExpression" + } + } + }, + "ReportConfigColumnType": { + "description": "The type of the column in the report.", + "type": "string", + "enum": [ + "Tag", + "Dimension" + ], + "x-ms-enum": { + "name": "ReportConfigColumnType", + "modelAsString": true + } + }, + "ReportConfigComparisonExpression": { + "description": "The comparison expression to be used in the report.", + "type": "object", + "properties": { + "name": { + "description": "The name of the column to use in comparison.", + "type": "string" + }, + "operator": { + "description": "The operator to use for comparison.", + "type": "string", + "enum": [ + "In", + "Contains" + ], + "x-ms-enum": { + "name": "OperatorType", + "modelAsString": true + } + }, + "values": { + "description": "Array of values to use for comparison", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1 + } + }, + "required": [ + "name", + "operator", + "values" + ] + }, + "ViewListResult": { + "description": "Result of listing views. It contains a list of available views.", + "type": "object", + "properties": { + "value": { + "description": "The list of views.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/View" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "View": { + "description": "States and configurations of Cost Analysis.", + "type": "object", + "allOf": [ + { + "$ref": "common-types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ViewProperties", + "title": "View properties" + } + } + }, + "ViewProperties": { + "type": "object", + "description": "The properties of the view.", + "properties": { + "displayName": { + "description": "User input name of the view. Required.", + "type": "string" + }, + "scope": { + "description": "Cost Management scope to save the view on. This includes 'subscriptions/{subscriptionId}' for subscription scope, 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for InvoiceSection scope, 'providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, '/providers/Microsoft.CostManagement/externalBillingAccounts/{externalBillingAccountName}' for ExternalBillingAccount scope, and '/providers/Microsoft.CostManagement/externalSubscriptions/{externalSubscriptionName}' for ExternalSubscription scope.", + "type": "string" + }, + "createdOn": { + "description": "Date the user created this view.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "modifiedOn": { + "description": "Date when the user last modified this view.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "dateRange": { + "description": "Date range of the current view.", + "type": "string", + "readOnly": true + }, + "currency": { + "description": "Currency of the current view.", + "type": "string", + "readOnly": true + }, + "query": { + "description": "Query body configuration. Required.", + "type": "object", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReportConfigDefinition" + }, + "chart": { + "description": "Chart type of the main view in Cost Analysis. Required.", + "type": "string", + "enum": [ + "Area", + "Line", + "StackedColumn", + "GroupedColumn", + "Table" + ], + "x-ms-enum": { + "name": "ChartType", + "modelAsString": true + } + }, + "accumulated": { + "description": "Show costs accumulated over time.", + "type": "string", + "enum": [ + "true", + "false" + ], + "x-ms-enum": { + "name": "AccumulatedType", + "modelAsString": true + } + }, + "metric": { + "description": "Metric to use when displaying costs.", + "type": "string", + "enum": [ + "ActualCost", + "AmortizedCost", + "AHUB" + ], + "x-ms-enum": { + "name": "MetricType", + "modelAsString": true + } + }, + "kpis": { + "description": "List of KPIs to show in Cost Analysis UI.", + "type": "array", + "items": { + "$ref": "#/definitions/KpiProperties" + } + }, + "pivots": { + "description": "Configuration of 3 sub-views in the Cost Analysis UI.", + "type": "array", + "items": { + "$ref": "#/definitions/PivotProperties" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "KpiProperties": { + "description": "Each KPI must contain a 'type' and 'enabled' key.", + "type": "object", + "properties": { + "type": { + "description": "KPI type (Forecast, Budget).", + "type": "string", + "enum": [ + "Forecast", + "Budget" + ], + "x-ms-enum": { + "name": "KpiTypeType", + "modelAsString": true + } + }, + "id": { + "description": "ID of resource related to metric (budget).", + "type": "string" + }, + "enabled": { + "description": "show the KPI in the UI?", + "type": "boolean" + } + } + }, + "PivotProperties": { + "description": "Each pivot must contain a 'type' and 'name'.", + "type": "object", + "properties": { + "type": { + "description": "Data type to show in view.", + "type": "string", + "enum": [ + "Dimension", + "TagKey" + ], + "x-ms-enum": { + "name": "PivotTypeType", + "modelAsString": true + } + }, + "name": { + "description": "Data field to show in view.", + "type": "string" + } + } + }, + "Resource": { + "description": "The Resource model definition.", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "readOnly": true, + "type": "string", + "description": "Location of the resource." + }, + "sku": { + "readOnly": true, + "type": "string", + "description": "SKU of the resource." + }, + "eTag": { + "readOnly": true, + "type": "string", + "description": "ETag of the resource." + }, + "tags": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "x-ms-azure-resource": true + }, + "DimensionsListResult": { + "description": "Result of listing dimensions. It contains a list of available dimensions.", + "type": "object", + "properties": { + "value": { + "description": "The list of dimensions.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Dimension" + } + } + } + }, + "Dimension": { + "description": "List of Dimension.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DimensionProperties", + "title": "Dimension properties" + } + } + }, + "DimensionProperties": { + "description": "Dimension properties.", + "type": "object", + "properties": { + "description": { + "description": "Dimension description.", + "type": "string", + "readOnly": true + }, + "filterEnabled": { + "description": "Filter enabled.", + "type": "boolean", + "readOnly": true + }, + "groupingEnabled": { + "description": "Grouping enabled.", + "type": "boolean", + "readOnly": true + }, + "data": { + "description": "Dimension data.", + "type": "array", + "items": { + "description": "Dimension data item.", + "type": "string", + "readOnly": true + } + }, + "total": { + "description": "Total number of data for the dimension.", + "format": "int32", + "type": "integer", + "readOnly": true + }, + "category": { + "description": "Dimension category.", + "type": "string", + "readOnly": true + }, + "usageStart": { + "description": "Usage start.", + "format": "date-time", + "type": "string", + "readOnly": true + }, + "usageEnd": { + "description": "Usage end.", + "format": "date-time", + "type": "string", + "readOnly": true + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "AlertsResult": { + "description": "Result of alerts.", + "type": "object", + "properties": { + "value": { + "description": "List of alerts.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Alert" + } + }, + "nextLink": { + "description": "URL to get the next set of alerts results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "Alert": { + "description": "An individual alert.", + "type": "object", + "allOf": [ + { + "$ref": "common-types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AlertProperties", + "title": "Alert properties" + } + } + }, + "AlertProperties": { + "description": "Alert properties.", + "type": "object", + "properties": { + "definition": { + "description": "defines the type of alert", + "type": "object", + "properties": { + "type": { + "description": "type of alert", + "type": "string", + "enum": [ + "Budget", + "Invoice", + "Credit", + "Quota", + "General", + "xCloud", + "BudgetForecast" + ], + "x-ms-enum": { + "name": "AlertType", + "modelAsString": true + } + }, + "category": { + "description": "Alert category", + "type": "string", + "enum": [ + "Cost", + "Usage", + "Billing", + "System" + ], + "x-ms-enum": { + "name": "AlertCategory", + "modelAsString": true + } + }, + "criteria": { + "description": "Criteria that triggered alert", + "type": "string", + "enum": [ + "CostThresholdExceeded", + "UsageThresholdExceeded", + "CreditThresholdApproaching", + "CreditThresholdReached", + "QuotaThresholdApproaching", + "QuotaThresholdReached", + "MultiCurrency", + "ForecastCostThresholdExceeded", + "ForecastUsageThresholdExceeded", + "InvoiceDueDateApproaching", + "InvoiceDueDateReached", + "CrossCloudNewDataAvailable", + "CrossCloudCollectionError", + "GeneralThresholdError" + ], + "x-ms-enum": { + "name": "AlertCriteria", + "modelAsString": true + } + } + } + }, + "description": { + "description": "Alert description", + "type": "string" + }, + "source": { + "description": "Source of alert", + "type": "string", + "enum": [ + "Preset", + "User" + ], + "x-ms-enum": { + "name": "AlertSource", + "modelAsString": true + } + }, + "details": { + "description": "Alert details", + "type": "object", + "properties": { + "timeGrainType": { + "description": "Type of timegrain cadence", + "type": "string", + "enum": [ + "None", + "Monthly", + "Quarterly", + "Annually", + "BillingMonth", + "BillingQuarter", + "BillingAnnual" + ], + "x-ms-enum": { + "name": "AlertTimeGrainType", + "modelAsString": true + } + }, + "periodStartDate": { + "description": "datetime of periodStartDate", + "type": "string" + }, + "triggeredBy": { + "description": "notificationId that triggered this alert", + "type": "string" + }, + "resourceGroupFilter": { + "description": "array of resourceGroups to filter by", + "type": "array", + "items": {}, + "x-ms-identifiers": [] + }, + "resourceFilter": { + "description": "array of resources to filter by", + "type": "array", + "items": {}, + "x-ms-identifiers": [] + }, + "meterFilter": { + "description": "array of meters to filter by", + "type": "array", + "items": {}, + "x-ms-identifiers": [] + }, + "tagFilter": { + "description": "tags to filter by", + "type": "object", + "properties": {} + }, + "threshold": { + "description": "notification threshold percentage as a decimal which activated this alert", + "type": "number", + "format": "decimal" + }, + "operator": { + "description": "operator used to compare currentSpend with amount", + "type": "string", + "enum": [ + "None", + "EqualTo", + "GreaterThan", + "GreaterThanOrEqualTo", + "LessThan", + "LessThanOrEqualTo" + ], + "x-ms-enum": { + "name": "AlertOperator", + "modelAsString": true + } + }, + "amount": { + "description": "budget threshold amount", + "type": "number", + "format": "decimal" + }, + "unit": { + "description": "unit of currency being used", + "type": "string" + }, + "currentSpend": { + "description": "current spend", + "type": "number", + "format": "decimal" + }, + "contactEmails": { + "description": "list of emails to contact", + "type": "array", + "items": { + "type": "string" + } + }, + "contactGroups": { + "description": "list of action groups to broadcast to", + "type": "array", + "items": { + "type": "string" + } + }, + "contactRoles": { + "description": "list of contact roles", + "type": "array", + "items": { + "type": "string" + } + }, + "overridingAlert": { + "description": "overriding alert", + "type": "string" + }, + "departmentName": { + "description": "department name", + "type": "string" + }, + "companyName": { + "description": "company name", + "type": "string" + }, + "enrollmentNumber": { + "description": "enrollment number", + "type": "string" + }, + "enrollmentStartDate": { + "description": "datetime of enrollmentStartDate", + "type": "string" + }, + "enrollmentEndDate": { + "description": "datetime of enrollmentEndDate", + "type": "string" + }, + "invoicingThreshold": { + "description": "invoicing threshold", + "type": "number", + "format": "decimal" + } + } + }, + "costEntityId": { + "description": "related budget", + "type": "string" + }, + "status": { + "description": "alert status", + "type": "string", + "enum": [ + "None", + "Active", + "Overridden", + "Resolved", + "Dismissed" + ], + "x-ms-enum": { + "name": "AlertStatus", + "modelAsString": true + } + }, + "creationTime": { + "description": "dateTime in which alert was created", + "type": "string" + }, + "closeTime": { + "description": "dateTime in which alert was closed", + "type": "string" + }, + "modificationTime": { + "description": "dateTime in which alert was last modified", + "type": "string" + }, + "statusModificationUserName": { + "description": "User who last modified the alert", + "type": "string" + }, + "statusModificationTime": { + "description": "dateTime in which the alert status was last modified", + "type": "string" + } + } + }, + "DismissAlertPayload": { + "description": "The request payload to update an alert", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AlertProperties", + "title": "Alert properties" + } + } + }, + "QueryResult": { + "description": "Result of query. It contains all columns listed under groupings and aggregation.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/QueryProperties", + "title": "Query properties" + } + } + }, + "QueryProperties": { + "description": "Query properties", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string" + }, + "columns": { + "description": "Array of columns", + "type": "array", + "items": { + "$ref": "#/definitions/QueryColumn" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "rows": { + "description": "Array of rows", + "type": "array", + "items": { + "type": "array", + "items": {}, + "x-ms-identifiers": [] + }, + "x-ms-identifiers": [] + } + } + }, + "QueryColumn": { + "description": "QueryColumn properties", + "type": "object", + "properties": { + "name": { + "description": "The name of column.", + "type": "string" + }, + "type": { + "description": "The type of column.", + "type": "string" + } + } + }, + "OperationListResult": { + "description": "Result of listing cost management operations. It contains a list of operations and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "description": "List of cost management operations supported by the Microsoft.CostManagement 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": "A Cost management REST API operation.", + "type": "object", + "properties": { + "id": { + "description": "Operation id: {provider}/{resource}/{operation}.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string", + "readOnly": true + }, + "display": { + "description": "The object that represents the operation.", + "type": "object", + "properties": { + "provider": { + "description": "Service provider: Microsoft.CostManagement.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Resource on which the operation is performed: Dimensions, Query.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Operation description", + "type": "string", + "readOnly": true + } + } + } + } + }, + "ForecastDefinition": { + "description": "The definition of a forecast.", + "type": "object", + "properties": { + "type": { + "description": "The type of the forecast.", + "type": "string", + "enum": [ + "Usage", + "ActualCost", + "AmortizedCost" + ], + "x-ms-enum": { + "name": "ForecastType", + "modelAsString": true + } + }, + "timeframe": { + "description": "The time frame for pulling data for the forecast. If custom, then a specific time period must be provided.", + "type": "string", + "enum": [ + "MonthToDate", + "BillingMonthToDate", + "TheLastMonth", + "TheLastBillingMonth", + "WeekToDate", + "Custom" + ], + "x-ms-enum": { + "name": "ForecastTimeframeType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has time period for pulling data for the forecast.", + "$ref": "#/definitions/QueryTimePeriod" + }, + "dataset": { + "description": "Has definition for data in this forecast.", + "$ref": "#/definitions/ForecastDataset" + }, + "includeActualCost": { + "description": "a boolean determining if actualCost will be included", + "type": "boolean" + }, + "includeFreshPartialCost": { + "description": "a boolean determining if FreshPartialCost will be included", + "type": "boolean" + } + }, + "required": [ + "type", + "timeframe", + "dataset" + ] + }, + "ForecastDataset": { + "description": "The definition of data present in the forecast.", + "type": "object", + "properties": { + "granularity": { + "description": "The granularity of rows in the forecast.", + "type": "string", + "enum": [ + "Daily" + ], + "x-ms-enum": { + "name": "GranularityType", + "modelAsString": true + } + }, + "configuration": { + "description": "Has configuration information for the data in the export. The configuration will be ignored if aggregation and grouping are provided.", + "$ref": "#/definitions/QueryDatasetConfiguration" + }, + "aggregation": { + "type": "object", + "description": "Dictionary of aggregation expression to use in the forecast. The key of each item in the dictionary is the alias for the aggregated column. forecast can have up to 2 aggregation clauses.", + "additionalProperties": { + "type": "object", + "$ref": "#/definitions/QueryAggregation" + }, + "maxItems": 2 + }, + "filter": { + "type": "object", + "description": "Has filter expression to use in the forecast.", + "$ref": "#/definitions/QueryFilter" + } + } + }, + "QueryDefinition": { + "description": "The definition of a query.", + "type": "object", + "properties": { + "type": { + "description": "The type of the query.", + "type": "string", + "enum": [ + "Usage", + "ActualCost", + "AmortizedCost" + ], + "x-ms-enum": { + "name": "ExportType", + "modelAsString": true + } + }, + "timeframe": { + "description": "The time frame for pulling data for the query. If custom, then a specific time period must be provided.", + "type": "string", + "enum": [ + "MonthToDate", + "BillingMonthToDate", + "TheLastMonth", + "TheLastBillingMonth", + "WeekToDate", + "Custom" + ], + "x-ms-enum": { + "name": "TimeframeType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has time period for pulling data for the query.", + "$ref": "#/definitions/QueryTimePeriod" + }, + "dataset": { + "description": "Has definition for data in this query.", + "$ref": "#/definitions/QueryDataset" + } + }, + "required": [ + "type", + "timeframe", + "dataset" + ] + }, + "QueryTimePeriod": { + "description": "The start and end date for pulling data for the query.", + "type": "object", + "properties": { + "from": { + "description": "The start date to pull data from.", + "type": "string", + "format": "date-time" + }, + "to": { + "description": "The end date to pull data to.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "from", + "to" + ] + }, + "QueryDataset": { + "description": "The definition of data present in the query.", + "type": "object", + "properties": { + "granularity": { + "description": "The granularity of rows in the query.", + "type": "string", + "enum": [ + "Daily" + ], + "x-ms-enum": { + "name": "GranularityType", + "modelAsString": true + } + }, + "configuration": { + "description": "Has configuration information for the data in the export. The configuration will be ignored if aggregation and grouping are provided.", + "$ref": "#/definitions/QueryDatasetConfiguration" + }, + "aggregation": { + "type": "object", + "description": "Dictionary of aggregation expression to use in the query. The key of each item in the dictionary is the alias for the aggregated column. Query can have up to 2 aggregation clauses.", + "additionalProperties": { + "type": "object", + "$ref": "#/definitions/QueryAggregation" + }, + "maxItems": 2 + }, + "grouping": { + "description": "Array of group by expression to use in the query. Query can have up to 2 group by clauses.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryGrouping" + }, + "x-ms-identifiers": [ + "name", + "type" + ], + "maxItems": 2 + }, + "filter": { + "type": "object", + "description": "The filter expression to use in the query. Please reference our Query API REST documentation for how to properly format the filter.", + "$ref": "#/definitions/QueryFilter" + } + } + }, + "OperationStatus": { + "description": "The status of the long running operation.", + "type": "object", + "properties": { + "status": { + "description": "The status of the long running operation.", + "type": "string", + "enum": [ + "Running", + "Completed", + "Failed" + ], + "x-ms-enum": { + "name": "OperationStatusType", + "modelAsString": true + } + }, + "properties": { + "x-ms-client-flatten": true, + "type": "object", + "description": "The properties of the resource generated.", + "$ref": "#/definitions/ReportURL" + } + } + }, + "ReportURL": { + "description": "The URL to download the generated report.", + "type": "object", + "properties": { + "reportUrl": { + "description": "The CSV file from the reportUrl blob link consists of reservation usage data with the following schema at daily granularity", + "type": "string", + "$ref": "#/definitions/ReservationReportSchema" + }, + "validUntil": { + "description": "The time at which report URL becomes invalid.", + "type": "string", + "format": "date-time" + } + } + }, + "QueryDatasetConfiguration": { + "description": "The configuration of dataset in the query.", + "type": "object", + "properties": { + "columns": { + "description": "Array of column names to be included in the query. Any valid query column name is allowed. If not provided, then query includes all columns.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "QueryAggregation": { + "description": "The aggregation expression to be used in the query.", + "type": "object", + "properties": { + "name": { + "description": "The name of the column to aggregate.", + "type": "string" + }, + "function": { + "description": "The name of the aggregation function to use.", + "type": "string", + "enum": [ + "Sum" + ], + "x-ms-enum": { + "name": "FunctionType", + "modelAsString": true + } + } + }, + "required": [ + "name", + "function" + ] + }, + "QueryGrouping": { + "description": "The group by expression to be used in the query.", + "type": "object", + "properties": { + "type": { + "description": "Has type of the column to group.", + "$ref": "#/definitions/QueryColumnType" + }, + "name": { + "description": "The name of the column to group.", + "type": "string" + } + }, + "required": [ + "type", + "name" + ] + }, + "QueryFilter": { + "description": "The filter expression to be used in the export.", + "type": "object", + "properties": { + "and": { + "description": "The logical \"AND\" expression. Must have at least 2 items.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryFilter" + }, + "x-ms-identifiers": [], + "minItems": 2 + }, + "or": { + "description": "The logical \"OR\" expression. Must have at least 2 items.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryFilter" + }, + "x-ms-identifiers": [], + "minItems": 2 + }, + "dimensions": { + "description": "Has comparison expression for a dimension", + "$ref": "#/definitions/QueryComparisonExpression" + }, + "tags": { + "description": "Has comparison expression for a tag", + "$ref": "#/definitions/QueryComparisonExpression" + } + } + }, + "QueryColumnType": { + "description": "The type of the column in the export.", + "type": "string", + "enum": [ + "Tag", + "Dimension" + ], + "x-ms-enum": { + "name": "QueryColumnType", + "modelAsString": true + } + }, + "QueryComparisonExpression": { + "description": "The comparison expression to be used in the query.", + "type": "object", + "properties": { + "name": { + "description": "The name of the column to use in comparison.", + "type": "string" + }, + "operator": { + "description": "The operator to use for comparison.", + "type": "string", + "enum": [ + "In" + ], + "x-ms-enum": { + "name": "QueryOperatorType", + "modelAsString": true + } + }, + "values": { + "description": "Array of values to use for comparison", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1 + } + }, + "required": [ + "name", + "operator", + "values" + ] + }, + "ReservationReportSchema": { + "description": "The CSV file from the reportUrl blob link consists of reservation usage data with the following schema at daily granularity", + "type": "string", + "enum": [ + "InstanceFlexibilityGroup", + "InstanceFlexibilityRatio", + "InstanceId", + "Kind", + "ReservationId", + "ReservationOrderId", + "ReservedHours", + "SkuName", + "TotalReservedQuantity", + "UsageDate", + "UsedHours" + ], + "x-ms-enum": { + "name": "ReservationReportSchema", + "modelAsString": true + } + } + }, + "parameters": { + "viewNameParameter": { + "name": "viewName", + "in": "path", + "description": "View name", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "scopeViewParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with view operations. This includes 'subscriptions/{subscriptionId}' for subscription scope, 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for InvoiceSection scope, 'providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, 'providers/Microsoft.CostManagement/externalBillingAccounts/{externalBillingAccountName}' for External Billing Account scope and 'providers/Microsoft.CostManagement/externalSubscriptions/{externalSubscriptionName}' for External Subscription scope.", + "x-ms-parameter-location": "method" + }, + "scopeDimensionParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with dimension operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeAlertParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with alerts operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeForecastParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with forecast operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeQueryParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with query and export operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Azure Resource Group Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "startDateParameter": { + "name": "startDate", + "in": "query", + "description": "Start Date", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "endDateParameter": { + "name": "endDate", + "in": "query", + "description": "End Date", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "enrollmentIdParameter": { + "name": "billingAccountId", + "in": "path", + "description": "Enrollment ID (Legacy BillingAccount ID)", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "billingAccountIdParameter": { + "name": "billingAccountId", + "in": "path", + "description": "BillingAccount ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "billingProfileIdParameter": { + "name": "billingProfileId", + "in": "path", + "description": "BillingProfile ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "managementGroupIdParameter": { + "name": "managementGroupId", + "in": "path", + "description": "ManagementGroup ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "departmentIdParameter": { + "name": "departmentId", + "in": "path", + "description": "Department ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "enrollmentAccountIdParameter": { + "name": "enrollmentAccountId", + "in": "path", + "description": "Enrollment Account ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "externalCloudProviderTypeParameter": { + "name": "externalCloudProviderType", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "externalSubscriptions", + "externalBillingAccounts" + ], + "x-ms-enum": { + "name": "externalCloudProviderType", + "modelAsString": true + }, + "description": "The external cloud provider type associated with dimension/query operations. This includes 'externalSubscriptions' for linked account and 'externalBillingAccounts' for consolidated account.", + "x-ms-parameter-location": "method" + }, + "externalCloudProviderIdParameter": { + "name": "externalCloudProviderId", + "in": "path", + "required": true, + "type": "string", + "description": "This can be '{externalSubscriptionId}' for linked account or '{externalBillingAccountId}' for consolidated account used with dimension/query operations.", + "x-ms-parameter-location": "method" + }, + "alertIdParameter": { + "name": "alertId", + "in": "path", + "description": "Alert ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/BillingAccountQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/BillingAccountQuery.json new file mode 100644 index 000000000000..7cb9e38ee05f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/BillingAccountQuery.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "70664866", + "scope": "providers/Microsoft.Billing/billingAccounts/70664866", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimensions": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tags": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimensions": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/70664866/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/70664866/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/BillingAccountQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/BillingAccountQueryGrouping.json new file mode 100644 index 000000000000..88006102fe55 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/BillingAccountQueryGrouping.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "70664866", + "scope": "providers/Microsoft.Billing/billingAccounts/70664866", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/70664866/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/70664866/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/DepartmentQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/DepartmentQuery.json new file mode 100644 index 000000000000..606fac536ecc --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/DepartmentQuery.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "70664866", + "departmentId": "123", + "scope": "providers/Microsoft.Billing/billingAccounts/100/departments/123", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimensions": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tags": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimensions": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/70664866/departments/123/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/70664866/departments/123/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/DepartmentQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/DepartmentQueryGrouping.json new file mode 100644 index 000000000000..ad8e4e324e7c --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/DepartmentQueryGrouping.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "70664866", + "departmentId": "123", + "scope": "providers/Microsoft.Billing/billingAccounts/100/departments/123", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/70664866/departments/123/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/70664866/departments/123/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/EnrollmentAccountQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/EnrollmentAccountQuery.json new file mode 100644 index 000000000000..95c6cb59521f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/EnrollmentAccountQuery.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "70664866", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimensions": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tags": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimensions": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/70664866/enrollmentAccounts/456/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/70664866/enrollmentAccounts/456/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/EnrollmentAccountQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/EnrollmentAccountQueryGrouping.json new file mode 100644 index 000000000000..caa6d869a95f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/EnrollmentAccountQueryGrouping.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "70664866", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/70664866/enrollmentAccounts/456/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/70664866/enrollmentAccounts/456/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ExternalBillingAccountsQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ExternalBillingAccountsQuery.json new file mode 100644 index 000000000000..b21025b0a41f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ExternalBillingAccountsQuery.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "externalCloudProviderId": "100", + "externalCloudProviderType": "externalBillingAccounts", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimensions": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tags": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimensions": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/query/6dc7b06a-d90a-4df5-b655-ce6cf1c0814d", + "name": "6dc7b06a-d90a-4df5-b655-ce6cf1c0814d", + "type": "Microsoft.CostManagement/query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ServiceName", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 0.0, + "abc db", + "USD" + ], + [ + 30.2572751438, + "abc compute cloud", + "USD" + ], + [ + 0.076757602000000022, + "abc file system", + "USD" + ], + [ + 50.430964190400012, + "abc elasticache", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ExternalSubscriptionsQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ExternalSubscriptionsQuery.json new file mode 100644 index 000000000000..b71101e08ff2 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ExternalSubscriptionsQuery.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "externalCloudProviderId": "100", + "externalCloudProviderType": "externalSubscriptions", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimensions": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tags": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimensions": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.CostManagement/externalSubscriptions/100/query/d99477af-7510-40ee-aca2-e59bdca0d10d", + "name": "d99477af-7510-40ee-aca2-e59bdca0d10d", + "type": "Microsoft.CostManagement/query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCABillingAccountQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCABillingAccountQuery.json new file mode 100644 index 000000000000..dfd81bcbd7cd --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCABillingAccountQuery.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "12345:6789", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimensions": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tags": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimensions": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCABillingAccountQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCABillingAccountQueryGrouping.json new file mode 100644 index 000000000000..31f0ffbf4ad9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCABillingAccountQueryGrouping.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "12345:6789", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCABillingProfileQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCABillingProfileQuery.json new file mode 100644 index 000000000000..90eff4558051 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCABillingProfileQuery.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimensions": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tags": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimensions": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCABillingProfileQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCABillingProfileQueryGrouping.json new file mode 100644 index 000000000000..e110931544a8 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCABillingProfileQueryGrouping.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCACustomerQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCACustomerQuery.json new file mode 100644 index 000000000000..a14f5498e0bf --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCACustomerQuery.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "12345:6789", + "customerId": "5678", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimensions": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tags": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimensions": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCACustomerQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCACustomerQueryGrouping.json new file mode 100644 index 000000000000..a2da465d67e3 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCACustomerQueryGrouping.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "12345:6789", + "customerId": "5678", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/customers/5678/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCAInvoiceSectionQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCAInvoiceSectionQuery.json new file mode 100644 index 000000000000..909f643e09a0 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCAInvoiceSectionQuery.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "invoiceSectionId": "9876", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimensions": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tags": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimensions": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCAInvoiceSectionQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCAInvoiceSectionQueryGrouping.json new file mode 100644 index 000000000000..8c4f73f459bf --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/MCAInvoiceSectionQueryGrouping.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "invoiceSectionId": "9876", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ManagementGroupQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ManagementGroupQuery.json new file mode 100644 index 000000000000..a36839a00351 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ManagementGroupQuery.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "managementGroupId": "MyMgId", + "scope": "providers/Microsoft.Management/managementGroups/MyMgId", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimensions": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tags": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimensions": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/MyMgId/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Management/managementGroups/MyMgId/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 0.16677720329728665, + "gs-stms-dev", + 20180331, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ManagementGroupQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ManagementGroupQueryGrouping.json new file mode 100644 index 000000000000..6765ec668659 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ManagementGroupQueryGrouping.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "managementGroupId": "MyMgId", + "scope": "providers/Microsoft.Management/managementGroups/MyMgId", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Management/managementGroups/MyMgId/providers/Microsoft.CostManagement/Query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Management/managementGroups/MyMgId/providers/Microsoft.CostManagement/Query?api-version=2021-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 20.359416562625452, + "VSTSHOL-1595322048000", + 20180331, + "USD" + ], + [ + 173.41979241290323, + "RVIIOT-TRIAL", + 20180331, + "USD" + ], + [ + 19.545363672276512, + "JapanUnifia-Trial", + 20180331, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ResourceGroupQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ResourceGroupQuery.json new file mode 100644 index 000000000000..fe2e639a90b7 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ResourceGroupQuery.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "subscriptionId": "55312978-ba1b-415c-9304-c4b9c43c0481", + "resourceGroupName": "ScreenSharingTest-peer", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ScreenSharingTest-peer", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimensions": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tags": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimensions": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/55312978-ba1b-415c-9304-c4b9c43c0481/resourcegroups/ScreenSharingTest-peer/providers/Microsoft.CostManagement/Query/9af9459d-441d-4055-9ed0-83d4c4a363fb", + "name": "9af9459d-441d-4055-9ed0-83d4c4a363fb", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "ScreenSharingTest-peer", + 20180417, + "USD" + ], + [ + 20.10333307059661, + "ScreenSharingTest-peer", + 20180418, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ResourceGroupQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ResourceGroupQueryGrouping.json new file mode 100644 index 000000000000..ec3b75e7a4fd --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/ResourceGroupQueryGrouping.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "ScreenSharingTest-peer", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ScreenSharingTest-peer", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceType" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/ScreenSharingTest-peer/providers/Microsoft.CostManagement/Query/9af9459d-441d-4055-9ed0-83d4c4a363fb", + "name": "9af9459d-441d-4055-9ed0-83d4c4a363fb", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceType", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "Microsoft.SqlServer", + 20180417, + "USD" + ], + [ + 20.10333307059661, + "Microsoft.Compute", + 20180418, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/SubscriptionQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/SubscriptionQuery.json new file mode 100644 index 000000000000..23534733adf4 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/SubscriptionQuery.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimensions": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tags": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimensions": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/Query/00000000-0000-0000-0000-000000000000", + "name": "55312978-ba1b-415c-9304-cfd9c43c0481", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "ScreenSharingTest-peer", + 20180331, + "USD" + ], + [ + 218.68795741935486, + "Ict_StratAndPlan_GoldSprova_Prod", + 20180331, + "USD" + ], + [ + 0.14384913581657052, + "ssbciotelement01", + 20180401, + "USD" + ], + [ + 0.009865586851323632, + "ict_stratandplan_goldsprova_prod", + 20180429, + "USD" + ] + ] + } + } + }, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/SubscriptionQueryGrouping.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/SubscriptionQueryGrouping.json new file mode 100644 index 000000000000..41803cc11041 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2022-07-01-preview/examples/SubscriptionQueryGrouping.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2021-10-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "type": "Usage", + "timeframe": "TheLastMonth", + "dataset": { + "granularity": "None", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [ + { + "type": "Dimension", + "name": "ResourceGroup" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/Query/00000000-0000-0000-0000-000000000000", + "name": "55312978-ba1b-415c-9304-cfd9c43c0481", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 0.009865586851323632, + "Ict_StratAndPlan_GoldSprova_Prod_0", + "USD" + ], + [ + 218.68795741935486, + "Ict_StratAndPlan_GoldSprova_Prod_1", + "USD" + ], + [ + 2.10333307059661, + "ScreenSharingTest-peer1", + "USD" + ], + [ + 0.14384913581657052, + "Ssbciotelement01", + "USD" + ] + ] + } + } + }, + "204": {} + } +}