From 53d7e608709c20875fa23cb2ae9154f5e686d105 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 10 May 2023 11:24:30 -0700 Subject: [PATCH 01/35] EA Pricesheet download documentation. --- .../2023-03-01/consumption_pricesheet.json | 203 ++++++++++++++++++ .../EAPriceSheetForBillingPeriod.json | 16 ++ .../examples/EAPriceSheetOperationStatus.json | 19 ++ 3 files changed, 238 insertions(+) create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetForBillingPeriod.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json new file mode 100644 index 000000000000..5642b27654da --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -0,0 +1,203 @@ +{ + "swagger": "2.0", + "info": { + "version": "2023-03-01", + "title": "ConsumptionManagementClient", + "description": "Consumption management client provides access to consumption resources for Azure Enterprise Subscriptions." + }, + "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.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/download": { + "get": { + "tags": [ + "PriceSheet" + ], + "operationId": "PriceSheet_GetByBillingAccountPeriod", + "description": "Get the price sheet for a scope by billingAccount and billing period.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "EAPriceSheetForBillingPeriod": { + "$ref": "./examples/EAPriceSheetForBillingPeriod.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingPeriodNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted.", + "schema": { + "$ref": "#/definitions/DownloadAcceptedProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/operationStatus/{operationStatusId}": { + "get": { + "tags": [ + "PriceSheet" + ], + "operationId": "PriceSheet_GetByBillingAccountOperationStatus", + "description": "Gets the price sheet URL for a scope by billingAccount and billing period.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "EAPriceSheetOperationStatus": { + "$ref": "./examples/EAPriceSheetOperationStatus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" + }, + { + "$ref": "#/parameters/operationStatusIdParameter" + } + ], + "responses": { + "200": { + "description": "Completed.", + "schema": { + "$ref": "#/definitions/DownloadProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "DownloadAcceptedProperties": { + "description": "The properties of the price sheet download call once it is accepted.", + "properties": { + "downloadUrl": { + "description": "The link to OperationStatus URI that in turn will provide the URL to download the Pricesheet.", + "type": "string", + "readOnly": true + } + } + }, + "DownloadProperties": { + "description": "The properties of the price sheet download.", + "properties": { + "downloadUrl": { + "description": "The link (url) to download the pricesheet.", + "type": "string", + "readOnly": true + }, + "validTill": { + "description": "Download link validity.", + "type": "string", + "readOnly": true + } + } + }, + "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.", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "billingAccountIdParameter": { + "name": "billingAccountId", + "in": "path", + "description": "BillingAccount ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. The current version is 2023-03-01." + }, + "billingPeriodNameParameter": { + "name": "billingPeriodName", + "in": "path", + "description": "Billing Period Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "operationStatusIdParameter":{ + "name": "operationStatusId", + "in": "path", + "required": true, + "type": "string", + "description": "System generated Operation Status ID" + } + } + } \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetForBillingPeriod.json new file mode 100644 index 000000000000..1deb75f4f130 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetForBillingPeriod.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2023-03-01", + "billingAccountId": "0000000", + "billingPeriodName": "202305" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.Consumption/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-03-01", + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.Consumption/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-03-01", + "Retry-After": 10 + } + } + } + } \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json new file mode 100644 index 000000000000..10fc22dae145 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "billingAccountId": "0000000", + "operationStatusId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.Consumption/operationResults/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/operationResults", + "properties": { + "downloadUrl": "https://xxxxxx.blob.core.windows.net/armpricesheetreportdownloadcontainer/20230510/00000000-0000-0000-0000-000000000000", + "validTill": "2023-05-11T05:12:50.4266333Z" + } + } + } + } + } \ No newline at end of file From d802b6df14c3a220c8317d5885e380bb54f9acf4 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 10 May 2023 11:42:42 -0700 Subject: [PATCH 02/35] Model validation error fix --- .../2023-03-01/consumption_pricesheet.json | 5 +--- .../examples/EAPriceSheetOperationStatus.json | 26 +++++++++---------- 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 5642b27654da..93081efb306e 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -62,9 +62,7 @@ ], "responses": { "202": { - "description": "Accepted.", - "schema": { - "$ref": "#/definitions/DownloadAcceptedProperties" + "$ref": "#/definitions/DownloadAcceptedProperties" } }, "default": { @@ -114,7 +112,6 @@ } } } - } }, "definitions": { "DownloadAcceptedProperties": { diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json index 10fc22dae145..8f85e08ae021 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json @@ -1,19 +1,19 @@ { "parameters": { - "billingAccountId": "0000000", - "operationStatusId": "00000000-0000-0000-0000-000000000000" + "billingAccountId": "0000000", + "operationStatusId": "00000000-0000-0000-0000-000000000000" }, "responses": { - "200": { - "body": { - "id": "/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.Consumption/operationResults/00000000-0000-0000-0000-000000000000", - "name": "00000000-0000-0000-0000-000000000000", - "type": "Microsoft.Consumption/operationResults", - "properties": { - "downloadUrl": "https://xxxxxx.blob.core.windows.net/armpricesheetreportdownloadcontainer/20230510/00000000-0000-0000-0000-000000000000", - "validTill": "2023-05-11T05:12:50.4266333Z" + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.Consumption/operationResults/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.Consumption/operationResults", + "properties": { + "downloadUrl": "https://xxxxxx.blob.core.windows.net/armpricesheetreportdownloadcontainer/20230510/00000000-0000-0000-0000-000000000000", + "validTill": "2023-05-11T05:12:50.4266333Z" + } + } } - } - } } - } \ No newline at end of file +} \ No newline at end of file From 5e797252a735cc545f92bf973058dc800cac7db1 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 10 May 2023 13:10:00 -0700 Subject: [PATCH 03/35] readme edit to add consumption_pricesheet.json --- specification/consumption/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index 190898eb2534..2ca3d7397222 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -37,6 +37,7 @@ These settings apply only when `--tag=package-2023-03` is specified on the comma ```yaml $(tag) == 'package-2023-03' input-file: - Microsoft.Consumption/stable/2023-03-01/consumption.json + - Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json ``` ### Tag: package-2022-09 From dfa6a5c788990a6f3737b493ca5d24339fc95b1a Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 10 May 2023 16:59:07 -0700 Subject: [PATCH 04/35] corrections --- .../2023-03-01/consumption_pricesheet.json | 29 ++++++++++--------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 93081efb306e..f81f7a201a6a 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -44,6 +44,7 @@ "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" }, + "x-ms-long-running-operation": true, "x-ms-examples": { "EAPriceSheetForBillingPeriod": { "$ref": "./examples/EAPriceSheetForBillingPeriod.json" @@ -62,7 +63,14 @@ ], "responses": { "202": { - "$ref": "#/definitions/DownloadAcceptedProperties" + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer" + } } }, "default": { @@ -113,19 +121,10 @@ } } }, - "definitions": { - "DownloadAcceptedProperties": { - "description": "The properties of the price sheet download call once it is accepted.", - "properties": { - "downloadUrl": { - "description": "The link to OperationStatus URI that in turn will provide the URL to download the Pricesheet.", - "type": "string", - "readOnly": true - } - } - }, + "definitions": { "DownloadProperties": { "description": "The properties of the price sheet download.", + "type":"object", "properties": { "downloadUrl": { "description": "The link (url) to download the pricesheet.", @@ -151,6 +150,7 @@ }, "ErrorDetails": { "description": "The details of the error.", + "type":"object", "properties": { "code": { "description": "Error code.", @@ -179,6 +179,7 @@ "in": "query", "required": true, "type": "string", + "x-ms-parameter-location": "method", "description": "Version of the API to be used with the client request. The current version is 2023-03-01." }, "billingPeriodNameParameter": { @@ -187,6 +188,7 @@ "description": "Billing Period Name.", "required": true, "type": "string", + "pattern": "^[a-z][a-z0-9]*$", "x-ms-parameter-location": "method" }, "operationStatusIdParameter":{ @@ -197,4 +199,5 @@ "description": "System generated Operation Status ID" } } - } \ No newline at end of file + } +} \ No newline at end of file From b88151e9f81b4b0870065fa36bfca10a1c44fd18 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 10 May 2023 17:13:14 -0700 Subject: [PATCH 05/35] Proper braces --- .../stable/2023-03-01/consumption_pricesheet.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index f81f7a201a6a..10c56e22d1df 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -120,6 +120,7 @@ } } } + } }, "definitions": { "DownloadProperties": { @@ -199,5 +200,4 @@ "description": "System generated Operation Status ID" } } - } -} \ No newline at end of file + } \ No newline at end of file From 73d80d0aa6ef1f03ce764b3c536a627d1bad9c6a Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 10 May 2023 17:53:12 -0700 Subject: [PATCH 06/35] corrections --- .../stable/2023-03-01/consumption_pricesheet.json | 8 ++++++-- .../2023-03-01/examples/EAPriceSheetOperationStatus.json | 3 --- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 10c56e22d1df..ff35d48c6c64 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -69,7 +69,8 @@ "type": "string" }, "Retry-After": { - "type": "integer" + "type": "integer", + "format": "int64" } } }, @@ -101,6 +102,9 @@ { "$ref": "#/parameters/billingAccountIdParameter" }, + { + "$ref": "#/parameters/apiVersionParameter" + }, { "$ref": "#/parameters/operationStatusIdParameter" } @@ -189,7 +193,7 @@ "description": "Billing Period Name.", "required": true, "type": "string", - "pattern": "^[a-z][a-z0-9]*$", + "pattern": "^[0-9]*$", "x-ms-parameter-location": "method" }, "operationStatusIdParameter":{ diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json index 8f85e08ae021..5fe30c73042d 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json @@ -6,9 +6,6 @@ "responses": { "200": { "body": { - "id": "/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.Consumption/operationResults/00000000-0000-0000-0000-000000000000", - "name": "00000000-0000-0000-0000-000000000000", - "type": "Microsoft.Consumption/operationResults", "properties": { "downloadUrl": "https://xxxxxx.blob.core.windows.net/armpricesheetreportdownloadcontainer/20230510/00000000-0000-0000-0000-000000000000", "validTill": "2023-05-11T05:12:50.4266333Z" From 17a19ec879b3f18e5eca9c1a50945e7535b4f63c Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 10 May 2023 23:00:47 -0700 Subject: [PATCH 07/35] corrections --- .../2023-03-01/consumption_pricesheet.json | 27 ++++++------------- .../examples/EAPriceSheetOperationStatus.json | 6 ++--- 2 files changed, 10 insertions(+), 23 deletions(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index ff35d48c6c64..7ab17b24be7b 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -112,8 +112,13 @@ "responses": { "200": { "description": "Completed.", - "schema": { - "$ref": "#/definitions/DownloadProperties" + "body": { + "downloadUrl": { + "type": "string" + }, + "validTill": { + "type": "string" + } } }, "default": { @@ -126,23 +131,7 @@ } } }, - "definitions": { - "DownloadProperties": { - "description": "The properties of the price sheet download.", - "type":"object", - "properties": { - "downloadUrl": { - "description": "The link (url) to download the pricesheet.", - "type": "string", - "readOnly": true - }, - "validTill": { - "description": "Download link validity.", - "type": "string", - "readOnly": true - } - } - }, + "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", diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json index 5fe30c73042d..c4c15244b66d 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json @@ -6,10 +6,8 @@ "responses": { "200": { "body": { - "properties": { - "downloadUrl": "https://xxxxxx.blob.core.windows.net/armpricesheetreportdownloadcontainer/20230510/00000000-0000-0000-0000-000000000000", - "validTill": "2023-05-11T05:12:50.4266333Z" - } + "downloadUrl": "https://xxxxxx.blob.core.windows.net/armpricesheetreportdownloadcontainer/20230510/00000000-0000-0000-0000-000000000000", + "validTill": "2023-05-11T05:12:50.4266333Z" } } } From 6a47fe484ef2f7116f4fe094bdf36c46aca0c9be Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 10 May 2023 23:40:32 -0700 Subject: [PATCH 08/35] edits --- .../2023-03-01/consumption_pricesheet.json | 29 +++++++++++++------ 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 7ab17b24be7b..3f636ac26b8a 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -112,14 +112,9 @@ "responses": { "200": { "description": "Completed.", - "body": { - "downloadUrl": { - "type": "string" - }, - "validTill": { - "type": "string" - } - } + "schema": { + "$ref": "#/definitions/DownloadProperties" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -130,8 +125,24 @@ } } } - }, + }, "definitions": { + "DownloadProperties": { + "description": "Pricesheet download result showing the URL for the file.", + "type": "object", + "properties": { + "downloadUrl": { + "description": "The link (url) to download the pricesheet.", + "type": "string", + "readOnly": true + }, + "validTill": { + "description": "Download link validity.", + "type": "string", + "readOnly": true + } + } + }, "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", From bcdd8330e1a752c5533837648c2d4abab1f8f006 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Thu, 11 May 2023 11:10:32 -0700 Subject: [PATCH 09/35] corrections --- .../2023-03-01/consumption_pricesheet.json | 364 +++++++++--------- 1 file changed, 179 insertions(+), 185 deletions(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 3f636ac26b8a..4b6ab3de98b9 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -1,207 +1,201 @@ { - "swagger": "2.0", - "info": { - "version": "2023-03-01", - "title": "ConsumptionManagementClient", - "description": "Consumption management client provides access to consumption resources for Azure Enterprise Subscriptions." - }, - "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" - } + "swagger": "2.0", + "info": { + "version": "2023-03-01", + "title": "ConsumptionManagementClient", + "description": "Consumption management client provides access to consumption resources for Azure Enterprise Subscriptions." + }, + "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.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/download": { - "get": { - "tags": [ - "PriceSheet" - ], - "operationId": "PriceSheet_GetByBillingAccountPeriod", - "description": "Get the price sheet for a scope by billingAccount and billing period.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + } + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/download": { + "get": { + "tags": [ + "PriceSheet" + ], + "operationId": "PriceSheet_GetByBillingAccountPeriod", + "description": "Get the price sheet for a scope by billingAccount and billing period.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "EAPriceSheetForBillingPeriod": { + "$ref": "./examples/EAPriceSheetForBillingPeriod.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "EAPriceSheetForBillingPeriod": { - "$ref": "./examples/EAPriceSheetForBillingPeriod.json" - } + { + "$ref": "#/parameters/apiVersionParameter" }, - "parameters": [ - { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/billingPeriodNameParameter" - } - ], - "responses": { - "202": { - "description": "Accepted", - "headers": { - "Location": { - "type": "string" - }, - "Retry-After": { - "type": "integer", - "format": "int64" - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" + { + "$ref": "#/parameters/billingPeriodNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int64" } } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } } } - }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/operationStatus/{operationStatusId}": { - "get": { - "tags": [ - "PriceSheet" - ], - "operationId": "PriceSheet_GetByBillingAccountOperationStatus", - "description": "Gets the price sheet URL for a scope by billingAccount and billing period.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/operationStatus/{operationStatusId}": { + "get": { + "tags": [ + "PriceSheet" + ], + "operationId": "PriceSheet_GetByBillingAccountOperationStatus", + "description": "Gets the price sheet URL for a scope by billingAccount and billing period.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "EAPriceSheetOperationStatus": { + "$ref": "./examples/EAPriceSheetOperationStatus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountIdParameter" }, - "x-ms-examples": { - "EAPriceSheetOperationStatus": { - "$ref": "./examples/EAPriceSheetOperationStatus.json" - } + { + "$ref": "#/parameters/apiVersionParameter" }, - "parameters": [ - { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/operationStatusIdParameter" + { + "$ref": "#/parameters/operationStatusIdParameter" + } + ], + "responses": { + "200": { + "description": "Completed.", + "schema": { + "$ref": "#/definitions/DownloadProperties" } - ], - "responses": { - "200": { - "description": "Completed.", - "schema": { - "$ref": "#/definitions/DownloadProperties" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" } } } } + } }, - "definitions": { - "DownloadProperties": { - "description": "Pricesheet download result showing the URL for the file.", - "type": "object", - "properties": { - "downloadUrl": { - "description": "The link (url) to download the pricesheet.", - "type": "string", - "readOnly": true - }, - "validTill": { - "description": "Download link validity.", - "type": "string", - "readOnly": true - } - } - }, - "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" - } + "definitions": { + "DownloadProperties": { + "description": "The properties of the price sheet download.", + "type": "object", + "properties": { + "downloadUrl": { + "description": "The link (url) to download the pricesheet.", + "type": "string", + "readOnly": true + }, + "validTill": { + "description": "Download link validity.", + "type": "string", + "readOnly": true } - }, - "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 + } + }, + "ErrorResponse": { + "properties": { + "error": { + "type": "object", + "description": "The details of the error.", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + } } } } + } + }, + "parameters": { + "billingAccountIdParameter": { + "name": "billingAccountId", + "in": "path", + "description": "BillingAccount ID", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" }, - "parameters": { - "billingAccountIdParameter": { - "name": "billingAccountId", - "in": "path", - "description": "BillingAccount ID", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "apiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "x-ms-parameter-location": "method", - "description": "Version of the API to be used with the client request. The current version is 2023-03-01." - }, - "billingPeriodNameParameter": { - "name": "billingPeriodName", - "in": "path", - "description": "Billing Period Name.", - "required": true, - "type": "string", - "pattern": "^[0-9]*$", - "x-ms-parameter-location": "method" - }, - "operationStatusIdParameter":{ - "name": "operationStatusId", - "in": "path", - "required": true, - "type": "string", - "description": "System generated Operation Status ID" - } + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Version of the API to be used with the client request. The current version is 2023-03-01." + }, + "billingPeriodNameParameter": { + "name": "billingPeriodName", + "in": "path", + "description": "Billing Period Name.", + "required": true, + "type": "string", + "pattern": "^[0-9]*$", + "x-ms-parameter-location": "method" + }, + "operationStatusIdParameter": { + "name": "operationStatusId", + "in": "path", + "required": true, + "type": "string", + "description": "System generated Operation Status ID" } - } \ No newline at end of file + } +} \ No newline at end of file From 4ef23f4a1ee2dce13b48045031e7d5bca32f6670 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Thu, 11 May 2023 11:30:55 -0700 Subject: [PATCH 10/35] edit --- .../stable/2023-03-01/consumption_pricesheet.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 4b6ab3de98b9..3784c6c2c84a 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -144,6 +144,8 @@ } }, "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": { "type": "object", From b19299ee2c1b3960237901208a31c1e2919bbcbd Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Thu, 11 May 2023 12:28:34 -0700 Subject: [PATCH 11/35] Removed unwanted path and example file --- .../2023-03-01/consumption_pricesheet.json | 99 +++++++------------ .../EAPriceSheetForBillingPeriod.json | 10 +- .../examples/EAPriceSheetOperationStatus.json | 14 --- 3 files changed, 43 insertions(+), 80 deletions(-) delete mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 3784c6c2c84a..bd61a8aa9f17 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -40,11 +40,14 @@ "PriceSheet" ], "operationId": "PriceSheet_GetByBillingAccountPeriod", - "description": "Get the price sheet for a scope by billingAccount and billing period.", + "description": "Generates the pricesheet for the provided billing period asynchronously based on the enrollment id", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" }, "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, "x-ms-examples": { "EAPriceSheetForBillingPeriod": { "$ref": "./examples/EAPriceSheetForBillingPeriod.json" @@ -62,6 +65,12 @@ } ], "responses": { + "200": { + "description": "Request processing completed.", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, "202": { "description": "Accepted", "headers": { @@ -77,56 +86,38 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "common-types.json#/definitions/ErrorResponse" } } } } - }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/operationStatus/{operationStatusId}": { - "get": { - "tags": [ - "PriceSheet" - ], - "operationId": "PriceSheet_GetByBillingAccountOperationStatus", - "description": "Gets the price sheet URL for a scope by billingAccount and billing period.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "EAPriceSheetOperationStatus": { - "$ref": "./examples/EAPriceSheetOperationStatus.json" + } + }, + "definitions": { + "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 } }, - "parameters": [ - { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/operationStatusIdParameter" - } - ], - "responses": { - "200": { - "description": "Completed.", - "schema": { - "$ref": "#/definitions/DownloadProperties" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the resource generated.", + "$ref": "#/definitions/DownloadProperties" } } - } - }, - "definitions": { + }, "DownloadProperties": { "description": "The properties of the price sheet download.", "type": "object", @@ -142,28 +133,6 @@ "readOnly": true } } - }, - "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": { - "type": "object", - "description": "The details of the error.", - "properties": { - "code": { - "description": "Error code.", - "type": "string", - "readOnly": true - }, - "message": { - "description": "Error message indicating why the operation failed.", - "type": "string", - "readOnly": true - } - } - } - } } }, "parameters": { diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetForBillingPeriod.json index 1deb75f4f130..262b08d48bc9 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetForBillingPeriod.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetForBillingPeriod.json @@ -7,10 +7,18 @@ "responses": { "202": { "headers": { - "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.Consumption/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-03-01", "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.Consumption/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-03-01", "Retry-After": 10 } + }, + "200": { + "body": { + "status": "Completed", + "properties": { + "downloadUrl": "https://xxxxxx.blob.core.windows.net/armpricesheetreportdownloadcontainer/20230510/00000000-0000-0000-0000-000000000000", + "validTill": "2023-05-11T05:12:50.4266333Z" + } + } } } } \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json deleted file mode 100644 index c4c15244b66d..000000000000 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetOperationStatus.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "parameters": { - "billingAccountId": "0000000", - "operationStatusId": "00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "downloadUrl": "https://xxxxxx.blob.core.windows.net/armpricesheetreportdownloadcontainer/20230510/00000000-0000-0000-0000-000000000000", - "validTill": "2023-05-11T05:12:50.4266333Z" - } - } - } -} \ No newline at end of file From c7b4448a2a24b74f615d0ace11a5eb78dff1e21c Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Thu, 11 May 2023 12:48:14 -0700 Subject: [PATCH 12/35] Added error response back --- .../2023-03-01/consumption_pricesheet.json | 28 ++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index bd61a8aa9f17..80668e282563 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -86,7 +86,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "common-types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -133,6 +133,32 @@ "readOnly": true } } + }, + "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 + } + } } }, "parameters": { From 14815b1e14a7bef5917f5d9458606ccd350782cd Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 17 May 2023 11:22:47 -0700 Subject: [PATCH 13/35] Call method correction --- .../stable/2023-03-01/consumption_pricesheet.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 80668e282563..9df1de117903 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -35,7 +35,7 @@ }, "paths": { "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/download": { - "get": { + "post": { "tags": [ "PriceSheet" ], From f4030868e2860f078d4194a90c3c9845e61a4e03 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 17 May 2023 12:08:55 -0700 Subject: [PATCH 14/35] validating Linter error - testing --- .../stable/2023-03-01/consumption_pricesheet.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 9df1de117903..de915387f01b 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -34,7 +34,7 @@ } }, "paths": { - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/download": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheetsdownload": { "post": { "tags": [ "PriceSheet" From 50e099e2e409eefd373e63554ca7f4115c231e61 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 17 May 2023 12:30:32 -0700 Subject: [PATCH 15/35] Removed errorResponse to common file --- .../stable/2023-03-01/common-types.json | 65 +++++++++++++++++++ .../2023-03-01/consumption_pricesheet.json | 28 +------- 2 files changed, 66 insertions(+), 27 deletions(-) create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json new file mode 100644 index 000000000000..813ca247a800 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json @@ -0,0 +1,65 @@ +{ + "swagger": "2.0", + "info": { + "version": "2023-03-01", + "title": "ConsumptionManagementClient" + }, + "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": {}, + "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 + } + } + } + }, + "parameters": {} +} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index de915387f01b..6ac13d86bc71 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -86,7 +86,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "common-types.json#/definitions/ErrorResponse" } } } @@ -133,32 +133,6 @@ "readOnly": true } } - }, - "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 - } - } } }, "parameters": { From 38ed9dde34a06ac3783b278077a7e39945ec8a6c Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 17 May 2023 13:43:03 -0700 Subject: [PATCH 16/35] errorResponse --- .../stable/2023-03-01/common-types.json | 42 +++++++++++++++++++ .../2023-03-01/consumption_pricesheet.json | 2 +- 2 files changed, 43 insertions(+), 1 deletion(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json index 813ca247a800..db6bee372d93 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json @@ -57,8 +57,50 @@ "description": "Error message indicating why the operation failed.", "type": "string", "readOnly": true + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The error target." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-identifiers": [ + "message", + "target" + ], + "description": "The error details." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "x-ms-identifiers": [], + "description": "The error additional info." } } + }, + "ErrorAdditionalInfo": { + "type": "object", + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The additional info type." + }, + "info": { + "readOnly": true, + "type": "object", + "description": "The additional info." + } + }, + "description": "The resource management error additional info." } }, "parameters": {} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 6ac13d86bc71..024a3f2bf390 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -34,7 +34,7 @@ } }, "paths": { - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheetsdownload": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/download": { "post": { "tags": [ "PriceSheet" From 5a2614eab29a600bd5f5226a765046d59f5ecd63 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 17 May 2023 15:38:51 -0700 Subject: [PATCH 17/35] Adding common-types json to readme --- specification/consumption/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index 2ca3d7397222..d488b7cda945 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -38,6 +38,7 @@ These settings apply only when `--tag=package-2023-03` is specified on the comma input-file: - Microsoft.Consumption/stable/2023-03-01/consumption.json - Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json + - Microsoft.Consumption/stable/2023-03-01/common-types.json ``` ### Tag: package-2022-09 From 079af5ae355881f623bc4ea0fa39fdf92596c91f Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 17 May 2023 16:39:42 -0700 Subject: [PATCH 18/35] ErrorDetail addition --- .../stable/2023-03-01/common-types.json | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json index db6bee372d93..0e59a833b14b 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json @@ -86,6 +86,48 @@ } } }, + "ErrorDetail": { + "description": "The error detail.", + "type": "object", + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The error target." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-identifiers": [ + "message", + "target" + ], + "description": "The error details." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "x-ms-identifiers": [], + "description": "The error additional info." + } + } + }, "ErrorAdditionalInfo": { "type": "object", "properties": { From 5054dc7b0e8146ec9e29f09fc34c6ee17cc4ba8c Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Thu, 18 May 2023 15:52:34 -0700 Subject: [PATCH 19/35] Removed common-types. Edits to correct Linter issues. --- .../stable/2023-03-01/common-types.json | 149 ------------------ .../2023-03-01/consumption_pricesheet.json | 14 +- 2 files changed, 3 insertions(+), 160 deletions(-) delete mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json deleted file mode 100644 index 0e59a833b14b..000000000000 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/common-types.json +++ /dev/null @@ -1,149 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2023-03-01", - "title": "ConsumptionManagementClient" - }, - "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": {}, - "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 - }, - "target": { - "readOnly": true, - "type": "string", - "description": "The error target." - }, - "details": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ErrorDetail" - }, - "x-ms-identifiers": [ - "message", - "target" - ], - "description": "The error details." - }, - "additionalInfo": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ErrorAdditionalInfo" - }, - "x-ms-identifiers": [], - "description": "The error additional info." - } - } - }, - "ErrorDetail": { - "description": "The error detail.", - "type": "object", - "properties": { - "code": { - "readOnly": true, - "type": "string", - "description": "The error code." - }, - "message": { - "readOnly": true, - "type": "string", - "description": "The error message." - }, - "target": { - "readOnly": true, - "type": "string", - "description": "The error target." - }, - "details": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ErrorDetail" - }, - "x-ms-identifiers": [ - "message", - "target" - ], - "description": "The error details." - }, - "additionalInfo": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ErrorAdditionalInfo" - }, - "x-ms-identifiers": [], - "description": "The error additional info." - } - } - }, - "ErrorAdditionalInfo": { - "type": "object", - "properties": { - "type": { - "readOnly": true, - "type": "string", - "description": "The additional info type." - }, - "info": { - "readOnly": true, - "type": "object", - "description": "The additional info." - } - }, - "description": "The resource management error additional info." - } - }, - "parameters": {} -} \ No newline at end of file diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 024a3f2bf390..ee17a14da84f 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -39,7 +39,7 @@ "tags": [ "PriceSheet" ], - "operationId": "PriceSheet_GetByBillingAccountPeriod", + "operationId": "PriceSheet_DownloadByBillingAccountPeriod", "description": "Generates the pricesheet for the provided billing period asynchronously based on the enrollment id", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" @@ -58,7 +58,7 @@ "$ref": "#/parameters/billingAccountIdParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/billingPeriodNameParameter" @@ -86,7 +86,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "common-types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -144,14 +144,6 @@ "type": "string", "x-ms-parameter-location": "method" }, - "apiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "x-ms-parameter-location": "method", - "description": "Version of the API to be used with the client request. The current version is 2023-03-01." - }, "billingPeriodNameParameter": { "name": "billingPeriodName", "in": "path", From 5d30090e70575f844dee96eeae086a8703a282e9 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Thu, 18 May 2023 16:58:00 -0700 Subject: [PATCH 20/35] removed the reference to old file --- specification/consumption/resource-manager/readme.md | 1 - 1 file changed, 1 deletion(-) diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index d488b7cda945..2ca3d7397222 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -38,7 +38,6 @@ These settings apply only when `--tag=package-2023-03` is specified on the comma input-file: - Microsoft.Consumption/stable/2023-03-01/consumption.json - Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json - - Microsoft.Consumption/stable/2023-03-01/common-types.json ``` ### Tag: package-2022-09 From bb11c7745952418235c58bc3d95ef35826041e3b Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Tue, 23 May 2023 10:20:42 -0700 Subject: [PATCH 21/35] CI issues fixed --- .../2023-03-01/consumption_pricesheet.json | 4 +- .../EAPriceSheetForBillingPeriod.json | 38 +++++++++---------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index ee17a14da84f..432063230907 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -92,7 +92,7 @@ } } } - }, + }, "definitions": { "OperationStatus": { "description": "The status of the long running operation.", @@ -161,4 +161,4 @@ "description": "System generated Operation Status ID" } } -} \ No newline at end of file +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetForBillingPeriod.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetForBillingPeriod.json index 262b08d48bc9..97daf5d0f5fc 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetForBillingPeriod.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/examples/EAPriceSheetForBillingPeriod.json @@ -1,24 +1,24 @@ { - "parameters": { - "api-version": "2023-03-01", - "billingAccountId": "0000000", - "billingPeriodName": "202305" + "parameters": { + "api-version": "2023-03-01", + "billingAccountId": "0000000", + "billingPeriodName": "202305" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.Consumption/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-03-01", + "Retry-After": 10 + } }, - "responses": { - "202": { - "headers": { - "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.Consumption/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-03-01", - "Retry-After": 10 - } - }, - "200": { - "body": { - "status": "Completed", - "properties": { - "downloadUrl": "https://xxxxxx.blob.core.windows.net/armpricesheetreportdownloadcontainer/20230510/00000000-0000-0000-0000-000000000000", - "validTill": "2023-05-11T05:12:50.4266333Z" - } + "200": { + "body": { + "status": "Completed", + "properties": { + "downloadUrl": "https://xxxxxx.blob.core.windows.net/armpricesheetreportdownloadcontainer/20230510/00000000-0000-0000-0000-000000000000", + "validTill": "2023-05-11T05:12:50.4266333Z" } } } - } \ No newline at end of file + } +} From 572953114406caf6cc8bac3a9e745e8c43218993 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 24 May 2023 13:22:11 -0700 Subject: [PATCH 22/35] Corrections based on PR comment --- .../stable/2023-03-01/consumption_pricesheet.json | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 432063230907..3942cf800fe2 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -130,6 +130,7 @@ "validTill": { "description": "Download link validity.", "type": "string", + "format": "date-time", "readOnly": true } } @@ -152,13 +153,6 @@ "type": "string", "pattern": "^[0-9]*$", "x-ms-parameter-location": "method" - }, - "operationStatusIdParameter": { - "name": "operationStatusId", - "in": "path", - "required": true, - "type": "string", - "description": "System generated Operation Status ID" } } } From 24eb9441557724e531b33ffe9c06630bbc4297ae Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 31 May 2023 08:27:58 -0700 Subject: [PATCH 23/35] rename --- .../stable/2023-03-01/consumption_pricesheet.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json index 3942cf800fe2..f08b35648e65 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json @@ -114,11 +114,11 @@ "properties": { "x-ms-client-flatten": true, "description": "The properties of the resource generated.", - "$ref": "#/definitions/DownloadProperties" + "$ref": "#/definitions/PricesheetDownloadProperties" } } }, - "DownloadProperties": { + "PricesheetDownloadProperties": { "description": "The properties of the price sheet download.", "type": "object", "properties": { From e0d315492fb9c9fb21fb0d809de5759738aa850c Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Thu, 1 Jun 2023 16:06:31 -0700 Subject: [PATCH 24/35] SDK error fix --- .../stable/2023-03-01/consumption.json | 89 +++++++------------ 1 file changed, 32 insertions(+), 57 deletions(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json index 85e97f868e47..e7a1c762612c 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json @@ -158,7 +158,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -255,7 +255,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -297,7 +297,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -342,7 +342,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -397,7 +397,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -434,7 +434,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -476,7 +476,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -581,7 +581,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -620,7 +620,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -662,7 +662,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -714,7 +714,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -772,7 +772,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -868,7 +868,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -917,7 +917,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -969,7 +969,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -1056,7 +1056,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -1116,7 +1116,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -1185,7 +1185,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/HighCasedErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -1237,7 +1237,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -1289,7 +1289,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -1355,7 +1355,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -1424,7 +1424,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -1457,7 +1457,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -1509,7 +1509,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -1551,7 +1551,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -1599,7 +1599,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -1651,7 +1651,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -1696,7 +1696,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -1748,7 +1748,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -1803,7 +1803,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -1851,7 +1851,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } } @@ -4924,21 +4924,6 @@ } } }, - "ErrorDetails": { - "description": "The details of the error.", - "properties": { - "code": { - "description": "Error code.", - "type": "string", - "readOnly": true - }, - "message": { - "description": "Error message indicating why the operation failed.", - "type": "string", - "readOnly": true - } - } - }, "HighCasedErrorDetails": { "description": "The details of the error.", "properties": { @@ -4963,17 +4948,7 @@ "$ref": "#/definitions/HighCasedErrorDetails" } } - }, - "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" - } - } - }, + }, "Operation": { "description": "A Consumption REST API operation.", "type": "object", From 135dd5f8ad4ff455e01077d4c09ac206ad19accd Mon Sep 17 00:00:00 2001 From: pthippeswamy <78939191+pthippeswamy@users.noreply.github.com> Date: Thu, 1 Jun 2023 16:21:22 -0700 Subject: [PATCH 25/35] Delete consumption.json --- .../stable/2023-03-01/consumption.json | 5966 ----------------- 1 file changed, 5966 deletions(-) delete mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json deleted file mode 100644 index e7a1c762612c..000000000000 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json +++ /dev/null @@ -1,5966 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2023-03-01", - "title": "ConsumptionManagementClient", - "description": "Consumption management client provides access to consumption resources for Azure Enterprise Subscriptions." - }, - "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": { - "/{scope}/providers/Microsoft.Consumption/usageDetails": { - "get": { - "tags": [ - "UsageDetails" - ], - "operationId": "UsageDetails_List", - "description": "Lists the usage details for the defined scope. Usage details are available via this API only for May 1, 2014 or later.\n\n**Note:Microsoft will be retiring the Consumption Usage Details API at some point in the future. We do not recommend that you take a new dependency on this API. Please use the Cost Details API instead. We will notify customers once a date for retirement has been determined.For Learn more,see [Generate Cost Details Report - Create Operation](https://learn.microsoft.com/en-us/rest/api/cost-management/generate-cost-details-report/create-operation?tabs=HTTP)**", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "UsageDetailsList-Legacy": { - "$ref": "./examples/UsageDetailsList.json" - }, - "UsageDetailsListFilterByTag-Legacy": { - "$ref": "./examples/UsageDetailsListFilterByTag.json" - }, - "UsageDetailsListForBillingPeriod-Legacy": { - "$ref": "./examples/UsageDetailsListForBillingPeriod.json" - }, - "UsageDetailsExpand-Legacy": { - "$ref": "./examples/UsageDetailsExpand.json" - }, - "UsageDetailsListByMetricActualCost-Legacy": { - "$ref": "./examples/UsageDetailsListByMetricActualCost.json" - }, - "UsageDetailsListByMetricAmortizedCost-Legacy": { - "$ref": "./examples/UsageDetailsListByMetricAmortizedCost.json" - }, - "UsageDetailsListByMetricUsage-Legacy": { - "$ref": "./examples/UsageDetailsListByMetricUsage.json" - }, - "BillingAccountUsageDetailsList-Legacy": { - "$ref": "./examples/UsageDetailsListByBillingAccount.json" - }, - "BillingAccountUsageDetailsListForBillingPeriod-Legacy": { - "$ref": "./examples/UsageDetailsListForBillingPeriodByBillingAccount.json" - }, - "DepartmentUsageDetailsList-Legacy": { - "$ref": "./examples/UsageDetailsListByDepartment.json" - }, - "DepartmentUsageDetailsListForBillingPeriod-Legacy": { - "$ref": "./examples/UsageDetailsListForBillingPeriodByDepartment.json" - }, - "EnrollmentAccountUsageDetailsList-Legacy": { - "$ref": "./examples/UsageDetailsListByEnrollmentAccount.json" - }, - "EnrollmentAccountUsageDetailsListForBillingPeriod-Legacy": { - "$ref": "./examples/UsageDetailsListForBillingPeriodByEnrollmentAccount.json" - }, - "ManagementGroupUsageDetailsList-Legacy": { - "$ref": "./examples/UsageDetailsListByManagementGroup.json" - }, - "ManagementGroupUsageDetailsListForBillingPeriod-Legacy": { - "$ref": "./examples/UsageDetailsListForBillingPeriodByManagementGroup.json" - }, - "BillingAccountUsageDetailsList-Modern": { - "$ref": "./examples/UsageDetailsListByMCABillingAccount.json" - }, - "BillingProfileUsageDetailsList-Modern": { - "$ref": "./examples/UsageDetailsListByMCABillingProfile.json" - }, - "InvoiceSectionUsageDetailsList-Modern": { - "$ref": "./examples/UsageDetailsListByMCAInvoiceSection.json" - }, - "CustomerUsageDetailsList-Modern": { - "$ref": "./examples/UsageDetailsListByMCACustomer.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeUsageDetailsParameter" - }, - { - "name": "$expand", - "description": "May be used to expand the properties/additionalInfo or properties/meterDetails within a list of usage details. By default, these fields are not included when listing usage details.", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "$filter", - "description": "May be used to filter usageDetails by properties/resourceGroup, properties/resourceName, properties/resourceId, properties/chargeType, properties/reservationId, properties/publisherType or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:). PublisherType Filter accepts two values azure and marketplace and it is currently supported for Web Direct Offer Type", - "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 usageDetails.", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "minimum": 1, - "maximum": 1000 - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/metricParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/UsageDetailsListResult" - } - }, - "204": { - "description": "No Content. The request has succeeded but returned no results." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Consumption/marketplaces": { - "get": { - "tags": [ - "Marketplaces" - ], - "x-ms-odata": "#/definitions/Marketplace", - "operationId": "Marketplaces_List", - "description": "Lists the marketplaces for a scope at the defined scope. Marketplaces are available via this API only for May 1, 2014 or later.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "SubscriptionMarketplacesList": { - "$ref": "./examples/MarketplacesList.json" - }, - "SubscriptionMarketplacesListForBillingPeriod": { - "$ref": "./examples/MarketplacesListForBillingPeriod.json" - }, - "BillingAccountMarketplacesList": { - "$ref": "./examples/MarketplacesByBillingAccountList.json" - }, - "BillingAccountMarketplacesListForBillingPeriod": { - "$ref": "./examples/MarketplacesByBillingAccountListForBillingPeriod.json" - }, - "DepartmentMarketplacesList": { - "$ref": "./examples/MarketplacesByDepartmentList.json" - }, - "DepartmentMarketplacesListForBillingPeriod": { - "$ref": "./examples/MarketplacesByDepartment_ListByBillingPeriod.json" - }, - "EnrollmentAccountMarketplacesList": { - "$ref": "./examples/MarketplacesByEnrollmentAccountList.json" - }, - "EnrollmentAccountMarketplacesListForBillingPeriod": { - "$ref": "./examples/MarketplacesByEnrollmentAccounts_ListByBillingPeriod.json" - }, - "ManagementGroupMarketplacesList": { - "$ref": "./examples/MarketplacesByManagementGroupList.json" - }, - "ManagementGroupMarketplacesListForBillingPeriod": { - "$ref": "./examples/MarketplacesByManagementGroup_ListForBillingPeriod.json" - } - }, - "parameters": [ - { - "name": "$filter", - "description": "May be used to filter marketplaces by properties/usageEnd (Utc time), properties/usageStart (Utc time), properties/resourceGroup, properties/instanceName or properties/instanceId. 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" - }, - { - "name": "$top", - "description": "May be used to limit the number of results to the most recent N marketplaces.", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "minimum": 1, - "maximum": 1000 - }, - { - "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" - }, - { - "$ref": "#/parameters/scopeMarketplaceParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/MarketplacesListResult" - } - }, - "204": { - "description": "An empty response is sent when there is no information available within the selected scope." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Consumption/budgets": { - "get": { - "tags": [ - "Budgets" - ], - "operationId": "Budgets_List", - "description": "Lists all budgets for the defined scope.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "BudgetsList": { - "$ref": "./examples/BudgetsList.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeBudgetParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/BudgetsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Consumption/budgets/{budgetName}": { - "get": { - "tags": [ - "Budgets" - ], - "operationId": "Budgets_Get", - "description": "Gets the budget for the scope by budget name.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "Budget": { - "$ref": "./examples/Budget.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeBudgetParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/budgetNameParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/Budget" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "tags": [ - "Budgets" - ], - "operationId": "Budgets_CreateOrUpdate", - "description": "The operation to create or update a budget. You can optionally provide an eTag if desired as a form of concurrency control. To obtain the latest eTag for a given budget, perform a get operation prior to your put operation.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "CreateOrUpdateBudget": { - "$ref": "./examples/CreateOrUpdateBudget.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeBudgetParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/budgetNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Budget" - }, - "description": "Parameters supplied to the Create Budget operation." - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/Budget" - } - }, - "201": { - "description": "Created.", - "schema": { - "$ref": "#/definitions/Budget" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "tags": [ - "Budgets" - ], - "operationId": "Budgets_Delete", - "description": "The operation to delete a budget.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "DeleteBudget": { - "$ref": "./examples/DeleteBudget.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeBudgetParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/budgetNameParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - } - }, - "/{scope}/providers/Microsoft.Consumption/tags": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_Get", - "description": "Get all available tag keys for the defined scope", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "Tags_Get": { - "$ref": "./examples/Tags.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeTagsParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/TagsResult" - } - }, - "204": { - "description": "An empty response is sent when there is no information available within the selected scope." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - } - }, - "/{scope}/providers/Microsoft.Consumption/charges": { - "get": { - "tags": [ - "Charges" - ], - "operationId": "Charges_List", - "description": "Lists the charges based for the defined scope.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "ChargesListForEnrollmentAccount-Legacy": { - "$ref": "./examples/ChargesListForEnrollmentAccountFilterByStartEndDate.json" - }, - "ChangesForBillingPeriodByEnrollmentAccount-Legacy": { - "$ref": "./examples/ChargesForBillingPeriodByEnrollmentAccount.json" - }, - "ChargesListByDepartment-Legacy": { - "$ref": "./examples/ChargesListForDepartmentFilterByStartEndDate.json" - }, - "ChangesForBillingPeriodByDepartment-Legacy": { - "$ref": "./examples/ChargesForBillingPeriodByDepartment.json" - }, - "ChargesListByBillingAccount-Modern": { - "$ref": "./examples/ChargesListByModernBillingAccount.json" - }, - "ChargesListByBillingAccountGroupByBillingProfileId-Modern": { - "$ref": "./examples/ChargesListByModernBillingAccountGroupByBillingProfileId.json" - }, - "ChargesListByBillingAccountGroupByInvoiceSectionId-Modern": { - "$ref": "./examples/ChargesListByModernBillingAccountGroupByInvoiceSectionId.json" - }, - "ChargesListByBillingAccountGroupByCustomerId-Modern": { - "$ref": "./examples/ChargesListByModernBillingAccountGroupByCustomerId.json" - }, - "ChargesListByBillingProfile-Modern": { - "$ref": "./examples/ChargesListByModernBillingProfile.json" - }, - "ChargesListByBillingProfileInvoiceSection-Modern": { - "$ref": "./examples/ChargesListByModernBillingProfileInvoiceSection.json" - }, - "ChargesListByBillingProfileGroupByInvoiceSectionId-Modern": { - "$ref": "./examples/ChargesListByModernBillingProfileGroupByInvoiceSectionId.json" - }, - "ChargesListByInvoiceSectionId-Modern": { - "$ref": "./examples/ChargesListByModernInvoiceSectionId.json" - }, - "ChargesListByCustomer-Modern": { - "$ref": "./examples/ChargesListByModernCustomer.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeChargesParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "name": "startDate", - "in": "query", - "description": "Start date", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - { - "name": "endDate", - "in": "query", - "description": "End date", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - { - "name": "$filter", - "description": "May be used to filter charges by properties/usageEnd (Utc time), properties/usageStart (Utc time). The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "$apply", - "description": "May be used to group charges for billingAccount scope by properties/billingProfileId, properties/invoiceSectionId, properties/customerId (specific for Partner Led), or for billingProfile scope by properties/invoiceSectionId.", - "in": "query", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ChargesListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - } - }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/balances": { - "get": { - "tags": [ - "Balances" - ], - "operationId": "Balances_GetByBillingAccount", - "description": "Gets the balances for a scope by billingAccountId. Balances are available via this API only for May 1, 2014 or later.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "Balances": { - "$ref": "./examples/BalancesByBillingAccount.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/billingAccountIdParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/Balance" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - } - }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/balances": { - "get": { - "tags": [ - "Balances" - ], - "operationId": "Balances_GetForBillingPeriodByBillingAccount", - "description": "Gets the balances for a scope by billing period and billingAccountId. Balances are available via this API only for May 1, 2014 or later.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "Balances": { - "$ref": "./examples/BalancesByBillingAccountForBillingPeriod.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/billingPeriodNameParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/Balance" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - } - }, - "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationSummaries": { - "get": { - "tags": [ - "ReservationSummaries" - ], - "operationId": "ReservationsSummaries_ListByReservationOrder", - "description": "Lists the reservations summaries for daily or monthly grain. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "ReservationSummariesDaily": { - "$ref": "./examples/ReservationSummariesDaily.json" - }, - "ReservationSummariesMonthly": { - "$ref": "./examples/ReservationSummariesMonthly.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/reservationOrderIdParameter" - }, - { - "$ref": "#/parameters/grainParameter" - }, - { - "name": "$filter", - "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'", - "in": "query", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ReservationSummariesListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/reservations/{reservationId}/providers/Microsoft.Consumption/reservationSummaries": { - "get": { - "tags": [ - "ReservationSummaries" - ], - "operationId": "ReservationsSummaries_ListByReservationOrderAndReservation", - "description": "Lists the reservations summaries for daily or monthly grain. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "ReservationSummariesDailyWithReservationId": { - "$ref": "./examples/ReservationSummariesDailyWithReservationId.json" - }, - "ReservationSummariesMonthlyWithReservationId": { - "$ref": "./examples/ReservationSummariesMonthlyWithReservationId.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/reservationOrderIdParameter" - }, - { - "$ref": "#/parameters/reservationIdParameter" - }, - { - "$ref": "#/parameters/grainParameter" - }, - { - "name": "$filter", - "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'", - "in": "query", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ReservationSummariesListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{resourceScope}/providers/Microsoft.Consumption/reservationSummaries": { - "get": { - "tags": [ - "ReservationSummaries" - ], - "operationId": "ReservationsSummaries_List", - "description": "Lists the reservations summaries for the defined scope daily or monthly grain. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "ReservationSummariesDailyWithBillingAccountId": { - "$ref": "./examples/ReservationSummariesDailyWithBillingAccountId.json" - }, - "ReservationSummariesMonthlyWithBillingAccountId": { - "$ref": "./examples/ReservationSummariesMonthlyWithBillingAccountId.json" - }, - "ReservationSummariesDailyWithBillingProfileId": { - "$ref": "./examples/ReservationSummariesDailyWithBillingProfileId.json" - }, - "ReservationSummariesMonthlyWithBillingProfileId": { - "$ref": "./examples/ReservationSummariesMonthlyWithBillingProfileId.json" - }, - "ReservationSummariesMonthlyWithBillingProfileIdReservationId": { - "$ref": "./examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeReservationsSummariesParameter" - }, - { - "$ref": "#/parameters/grainParameter" - }, - { - "name": "startDate", - "in": "query", - "description": "Start date. Only applicable when querying with billing profile", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - { - "name": "endDate", - "in": "query", - "description": "End date. Only applicable when querying with billing profile", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - { - "name": "$filter", - "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'. Not applicable when querying with billing profile", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "reservationId", - "in": "query", - "description": "Reservation Id GUID. Only valid if reservationOrderId is also provided. Filter to a specific reservation", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - { - "name": "reservationOrderId", - "in": "query", - "description": "Reservation Order Id GUID. Required if reservationId is provided. Filter to a specific reservation order", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ReservationSummariesListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/providers/Microsoft.Consumption/reservationDetails": { - "get": { - "tags": [ - "ReservationDetails" - ], - "operationId": "ReservationsDetails_ListByReservationOrder", - "description": "Lists the reservations details for provided date range. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. If the data size is too large, customers may also get 504 as the API timed out preparing the data. In such cases, API call should be made with smaller date ranges or a call to Generate Reservation Details Report API should be made as it is asynchronous and will not run into response size time outs.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "ReservationDetails": { - "$ref": "./examples/ReservationDetails.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/reservationOrderIdParameter" - }, - { - "name": "$filter", - "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'", - "in": "query", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ReservationDetailsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Capacity/reservationorders/{reservationOrderId}/reservations/{reservationId}/providers/Microsoft.Consumption/reservationDetails": { - "get": { - "tags": [ - "ReservationDetails" - ], - "operationId": "ReservationsDetails_ListByReservationOrderAndReservation", - "description": "Lists the reservations details for provided date range. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. If the data size is too large, customers may also get 504 as the API timed out preparing the data. In such cases, API call should be made with smaller date ranges or a call to Generate Reservation Details Report API should be made as it is asynchronous and will not run into response size time outs.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "ReservationDetailsWithReservationId": { - "$ref": "./examples/ReservationDetailsWithReservationId.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/reservationOrderIdParameter" - }, - { - "$ref": "#/parameters/reservationIdParameter" - }, - { - "name": "$filter", - "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge' ", - "in": "query", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ReservationDetailsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{resourceScope}/providers/Microsoft.Consumption/reservationDetails": { - "get": { - "tags": [ - "ReservationDetails" - ], - "operationId": "ReservationsDetails_List", - "description": "Lists the reservations details for provided date range. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. If the data size is too large, customers may also get 504 as the API timed out preparing the data. In such cases, API call should be made with smaller date ranges or a call to Generate Reservation Details Report API should be made as it is asynchronous and will not run into response size time outs.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "ReservationDetailsByBillingAccountId": { - "$ref": "./examples/ReservationDetailsByBillingAccountId.json" - }, - "ReservationDetailsByBillingProfileId": { - "$ref": "./examples/ReservationDetailsByBillingProfileId.json" - }, - "ReservationDetailsByBillingProfileIdReservationId": { - "$ref": "./examples/ReservationDetailsByBillingProfileIdReservationId.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeReservationDetailsParameter" - }, - { - "name": "startDate", - "in": "query", - "description": "Start date. Only applicable when querying with billing profile", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - { - "name": "endDate", - "in": "query", - "description": "End date. Only applicable when querying with billing profile", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - { - "name": "$filter", - "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'. Not applicable when querying with billing profile", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "reservationId", - "in": "query", - "description": "Reservation Id GUID. Only valid if reservationOrderId is also provided. Filter to a specific reservation", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - { - "name": "reservationOrderId", - "in": "query", - "description": "Reservation Order Id GUID. Required if reservationId is provided. Filter to a specific reservation order", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ReservationDetailsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{resourceScope}/providers/Microsoft.Consumption/reservationRecommendations": { - "get": { - "tags": [ - "ReservationRecommendations" - ], - "operationId": "ReservationRecommendations_List", - "description": "List of recommendations for purchasing reserved instances.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "ReservationRecommendationsBySubscription-Legacy": { - "$ref": "./examples/ReservationRecommendationsBySubscription.json" - }, - "ReservationRecommendationsByResourceGroup-Legacy": { - "$ref": "./examples/ReservationRecommendationsByResourceGroup.json" - }, - "ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod-Legacy": { - "$ref": "./examples/ReservationRecommendationsFilterBySubscriptionForScopeLookBackPeriod.json" - }, - "ReservationRecommendationsByBillingAccount-Legacy": { - "$ref": "./examples/ReservationRecommendationsByBillingAccount.json" - }, - "ReservationRecommendationsByBillingProfile-Modern": { - "$ref": "./examples/ReservationRecommendationsByBillingProfile.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/filterParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/scopeReservationRecommendationsParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ReservationRecommendationsListResult" - } - }, - "204": { - "description": "An empty response is sent when there are no recommendations." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{resourceScope}/providers/Microsoft.Consumption/reservationRecommendationDetails": { - "get": { - "tags": [ - "ReservationRecommendationDetails" - ], - "operationId": "ReservationRecommendationDetails_Get", - "description": "Details of a reservation recommendation for what-if analysis of reserved instances.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "ReservationRecommendationsBySubscription-Legacy": { - "$ref": "./examples/ReservationRecommendationDetailsBySubscription.json" - }, - "ReservationRecommendationsByResourceGroup-Legacy": { - "$ref": "./examples/ReservationRecommendationDetailsByResourceGroup.json" - }, - "ReservationRecommendationsByBillingAccount-Legacy": { - "$ref": "./examples/ReservationRecommendationDetailsByBillingAccount.json" - }, - "ReservationRecommendationsByBillingProfile-Modern": { - "$ref": "./examples/ReservationRecommendationDetailsByBillingProfile.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/scopeReservationRecommendationDetailsParameter" - }, - { - "$ref": "#/parameters/scopeParameter" - }, - { - "$ref": "#/parameters/regionParameter" - }, - { - "$ref": "#/parameters/termParameter" - }, - { - "$ref": "#/parameters/lookBackPeriodParameter" - }, - { - "$ref": "#/parameters/productParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ReservationRecommendationDetailsModel" - } - }, - "204": { - "description": "An empty response is sent when there are no recommendation details." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - } - }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/reservationTransactions": { - "get": { - "tags": [ - "ReservationTransactions" - ], - "operationId": "ReservationTransactions_List", - "description": "List of transactions for reserved instances on billing account scope. Note: The refund transactions are posted along with its purchase transaction (i.e. in the purchase billing month). For example, The refund is requested in May 2021. This refund transaction will have event date as May 2021 but the billing month as April 2020 when the reservation purchase was made. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "ReservationTransactionsByEnrollmentNumber": { - "$ref": "./examples/ReservationTransactionsListByEnrollmentNumber.json" - } - }, - "parameters": [ - { - "name": "$filter", - "description": "Filter reservation transactions by date range. The properties/EventDate for start date and end date. The filter supports 'le' and 'ge'. Note: API returns data for the entire start date's and end date's billing month. For example, filter properties/eventDate+ge+2020-01-01+AND+properties/eventDate+le+2020-12-29 will include data for the entire December 2020 month (i.e. will contain records for dates December 30 and 31)", - "in": "query", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/useMarkupIfPartnerParameter" - }, - { - "$ref": "#/parameters/previewMarkupPercentage" - }, - { - "$ref": "#/parameters/billingAccountIdParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ReservationTransactionsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/reservationTransactions": { - "get": { - "tags": [ - "ReservationTransactions" - ], - "operationId": "ReservationTransactions_ListByBillingProfile", - "description": "List of transactions for reserved instances on billing profile scope. The refund transactions are posted along with its purchase transaction (i.e. in the purchase billing month). For example, The refund is requested in May 2021. This refund transaction will have event date as May 2021 but the billing month as April 2020 when the reservation purchase was made. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "ReservationTransactionsByBillingProfileId": { - "$ref": "./examples/ReservationTransactionsListByBillingProfileId.json" - } - }, - "parameters": [ - { - "name": "$filter", - "description": "Filter reservation transactions by date range. The properties/EventDate for start date and end date. The filter supports 'le' and 'ge'. Note: API returns data for the entire start date's and end date's billing month. For example, filter properties/eventDate+ge+2020-01-01+AND+properties/eventDate+le+2020-12-29 will include data for entire December 2020 month (i.e. will contain records for dates December 30 and 31)", - "in": "query", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/billingProfileIdParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ModernReservationTransactionsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Consumption/pricesheets/default": { - "get": { - "tags": [ - "PriceSheet" - ], - "operationId": "PriceSheet_Get", - "description": "Gets the price sheet for a subscription. Price sheet is available via this API only for May 1, 2014 or later.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "PriceSheet": { - "$ref": "./examples/PriceSheet.json" - } - }, - "parameters": [ - { - "name": "$expand", - "description": "May be used to expand the properties/meterDetails within a price sheet. By default, these fields are not included when returning price sheet.", - "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 top N results.", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "minimum": 1, - "maximum": 1000 - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/PriceSheetResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/default": { - "get": { - "tags": [ - "PriceSheet" - ], - "operationId": "PriceSheet_GetByBillingPeriod", - "description": "Get the price sheet for a scope by subscriptionId and billing period. Price sheet is available via this API only for May 1, 2014 or later.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "PriceSheetForBillingPeriod": { - "$ref": "./examples/PriceSheetForBillingPeriod.json" - }, - "PriceSheetExpand": { - "$ref": "./examples/PriceSheetExpand.json" - } - }, - "parameters": [ - { - "name": "$expand", - "description": "May be used to expand the properties/meterDetails within a price sheet. By default, these fields are not included when returning price sheet.", - "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 top N results.", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "minimum": 1, - "maximum": 1000 - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/billingPeriodNameParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/PriceSheetResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - } - }, - "/providers/Microsoft.Consumption/operations": { - "get": { - "tags": [ - "Operations" - ], - "operationId": "Operations_List", - "description": "Lists all of the available consumption REST API operations.", - "x-ms-examples": { - "OperationList": { - "$ref": "./examples/OperationList.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/OperationListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Consumption/aggregatedcost": { - "get": { - "tags": [ - "AggregatedCost" - ], - "operationId": "AggregatedCost_GetByManagementGroup", - "description": "Provides the aggregate cost of a management group and all child management groups by current billing period.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "AggregatedCostByManagementGroup": { - "$ref": "./examples/AggregatedCostByManagementGroup.json" - }, - "AggregatedCostByManagementGroupFilterByDate": { - "$ref": "./examples/AggregatedCostByManagementGroupFilterByDate.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/managementGroupIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "name": "$filter", - "description": "May be used to filter aggregated cost by properties/usageStart (Utc time), properties/usageEnd (Utc time). The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", - "in": "query", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ManagementGroupAggregatedCostResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/aggregatedCost": { - "get": { - "tags": [ - "AggregatedCost" - ], - "operationId": "AggregatedCost_GetForBillingPeriodByManagementGroup", - "description": "Provides the aggregate cost of a management group and all child management groups by specified billing period", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "AggregatedCostListForBillingPeriodByManagementGroup": { - "$ref": "./examples/AggregatedCostForBillingPeriodByManagementGroup.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/managementGroupIdParameter" - }, - { - "$ref": "#/parameters/billingPeriodNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ManagementGroupAggregatedCostResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - } - }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/events": { - "get": { - "tags": [ - "Events" - ], - "operationId": "Events_ListByBillingProfile", - "description": "Lists the events that decrements Azure credits or Microsoft Azure consumption commitment for a billing account or a billing profile for a given start and end date.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "EventsListByBillingProfile": { - "$ref": "./examples/EventsListByBillingProfile.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/billingProfileIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/startDateParameter" - }, - { - "$ref": "#/parameters/endDateParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/Events" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/events": { - "get": { - "tags": [ - "Events" - ], - "operationId": "Events_ListByBillingAccount", - "description": "Lists the events that decrements Azure credits or Microsoft Azure consumption commitment for a billing account or a billing profile for a given start and end date.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "EventsGetByBillingAccount": { - "$ref": "./examples/EventsGetByBillingAccount.json" - }, - "EventsGetByBillingAccountWithFilters": { - "$ref": "./examples/EventsGetByBillingAccountWithFilters.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "name": "$filter", - "description": "May be used to filter the events by lotId, lotSource etc. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", - "in": "query", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/Events" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/lots": { - "get": { - "tags": [ - "Lots" - ], - "operationId": "Lots_ListByBillingProfile", - "description": "Lists all Azure credits for a billing account or a billing profile. The API is only supported for Microsoft Customer Agreements (MCA) billing accounts.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "LotsListByBillingProfile": { - "$ref": "./examples/LotsListByBillingProfile.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/billingProfileIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/Lots" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/lots": { - "get": { - "tags": [ - "Lots" - ], - "operationId": "Lots_ListByBillingAccount", - "description": "Lists all Microsoft Azure consumption commitments for a billing account. The API is only supported for Microsoft Customer Agreements (MCA) and Direct Enterprise Agreement (EA) billing accounts.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "LotsListByBillingAccount": { - "$ref": "./examples/LotsListByBillingAccount.json" - }, - "LotsListByBillingAccountWithStatusFilter": { - "$ref": "./examples/LotsListByBillingAccountWithFilters.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "name": "$filter", - "description": "May be used to filter the lots by Status, Source etc. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", - "in": "query", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/Lots" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}/providers/Microsoft.Consumption/lots": { - "get": { - "tags": [ - "Lots" - ], - "operationId": "Lots_ListByCustomer", - "description": "Lists all Azure credits for a customer. The API is only supported for Microsoft Partner Agreements (MPA) billing accounts.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "LotsListByCustomer": { - "$ref": "./examples/LotsListByCustomer.json" - }, - "LotsListByCustomerWithFilter": { - "$ref": "./examples/LotsListByCustomerWithFilters.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/customerIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "name": "$filter", - "description": "May be used to filter the lots by Status, Source etc. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. Tag filter is a key value pair string where key and value is separated by a colon (:).", - "in": "query", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/Lots" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/credits/balanceSummary": { - "get": { - "tags": [ - "Credits" - ], - "operationId": "Credits_Get", - "description": "The credit summary by billingAccountId and billingProfileId.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" - }, - "x-ms-examples": { - "CreditSummaryByBillingProfile": { - "$ref": "./examples/CreditSummaryByBillingProfile.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/billingAccountIdParameter" - }, - { - "$ref": "#/parameters/billingProfileIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/CreditSummary" - } - }, - "204": { - "description": "No Content. The request has succeeded but returned no results." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" - } - } - } - } - } - }, - "definitions": { - "MeterDetails": { - "description": "The properties of the meter detail.", - "properties": { - "meterName": { - "description": "The name of the meter, within the given meter category", - "type": "string", - "readOnly": true - }, - "meterCategory": { - "description": "The category of the meter, for example, 'Cloud services', 'Networking', etc..", - "type": "string", - "readOnly": true - }, - "meterSubCategory": { - "description": "The subcategory of the meter, for example, 'A6 Cloud services', 'ExpressRoute (IXP)', etc..", - "type": "string", - "readOnly": true - }, - "unit": { - "description": "The unit in which the meter consumption is charged, for example, 'Hours', 'GB', etc.", - "type": "string", - "readOnly": true - }, - "meterLocation": { - "description": "The location in which the Azure service is available.", - "type": "string", - "readOnly": true - }, - "totalIncludedQuantity": { - "description": "The total included quantity associated with the offer.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "pretaxStandardRate": { - "description": "The pretax listing price.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "serviceName": { - "description": "The name of the service.", - "type": "string", - "readOnly": true - }, - "serviceTier": { - "description": "The service tier.", - "type": "string", - "readOnly": true - } - } - }, - "UsageDetail": { - "type": "object", - "discriminator": "kind", - "description": "An usage detail resource.", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "kind": { - "type": "string", - "description": "Specifies the kind of usage details.", - "enum": [ - "legacy", - "modern" - ], - "x-ms-enum": { - "name": "UsageDetailsKind", - "modelAsString": true - } - } - }, - "required": [ - "kind" - ] - }, - "UsageDetailsListResult": { - "description": "Result of listing usage details. It contains a list of available usage details in reverse chronological order by billing period.", - "properties": { - "value": { - "description": "The list of usage details.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/UsageDetail" - } - }, - "nextLink": { - "description": "The link (url) to the next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "LegacyUsageDetail": { - "description": "Legacy usage detail.", - "type": "object", - "x-ms-discriminator-value": "legacy", - "properties": { - "properties": { - "description": "Properties for legacy usage details", - "$ref": "#/definitions/LegacyUsageDetailProperties", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "#/definitions/UsageDetail" - } - ], - "required": [ - "properties" - ] - }, - "LegacyUsageDetailProperties": { - "description": "The properties of the legacy usage detail.", - "properties": { - "billingAccountId": { - "description": "Billing Account identifier.", - "type": "string", - "readOnly": true - }, - "billingAccountName": { - "description": "Billing Account Name.", - "type": "string", - "readOnly": true - }, - "billingPeriodStartDate": { - "description": "The billing period start date.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "billingPeriodEndDate": { - "description": "The billing period end date.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "billingProfileId": { - "description": "Billing Profile identifier.", - "type": "string", - "readOnly": true - }, - "billingProfileName": { - "description": "Billing Profile Name.", - "type": "string", - "readOnly": true - }, - "accountOwnerId": { - "description": "Account Owner Id.", - "type": "string", - "readOnly": true - }, - "accountName": { - "description": "Account Name.", - "type": "string", - "readOnly": true - }, - "subscriptionId": { - "description": "Subscription guid.", - "type": "string", - "readOnly": true - }, - "subscriptionName": { - "description": "Subscription name.", - "type": "string", - "readOnly": true - }, - "date": { - "description": "Date for the usage record.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "product": { - "description": "Product name for the consumed service or purchase. Not available for Marketplace.", - "type": "string", - "readOnly": true - }, - "partNumber": { - "description": "Part Number of the service used. Can be used to join with the price sheet. Not available for marketplace.", - "type": "string", - "readOnly": true - }, - "meterId": { - "description": "The meter id (GUID). Not available for marketplace. For reserved instance this represents the primary meter for which the reservation was purchased. For the actual VM Size for which the reservation is purchased see productOrderName.", - "type": "string", - "format": "uuid", - "readOnly": true - }, - "meterDetails": { - "description": "The details about the meter. By default this is not populated, unless it's specified in $expand.", - "$ref": "#/definitions/MeterDetailsResponse", - "readOnly": true - }, - "quantity": { - "description": "The usage quantity.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "effectivePrice": { - "description": "Effective Price that's charged for the usage.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "cost": { - "description": "The amount of cost before tax.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "unitPrice": { - "description": "Unit Price is the price applicable to you. (your EA or other contract price).", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "billingCurrency": { - "description": "Billing Currency.", - "type": "string", - "readOnly": true - }, - "resourceLocation": { - "description": "Resource Location.", - "type": "string", - "readOnly": true - }, - "consumedService": { - "description": "Consumed service name. Name of the azure resource provider that emits the usage or was purchased. This value is not provided for marketplace usage.", - "type": "string", - "readOnly": true - }, - "resourceId": { - "description": "Unique identifier of the Azure Resource Manager usage detail resource.", - "type": "string", - "readOnly": true - }, - "resourceName": { - "description": "Resource Name.", - "type": "string", - "readOnly": true - }, - "serviceInfo1": { - "description": "Service-specific metadata.", - "type": "string", - "readOnly": true - }, - "serviceInfo2": { - "description": "Legacy field with optional service-specific metadata.", - "type": "string", - "readOnly": true - }, - "additionalInfo": { - "description": "Additional details of this usage item. By default this is not populated, unless it's specified in $expand. Use this field to get usage line item specific details such as the actual VM Size (ServiceType) or the ratio in which the reservation discount is applied.", - "type": "string", - "readOnly": true - }, - "invoiceSection": { - "description": "Invoice Section Name.", - "type": "string", - "readOnly": true - }, - "costCenter": { - "description": "The cost center of this department if it is a department and a cost center is provided.", - "type": "string", - "readOnly": true - }, - "resourceGroup": { - "description": "Resource Group Name.", - "type": "string", - "readOnly": true - }, - "reservationId": { - "description": "ARM resource id of the reservation. Only applies to records relevant to reservations.", - "type": "string", - "readOnly": true - }, - "reservationName": { - "description": "User provided display name of the reservation. Last known name for a particular day is populated in the daily data. Only applies to records relevant to reservations.", - "type": "string", - "readOnly": true - }, - "productOrderId": { - "description": "Product Order Id. For reservations this is the Reservation Order ID.", - "type": "string", - "readOnly": true - }, - "productOrderName": { - "description": "Product Order Name. For reservations this is the SKU that was purchased.", - "type": "string", - "readOnly": true - }, - "offerId": { - "description": "Offer Id. Ex: MS-AZR-0017P, MS-AZR-0148P.", - "type": "string", - "readOnly": true - }, - "isAzureCreditEligible": { - "description": "Is Azure Credit Eligible.", - "type": "boolean", - "readOnly": true - }, - "term": { - "description": "Term (in months). 1 month for monthly recurring purchase. 12 months for a 1 year reservation. 36 months for a 3 year reservation.", - "type": "string", - "readOnly": true - }, - "publisherName": { - "description": "Publisher Name.", - "type": "string", - "readOnly": true - }, - "publisherType": { - "description": "Publisher Type.", - "type": "string", - "readOnly": true - }, - "planName": { - "description": "Plan Name.", - "type": "string", - "readOnly": true - }, - "chargeType": { - "description": "Indicates a charge represents credits, usage, a Marketplace purchase, a reservation fee, or a refund.", - "type": "string", - "readOnly": true - }, - "frequency": { - "description": "Indicates how frequently this charge will occur. OneTime for purchases which only happen once, Monthly for fees which recur every month, and UsageBased for charges based on how much a service is used.", - "type": "string", - "readOnly": true - }, - "payGPrice": { - "description": "Retail price for the resource.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "benefitId": { - "description": "Unique identifier for the applicable benefit.", - "type": "string", - "readOnly": true - }, - "benefitName": { - "description": "Name of the applicable benefit.", - "type": "string", - "readOnly": true - }, - "pricingModel": { - "description": "Identifier that indicates how the meter is priced.", - "type": "string", - "readOnly": true, - "enum": [ - "On Demand", - "Reservation", - "Spot" - ], - "x-ms-enum": { - "name": "pricingModelType", - "modelAsString": true - } - } - } - }, - "ModernUsageDetail": { - "description": "Modern usage detail.", - "type": "object", - "x-ms-discriminator-value": "modern", - "properties": { - "properties": { - "description": "Properties for modern usage details", - "$ref": "#/definitions/ModernUsageDetailProperties", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "#/definitions/UsageDetail" - } - ], - "required": [ - "properties" - ] - }, - "ModernUsageDetailProperties": { - "description": "The properties of the usage detail.", - "properties": { - "billingAccountId": { - "description": "Billing Account identifier.", - "type": "string", - "readOnly": true - }, - "effectivePrice": { - "description": "Effective Price that's charged for the usage.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "pricingModel": { - "description": "Identifier that indicates how the meter is priced", - "type": "string", - "readOnly": true, - "enum": [ - "On Demand", - "Reservation", - "Spot" - ], - "x-ms-enum": { - "name": "pricingModelType", - "modelAsString": true - } - }, - "billingAccountName": { - "description": "Name of the Billing Account.", - "type": "string", - "readOnly": true - }, - "billingPeriodStartDate": { - "description": "Billing Period Start Date as in the invoice.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "billingPeriodEndDate": { - "description": "Billing Period End Date as in the invoice.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "billingProfileId": { - "description": "Identifier for the billing profile that groups costs across invoices in the a singular billing currency across across the customers who have onboarded the Microsoft customer agreement and the customers in CSP who have made entitlement purchases like SaaS, Marketplace, RI, etc.", - "type": "string", - "readOnly": true - }, - "billingProfileName": { - "description": "Name of the billing profile that groups costs across invoices in the a singular billing currency across across the customers who have onboarded the Microsoft customer agreement and the customers in CSP who have made entitlement purchases like SaaS, Marketplace, RI, etc.", - "type": "string", - "readOnly": true - }, - "subscriptionGuid": { - "description": "Unique Microsoft generated identifier for the Azure Subscription.", - "type": "string", - "readOnly": true - }, - "subscriptionName": { - "description": "Name of the Azure Subscription.", - "type": "string", - "readOnly": true - }, - "date": { - "description": "Date for the usage record.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "product": { - "description": "Name of the product that has accrued charges by consumption or purchase as listed in the invoice. Not available for Marketplace.", - "type": "string", - "readOnly": true - }, - "meterId": { - "description": "The meter id (GUID). Not available for marketplace. For reserved instance this represents the primary meter for which the reservation was purchased. For the actual VM Size for which the reservation is purchased see productOrderName.", - "type": "string", - "format": "uuid", - "readOnly": true - }, - "meterName": { - "description": "Identifies the name of the meter against which consumption is measured.", - "type": "string", - "readOnly": true - }, - "meterRegion": { - "description": "Identifies the location of the datacenter for certain services that are priced based on datacenter location.", - "type": "string", - "readOnly": true - }, - "meterCategory": { - "description": "Identifies the top-level service for the usage.", - "type": "string", - "readOnly": true - }, - "meterSubCategory": { - "description": "Defines the type or sub-category of Azure service that can affect the rate.", - "type": "string", - "readOnly": true - }, - "serviceFamily": { - "description": "List the service family for the product purchased or charged (Example: Storage ; Compute).", - "type": "string", - "readOnly": true - }, - "quantity": { - "description": "Measure the quantity purchased or consumed.The amount of the meter used during the billing period.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "unitOfMeasure": { - "description": "Identifies the Unit that the service is charged in. For example, GB, hours, 10,000 s.", - "type": "string", - "readOnly": true - }, - "instanceName": { - "description": "Instance Name.", - "type": "string", - "readOnly": true - }, - "costInUSD": { - "description": "Estimated extendedCost or blended cost before tax in USD.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "unitPrice": { - "description": "Unit Price is the price applicable to you. (your EA or other contract price).", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "billingCurrencyCode": { - "description": "The currency defining the billed cost.", - "type": "string", - "readOnly": true - }, - "resourceLocation": { - "description": "Name of the resource location.", - "type": "string", - "readOnly": true - }, - "consumedService": { - "description": "Consumed service name. Name of the azure resource provider that emits the usage or was purchased. This value is not provided for marketplace usage.", - "type": "string", - "readOnly": true - }, - "serviceInfo1": { - "description": "Service-specific metadata.", - "type": "string", - "readOnly": true - }, - "serviceInfo2": { - "description": "Legacy field with optional service-specific metadata.", - "type": "string", - "readOnly": true - }, - "additionalInfo": { - "description": "Additional details of this usage item. Use this field to get usage line item specific details such as the actual VM Size (ServiceType) or the ratio in which the reservation discount is applied.", - "type": "string", - "readOnly": true - }, - "invoiceSectionId": { - "description": "Identifier of the project that is being charged in the invoice. Not applicable for Microsoft Customer Agreements onboarded by partners.", - "type": "string", - "readOnly": true - }, - "invoiceSectionName": { - "description": "Name of the project that is being charged in the invoice. Not applicable for Microsoft Customer Agreements onboarded by partners.", - "type": "string", - "readOnly": true - }, - "costCenter": { - "description": "The cost center of this department if it is a department and a cost center is provided.", - "type": "string", - "readOnly": true - }, - "resourceGroup": { - "description": "Name of the Azure resource group used for cohesive lifecycle management of resources.", - "type": "string", - "readOnly": true - }, - "reservationId": { - "description": "ARM resource id of the reservation. Only applies to records relevant to reservations.", - "type": "string", - "readOnly": true - }, - "reservationName": { - "description": "User provided display name of the reservation. Last known name for a particular day is populated in the daily data. Only applies to records relevant to reservations.", - "type": "string", - "readOnly": true - }, - "productOrderId": { - "description": "The identifier for the asset or Azure plan name that the subscription belongs to. For example: Azure Plan. For reservations this is the Reservation Order ID.", - "type": "string", - "readOnly": true - }, - "productOrderName": { - "description": "Product Order Name. For reservations this is the SKU that was purchased.", - "type": "string", - "readOnly": true - }, - "isAzureCreditEligible": { - "description": "Determines if the cost is eligible to be paid for using Azure credits.", - "type": "boolean", - "readOnly": true - }, - "term": { - "description": "Term (in months). Displays the term for the validity of the offer. For example. In case of reserved instances it displays 12 months for yearly term of reserved instance. For one time purchases or recurring purchases, the terms displays 1 month; This is not applicable for Azure consumption.", - "type": "string", - "readOnly": true - }, - "publisherName": { - "description": "Name of the publisher of the service including Microsoft or Third Party publishers.", - "type": "string", - "readOnly": true - }, - "publisherType": { - "description": "Type of publisher that identifies if the publisher is first party, third party reseller or third party agency.", - "type": "string", - "readOnly": true - }, - "chargeType": { - "description": "Indicates a charge represents credits, usage, a Marketplace purchase, a reservation fee, or a refund.", - "type": "string", - "readOnly": true - }, - "frequency": { - "description": "Indicates how frequently this charge will occur. OneTime for purchases which only happen once, Monthly for fees which recur every month, and UsageBased for charges based on how much a service is used.", - "type": "string", - "readOnly": true - }, - "costInBillingCurrency": { - "description": "ExtendedCost or blended cost before tax in billed currency.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "costInPricingCurrency": { - "description": "ExtendedCost or blended cost before tax in pricing currency to correlate with prices.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "exchangeRate": { - "description": "Exchange rate used in conversion from pricing currency to billing currency.", - "type": "string", - "readOnly": true - }, - "exchangeRateDate": { - "description": "Date on which exchange rate used in conversion from pricing currency to billing currency.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "invoiceId": { - "description": "Invoice ID as on the invoice where the specific transaction appears.", - "type": "string", - "readOnly": true - }, - "previousInvoiceId": { - "description": "Reference to an original invoice there is a refund (negative cost). This is populated only when there is a refund.", - "type": "string", - "readOnly": true - }, - "pricingCurrencyCode": { - "description": "Pricing Billing Currency.", - "type": "string", - "readOnly": true - }, - "productIdentifier": { - "description": "Identifier for the product that has accrued charges by consumption or purchase . This is the concatenated key of productId and SkuId in partner center.", - "type": "string", - "readOnly": true - }, - "resourceLocationNormalized": { - "description": "Resource Location Normalized.", - "type": "string", - "readOnly": true - }, - "servicePeriodStartDate": { - "description": "Start date for the rating period when the service usage was rated for charges. The prices for Azure services are determined for the rating period.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "servicePeriodEndDate": { - "description": "End date for the period when the service usage was rated for charges. The prices for Azure services are determined based on the rating period.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "customerTenantId": { - "description": "Identifier of the customer's AAD tenant.", - "type": "string", - "readOnly": true - }, - "customerName": { - "description": "Name of the customer's AAD tenant.", - "type": "string", - "readOnly": true - }, - "partnerTenantId": { - "description": "Identifier for the partner's AAD tenant.", - "type": "string", - "readOnly": true - }, - "partnerName": { - "description": "Name of the partner' AAD tenant.", - "type": "string", - "readOnly": true - }, - "resellerMpnId": { - "description": "MPNId for the reseller associated with the subscription.", - "type": "string", - "readOnly": true - }, - "resellerName": { - "description": "Reseller Name.", - "type": "string", - "readOnly": true - }, - "publisherId": { - "description": "Publisher Id.", - "type": "string", - "readOnly": true - }, - "marketPrice": { - "description": "Market Price that's charged for the usage.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "exchangeRatePricingToBilling": { - "description": "Exchange Rate from pricing currency to billing currency.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "paygCostInBillingCurrency": { - "description": "The amount of PayG cost before tax in billing currency.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "paygCostInUSD": { - "description": "The amount of PayG cost before tax in US Dollar currency.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "partnerEarnedCreditRate": { - "description": "Rate of discount applied if there is a partner earned credit (PEC) based on partner admin link access.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "partnerEarnedCreditApplied": { - "description": "Flag to indicate if partner earned credit has been applied or not.", - "type": "string", - "readOnly": true - }, - "payGPrice": { - "description": "Retail price for the resource.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "benefitId": { - "description": "Unique identifier for the applicable benefit.", - "type": "string", - "readOnly": true - }, - "benefitName": { - "description": "Name of the applicable benefit.", - "type": "string", - "readOnly": true - }, - "provider": { - "description": "Identifier for Product Category or Line Of Business, Ex - Azure, Microsoft 365, AWS e.t.c", - "type": "string", - "readOnly": true - }, - "costAllocationRuleName": { - "description": "Name for Cost Allocation Rule.", - "type": "string", - "readOnly": true - } - } - }, - "Marketplace": { - "description": "A marketplace resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/MarketplaceProperties", - "title": "Marketplace properties" - } - } - }, - "MarketplacesListResult": { - "description": "Result of listing marketplaces. It contains a list of available marketplaces in reverse chronological order by billing period.", - "type": "object", - "properties": { - "value": { - "description": "The list of marketplaces.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/Marketplace" - } - }, - "nextLink": { - "description": "The link (url) to the next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "MarketplaceProperties": { - "description": "The properties of the marketplace usage detail.", - "type": "object", - "properties": { - "billingPeriodId": { - "description": "The id of the billing period resource that the usage belongs to.", - "type": "string", - "readOnly": true - }, - "usageStart": { - "description": "The start of the date time range covered by the usage detail.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "usageEnd": { - "description": "The end of the date time range covered by the usage detail.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "resourceRate": { - "description": "The marketplace resource rate.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "offerName": { - "description": "The type of offer.", - "type": "string", - "readOnly": true - }, - "resourceGroup": { - "description": "The name of resource group.", - "type": "string", - "readOnly": true - }, - "additionalInfo": { - "description": "Additional information.", - "type": "string", - "readOnly": true - }, - "orderNumber": { - "description": "The order number.", - "type": "string", - "readOnly": true - }, - "instanceName": { - "description": "The name of the resource instance that the usage is about.", - "type": "string", - "readOnly": true - }, - "instanceId": { - "description": "The uri of the resource instance that the usage is about.", - "type": "string", - "readOnly": true - }, - "currency": { - "description": "The ISO currency in which the meter is charged, for example, USD.", - "type": "string", - "readOnly": true - }, - "consumedQuantity": { - "description": "The quantity of usage.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "unitOfMeasure": { - "description": "The unit of measure.", - "type": "string", - "readOnly": true - }, - "pretaxCost": { - "description": "The amount of cost before tax.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "isEstimated": { - "description": "The estimated usage is subject to change.", - "type": "boolean", - "readOnly": true - }, - "meterId": { - "description": "The meter id (GUID).", - "type": "string", - "format": "uuid", - "readOnly": true - }, - "subscriptionGuid": { - "description": "Subscription guid.", - "type": "string", - "format": "uuid", - "readOnly": true - }, - "subscriptionName": { - "description": "Subscription name.", - "type": "string", - "readOnly": true - }, - "accountName": { - "description": "Account name.", - "type": "string", - "readOnly": true - }, - "departmentName": { - "description": "Department name.", - "type": "string", - "readOnly": true - }, - "consumedService": { - "description": "Consumed service name.", - "type": "string", - "readOnly": true - }, - "costCenter": { - "description": "The cost center of this department if it is a department and a costcenter exists", - "type": "string", - "readOnly": true - }, - "additionalProperties": { - "description": "Additional details of this usage item. By default this is not populated, unless it's specified in $expand.", - "type": "string", - "readOnly": true - }, - "publisherName": { - "description": "The name of publisher.", - "type": "string", - "readOnly": true - }, - "planName": { - "description": "The name of plan.", - "type": "string", - "readOnly": true - }, - "isRecurringCharge": { - "description": "Flag indicating whether this is a recurring charge or not.", - "type": "boolean", - "readOnly": true - } - } - }, - "Balance": { - "description": "A balance resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/BalanceProperties", - "title": "Balance properties" - } - } - }, - "BalanceProperties": { - "description": "The properties of the balance.", - "type": "object", - "properties": { - "currency": { - "description": "The ISO currency in which the meter is charged, for example, USD.", - "type": "string", - "readOnly": true - }, - "beginningBalance": { - "description": "The beginning balance for the billing period.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "endingBalance": { - "description": "The ending balance for the billing period (for open periods this will be updated daily).", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "newPurchases": { - "description": "Total new purchase amount.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "adjustments": { - "description": "Total adjustment amount.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "utilized": { - "description": "Total Commitment usage.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "serviceOverage": { - "description": "Overage for Azure services.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "chargesBilledSeparately": { - "description": "Charges Billed separately.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "totalOverage": { - "description": "serviceOverage + chargesBilledSeparately.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "totalUsage": { - "description": "Azure service commitment + total Overage.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "azureMarketplaceServiceCharges": { - "description": "Total charges for Azure Marketplace.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "billingFrequency": { - "description": "The billing frequency.", - "type": "string", - "enum": [ - "Month", - "Quarter", - "Year" - ], - "x-ms-enum": { - "name": "BillingFrequency", - "modelAsString": true - } - }, - "priceHidden": { - "description": "Price is hidden or not.", - "type": "boolean", - "readOnly": true - }, - "overageRefund": { - "description": "Overage Refunds", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "newPurchasesDetails": { - "description": "List of new purchases.", - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "description": "the name of new purchase.", - "type": "string", - "readOnly": true - }, - "value": { - "description": "the value of new purchase.", - "type": "number", - "format": "decimal", - "readOnly": true - } - } - }, - "x-ms-identifiers": [ - "name" - ], - "readOnly": true - }, - "adjustmentDetails": { - "description": "List of Adjustments (Promo credit, SIE credit etc.).", - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "description": "the name of new adjustment.", - "type": "string", - "readOnly": true - }, - "value": { - "description": "the value of new adjustment.", - "type": "number", - "format": "decimal", - "readOnly": true - } - } - }, - "x-ms-identifiers": [ - "name" - ], - "readOnly": true - } - } - }, - "ReservationSummary": { - "description": "reservation summary resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ReservationSummaryProperties", - "title": "Reservation Summary properties" - } - } - }, - "ReservationSummariesListResult": { - "description": "Result of listing reservation summaries.", - "properties": { - "value": { - "description": "The list of reservation summaries.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ReservationSummary" - } - }, - "nextLink": { - "description": "The link (url) to the next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "ReservationSummaryProperties": { - "description": "The properties of the reservation summary.", - "properties": { - "reservationOrderId": { - "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.", - "type": "string", - "readOnly": true - }, - "reservationId": { - "description": "The reservation ID is the identifier of a reservation within a reservation order. Each reservation is the grouping for applying the benefit scope and also specifies the number of instances to which the reservation benefit can be applied to.", - "type": "string", - "readOnly": true - }, - "skuName": { - "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.", - "type": "string", - "readOnly": true - }, - "reservedHours": { - "description": "This is the total hours reserved. E.g. if reservation for 1 instance was made on 1 PM, this will be 11 hours for that day and 24 hours from subsequent days", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "usageDate": { - "description": "Data corresponding to the utilization record. If the grain of data is monthly, it will be first day of month.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "usedHours": { - "description": "Total used hours by the reservation", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "minUtilizationPercentage": { - "description": "This is the minimum hourly utilization in the usage time (day or month). E.g. if usage record corresponds to 12/10/2017 and on that for hour 4 and 5, utilization was 10%, this field will return 10% for that day", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "avgUtilizationPercentage": { - "description": "This is average utilization for the entire time range. (day or month depending on the grain)", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "maxUtilizationPercentage": { - "description": "This is the maximum hourly utilization in the usage time (day or month). E.g. if usage record corresponds to 12/10/2017 and on that for hour 4 and 5, utilization was 100%, this field will return 100% for that day.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "kind": { - "description": "The reservation kind.", - "type": "string", - "readOnly": true - }, - "purchasedQuantity": { - "description": "This is the purchased quantity for the reservationId.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "remainingQuantity": { - "description": "This is the remaining quantity for the reservationId.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "totalReservedQuantity": { - "description": "This is the total count of instances that are reserved for the reservationId.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "usedQuantity": { - "description": "This is the used quantity for the reservationId.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "utilizedPercentage": { - "description": "This is the utilized percentage for the reservation Id.", - "type": "number", - "format": "decimal", - "readOnly": true - } - } - }, - "ReservationDetail": { - "description": "reservation detail resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ReservationDetailProperties", - "title": "Reservation Detail properties" - } - } - }, - "ReservationDetailsListResult": { - "description": "Result of listing reservation details.", - "properties": { - "value": { - "description": "The list of reservation details.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ReservationDetail" - } - }, - "nextLink": { - "description": "The link (url) to the next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "ReservationDetailProperties": { - "description": "The properties of the reservation detail.", - "properties": { - "reservationOrderId": { - "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.", - "type": "string", - "readOnly": true - }, - "instanceFlexibilityRatio": { - "description": "The instance Flexibility Ratio.", - "type": "string", - "readOnly": true - }, - "instanceFlexibilityGroup": { - "description": "The instance Flexibility Group.", - "type": "string", - "readOnly": true - }, - "reservationId": { - "description": "The reservation ID is the identifier of a reservation within a reservation order. Each reservation is the grouping for applying the benefit scope and also specifies the number of instances to which the reservation benefit can be applied to.", - "type": "string", - "readOnly": true - }, - "skuName": { - "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.", - "type": "string", - "readOnly": true - }, - "reservedHours": { - "description": "This is the total hours reserved for the day. E.g. if reservation for 1 instance was made on 1 PM, this will be 11 hours for that day and 24 hours from subsequent days.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "usageDate": { - "description": "The date on which consumption occurred.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "usedHours": { - "description": "This is the total hours used by the instance.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "instanceId": { - "description": "This identifier is the name of the resource or the fully qualified Resource ID.", - "type": "string", - "readOnly": true - }, - "totalReservedQuantity": { - "description": "This is the total count of instances that are reserved for the reservationId.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "kind": { - "description": "The reservation kind.", - "type": "string", - "readOnly": true - } - } - }, - "ReservationRecommendationDetailsModel": { - "description": "Reservation recommendation details.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "location": { - "type": "string", - "description": "Resource Location." - }, - "sku": { - "type": "string", - "description": "Resource sku" - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ReservationRecommendationDetailsProperties", - "title": "Reservation Recommendation details properties" - } - } - }, - "ReservationRecommendationDetailsProperties": { - "description": "The properties of the reservation recommendation.", - "properties": { - "currency": { - "description": "An ISO 4217 currency code identifier for the costs and savings ", - "type": "string", - "readOnly": true - }, - "resource": { - "description": "Resource specific properties.", - "$ref": "#/definitions/ReservationRecommendationDetailsResourceProperties", - "readOnly": true - }, - "resourceGroup": { - "description": "Resource Group.", - "type": "string", - "readOnly": true - }, - "savings": { - "description": "Savings information for the recommendation.", - "$ref": "#/definitions/ReservationRecommendationDetailsSavingsProperties", - "readOnly": true - }, - "scope": { - "description": "Scope of the reservation, ex: Single or Shared.", - "type": "string", - "readOnly": true - }, - "usage": { - "description": "Historical usage details used to calculate the estimated savings.", - "$ref": "#/definitions/ReservationRecommendationDetailsUsageProperties", - "readOnly": true - } - } - }, - "ReservationRecommendationDetailsCalculatedSavingsProperties": { - "description": "Details of estimated savings. The costs and savings are estimated for the term.", - "properties": { - "onDemandCost": { - "description": "The cost without reservation. Includes hardware and software cost.", - "type": "number", - "readOnly": true - }, - "overageCost": { - "description": "Hardware and software cost of the resources not covered by the reservation.", - "type": "number", - "readOnly": true - }, - "quantity": { - "description": "The quantity for calculated savings.", - "type": "number", - "readOnly": true - }, - "reservationCost": { - "description": "Hardware cost of the resources covered by the reservation.", - "type": "number", - "readOnly": true - }, - "totalReservationCost": { - "description": "Reservation cost + software cost of the resources covered by the reservation + overage cost.", - "type": "number", - "readOnly": true - }, - "reservedUnitCount": { - "description": "The number of reserved units used to calculate savings. Always 1 for virtual machines.", - "type": "number" - }, - "savings": { - "description": "The amount saved by purchasing the recommended quantity of reservation. This is equal to onDemandCost - totalReservationCost.", - "type": "number", - "readOnly": true - } - } - }, - "ReservationRecommendationDetailsResourceProperties": { - "description": "Details of the resource.", - "properties": { - "appliedScopes": { - "description": "List of subscriptions for which the reservation is applied.", - "type": "array", - "items": { - "type": "string" - }, - "readOnly": true - }, - "onDemandRate": { - "description": "Hourly on-demand rate of the resource. Includes only hardware rate i.e, software rate is not included.", - "type": "number", - "readOnly": true - }, - "product": { - "description": "Azure product ex: Standard_E8s_v3 etc.", - "type": "string", - "readOnly": true - }, - "region": { - "description": "Azure resource region ex:EastUS, WestUS etc.", - "type": "string", - "readOnly": true - }, - "reservationRate": { - "description": "Hourly reservation rate of the resource. Varies based on the term.", - "type": "number", - "readOnly": true - }, - "resourceType": { - "description": "The azure resource type.", - "type": "string", - "readOnly": true - } - } - }, - "ReservationRecommendationDetailsSavingsProperties": { - "description": "Details of the estimated savings.", - "properties": { - "calculatedSavings": { - "description": "List of calculated savings.", - "type": "array", - "items": { - "$ref": "#/definitions/ReservationRecommendationDetailsCalculatedSavingsProperties" - }, - "x-ms-identifiers": [] - }, - "lookBackPeriod": { - "description": "Number of days of usage to look back used for computing the recommendation.", - "type": "integer", - "format": "int32", - "readOnly": true - }, - "recommendedQuantity": { - "description": "Number of recommended units of the resource.", - "type": "number", - "readOnly": true - }, - "reservationOrderTerm": { - "description": "Term period of the reservation, ex: P1Y or P3Y.", - "type": "string", - "readOnly": true - }, - "savingsType": { - "description": "Type of savings, ex: instance.", - "type": "string", - "readOnly": true - }, - "unitOfMeasure": { - "description": "Measurement unit ex: hour etc.", - "type": "string", - "readOnly": true - } - } - }, - "ReservationRecommendationDetailsUsageProperties": { - "description": "Details about historical usage data that has been used for computing the recommendation.", - "properties": { - "firstConsumptionDate": { - "description": "The first usage date used for looking back for computing the recommendation.", - "type": "string", - "readOnly": true - }, - "lastConsumptionDate": { - "description": "The last usage date used for looking back for computing the recommendation.", - "type": "string", - "readOnly": true - }, - "lookBackUnitType": { - "description": "What the usage data values represent ex: virtual machine instance.", - "type": "string", - "readOnly": true - }, - "usageData": { - "description": "The breakdown of historical resource usage. The values are in the order of usage between the firstConsumptionDate and the lastConsumptionDate.", - "type": "array", - "items": { - "type": "number" - }, - "readOnly": true - }, - "usageGrain": { - "description": "The grain of the values represented in the usage data ex: hourly.", - "type": "string", - "readOnly": true - } - } - }, - "ReservationRecommendationsListResult": { - "description": "Result of listing reservation recommendations.", - "properties": { - "value": { - "description": "The list of reservation recommendations.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ReservationRecommendation" - } - }, - "nextLink": { - "description": "The link (url) to the next page of results.", - "type": "string", - "readOnly": true - }, - "previousLink": { - "description": "The link (url) to the previous page of results.", - "type": "string", - "readOnly": true - } - } - }, - "ReservationRecommendation": { - "description": "A reservation recommendation resource.", - "type": "object", - "discriminator": "kind", - "allOf": [ - { - "$ref": "#/definitions/Resource" - }, - { - "$ref": "#/definitions/ResourceAttributes" - } - ], - "properties": { - "kind": { - "type": "string", - "description": "Specifies the kind of reservation recommendation.", - "enum": [ - "legacy", - "modern" - ], - "x-ms-enum": { - "name": "ReservationRecommendationKind", - "modelAsString": true - } - } - }, - "required": [ - "kind" - ] - }, - "LegacyReservationRecommendation": { - "description": "Legacy reservation recommendation.", - "type": "object", - "x-ms-discriminator-value": "legacy", - "properties": { - "properties": { - "description": "Properties for legacy reservation recommendation", - "$ref": "#/definitions/LegacyReservationRecommendationProperties", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "#/definitions/ReservationRecommendation" - } - ], - "required": [ - "properties" - ] - }, - "LegacyReservationRecommendationProperties": { - "description": "The properties of the reservation recommendation.", - "type": "object", - "discriminator": "scope", - "properties": { - "lookBackPeriod": { - "description": "The number of days of usage to look back for recommendation.", - "type": "string", - "readOnly": true - }, - "instanceFlexibilityRatio": { - "description": "The instance Flexibility Ratio.", - "type": "number", - "readOnly": true - }, - "instanceFlexibilityGroup": { - "description": "The instance Flexibility Group.", - "type": "string", - "readOnly": true - }, - "normalizedSize": { - "description": "The normalized Size.", - "type": "string", - "readOnly": true - }, - "recommendedQuantityNormalized": { - "description": "The recommended Quantity Normalized.", - "type": "number", - "readOnly": true - }, - "meterId": { - "description": "The meter id (GUID)", - "type": "string", - "format": "uuid", - "readOnly": true - }, - "resourceType": { - "description": "The azure resource type.", - "type": "string", - "readOnly": true - }, - "term": { - "description": "RI recommendations in one or three year terms.", - "type": "string", - "readOnly": true - }, - "costWithNoReservedInstances": { - "description": "The total amount of cost without reserved instances.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "recommendedQuantity": { - "description": "Recommended quality for reserved instances.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "totalCostWithReservedInstances": { - "description": "The total amount of cost with reserved instances.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "netSavings": { - "description": "Total estimated savings with reserved instances.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "firstUsageDate": { - "description": "The usage date for looking back.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "scope": { - "description": "Shared or single recommendation.", - "type": "string" - }, - "skuProperties": { - "description": "List of sku properties", - "type": "array", - "items": { - "$ref": "#/definitions/SkuProperty" - }, - "x-ms-identifiers": [ - "name" - ], - "readOnly": true - } - }, - "required": [ - "scope" - ] - }, - "LegacySingleScopeReservationRecommendationProperties": { - "description": "The properties of the legacy reservation recommendation for single scope.", - "type": "object", - "x-ms-discriminator-value": "Single", - "properties": { - "subscriptionId": { - "description": "Subscription id associated with single scoped recommendation.", - "type": "string", - "format": "uuid", - "readOnly": true - } - }, - "allOf": [ - { - "$ref": "#/definitions/LegacyReservationRecommendationProperties" - } - ] - }, - "LegacySharedScopeReservationRecommendationProperties": { - "description": "The properties of the legacy reservation recommendation for shared scope.", - "type": "object", - "x-ms-discriminator-value": "Shared", - "allOf": [ - { - "$ref": "#/definitions/LegacyReservationRecommendationProperties" - } - ] - }, - "SkuProperty": { - "description": "The Sku property", - "properties": { - "name": { - "description": "The name of sku property.", - "type": "string", - "readOnly": true - }, - "value": { - "description": "The value of sku property.", - "type": "string", - "readOnly": true - } - } - }, - "ModernReservationRecommendation": { - "description": "Modern reservation recommendation.", - "type": "object", - "x-ms-discriminator-value": "modern", - "properties": { - "properties": { - "description": "Properties for modern reservation recommendation", - "$ref": "#/definitions/ModernReservationRecommendationProperties", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "#/definitions/ReservationRecommendation" - } - ], - "required": [ - "properties" - ] - }, - "ModernReservationRecommendationProperties": { - "description": "The properties of the reservation recommendation.", - "type": "object", - "discriminator": "scope", - "properties": { - "location": { - "type": "string", - "description": "Resource Location.", - "readOnly": true - }, - "lookBackPeriod": { - "description": "The number of days of usage to look back for recommendation.", - "type": "integer", - "format": "int32", - "readOnly": true - }, - "instanceFlexibilityRatio": { - "description": "The instance Flexibility Ratio.", - "type": "number", - "readOnly": true - }, - "instanceFlexibilityGroup": { - "description": "The instance Flexibility Group.", - "type": "string", - "readOnly": true - }, - "normalizedSize": { - "description": "The normalized Size.", - "type": "string", - "readOnly": true - }, - "recommendedQuantityNormalized": { - "description": "The recommended Quantity Normalized.", - "type": "number", - "readOnly": true - }, - "meterId": { - "description": "The meter id (GUID)", - "type": "string", - "format": "uuid", - "readOnly": true - }, - "term": { - "description": "RI recommendations in one or three year terms.", - "type": "string", - "readOnly": true - }, - "costWithNoReservedInstances": { - "description": "The total amount of cost without reserved instances.", - "$ref": "#/definitions/amount", - "readOnly": true - }, - "recommendedQuantity": { - "description": "Recommended quality for reserved instances.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "resourceType": { - "description": "Resource type.", - "type": "string", - "readOnly": true - }, - "totalCostWithReservedInstances": { - "description": "The total amount of cost with reserved instances.", - "$ref": "#/definitions/amount", - "readOnly": true - }, - "netSavings": { - "description": "Total estimated savings with reserved instances.", - "$ref": "#/definitions/amount", - "readOnly": true - }, - "firstUsageDate": { - "description": "The usage date for looking back.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "scope": { - "description": "Shared or single recommendation.", - "type": "string" - }, - "skuProperties": { - "description": "List of sku properties", - "type": "array", - "items": { - "$ref": "#/definitions/SkuProperty" - }, - "x-ms-identifiers": [ - "name" - ], - "readOnly": true - }, - "skuName": { - "description": "This is the ARM Sku name.", - "type": "string", - "readOnly": true - } - }, - "required": [ - "scope" - ] - }, - "ModernSingleScopeReservationRecommendationProperties": { - "description": "The properties of the modern reservation recommendation for single scope.", - "type": "object", - "x-ms-discriminator-value": "Single", - "properties": { - "subscriptionId": { - "description": "Subscription ID associated with single scoped recommendation.", - "type": "string", - "format": "uuid", - "readOnly": true - } - }, - "allOf": [ - { - "$ref": "#/definitions/ModernReservationRecommendationProperties" - } - ] - }, - "ModernSharedScopeReservationRecommendationProperties": { - "description": "The properties of the modern reservation recommendation for shared scope.", - "type": "object", - "x-ms-discriminator-value": "Shared", - "allOf": [ - { - "$ref": "#/definitions/ModernReservationRecommendationProperties" - } - ] - }, - "ModernReservationTransactionProperties": { - "description": "The properties of a modern reservation transaction.", - "properties": { - "amount": { - "description": "The charge of the transaction.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "armSkuName": { - "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.", - "type": "string", - "readOnly": true - }, - "billingFrequency": { - "description": "The billing frequency, which can be either one-time or recurring.", - "type": "string", - "readOnly": true - }, - "billingProfileId": { - "description": "Billing profile Id.", - "type": "string", - "readOnly": true - }, - "billingProfileName": { - "description": "Billing profile name.", - "type": "string", - "readOnly": true - }, - "currency": { - "description": "The ISO currency in which the transaction is charged, for example, USD.", - "type": "string", - "readOnly": true - }, - "description": { - "description": "The description of the transaction.", - "type": "string", - "readOnly": true - }, - "eventDate": { - "description": "The date of the transaction", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "eventType": { - "description": "The type of the transaction (Purchase, Cancel or Refund).", - "type": "string", - "readOnly": true - }, - "invoice": { - "description": "Invoice Number", - "type": "string", - "readOnly": true - }, - "invoiceId": { - "description": "Invoice Id as on the invoice where the specific transaction appears.", - "type": "string", - "readOnly": true - }, - "invoiceSectionId": { - "description": "Invoice Section Id", - "type": "string", - "readOnly": true - }, - "invoiceSectionName": { - "description": "Invoice Section Name.", - "type": "string", - "readOnly": true - }, - "purchasingSubscriptionGuid": { - "description": "The subscription guid that makes the transaction.", - "type": "string", - "format": "uuid", - "readOnly": true - }, - "purchasingSubscriptionName": { - "description": "The subscription name that makes the transaction.", - "type": "string", - "readOnly": true - }, - "quantity": { - "description": "The quantity of the transaction.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "region": { - "description": "The region of the transaction.", - "type": "string", - "readOnly": true - }, - "reservationOrderId": { - "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.", - "type": "string", - "readOnly": true - }, - "reservationOrderName": { - "description": "The name of the reservation order.", - "type": "string", - "readOnly": true - }, - "term": { - "description": "This is the term of the transaction.", - "type": "string", - "readOnly": true - } - } - }, - "ModernReservationTransaction": { - "description": "Modern Reservation transaction resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ReservationTransactionResource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ModernReservationTransactionProperties", - "title": "Reservation Transaction properties" - } - }, - "required": [ - "properties" - ] - }, - "LegacyReservationTransaction": { - "description": "Legacy Reservation transaction resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ReservationTransaction" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/LegacyReservationTransactionProperties", - "title": "Reservation Transaction properties" - } - }, - "required": [ - "properties" - ] - }, - "LegacyReservationTransactionProperties": { - "description": "The properties of a legacy reservation transaction.", - "properties": { - "eventDate": { - "description": "The date of the transaction", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "reservationOrderId": { - "description": "The reservation order ID is the identifier for a reservation purchase. Each reservation order ID represents a single purchase transaction. A reservation order contains reservations. The reservation order specifies the VM size and region for the reservations.", - "type": "string", - "readOnly": true - }, - "description": { - "description": "The description of the transaction.", - "type": "string", - "readOnly": true - }, - "eventType": { - "description": "The type of the transaction (Purchase, Cancel or Refund).", - "type": "string", - "readOnly": true - }, - "quantity": { - "description": "The quantity of the transaction.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "amount": { - "description": "The charge of the transaction.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "currency": { - "description": "The ISO currency in which the transaction is charged, for example, USD.", - "type": "string", - "readOnly": true - }, - "reservationOrderName": { - "description": "The name of the reservation order.", - "type": "string", - "readOnly": true - }, - "purchasingEnrollment": { - "description": "The purchasing enrollment.", - "type": "string", - "readOnly": true - }, - "purchasingSubscriptionGuid": { - "description": "The subscription guid that makes the transaction.", - "type": "string", - "format": "uuid", - "readOnly": true - }, - "purchasingSubscriptionName": { - "description": "The subscription name that makes the transaction.", - "type": "string", - "readOnly": true - }, - "armSkuName": { - "description": "This is the ARM Sku name. It can be used to join with the serviceType field in additional info in usage records.", - "type": "string", - "readOnly": true - }, - "term": { - "description": "This is the term of the transaction.", - "type": "string", - "readOnly": true - }, - "region": { - "description": "The region of the transaction.", - "type": "string", - "readOnly": true - }, - "accountName": { - "description": "The name of the account that makes the transaction.", - "type": "string", - "readOnly": true - }, - "accountOwnerEmail": { - "description": "The email of the account owner that makes the transaction.", - "type": "string", - "readOnly": true - }, - "departmentName": { - "description": "The department name.", - "type": "string", - "readOnly": true - }, - "costCenter": { - "description": "The cost center of this department if it is a department and a cost center is provided.", - "type": "string", - "readOnly": true - }, - "currentEnrollment": { - "description": "The current enrollment.", - "type": "string", - "readOnly": true - }, - "billingFrequency": { - "description": "The billing frequency, which can be either one-time or recurring.", - "type": "string", - "readOnly": true - }, - "billingMonth": { - "description": "The billing month(yyyyMMdd), on which the event initiated.", - "type": "integer", - "format": "int32", - "readOnly": true - }, - "monetaryCommitment": { - "description": "The monetary commitment amount at the enrollment scope.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "overage": { - "description": "The overage amount at the enrollment scope.", - "type": "number", - "format": "decimal", - "readOnly": true - } - } - }, - "ReservationTransaction": { - "description": "Reservation transaction resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ReservationTransactionResource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/LegacyReservationTransactionProperties", - "title": "Reservation Transaction properties" - } - } - }, - "ReservationTransactionsListResult": { - "description": "Result of listing reservation recommendations.", - "properties": { - "value": { - "description": "The list of reservation recommendations.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ReservationTransaction" - } - }, - "nextLink": { - "description": "The link (url) to the next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "ModernReservationTransactionsListResult": { - "description": "Result of listing reservation recommendations.", - "properties": { - "value": { - "description": "The list of reservation recommendations.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ModernReservationTransaction" - } - }, - "nextLink": { - "description": "The link (url) to the next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "TagsResult": { - "description": "A resource listing all tags.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/TagProperties", - "title": "Tag properties" - } - } - }, - "TagProperties": { - "description": "The properties of the tag.", - "properties": { - "tags": { - "description": "A list of Tag.", - "type": "array", - "items": { - "$ref": "#/definitions/Tag" - }, - "x-ms-identifiers": [ - "key" - ] - }, - "nextLink": { - "description": "The link (url) to the next page of results.", - "type": "string", - "readOnly": true - }, - "previousLink": { - "description": "The link (url) to the previous page of results.", - "type": "string", - "readOnly": true - } - } - }, - "Tag": { - "description": "The tag resource.", - "properties": { - "key": { - "description": "Tag key.", - "type": "string" - }, - "value": { - "description": "Tag values.", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "BudgetsListResult": { - "description": "Result of listing budgets. It contains a list of available budgets in the scope provided.", - "properties": { - "value": { - "description": "The list of budgets.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/Budget" - } - }, - "nextLink": { - "description": "The link (url) to the next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "Budget": { - "description": "A budget resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/BudgetProperties", - "title": "Budget properties" - } - } - }, - "BudgetProperties": { - "description": "The properties of the budget.", - "properties": { - "category": { - "description": "The category of the budget, whether the budget tracks cost or usage.", - "type": "string", - "enum": [ - "Cost" - ], - "x-ms-enum": { - "name": "CategoryType", - "modelAsString": true - } - }, - "amount": { - "description": "The total amount of cost to track with the budget", - "type": "number", - "format": "decimal" - }, - "timeGrain": { - "description": "The time covered by a budget. Tracking of the amount will be reset based on the time grain. BillingMonth, BillingQuarter, and BillingAnnual are only supported by WD customers", - "type": "string", - "enum": [ - "Monthly", - "Quarterly", - "Annually", - "BillingMonth", - "BillingQuarter", - "BillingAnnual" - ], - "x-ms-enum": { - "name": "TimeGrainType", - "modelAsString": true - } - }, - "timePeriod": { - "description": "Has start and end date of the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. There are no restrictions on the end date.", - "$ref": "#/definitions/BudgetTimePeriod" - }, - "filter": { - "description": "May be used to filter budgets by user-specified dimensions and/or tags.", - "type": "object", - "$ref": "#/definitions/BudgetFilter" - }, - "currentSpend": { - "description": "The current amount of cost which is being tracked for a budget.", - "$ref": "#/definitions/CurrentSpend", - "readOnly": true - }, - "notifications": { - "type": "object", - "description": "Dictionary of notifications associated with the budget. Budget can have up to five notifications.", - "additionalProperties": { - "type": "object", - "$ref": "#/definitions/Notification" - }, - "maxItems": 5 - }, - "forecastSpend": { - "description": "The forecasted cost which is being tracked for a budget.", - "$ref": "#/definitions/ForecastSpend", - "readOnly": true - } - }, - "required": [ - "category", - "amount", - "timeGrain", - "timePeriod" - ] - }, - "BudgetTimePeriod": { - "description": "The start and end date for a budget.", - "properties": { - "startDate": { - "description": "The start date for the budget.", - "type": "string", - "format": "date-time" - }, - "endDate": { - "description": "The end date for the budget. If not provided, we default this to 10 years from the start date.", - "type": "string", - "format": "date-time" - } - }, - "required": [ - "startDate" - ] - }, - "BudgetFilter": { - "description": "May be used to filter budgets by resource group, resource, or meter.", - "properties": { - "and": { - "description": "The logical \"AND\" expression. Must have at least 2 items.", - "type": "array", - "items": { - "$ref": "#/definitions/BudgetFilterProperties" - }, - "x-ms-identifiers": [], - "minItems": 0 - }, - "dimensions": { - "description": "Has comparison expression for a dimension", - "$ref": "#/definitions/BudgetComparisonExpression" - }, - "tags": { - "description": "Has comparison expression for a tag", - "$ref": "#/definitions/BudgetComparisonExpression" - } - } - }, - "BudgetFilterProperties": { - "description": "The Dimensions or Tags to filter a budget by.", - "properties": { - "dimensions": { - "description": "Has comparison expression for a dimension", - "$ref": "#/definitions/BudgetComparisonExpression" - }, - "tags": { - "description": "Has comparison expression for a tag", - "$ref": "#/definitions/BudgetComparisonExpression" - } - } - }, - "BudgetComparisonExpression": { - "description": "The comparison expression to be used in the budgets.", - "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": "BudgetOperatorType", - "modelAsString": true - } - }, - "values": { - "description": "Array of values to use for comparison", - "type": "array", - "items": { - "type": "string" - }, - "minItems": 0 - } - }, - "required": [ - "name", - "operator", - "values" - ] - }, - "CurrentSpend": { - "description": "The current amount of cost which is being tracked for a budget.", - "properties": { - "amount": { - "description": "The total amount of cost which is being tracked by the budget.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "unit": { - "description": "The unit of measure for the budget amount.", - "type": "string", - "readOnly": true - } - } - }, - "ForecastSpend": { - "description": "The forecasted cost which is being tracked for a budget.", - "properties": { - "amount": { - "description": "The forecasted cost for the total time period which is being tracked by the budget. This value is only provided if the budget contains a forecast alert type.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "unit": { - "description": "The unit of measure for the budget amount.", - "type": "string", - "readOnly": true - } - } - }, - "Notification": { - "description": "The notification associated with a budget.", - "properties": { - "enabled": { - "description": "The notification is enabled or not.", - "type": "boolean" - }, - "operator": { - "description": "The comparison operator.", - "type": "string", - "enum": [ - "EqualTo", - "GreaterThan", - "GreaterThanOrEqualTo" - ], - "x-ms-enum": { - "name": "OperatorType", - "modelAsString": true, - "values": [ - { - "value": "EqualTo", - "description": "Alert will be triggered if the evaluated cost is the same as threshold value. Note: It’s not recommended to use this OperatorType as there’s low chance of cost being exactly the same as threshold value, leading to missing of your alert. This OperatorType will be deprecated in future. ", - "name": "EqualTo" - }, - { - "value": "GreaterThan", - "description": "Alert will be triggered if the evaluated cost is greater than the threshold value. Note: This is the recommended OperatorType while configuring Budget Alert.", - "name": "GreaterThan" - }, - { - "value": "GreaterThanOrEqualTo", - "description": "Alert will be triggered if the evaluated cost is greater than or equal to the threshold value.", - "name": "GreaterThanOrEqualTo" - } - ] - } - }, - "threshold": { - "description": "Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.", - "type": "number", - "format": "decimal" - }, - "contactEmails": { - "description": "Email addresses to send the budget notification to when the threshold is exceeded. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.", - "type": "array", - "items": { - "type": "string" - }, - "minItems": 0, - "maxItems": 50 - }, - "contactRoles": { - "description": "Contact roles to send the budget notification to when the threshold is exceeded.", - "type": "array", - "items": { - "type": "string" - } - }, - "contactGroups": { - "description": "Action groups to send the budget notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id. Only supported at Subscription or Resource Group scopes.", - "type": "array", - "items": { - "type": "string" - }, - "minItems": 0, - "maxItems": 50 - }, - "thresholdType": { - "description": "The type of threshold", - "type": "string", - "enum": [ - "Actual", - "Forecasted" - ], - "x-ms-enum": { - "name": "ThresholdType", - "modelAsString": true, - "values": [ - { - "value": "Actual", - "description": "Actual costs budget alerts notify when the actual accrued cost exceeds the allocated budget .", - "name": "Actual" - }, - { - "value": "Forecasted", - "description": "Forecasted costs budget alerts provide advanced notification that your spending trends are likely to exceed your allocated budget, as it relies on forecasted cost predictions.", - "name": "Forecasted" - } - ] - }, - "default": "Actual" - }, - "locale": { - "description": "Language in which the recipient will receive the notification", - "type": "string", - "enum": [ - "en-us", - "ja-jp", - "zh-cn", - "de-de", - "es-es", - "fr-fr", - "it-it", - "ko-kr", - "pt-br", - "ru-ru", - "zh-tw", - "cs-cz", - "pl-pl", - "tr-tr", - "da-dk", - "en-gb", - "hu-hu", - "nb-no", - "nl-nl", - "pt-pt", - "sv-se" - ], - "x-ms-enum": { - "name": "CultureCode", - "modelAsString": true - } - } - }, - "required": [ - "enabled", - "operator", - "threshold", - "contactEmails" - ] - }, - "PriceSheetResult": { - "description": "An pricesheet resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/PriceSheetModel", - "title": "Price sheet properties" - } - } - }, - "PriceSheetModel": { - "description": "price sheet result. It contains the pricesheet associated with billing period", - "properties": { - "pricesheets": { - "description": "Price sheet", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/PriceSheetProperties" - }, - "x-ms-identifiers": [ - "meterId" - ] - }, - "nextLink": { - "description": "The link (url) to the next page of results.", - "type": "string", - "readOnly": true - }, - "download": { - "description": "Pricesheet download details.", - "$ref": "#/definitions/MeterDetails", - "readOnly": true - } - } - }, - "DownloadProperties": { - "description": "The properties of the price sheet download.", - "properties": { - "downloadUrl": { - "description": "The link (url) to download the pricesheet.", - "type": "string", - "readOnly": true - }, - "validTill": { - "description": "Download link validity.", - "type": "string", - "readOnly": true - } - } - }, - "PriceSheetProperties": { - "description": "The properties of the price sheet.", - "properties": { - "billingPeriodId": { - "description": "The id of the billing period resource that the usage belongs to.", - "type": "string", - "readOnly": true - }, - "meterId": { - "description": "The meter id (GUID)", - "type": "string", - "format": "uuid", - "readOnly": true - }, - "meterDetails": { - "description": "The details about the meter. By default this is not populated, unless it's specified in $expand.", - "$ref": "#/definitions/MeterDetails", - "readOnly": true - }, - "unitOfMeasure": { - "description": "Unit of measure", - "type": "string", - "readOnly": true - }, - "includedQuantity": { - "description": "Included quality for an offer", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "partNumber": { - "description": "Part Number", - "type": "string", - "readOnly": true - }, - "unitPrice": { - "description": "Unit Price", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "currencyCode": { - "description": "Currency Code", - "type": "string", - "readOnly": true - }, - "offerId": { - "description": "Offer Id", - "type": "string", - "readOnly": true - } - } - }, - "ManagementGroupAggregatedCostResult": { - "description": "A management group aggregated cost resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ManagementGroupAggregatedCostProperties", - "title": "Management Group Aggregated Cost properties" - } - } - }, - "ManagementGroupAggregatedCostProperties": { - "description": "The properties of the Management Group Aggregated Cost.", - "type": "object", - "properties": { - "billingPeriodId": { - "description": "The id of the billing period resource that the aggregated cost belongs to.", - "type": "string", - "readOnly": true - }, - "usageStart": { - "description": "The start of the date time range covered by aggregated cost.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "usageEnd": { - "description": "The end of the date time range covered by the aggregated cost.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "azureCharges": { - "description": "Azure Charges.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "marketplaceCharges": { - "description": "Marketplace Charges.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "chargesBilledSeparately": { - "description": "Charges Billed Separately.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "currency": { - "description": "The ISO currency in which the meter is charged, for example, USD.", - "type": "string", - "readOnly": true - }, - "children": { - "description": "Children of a management group", - "type": "array", - "items": { - "$ref": "#/definitions/ManagementGroupAggregatedCostResult" - } - }, - "includedSubscriptions": { - "description": "List of subscription Guids included in the calculation of aggregated cost", - "type": "array", - "items": { - "type": "string" - } - }, - "excludedSubscriptions": { - "description": "List of subscription Guids excluded from the calculation of aggregated cost", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "ChargesListResult": { - "description": "Result of listing charge summary.", - "properties": { - "value": { - "description": "The list of charge summary", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ChargeSummary" - } - } - } - }, - "ChargeSummary": { - "description": "A charge summary resource.", - "type": "object", - "discriminator": "kind", - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], - "properties": { - "kind": { - "type": "string", - "description": "Specifies the kind of charge summary.", - "enum": [ - "legacy", - "modern" - ], - "x-ms-enum": { - "name": "ChargeSummaryKind", - "modelAsString": true - } - } - }, - "required": [ - "kind" - ] - }, - "LegacyChargeSummary": { - "description": "Legacy charge summary.", - "type": "object", - "x-ms-discriminator-value": "legacy", - "properties": { - "properties": { - "description": "Properties for legacy charge summary", - "$ref": "#/definitions/LegacyChargeSummaryProperties", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "#/definitions/ChargeSummary" - } - ], - "required": [ - "properties" - ] - }, - "LegacyChargeSummaryProperties": { - "description": "The properties of legacy charge summary.", - "type": "object", - "properties": { - "billingPeriodId": { - "description": "The id of the billing period resource that the charge belongs to.", - "type": "string", - "readOnly": true - }, - "usageStart": { - "description": "Usage start date.", - "type": "string", - "readOnly": true - }, - "usageEnd": { - "description": "Usage end date.", - "type": "string", - "readOnly": true - }, - "azureCharges": { - "description": "Azure Charges.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "chargesBilledSeparately": { - "description": "Charges Billed separately.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "azureMarketplaceCharges": { - "description": "Marketplace Charges.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "currency": { - "description": "Currency Code", - "type": "string", - "readOnly": true - } - } - }, - "ModernChargeSummary": { - "description": "Modern charge summary.", - "type": "object", - "x-ms-discriminator-value": "modern", - "properties": { - "properties": { - "description": "Properties for modern charge summary", - "$ref": "#/definitions/ModernChargeSummaryProperties", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "#/definitions/ChargeSummary" - } - ], - "required": [ - "properties" - ] - }, - "ModernChargeSummaryProperties": { - "description": "The properties of modern charge summary.", - "type": "object", - "properties": { - "billingPeriodId": { - "description": "The id of the billing period resource that the charge belongs to.", - "type": "string", - "readOnly": true - }, - "usageStart": { - "description": "Usage start date.", - "type": "string", - "readOnly": true - }, - "usageEnd": { - "description": "Usage end date.", - "type": "string", - "readOnly": true - }, - "azureCharges": { - "description": "Azure Charges.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "chargesBilledSeparately": { - "description": "Charges Billed separately.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "marketplaceCharges": { - "description": "Marketplace Charges.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "billingAccountId": { - "description": "Billing Account Id", - "type": "string", - "readOnly": true - }, - "billingProfileId": { - "description": "Billing Profile Id", - "type": "string", - "readOnly": true - }, - "invoiceSectionId": { - "description": "Invoice Section Id", - "type": "string", - "readOnly": true - }, - "customerId": { - "description": "Customer Id", - "type": "string", - "readOnly": true - }, - "isInvoiced": { - "description": "Is charge Invoiced", - "type": "boolean", - "readOnly": true - }, - "subscriptionId": { - "description": "Subscription guid.", - "type": "string", - "readOnly": true - } - } - }, - "MeterDetailsResponse": { - "description": "The properties of the meter detail.", - "properties": { - "meterName": { - "description": "The name of the meter, within the given meter category", - "type": "string", - "readOnly": true - }, - "meterCategory": { - "description": "The category of the meter, for example, 'Cloud services', 'Networking', etc..", - "type": "string", - "readOnly": true - }, - "meterSubCategory": { - "description": "The subcategory of the meter, for example, 'A6 Cloud services', 'ExpressRoute (IXP)', etc..", - "type": "string", - "readOnly": true - }, - "unitOfMeasure": { - "description": "The unit in which the meter consumption is charged, for example, 'Hours', 'GB', etc.", - "type": "string", - "readOnly": true - }, - "serviceFamily": { - "description": "The service family.", - "type": "string", - "readOnly": true - } - } - }, - "HighCasedErrorDetails": { - "description": "The details of the error.", - "properties": { - "code": { - "description": "Error code.", - "type": "string", - "readOnly": true - }, - "message": { - "description": "Error message indicating why the operation failed.", - "type": "string", - "readOnly": true - } - } - }, - "HighCasedErrorResponse": { - "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/HighCasedErrorDetails" - } - } - }, - "Operation": { - "description": "A Consumption REST API operation.", - "type": "object", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Operation Id." - }, - "name": { - "description": "Operation name: {provider}/{resource}/{operation}.", - "type": "string", - "readOnly": true - }, - "display": { - "description": "The object that represents the operation.", - "properties": { - "provider": { - "description": "Service provider: Microsoft.Consumption.", - "type": "string", - "readOnly": true - }, - "resource": { - "description": "Resource on which the operation is performed: UsageDetail, etc.", - "type": "string", - "readOnly": true - }, - "operation": { - "description": "Operation type: Read, write, delete, etc.", - "type": "string", - "readOnly": true - }, - "description": { - "description": "Description of the operation.", - "type": "string", - "readOnly": true - } - } - } - } - }, - "OperationListResult": { - "description": "Result of listing consumption operations. It contains a list of operations and a URL link to get the next set of results.", - "properties": { - "value": { - "description": "List of consumption operations supported by the Microsoft.Consumption 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 - } - } - }, - "Events": { - "description": "Result of listing event summary.", - "properties": { - "value": { - "description": "The list of event summary.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/EventSummary" - } - }, - "nextLink": { - "description": "The link (url) to the next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "EventSummary": { - "description": "An event summary resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/EventProperties", - "title": "Event summary properties" - } - } - }, - "EventProperties": { - "description": "The event properties.", - "properties": { - "transactionDate": { - "description": "The date of the event.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "description": { - "description": "The description of the event.", - "type": "string", - "readOnly": true - }, - "newCredit": { - "description": "The amount of new credit or commitment for NewCredit or SettleCharges event.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "adjustments": { - "description": "The amount of balance adjustment. The property is not available for ConsumptionCommitment lots.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "creditExpired": { - "description": "The amount of expired credit or commitment for NewCredit or SettleCharges event.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "charges": { - "description": "The amount of charges for events of type SettleCharges and PendingEligibleCharges. ", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "closedBalance": { - "description": "The balance after the event. ", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "eventType": { - "description": "Identifies the type of the event.", - "type": "string", - "enum": [ - "SettledCharges", - "PendingCharges", - "PendingAdjustments", - "PendingNewCredit", - "PendingExpiredCredit", - "UnKnown", - "NewCredit", - "CreditExpired" - ], - "x-ms-enum": { - "name": "EventType", - "modelAsString": true - } - }, - "invoiceNumber": { - "description": "The number which uniquely identifies the invoice on which the event was billed. This will be empty for unbilled events.", - "type": "string", - "readOnly": true - }, - "billingProfileId": { - "description": "The ID that uniquely identifies the billing profile for which the event happened. The property is only available for billing account of type MicrosoftCustomerAgreement. ", - "type": "string", - "readOnly": true - }, - "billingProfileDisplayName": { - "description": "The display name of the billing profile for which the event happened. The property is only available for billing account of type MicrosoftCustomerAgreement.", - "type": "string", - "readOnly": true - }, - "lotId": { - "description": "The ID that uniquely identifies the lot for which the event happened.", - "type": "string", - "readOnly": true - }, - "lotSource": { - "description": "Identifies the source of the lot for which the event happened. ", - "type": "string", - "readOnly": true - }, - "canceledCredit": { - "description": "Amount of canceled credit.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "creditCurrency": { - "description": "The credit currency of the event.", - "type": "string", - "readOnly": true - }, - "billingCurrency": { - "description": "The billing currency of the event.", - "type": "string", - "readOnly": true - }, - "reseller": { - "description": "The reseller of the event.", - "readOnly": true, - "$ref": "#/definitions/Reseller" - }, - "creditExpiredInBillingCurrency": { - "description": "The amount of expired credit or commitment for NewCredit or SettleCharges event in billing currency.", - "readOnly": true, - "$ref": "#/definitions/AmountWithExchangeRate" - }, - "newCreditInBillingCurrency": { - "description": "The amount of new credit or commitment for NewCredit or SettleCharges event in billing currency.", - "readOnly": true, - "$ref": "#/definitions/AmountWithExchangeRate" - }, - "adjustmentsInBillingCurrency": { - "description": "The amount of balance adjustment in billing currency.", - "readOnly": true, - "$ref": "#/definitions/AmountWithExchangeRate" - }, - "chargesInBillingCurrency": { - "description": "The amount of charges for events of type SettleCharges and PendingEligibleCharges in billing currency.", - "readOnly": true, - "$ref": "#/definitions/AmountWithExchangeRate" - }, - "closedBalanceInBillingCurrency": { - "description": "The balance in billing currency after the event.", - "readOnly": true, - "$ref": "#/definitions/AmountWithExchangeRate" - }, - "isEstimatedBalance": { - "description": "If true, the listed details are based on an estimation and it will be subjected to change.", - "type": "boolean", - "readOnly": true - }, - "eTag": { - "readOnly": true, - "type": "string", - "description": "The eTag for the resource." - } - } - }, - "Lots": { - "description": "Result of listing lot summary.", - "properties": { - "value": { - "description": "The list of lot summary.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/LotSummary" - } - }, - "nextLink": { - "description": "The link (url) to the next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "LotSummary": { - "description": "A lot summary resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/LotProperties", - "title": "Lot summary properties" - } - } - }, - "LotProperties": { - "description": "The lot properties.", - "properties": { - "originalAmount": { - "description": "The original amount of a lot.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "closedBalance": { - "description": "The balance as of the last invoice.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "source": { - "description": "The source of the lot.", - "type": "string", - "enum": [ - "PurchasedCredit", - "PromotionalCredit", - "ConsumptionCommitment" - ], - "x-ms-enum": { - "name": "LotSource", - "modelAsString": true - }, - "readOnly": true - }, - "startDate": { - "description": "The date when the lot became effective.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "expirationDate": { - "description": "The expiration date of a lot.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "poNumber": { - "description": "The po number of the invoice on which the lot was added. This property is not available for ConsumptionCommitment lots.", - "type": "string", - "readOnly": true - }, - "purchasedDate": { - "description": "The date when the lot was added.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "status": { - "description": "The status of the lot.", - "type": "string", - "enum": [ - "None", - "Active", - "Inactive", - "Expired", - "Complete", - "Canceled" - ], - "readOnly": true, - "x-ms-enum": { - "name": "Status", - "modelAsString": true - } - }, - "creditCurrency": { - "description": "The currency of the lot.", - "type": "string", - "readOnly": true - }, - "billingCurrency": { - "description": "The billing currency of the lot.", - "type": "string", - "readOnly": true - }, - "originalAmountInBillingCurrency": { - "description": "The original amount of a lot in billing currency.", - "readOnly": true, - "$ref": "#/definitions/AmountWithExchangeRate" - }, - "closedBalanceInBillingCurrency": { - "description": "The balance as of the last invoice in billing currency.", - "readOnly": true, - "$ref": "#/definitions/AmountWithExchangeRate" - }, - "reseller": { - "description": "The reseller of the lot.", - "readOnly": true, - "$ref": "#/definitions/Reseller" - }, - "isEstimatedBalance": { - "description": "If true, the listed details are based on an estimation and it will be subjected to change.", - "type": "boolean", - "readOnly": true - }, - "eTag": { - "readOnly": true, - "type": "string", - "description": "The eTag for the resource." - } - } - }, - "CreditSummary": { - "description": "A credit summary resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/CreditSummaryProperties", - "title": "Credit summary properties" - } - } - }, - "CreditSummaryProperties": { - "description": "The properties of the credit summary.", - "type": "object", - "properties": { - "balanceSummary": { - "description": "Summary of balances associated with this credit summary.", - "readOnly": true, - "$ref": "#/definitions/CreditBalanceSummary" - }, - "pendingCreditAdjustments": { - "description": "Pending credit adjustments.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "expiredCredit": { - "description": "Expired credit.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "pendingEligibleCharges": { - "description": "Pending eligible charges.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "creditCurrency": { - "description": "The credit currency.", - "type": "string", - "readOnly": true - }, - "billingCurrency": { - "description": "The billing currency.", - "type": "string", - "readOnly": true - }, - "reseller": { - "description": "Credit's reseller.", - "readOnly": true, - "$ref": "#/definitions/Reseller" - }, - "isEstimatedBalance": { - "description": "If true, the listed details are based on an estimation and it will be subjected to change.", - "type": "boolean", - "readOnly": true - }, - "eTag": { - "readOnly": true, - "type": "string", - "description": "The eTag for the resource." - } - } - }, - "CreditBalanceSummary": { - "description": "Summary of credit balances.", - "properties": { - "estimatedBalance": { - "description": "Estimated balance.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "currentBalance": { - "description": "Current balance.", - "readOnly": true, - "$ref": "#/definitions/amount" - }, - "estimatedBalanceInBillingCurrency": { - "description": "Estimated balance in billing currency.", - "readOnly": true, - "$ref": "#/definitions/AmountWithExchangeRate" - } - } - }, - "amount": { - "description": "The amount plus currency .", - "properties": { - "currency": { - "readOnly": true, - "type": "string", - "description": "Amount currency." - }, - "value": { - "readOnly": true, - "type": "number", - "format": "decimal", - "description": "Amount." - } - } - }, - "Resource": { - "description": "The Resource model definition.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The full qualified ARM ID of an event." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The ID that uniquely identifies an event. " - }, - "type": { - "readOnly": true, - "type": "string", - "description": "Resource type." - }, - "etag": { - "readOnly": true, - "type": "string", - "description": "The etag for the resource." - }, - "tags": { - "readOnly": true, - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Resource tags." - } - }, - "x-ms-azure-resource": true - }, - "ReservationTransactionResource": { - "description": "The Resource model definition.", - "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." - }, - "tags": { - "readOnly": true, - "type": "array", - "items": { - "type": "string" - }, - "description": "Resource tags." - } - }, - "x-ms-azure-resource": true - }, - "ResourceAttributes": { - "description": "The Resource model definition.", - "properties": { - "location": { - "readOnly": true, - "type": "string", - "description": "Resource location" - }, - "sku": { - "readOnly": true, - "type": "string", - "description": "Resource sku" - } - } - }, - "ProxyResource": { - "description": "The Resource model definition.", - "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 - }, - "AmountWithExchangeRate": { - "description": "The amount with exchange rate.", - "allOf": [ - { - "$ref": "#/definitions/amount" - } - ], - "properties": { - "exchangeRate": { - "description": "The exchange rate.", - "type": "number", - "format": "decimal", - "readOnly": true - }, - "exchangeRateMonth": { - "description": "The exchange rate month.", - "type": "integer", - "format": "int32", - "readOnly": true - } - } - }, - "Reseller": { - "description": "The reseller properties.", - "type": "object", - "properties": { - "resellerId": { - "description": "The reseller property ID.", - "type": "string", - "readOnly": true - }, - "resellerDescription": { - "description": "The reseller property description.", - "type": "string", - "readOnly": true - } - } - } - }, - "parameters": { - "scopeChargesParameter": { - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope associated with charges operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope. For department and enrollment accounts, you can also add billing period to the scope using '/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. For e.g. to specify billing period at department scope use '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. Also, Modern Commerce Account scopes are '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for billingAccount 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 - }, - "scopeUsageDetailsParameter": { - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope associated with usage details operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope and '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope. For subscription, billing account, department, enrollment account and management group, you can also add billing period to the scope using '/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. For e.g. to specify billing period at department scope use '/providers/Microsoft.Billing/departments/{departmentId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. Also, Modern Commerce Account scopes are '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for billingAccount 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 - }, - "scopeMarketplaceParameter": { - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope associated with marketplace operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, '/providers/Microsoft.Billing/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope and '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope. For subscription, billing account, department, enrollment account and ManagementGroup, you can also add billing period to the scope using '/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'. For e.g. to specify billing period at department scope use '/providers/Microsoft.Billing/departments/{departmentId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}'", - "x-ms-parameter-location": "method", - "x-ms-skip-url-encoding": true - }, - "scopeBudgetParameter": { - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope associated with budget 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}/invoiceSections/{invoiceSectionId}' for invoiceSection scope.", - "x-ms-parameter-location": "method", - "x-ms-skip-url-encoding": true - }, - "scopeTagsParameter": { - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope associated with tags 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 and '/providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope..", - "x-ms-parameter-location": "method", - "x-ms-skip-url-encoding": true - }, - "scopeReservationsSummariesParameter": { - "name": "resourceScope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope associated with reservations summaries operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope (legacy), and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope (modern). ", - "x-ms-parameter-location": "method", - "x-ms-skip-url-encoding": true - }, - "scopeReservationDetailsParameter": { - "name": "resourceScope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope associated with reservations details operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope (legacy), and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope (modern). ", - "x-ms-parameter-location": "method", - "x-ms-skip-url-encoding": true - }, - "scopeReservationRecommendationsParameter": { - "name": "resourceScope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope associated with reservation recommendations operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resource group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope", - "x-ms-parameter-location": "method", - "x-ms-skip-url-encoding": true - }, - "scopeReservationRecommendationDetailsParameter": { - "name": "resourceScope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope associated with reservation recommendation details operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resource group scope, /providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope", - "x-ms-parameter-location": "method", - "x-ms-skip-url-encoding": true - }, - "scopeReservationTransactionsParameter": { - "name": "resourceScope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope associated with reservation transactions operations. This includes '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount/Enrollment scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope", - "x-ms-parameter-location": "method", - "x-ms-skip-url-encoding": true - }, - "apiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Version of the API to be used with the client request. The current version is 2023-03-01." - }, - "billingAccountIdParameter": { - "name": "billingAccountId", - "in": "path", - "description": "BillingAccount ID", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "customerIdParameter": { - "name": "customerId", - "in": "path", - "description": "Customer 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": "EnrollmentAccount ID", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "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" - }, - "budgetNameParameter": { - "name": "budgetName", - "in": "path", - "description": "Budget Name.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "billingPeriodNameParameter": { - "name": "billingPeriodName", - "in": "path", - "description": "Billing Period Name.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "reservationOrderIdParameter": { - "name": "reservationOrderId", - "in": "path", - "description": "Order Id of the reservation", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "reservationIdParameter": { - "name": "reservationId", - "in": "path", - "description": "Id of the reservation", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "grainParameter": { - "name": "grain", - "description": "Can be daily or monthly", - "x-ms-parameter-location": "method", - "in": "query", - "required": true, - "type": "string", - "enum": [ - "daily", - "monthly" - ], - "x-ms-enum": { - "name": "datagrain", - "modelAsString": true, - "values": [ - { - "value": "daily", - "description": "Daily grain of data", - "name": "DailyGrain" - }, - { - "value": "monthly", - "description": "Monthly grain of data", - "name": "MonthlyGrain" - } - ] - } - }, - "managementGroupIdParameter": { - "name": "managementGroupId", - "in": "path", - "description": "Azure Management Group ID.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "billingProfileIdParameter": { - "name": "billingProfileId", - "in": "path", - "description": "Azure Billing Profile ID.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "invoiceSectionIdParameter": { - "name": "invoiceSectionId", - "in": "path", - "description": "Azure Invoice Section ID.", - "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" - }, - "metricParameter": { - "name": "metric", - "in": "query", - "description": "Allows to select different type of cost/usage records.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method", - "enum": [ - "actualcost", - "amortizedcost", - "usage" - ], - "x-ms-enum": { - "name": "metrictype", - "modelAsString": true, - "values": [ - { - "value": "actualcost", - "description": "Actual cost data.", - "name": "ActualCostMetricType" - }, - { - "value": "amortizedcost", - "description": "Amortized cost data.", - "name": "AmortizedCostMetricType" - }, - { - "value": "usage", - "description": "Usage data.", - "name": "UsageMetricType" - } - ] - } - }, - "filterParameter": { - "name": "$filter", - "in": "query", - "description": "May be used to filter reservationRecommendations by: properties/scope with allowed values ['Single', 'Shared'] and default value 'Single'; properties/resourceType with allowed values ['VirtualMachines', 'SQLDatabases', 'PostgreSQL', 'ManagedDisk', 'MySQL', 'RedHat', 'MariaDB', 'RedisCache', 'CosmosDB', 'SqlDataWarehouse', 'SUSELinux', 'AppService', 'BlockBlob', 'AzureDataExplorer', 'VMwareCloudSimple'] and default value 'VirtualMachines'; and properties/lookBackPeriod with allowed values ['Last7Days', 'Last30Days', 'Last60Days'] and default value 'Last7Days'.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "termParameter": { - "description": "Specify length of reservation recommendation term.", - "type": "string", - "in": "query", - "required": true, - "name": "term", - "x-ms-parameter-location": "method", - "enum": [ - "P1Y", - "P3Y" - ], - "x-ms-enum": { - "name": "term", - "modelAsString": true, - "values": [ - { - "value": "P1Y", - "description": "1 year reservation term", - "name": "P1Y" - }, - { - "value": "P3Y", - "description": "3 year reservation term", - "name": "P3Y" - } - ] - } - }, - "regionParameter": { - "name": "region", - "in": "query", - "description": "Used to select the region the recommendation should be generated for.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "lookBackPeriodParameter": { - "name": "lookBackPeriod", - "in": "query", - "description": "Filter the time period on which reservation recommendation results are based.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method", - "enum": [ - "Last7Days", - "Last30Days", - "Last60Days" - ], - "x-ms-enum": { - "name": "lookBackPeriod", - "modelAsString": true, - "values": [ - { - "value": "Last7Days", - "description": "Use 7 days of data for recommendations", - "name": "Last07Days" - }, - { - "value": "Last30Days", - "description": "Use 30 days of data for recommendations", - "name": "Last30Days" - }, - { - "value": "Last60Days", - "description": "Use 60 days of data for recommendations", - "name": "Last60Days" - } - ] - } - }, - "productParameter": { - "name": "product", - "in": "query", - "description": "Filter the products for which reservation recommendation results are generated. Examples: Standard_DS1_v2 (for VM), Premium_SSD_Managed_Disks_P30 (for Managed Disks)", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "scopeParameter": { - "description": "Scope of the reservation.", - "type": "string", - "name": "scope", - "in": "query", - "required": true, - "x-ms-parameter-location": "method", - "enum": [ - "Single", - "Shared" - ], - "x-ms-enum": { - "name": "scope", - "modelAsString": true - } - }, - "useMarkupIfPartnerParameter": { - "name": "useMarkupIfPartner", - "in": "query", - "description": "Applies mark up to the transactions if the caller is a partner.", - "required": false, - "type": "boolean", - "x-ms-parameter-location": "method" - }, - "previewMarkupPercentage": { - "name": "previewMarkupPercentage", - "in": "query", - "description": "Preview markup percentage to be applied.", - "required": false, - "type": "number", - "format": "decimal", - "x-ms-parameter-location": "method" - } - } -} From f86b65883ebbb4b949db5be1648fe96d7eddb406 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Thu, 1 Jun 2023 16:25:03 -0700 Subject: [PATCH 26/35] Revert "SDK error fix" This reverts commit e0d315492fb9c9fb21fb0d809de5759738aa850c. --- .../stable/2023-03-01/consumption.json | 89 ++++++++++++------- 1 file changed, 57 insertions(+), 32 deletions(-) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json index e7a1c762612c..85e97f868e47 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2023-03-01/consumption.json @@ -158,7 +158,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -255,7 +255,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -297,7 +297,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -342,7 +342,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -397,7 +397,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -434,7 +434,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -476,7 +476,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -581,7 +581,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -620,7 +620,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -662,7 +662,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -714,7 +714,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -772,7 +772,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -868,7 +868,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -917,7 +917,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -969,7 +969,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1056,7 +1056,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1116,7 +1116,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1185,7 +1185,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/HighCasedErrorResponse" } } } @@ -1237,7 +1237,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1289,7 +1289,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1355,7 +1355,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -1424,7 +1424,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -1457,7 +1457,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1509,7 +1509,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -1551,7 +1551,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -1599,7 +1599,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1651,7 +1651,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1696,7 +1696,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1748,7 +1748,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1803,7 +1803,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1851,7 +1851,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/ErrorResponse" } } } @@ -4924,6 +4924,21 @@ } } }, + "ErrorDetails": { + "description": "The details of the error.", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + } + } + }, "HighCasedErrorDetails": { "description": "The details of the error.", "properties": { @@ -4948,7 +4963,17 @@ "$ref": "#/definitions/HighCasedErrorDetails" } } - }, + }, + "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" + } + } + }, "Operation": { "description": "A Consumption REST API operation.", "type": "object", From 79d167e32a38a861f808d1090e2ef91b0d828b02 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Tue, 6 Jun 2023 10:22:43 -0700 Subject: [PATCH 27/35] Suppression for Linter error --- specification/consumption/resource-manager/readme.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index 2ca3d7397222..ad0d4e72a64f 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -468,6 +468,12 @@ directive: - suppress: GuidUsage from: consumption.json reason: Usage of Guid in the consumption RP APIs is signed off from the ARM team. + +suppressions: + - code: pathforresourceaction + reason: Existing API used in production by customers and cannot be modified at this point. + from: Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json + where: /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/download ``` ## AzureResourceSchema From 0b796069d336db584e48266c04223674dfe67b15 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Tue, 6 Jun 2023 10:51:20 -0700 Subject: [PATCH 28/35] supression --- specification/consumption/resource-manager/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index ad0d4e72a64f..aa0db56f3ff5 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -472,7 +472,7 @@ directive: suppressions: - code: pathforresourceaction reason: Existing API used in production by customers and cannot be modified at this point. - from: Microsoft.Consumption/stable/2023-03-01/consumption_pricesheet.json + from: consumption_pricesheet.json where: /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/download ``` From 1691e369aa8f28f99ec853a228b80ce306d06f46 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Tue, 6 Jun 2023 22:54:53 -0700 Subject: [PATCH 29/35] supression --- specification/consumption/resource-manager/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index aa0db56f3ff5..346790b3b312 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -473,7 +473,7 @@ suppressions: - code: pathforresourceaction reason: Existing API used in production by customers and cannot be modified at this point. from: consumption_pricesheet.json - where: /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/download + where: - $.paths["/pricesheets/download"].post ``` ## AzureResourceSchema From 943ddd8461a0aff513c181f3e638b7a9acd218aa Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Tue, 6 Jun 2023 23:14:51 -0700 Subject: [PATCH 30/35] supression error --- specification/consumption/resource-manager/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index 346790b3b312..39f4f5b733ea 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -473,7 +473,7 @@ suppressions: - code: pathforresourceaction reason: Existing API used in production by customers and cannot be modified at this point. from: consumption_pricesheet.json - where: - $.paths["/pricesheets/download"].post + where: $.paths["/pricesheets/download"].post ``` ## AzureResourceSchema From 35c8b2bf495ef6f6bdca8176fe1eca917df567a6 Mon Sep 17 00:00:00 2001 From: Chenjie Shi Date: Wed, 7 Jun 2023 15:21:46 +0800 Subject: [PATCH 31/35] resolve go duplicate schema issue --- specification/consumption/resource-manager/readme.go.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/specification/consumption/resource-manager/readme.go.md b/specification/consumption/resource-manager/readme.go.md index ae1d8b934304..76611b36c35b 100644 --- a/specification/consumption/resource-manager/readme.go.md +++ b/specification/consumption/resource-manager/readme.go.md @@ -15,6 +15,11 @@ module-name: sdk/resourcemanager/consumption/armconsumption module: github.com/Azure/azure-sdk-for-go/$(module-name) output-folder: $(go-sdk-folder)/$(module-name) azure-arm: true +directive: + - from: consumption_pricesheet.json + where: $.paths["/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/download"].post.responses.default.schema + transform: > + $["$ref"] = "consumption.json#/definitions/ErrorResponse"; ``` ### Go multi-api @@ -121,4 +126,4 @@ Please also specify `--go-sdk-folder= Date: Wed, 7 Jun 2023 10:59:31 -0700 Subject: [PATCH 32/35] Changes per - https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdev.azure.com%2Fazure-sdk%2Finternal%2F_wiki%2Fwikis%2Finternal.wiki%2F828%2FHow-to-suppress-validation-rules%3Fanchor%3Dnew-guidance-as-of-5%2F15%2F2023&data=05%7C01%7Cpthippeswamy%40microsoft.com%7C1975ac464e674af18df308db672967e8%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C638217199804383965%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=L6ZelM9GpeDUHthYwX%2Fgb0BCM6aBTNKxMOT548n2rNc%3D&reserved=0 --- specification/consumption/resource-manager/readme.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index 39f4f5b733ea..c54107e6f793 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -469,11 +469,11 @@ directive: from: consumption.json reason: Usage of Guid in the consumption RP APIs is signed off from the ARM team. -suppressions: - - code: pathforresourceaction - reason: Existing API used in production by customers and cannot be modified at this point. - from: consumption_pricesheet.json +directive: + - suppress: pathforresourceaction where: $.paths["/pricesheets/download"].post + from: consumption_pricesheet.json + reason: Existing API used in production by customers and cannot be modified at this point. ``` ## AzureResourceSchema From eab544d66cdb8e1986b6f2739fe5a71e171805df Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 7 Jun 2023 14:22:37 -0700 Subject: [PATCH 33/35] correction --- specification/consumption/resource-manager/readme.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index c54107e6f793..b5c22904a8b0 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -468,8 +468,6 @@ directive: - suppress: GuidUsage from: consumption.json reason: Usage of Guid in the consumption RP APIs is signed off from the ARM team. - -directive: - suppress: pathforresourceaction where: $.paths["/pricesheets/download"].post from: consumption_pricesheet.json From aba9d50005911de04a7e9e8500546ad573b6e7a2 Mon Sep 17 00:00:00 2001 From: Preethi Thippeswamy Date: Wed, 7 Jun 2023 15:29:11 -0700 Subject: [PATCH 34/35] correcting suppression format --- specification/consumption/resource-manager/readme.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index b5c22904a8b0..122f5937278d 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -468,9 +468,11 @@ directive: - suppress: GuidUsage from: consumption.json reason: Usage of Guid in the consumption RP APIs is signed off from the ARM team. - - suppress: pathforresourceaction - where: $.paths["/pricesheets/download"].post + + suppressions: + - code: pathforresourceaction from: consumption_pricesheet.json + where: $.paths["/pricesheets/download"].post reason: Existing API used in production by customers and cannot be modified at this point. ``` From b48c7ef937743e3713be1c94afdcbd79c7b33429 Mon Sep 17 00:00:00 2001 From: Chenjie Shi Date: Tue, 13 Jun 2023 10:52:28 +0800 Subject: [PATCH 35/35] revert suppression --- specification/consumption/resource-manager/readme.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index 122f5937278d..2ca3d7397222 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -468,12 +468,6 @@ directive: - suppress: GuidUsage from: consumption.json reason: Usage of Guid in the consumption RP APIs is signed off from the ARM team. - - suppressions: - - code: pathforresourceaction - from: consumption_pricesheet.json - where: $.paths["/pricesheets/download"].post - reason: Existing API used in production by customers and cannot be modified at this point. ``` ## AzureResourceSchema