diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/billingbenefits.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/billingbenefits.json index d635d21db39..3b92bbb38a6 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/billingbenefits.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/billingbenefits.json @@ -49,7 +49,7 @@ }, "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" } ], "tags": [ @@ -59,13 +59,13 @@ "200": { "description": "List all the operations.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/OperationListResult" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/OperationListResult" } }, "default": { "description": "Error response describing why the operation failed", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -98,7 +98,7 @@ "$ref": "#/parameters/SavingsPlanOrderAliasNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SavingsPlanOrderAliasRequestParameter" @@ -131,7 +131,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -152,7 +152,7 @@ "$ref": "#/parameters/SavingsPlanOrderAliasNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -165,7 +165,7 @@ "default": { "description": "Unexpected error.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -191,7 +191,7 @@ "$ref": "#/parameters/SavingsPlanOrderIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/ExpandParameter" @@ -207,7 +207,7 @@ "default": { "description": "Unexpected error.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -230,7 +230,7 @@ "$ref": "#/parameters/SavingsPlanOrderIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -243,7 +243,7 @@ "default": { "description": "Unexpected error.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -266,7 +266,7 @@ }, "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -279,7 +279,7 @@ "default": { "description": "Unexpected error.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -305,7 +305,7 @@ "$ref": "#/parameters/SavingsPlanOrderIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -318,7 +318,7 @@ "default": { "description": "Unexpected error.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -341,7 +341,7 @@ }, "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { "name": "$filter", @@ -396,7 +396,7 @@ "default": { "description": "Unexpected error.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -425,7 +425,7 @@ "$ref": "#/parameters/SavingsPlanIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/ExpandParameter" @@ -441,7 +441,7 @@ "default": { "description": "Unexpected error.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -457,6 +457,7 @@ "$ref": "./examples/SavingsPlanUpdate.json" } }, + "x-ms-long-running-operation": true, "parameters": [ { "$ref": "#/parameters/SavingsPlanOrderIdParameter" @@ -465,7 +466,7 @@ "$ref": "#/parameters/SavingsPlanIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SavingsPlanUpdateRequestParameter" @@ -493,7 +494,7 @@ "default": { "description": "Unexpected error.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -519,7 +520,7 @@ "$ref": "#/parameters/SavingsPlanIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SavingsPlanUpdateValidateRequestParameter" @@ -535,7 +536,7 @@ "default": { "description": "Unexpected error.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -555,7 +556,7 @@ }, "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SavingsPlanPurchaseValidateRequestParameter" @@ -571,7 +572,7 @@ "default": { "description": "Unexpected error.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -598,7 +599,7 @@ "$ref": "#/parameters/ReservationOrderAliasNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/ReservationOrderAliasRequestParameter" @@ -631,7 +632,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } @@ -652,7 +653,7 @@ "$ref": "#/parameters/ReservationOrderAliasNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -665,116 +666,610 @@ "default": { "description": "Unexpected error.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } } } - } - }, - "definitions": { - "Sku": { - "type": "object", - "description": "The SKU to be applied for this resource", - "properties": { - "name": { - "type": "string", - "description": "Name of the SKU to be applied" - } - } }, - "SavingsPlanOrderAliasModel": { - "type": "object", - "description": "Savings plan order alias", - "required": [ - "sku" - ], - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Resource" - } - ], - "properties": { - "sku": { - "description": "Savings plan SKU", - "$ref": "#/definitions/Sku" + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BillingBenefits/discounts/{discountName}": { + "put": { + "description": "Create discount.", + "operationId": "Discounts_Create", + "tags": [ + "Discounts" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" }, - "kind": { - "type": "string", - "description": "Resource provider kind" + "x-ms-examples": { + "DiscountsCreatePrimary": { + "$ref": "./examples/DiscountsCreatePrimary.json" + }, + "DiscountsCreatePrimaryWithPriceGuarantee": { + "$ref": "./examples/DiscountsCreatePrimaryWithPriceGuarantee.json" + }, + "DiscountsCreatePrimaryWithCustomPrice": { + "$ref": "./examples/DiscountsCreatePrimaryWithCustomPrice.json" + }, + "DiscountsCreatePrimaryWithCustomPriceMultiCurrency": { + "$ref": "./examples/DiscountsCreatePrimaryWithCustomPriceMultiCurrency.json" + }, + "DiscountsCreatePrimaryBackfill": { + "$ref": "./examples/DiscountsCreatePrimaryBackfill.json" + }, + "DiscountsCreateAffiliate": { + "$ref": "./examples/DiscountsCreateAffiliate.json" + } }, - "properties": { - "description": "Savings plan order alias properties", - "x-ms-client-flatten": true, - "$ref": "#/definitions/SavingsPlanOrderAliasProperties" + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiscountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/DiscountRequestParameter" + } + ], + "responses": { + "200": { + "description": "The resource has been created.", + "schema": { + "$ref": "#/definitions/Discount" + } + }, + "201": { + "description": "The request is being processed.", + "schema": { + "$ref": "#/definitions/Discount" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "URL for checking the ongoing status of the operation." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "Clients should wait for the Retry-After interval before polling again" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } } }, - "x-ms-azure-resource": true - }, - "SavingsPlanOrderAliasProperties": { - "type": "object", - "description": "Savings plan properties", - "properties": { - "displayName": { - "$ref": "#/definitions/DisplayName" - }, - "savingsPlanOrderId": { - "type": "string", - "description": "Identifier of the savings plan created", - "readOnly": true - }, - "provisioningState": { - "$ref": "#/definitions/ProvisioningState" - }, - "billingScopeId": { - "$ref": "#/definitions/BillingScopeId" - }, - "term": { - "$ref": "#/definitions/Term" + "delete": { + "description": "Delete discount. Clears the metadata from the user's view.", + "operationId": "Discounts_Delete", + "tags": [ + "Discounts" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" }, - "billingPlan": { - "$ref": "#/definitions/BillingPlan" + "x-ms-examples": { + "ReservationOrderAliasCreate": { + "$ref": "./examples/DiscountsDelete.json" + } }, - "appliedScopeType": { - "$ref": "#/definitions/AppliedScopeType" + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiscountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The request is accepted.", + "headers": { + "Location": { + "description": "Location URI to poll for result.", + "type": "string" + }, + "Azure-AsyncOperation": { + "type": "string", + "description": "URL for checking the ongoing status of the operation." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "Clients should wait for the Retry-After interval before polling again" + } + } + }, + "204": { + "description": "The resource is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "description": "Get discount at resource group level", + "operationId": "Discount_Get", + "tags": [ + "Discounts" + ], + "x-ms-examples": { + "DiscountGet": { + "$ref": "./examples/DiscountGet.json" + } }, - "appliedScopeProperties": { - "$ref": "#/definitions/AppliedScopeProperties" + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiscountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of discounts under the given resource group.", + "schema": { + "$ref": "#/definitions/Discount" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "description": "Update discounts", + "operationId": "Discount_Update", + "tags": [ + "Discounts" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" }, - "commitment": { - "$ref": "#/definitions/Commitment" + "x-ms-examples": { + "DiscountGet": { + "$ref": "./examples/DiscountsUpdate.json" + } }, - "renew": { - "$ref": "#/definitions/Renew" + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiscountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/DiscountPatchRequestParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Discount" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "URL for checking the ongoing status of the operation." + }, + "Location": { + "description": "Location URI to poll for result.", + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "Clients should wait for the Retry-After interval before polling again" + } + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } } } }, - "BillingScopeId": { - "type": "string", - "description": "Subscription that will be charged for purchasing the benefit" - }, - "BillingProfileId": { - "type": "string", - "readOnly": true, - "description": "Fully-qualified identifier of the billing profile where the savings plan is applied. Present only for Field-led or Customer-led customers." - }, - "CustomerId": { - "type": "string", - "readOnly": true, - "description": "Fully-qualified identifier of the customer where the savings plan is applied. Present only for Partner-led customers." - }, - "BillingAccountId": { - "type": "string", - "readOnly": true, - "description": "Fully-qualified identifier of the billing account where the savings plan is applied. Present only for Enterprise Agreement customers." - }, - "ReservedResourceType": { - "type": "string", - "description": "The type of the resource that is being reserved.", - "enum": [ - "VirtualMachines", - "SqlDatabases", - "SuseLinux", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BillingBenefits/discounts": { + "get": { + "description": "List discounts at resource group level", + "operationId": "Discounts_ResourceGroupList", + "tags": [ + "Discounts" + ], + "x-ms-examples": { + "DiscountsResourceGroupList": { + "$ref": "./examples/DiscountList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of discounts under the given resource group.", + "schema": { + "$ref": "#/definitions/DiscountList" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.BillingBenefits/discounts": { + "get": { + "description": "List discounts at subscription level", + "operationId": "Discounts_SubscriptionList", + "tags": [ + "Discounts" + ], + "x-ms-examples": { + "DiscountSubscriptionList": { + "$ref": "./examples/DiscountList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List discounts at subscription level.", + "schema": { + "$ref": "#/definitions/DiscountList" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BillingBenefits/discounts/{discountName}/cancel": { + "post": { + "description": "Cancel discount. Stops applying the benefit.", + "operationId": "Discounts_Cancel", + "tags": [ + "Discounts" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "DiscountCancel": { + "$ref": "./examples/DiscountCancel.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiscountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The request is accepted.", + "headers": { + "Location": { + "description": "Location URI to poll for result.", + "type": "string" + }, + "Azure-AsyncOperation": { + "type": "string", + "description": "URL for checking the ongoing status of the operation." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "Clients should wait for the Retry-After interval before polling again" + } + } + }, + "200": { + "description": "Get discount under the given resource group.", + "schema": { + "$ref": "#/definitions/Discount" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.BillingBenefits/applicableDiscounts": { + "get": { + "description": "List discounts that are applicable for a given scope. Currently supported scopes: billing accounts", + "operationId": "Discounts_ScopeList", + "tags": [ + "Discounts" + ], + "x-ms-examples": { + "DiscountScopeList": { + "$ref": "./examples/ApplicableDiscountsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of discounts that are applicable for a given scope.", + "schema": { + "$ref": "#/definitions/DiscountList" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ResourceSku": { + "type": "object", + "description": "The SKU to be applied for this resource", + "properties": { + "name": { + "type": "string", + "description": "Name of the SKU to be applied" + } + } + }, + "SavingsPlanOrderAliasModel": { + "type": "object", + "description": "Savings plan order alias", + "required": [ + "sku" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/Resource" + } + ], + "properties": { + "sku": { + "description": "Savings plan SKU", + "$ref": "#/definitions/ResourceSku" + }, + "kind": { + "type": "string", + "description": "Resource provider kind" + }, + "properties": { + "description": "Savings plan order alias properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SavingsPlanOrderAliasProperties" + } + }, + "x-ms-azure-resource": true + }, + "SavingsPlanOrderAliasProperties": { + "type": "object", + "description": "Savings plan properties", + "properties": { + "displayName": { + "$ref": "#/definitions/DisplayName" + }, + "savingsPlanOrderId": { + "type": "string", + "description": "Identifier of the savings plan created", + "readOnly": true + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "billingScopeId": { + "$ref": "#/definitions/BillingScopeId" + }, + "term": { + "$ref": "#/definitions/Term" + }, + "billingPlan": { + "$ref": "#/definitions/BillingPlan" + }, + "appliedScopeType": { + "$ref": "#/definitions/AppliedScopeType" + }, + "appliedScopeProperties": { + "$ref": "#/definitions/AppliedScopeProperties" + }, + "commitment": { + "$ref": "#/definitions/Commitment" + }, + "renew": { + "$ref": "#/definitions/Renew" + } + } + }, + "BillingScopeId": { + "type": "string", + "description": "Subscription that will be charged for purchasing the benefit" + }, + "BillingProfileResourceId": { + "type": "string", + "readOnly": true, + "format": "arm-id", + "x-ms-arm-id-details": { + "allowedResources": [ + { + "scopes": [ + "Tenant" + ], + "type": "Microsoft.Billing/billingAccounts" + } + ] + }, + "description": "Fully-qualified identifier of the billing profile where the savings plan is applied. Present only for Field-led or Customer-led customers." + }, + "CustomerResourceId": { + "type": "string", + "readOnly": true, + "format": "arm-id", + "x-ms-arm-id-details": { + "allowedResources": [ + { + "scopes": [ + "Tenant" + ], + "type": "Microsoft.Billing/billingAccounts/customers" + } + ] + }, + "description": "Fully-qualified identifier of the customer where the savings plan is applied. Present only for Partner-led customers." + }, + "BillingAccountResourceId": { + "type": "string", + "readOnly": true, + "format": "arm-id", + "x-ms-arm-id-details": { + "allowedResources": [ + { + "scopes": [ + "Tenant" + ], + "type": "Microsoft.Billing/billingAccounts" + } + ] + }, + "description": "Fully-qualified identifier of the billing account where the savings plan is applied. Present only for Enterprise Agreement customers." + }, + "PrimaryResourceId": { + "type": "string", + "readOnly": true, + "format": "arm-id", + "x-ms-arm-id-details": { + "allowedResources": [ + { + "scopes": [ + "ResourceGroup" + ], + "type": "Microsoft.BillingBenefits/discounts" + } + ] + }, + "description": "This will be present in the response if the primary has a resource ID" + }, + "BenefitResourceId": { + "type": "string", + "readOnly": true, + "format": "arm-id", + "x-ms-arm-id-details": { + "allowedResources": [ + { + "scopes": [ + "ResourceGroup" + ], + "type": "Microsoft.BillingBenefits/discounts" + } + ] + }, + "description": "Fully-qualified identifier of the benefit under applicable benefit list." + }, + "ReservedResourceType": { + "type": "string", + "description": "The type of the resource that is being reserved.", + "enum": [ + "VirtualMachines", + "SqlDatabases", + "SuseLinux", "CosmosDb", "RedHat", "SqlDataWarehouse", @@ -851,7 +1346,23 @@ "type": "string", "description": "Display name" }, - "AppliedScopeType": { + "DiscountStatus": { + "type": "string", + "readOnly": true, + "description": "Represents the current status of the discount.", + "enum": [ + "Active", + "Pending", + "Failed", + "Canceled", + "Expired" + ], + "x-ms-enum": { + "name": "DiscountStatus", + "modelAsString": true + } + }, + "AppliedScopeType": { "type": "string", "description": "Type of the Applied Scope.", "enum": [ @@ -920,7 +1431,9 @@ "type": "string", "description": "Commitment grain.", "enum": [ - "Hourly" + "Hourly", + "FullTerm", + "Unknown" ], "x-ms-enum": { "name": "CommitmentGrain", @@ -1054,13 +1567,13 @@ ], "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Resource" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/Resource" } ], "properties": { "sku": { "description": "Savings plan SKU", - "$ref": "#/definitions/Sku" + "$ref": "#/definitions/ResourceSku" }, "properties": { "description": "Savings plan properties", @@ -1088,13 +1601,13 @@ "$ref": "#/definitions/BillingScopeId" }, "billingProfileId": { - "$ref": "#/definitions/BillingProfileId" + "$ref": "#/definitions/BillingProfileResourceId" }, "customerId": { - "$ref": "#/definitions/CustomerId" + "$ref": "#/definitions/CustomerResourceId" }, "billingAccountId": { - "$ref": "#/definitions/BillingAccountId" + "$ref": "#/definitions/BillingAccountResourceId" }, "term": { "$ref": "#/definitions/Term" @@ -1171,13 +1684,13 @@ ], "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Resource" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/Resource" } ], "properties": { "sku": { "description": "Savings plan SKU", - "$ref": "#/definitions/Sku" + "$ref": "#/definitions/ResourceSku" }, "properties": { "description": "Savings plan order properties", @@ -1200,13 +1713,13 @@ "$ref": "#/definitions/BillingScopeId" }, "billingProfileId": { - "$ref": "#/definitions/BillingProfileId" + "$ref": "#/definitions/BillingProfileResourceId" }, "customerId": { - "$ref": "#/definitions/CustomerId" + "$ref": "#/definitions/CustomerResourceId" }, "billingAccountId": { - "$ref": "#/definitions/BillingAccountId" + "$ref": "#/definitions/BillingAccountResourceId" }, "term": { "$ref": "#/definitions/Term" @@ -1469,7 +1982,7 @@ "type": "object", "properties": { "sku": { - "$ref": "#/definitions/Sku" + "$ref": "#/definitions/ResourceSku" }, "properties": { "x-ms-client-flatten": true, @@ -1612,13 +2125,13 @@ ], "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Resource" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/Resource" } ], "properties": { "sku": { "description": "Reservation order SKU", - "$ref": "#/definitions/Sku" + "$ref": "#/definitions/ResourceSku" }, "location": { "type": "string", @@ -1683,138 +2196,768 @@ } } }, - "ReservationOrderAliasResponse": { + "ReservationOrderAliasResponse": { + "type": "object", + "description": "Reservation order alias", + "required": [ + "sku" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/Resource" + } + ], + "properties": { + "sku": { + "description": "Reservation order SKU", + "$ref": "#/definitions/ResourceSku" + }, + "location": { + "type": "string", + "description": "The Azure Region where the reserved resource lives." + }, + "properties": { + "description": "Reservation order alias response properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationOrderAliasResponseProperties" + } + }, + "x-ms-azure-resource": true + }, + "ReservationOrderAliasResponseProperties": { + "type": "object", + "description": "Reservation properties", + "properties": { + "displayName": { + "$ref": "#/definitions/DisplayName" + }, + "reservationOrderId": { + "type": "string", + "description": "Identifier of the reservation order created", + "readOnly": true + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "billingScopeId": { + "$ref": "#/definitions/BillingScopeId" + }, + "term": { + "$ref": "#/definitions/Term" + }, + "billingPlan": { + "$ref": "#/definitions/BillingPlan" + }, + "appliedScopeType": { + "$ref": "#/definitions/AppliedScopeType" + }, + "appliedScopeProperties": { + "$ref": "#/definitions/AppliedScopeProperties" + }, + "quantity": { + "type": "integer", + "format": "int32", + "description": "Total Quantity of the SKUs purchased in the Reservation." + }, + "renew": { + "$ref": "#/definitions/Renew" + }, + "reservedResourceType": { + "description": "The type of the resource that is being reserved.", + "$ref": "#/definitions/ReservedResourceType" + }, + "reviewDateTime": { + "type": "string", + "format": "date-time", + "description": "This is the date-time when the Reservation needs to be reviewed." + }, + "reservedResourceProperties": { + "type": "object", + "description": "Properties specific to each reserved resource type. Not required if not applicable.", + "properties": { + "instanceFlexibility": { + "$ref": "#/definitions/InstanceFlexibility" + } + } + } + } + }, + "InstanceFlexibility": { + "type": "string", + "description": "Turning this on will apply the reservation discount to other VMs in the same VM size group.", + "enum": [ + "On", + "Off" + ], + "x-ms-enum": { + "name": "InstanceFlexibility", + "modelAsString": true + } + }, + "RoleAssignmentEntity": { + "type": "object", + "description": "Role assignment entity", + "properties": { + "id": { + "description": "Role assignment entity id", + "type": "string" + }, + "name": { + "description": "Role assignment entity name", + "type": "string" + }, + "properties": { + "description": "Role assignment entity properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleAssignmentEntityProperties" + } + } + }, + "RoleAssignmentEntityProperties": { + "type": "object", + "description": "Role assignment entity properties", + "properties": { + "principalId": { + "description": "Principal Id", + "type": "string" + }, + "roleDefinitionId": { + "description": "Role definition id", + "type": "string" + }, + "scope": { + "description": "Scope of the role assignment entity", + "type": "string" + } + } + }, + "DiscountProvisioningState": { + "type": "string", + "description": "Provisioning states of Discount.", + "readOnly": true, + "enum": [ + "Unknown", + "Pending", + "Succeeded", + "Canceled", + "Failed" + ], + "x-ms-enum": { + "name": "DiscountProvisioningState", + "modelAsString": true + } + }, + "DiscountProvisioningSubState": { + "type": "string", + "description": "Provisioning sub state of Discount.", + "readOnly": true, + "enum": [ + "Unknown", + "None", + "Expired" + ], + "x-ms-enum": { + "name": "DiscountProvisioningSubState", + "modelAsString": true + } + }, + "ProductCode": { + "type": "string", + "description": "Represents catalog UPN." + }, + "StartAt": { + "type": "string", + "format": "date-time", + "description": "Start DateTime." + }, + "EndAt": { + "type": "string", + "format": "date-time", + "description": "End DateTime in UTC." + }, + "AffiliateEndAt": { + "type": "string", + "format": "date-time", + "description": "End DateTime in UTC.", + "readOnly": true + }, + "DiscountSystemId": { + "type": "string", + "description": "This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount." + }, + "DiscountAppliedScopeType": { + "type": "string", + "description": "List of applied scopes supported for discounts.", + "enum": [ + "BillingAccount", + "BillingProfile", + "Customer" + ], + "x-ms-enum": { + "name": "DiscountAppliedScopeType", + "modelAsString": true + } + }, + "DiscountList": { + "type": "object", + "description": "Discount list", + "properties": { + "value": { + "type": "array", + "description": "List of discounts.", + "items": { + "$ref": "#/definitions/Discount" + }, + "x-ms-identifiers": [] + }, + "nextLink": { + "type": "string", + "description": "Url to get the next page." + } + } + }, + "Discount": { + "type": "object", + "x-ms-azure-resource": true, + "description": "Resource definition for Discounts.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ResourceModelWithAllowedPropertySet" + } + ], + "properties": { + "properties": { + "description": "Discount properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiscountProperties" + } + } + }, + "DiscountProperties": { + "type": "object", + "description": "Properties belonging to discounts.", + "required": [ + "entityType", + "productCode", + "startAt" + ], + "properties": { + "entityType": { + "$ref": "#/definitions/DiscountEntityType" + }, + "productCode": { + "description": "This is the catalog UPN for the product.", + "$ref": "#/definitions/ProductCode" + }, + "startAt": { + "$ref": "#/definitions/StartAt", + "description": "Start date of the discount. Value is the date the discount started or will start in the future." + }, + "systemId": { + "$ref": "#/definitions/DiscountSystemId", + "description": "This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount." + }, + "provisioningState": { + "$ref": "#/definitions/DiscountProvisioningState", + "readOnly": true, + "description": "The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled." + }, + "billingAccountResourceId": { + "$ref": "#/definitions/BillingAccountResourceId", + "description": "Billing account resource id where the discount metadata is present." + }, + "billingProfileResourceId": { + "$ref": "#/definitions/BillingProfileResourceId", + "description": "Billing profile resource id where the discount is scoped to." + }, + "customerResourceId": { + "$ref": "#/definitions/CustomerResourceId", + "description": "Customer resource id where the discount is scoped to." + }, + "displayName": { + "$ref": "#/definitions/DisplayName", + "description": "This defines a user friendly display name for the discount." + }, + "status": { + "$ref": "#/definitions/DiscountStatus" + }, + "benefitResourceId": { + "$ref": "#/definitions/BenefitResourceId" + }, + "appliedScopeType": { + "$ref": "#/definitions/DiscountAppliedScopeType", + "description": "List of applied scopes supported for discounts." + } + }, + "discriminator": "entityType" + }, + "EntityTypeAffiliateDiscount": { + "type": "object", + "description": "Entity type for affiliate discounts", + "required": [ + "systemId" + ], + "allOf": [ + { + "$ref": "#/definitions/DiscountProperties" + } + ], + "x-ms-discriminator-value": "Affiliate", + "properties": { + "primaryResourceId": { + "$ref": "#/definitions/PrimaryResourceId" + }, + "endAt": { + "$ref": "#/definitions/AffiliateEndAt", + "description": "End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate." + } + } + }, + "EntityTypePrimaryDiscount": { + "type": "object", + "description": "Entity type for primary discounts", + "required": [ + "endAt" + ], + "allOf": [ + { + "$ref": "#/definitions/DiscountProperties" + } + ], + "x-ms-discriminator-value": "Primary", + "properties": { + "discountTypeProperties": { + "$ref": "#/definitions/DiscountTypeProperties" + }, + "endAt": { + "$ref": "#/definitions/EndAt", + "description": "End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate." + } + } + }, + "DiscountTypeProperties": { + "type": "object", + "description": "This defines the conditions for a given discount type.", + "required": [ + "discountType", + "applyDiscountOn" + ], + "properties": { + "discountType": { + "$ref": "#/definitions/DiscountType" + }, + "applyDiscountOn": { + "$ref": "#/definitions/ApplyDiscountOn" + }, + "discountPercentage": { + "$ref": "#/definitions/DiscountPercentage" + }, + "discountCombinationRule": { + "$ref": "#/definitions/DiscountCombinationRule" + }, + "priceGuaranteeProperties": { + "$ref": "#/definitions/PriceGuaranteeProperties" + }, + "conditions": { + "$ref": "#/definitions/Conditions" + } + }, + "discriminator": "discountType" + }, + "DiscountTypeProductFamily": { + "type": "object", + "x-ms-discriminator-value": "ProductFamily", + "description": "Discount type properties including product family name", + "allOf": [ + { + "$ref": "#/definitions/DiscountTypeProperties" + } + ], + "properties": { + "productFamilyName": { + "$ref": "#/definitions/ProductFamilyName" + } + } + }, + "DiscountTypeProduct": { "type": "object", - "description": "Reservation order alias", - "required": [ - "sku" + "x-ms-discriminator-value": "Product", + "description": "Discount type properties including product family name and product id.", + "allOf": [ + { + "$ref": "#/definitions/DiscountTypeProperties" + } ], + "properties": { + "productFamilyName": { + "$ref": "#/definitions/ProductFamilyName" + }, + "productId": { + "$ref": "#/definitions/ProductId" + } + } + }, + "DiscountTypeProductSku": { + "type": "object", + "x-ms-discriminator-value": "Sku", + "description": "Discount type properties including product family name, product id, and sku id.", "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Resource" + "$ref": "#/definitions/DiscountTypeProperties" } ], "properties": { - "sku": { - "description": "Reservation order SKU", - "$ref": "#/definitions/Sku" + "productFamilyName": { + "$ref": "#/definitions/ProductFamilyName" }, - "location": { - "type": "string", - "description": "The Azure Region where the reserved resource lives." + "productId": { + "$ref": "#/definitions/ProductId" }, - "properties": { - "description": "Reservation order alias response properties", - "x-ms-client-flatten": true, - "$ref": "#/definitions/ReservationOrderAliasResponseProperties" + "skuId": { + "$ref": "#/definitions/DiscountSku" } - }, - "x-ms-azure-resource": true + } }, - "ReservationOrderAliasResponseProperties": { + "DiscountTypeCustomPrice": { "type": "object", - "description": "Reservation properties", + "x-ms-discriminator-value": "CustomPrice", + "description": "Discount type properties including product family name, product id, sku, and custom price properties. Allows a single entry in marketSetPrices.", + "allOf": [ + { + "$ref": "#/definitions/DiscountTypeProperties" + } + ], "properties": { - "displayName": { - "$ref": "#/definitions/DisplayName" + "productFamilyName": { + "$ref": "#/definitions/ProductFamilyName" }, - "reservationOrderId": { - "type": "string", - "description": "Identifier of the reservation order created", - "readOnly": true + "productId": { + "$ref": "#/definitions/ProductId" }, - "provisioningState": { - "$ref": "#/definitions/ProvisioningState" + "skuId": { + "$ref": "#/definitions/DiscountSku" }, - "billingScopeId": { - "$ref": "#/definitions/BillingScopeId" + "customPriceProperties": { + "$ref": "#/definitions/CustomPriceProperties" + } + } + }, + "DiscountTypeCustomPriceMultiCurrency": { + "type": "object", + "x-ms-discriminator-value": "CustomPriceMultiCurrency", + "description": "Discount type properties including product family name, product id, sku, and custom price properties. Allows multiple entries in marketSetPrices.", + "allOf": [ + { + "$ref": "#/definitions/DiscountTypeCustomPrice" + } + ] + }, + "DiscountEntityType": { + "type": "string", + "description": "This defines whether the entity being created is primary or affiliate. Supported values: primary, affiliate. Validation: Required, must match one of the 2 values.", + "enum": [ + "Primary", + "Affiliate" + ], + "x-enum-description": [ + "Discount is not dependent on another discount.", + "Discount needs to be scoped to a primary discount." + ], + "x-ms-enum": { + "name": "DiscountEntityType", + "modelAsString": true + } + }, + "DiscountType": { + "type": "string", + "description": "Defines the type of discount. Supported values are ProductFamily, Product, Sku, CustomPrice, and CustomPriceMultiCurrency.", + "enum": [ + "ProductFamily", + "Product", + "Sku", + "CustomPrice", + "CustomPriceMultiCurrency" + ], + "x-enum-description": [ + "Product family for which the discount applies", + "Product for which the discount applies", + "Sku for which the discount applies", + "Custom price for the discount", + "Custom price across currencies for the discount" + ], + "x-ms-enum": { + "name": "DiscountType", + "modelAsString": true + } + }, + "ApplyDiscountOn": { + "type": "string", + "description": "The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.", + "enum": [ + "Purchase", + "Consume", + "Renew" + ], + "x-enum-description": [ + "Apply discount to a new purchase", + "Apply discount to resource consumption", + "Apply discount to the renewal of an existing resource" + ], + "x-ms-enum": { + "name": "ApplyDiscountOn", + "modelAsString": true + } + }, + "ProductFamilyName": { + "description": "Product family for which the discount is given. Validation: Optional", + "type": "string" + }, + "ProductId": { + "description": "Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F", + "type": "string" + }, + "DiscountSku": { + "description": "ResourceSku for the given discount. Validation: Optional.", + "type": "string" + }, + "DiscountPercentage": { + "description": "Discount percentage provided for the customer. Validation: Required unless this is a price rule.", + "type": "number", + "minimum": 0, + "maximum": 100 + }, + "PriceGuaranteeProperties": { + "type": "object", + "description": "Set only in price guarantee scenario.", + "properties": { + "pricingPolicy": { + "$ref": "#/definitions/PricingPolicy" }, - "term": { - "$ref": "#/definitions/Term" + "priceGuaranteeDate": { + "$ref": "#/definitions/PriceGuaranteeDate" + } + } + }, + "PricingPolicy": { + "type": "string", + "description": "Supported values: Protected, Locked", + "enum": [ + "Protected", + "Locked" + ], + "x-enum-descriptions": [ + "Minimun of market rate and base price", + "Price locked" + ], + "x-ms-enum": { + "name": "PricingPolicy", + "modelAsString": true + } + }, + "PriceGuaranteeDate": { + "type": "string", + "format": "date-time", + "description": "The date on which prices are to be used for guarantee calculation. Validation: expected to be 00 hours, Format: 2024-09-30T00:00:00Z. Must be in UTC." + }, + "Conditions": { + "type": "array", + "description": "Array of conditions for the discount. Validation: Optional. Maximum length is 1000.", + "items": { + "$ref": "#/definitions/ConditionsItem" + } + }, + "ConditionsItem": { + "type": "object", + "description": "Condition for a discount.", + "properties": { + "conditionName": { + "type": "string" }, - "billingPlan": { - "$ref": "#/definitions/BillingPlan" + "value": { + "type": "array", + "description": "These items are open-ended strings.", + "items": { + "type": "string" + } }, - "appliedScopeType": { - "$ref": "#/definitions/AppliedScopeType" + "type": { + "type": "string" + } + } + }, + "DiscountCombinationRule": { + "type": "string", + "description": "The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.", + "enum": [ + "BestOf", + "Stackable" + ], + "x-ms-enum": { + "name": "DiscountCombinationRule", + "modelAsString": true + } + }, + "CustomPriceProperties": { + "type": "object", + "description": "Custom price properties for a given discount.", + "required": [ + "ruleType", + "catalogId", + "catalogClaims", + "marketSetPrices" + ], + "properties": { + "ruleType": { + "$ref": "#/definitions/DiscountRuleType" }, - "appliedScopeProperties": { - "$ref": "#/definitions/AppliedScopeProperties" + "catalogId": { + "$ref": "#/definitions/CatalogId" }, - "quantity": { - "type": "integer", - "format": "int32", - "description": "Total Quantity of the SKUs purchased in the Reservation." + "catalogClaims": { + "$ref": "#/definitions/CatalogClaims" }, - "renew": { - "$ref": "#/definitions/Renew" + "termUnits": { + "$ref": "#/definitions/TermUnits" }, - "reservedResourceType": { - "description": "The type of the resource that is being reserved.", - "$ref": "#/definitions/ReservedResourceType" + "billingPeriod": { + "$ref": "#/definitions/BillingPeriod" }, - "reviewDateTime": { - "type": "string", - "format": "date-time", - "description": "This is the date-time when the Reservation needs to be reviewed." + "meterType": { + "$ref": "#/definitions/MeterType" }, - "reservedResourceProperties": { - "type": "object", - "description": "Properties specific to each reserved resource type. Not required if not applicable.", - "properties": { - "instanceFlexibility": { - "$ref": "#/definitions/InstanceFlexibility" - } - } + "marketSetPrices": { + "$ref": "#/definitions/MarketSetPrices" } } }, - "InstanceFlexibility": { + "DiscountRuleType": { "type": "string", - "description": "Turning this on will apply the reservation discount to other VMs in the same VM size group.", + "description": "The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.", "enum": [ - "On", - "Off" + "FixedPriceLock", + "FixedListPrice", + "PriceCeiling" ], "x-ms-enum": { - "name": "InstanceFlexibility", + "name": "DiscountRuleType", "modelAsString": true } }, - "RoleAssignmentEntity": { + "CatalogId": { + "type": "string", + "description": "The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team." + }, + "CatalogClaims": { + "type": "array", + "description": "The set of BigCat claims. Validation: Required. Must contain AgreementType, NationalCloud, and PricingAudience claims. Additionally requires AccessPass claim when creating custom price with action == consume on the pricing instructions.", + "items": { + "$ref": "#/definitions/CatalogClaimsItem" + } + }, + "CatalogClaimsItem": { "type": "object", - "description": "Role assignment entity", + "description": "Catalog claim for a discount.", "properties": { - "id": { - "description": "Role assignment entity id", + "catalogClaimsItemType": { "type": "string" }, - "name": { - "description": "Role assignment entity name", + "value": { "type": "string" + } + } + }, + "TermUnits": { + "type": "string", + "description": "The term units for the priceable node. Validation: Optional, Maximum length 128 characters. Must be present if and only if the availability derived by market, product, sku, and claims has terms." + }, + "BillingPeriod": { + "type": "string", + "description": "The billing period of the priceable node. Validation: Optional, Maximum length 128 characters. Only allowed if the availability derived by market, product, sku, and claims has terms and at least one of those terms has a billing period. When specified, termUnits must be specified." + }, + "MeterType": { + "type": "string", + "description": "Must be present if the market, product, sku, and claims, and optional term information resolves to multiple availabilities that only differ by meter type. Validation: Maximum length 128 characters." + }, + "MarketSetPrices": { + "type": "array", + "description": "The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.", + "required": [ + "items" + ], + "items": { + "$ref": "#/definitions/MarketSetPricesItems" + } + }, + "MarketSetPricesItems": { + "type": "object", + "description": "Items in the MarketSetPrices array.", + "required": [ + "markets", + "value", + "currency" + ], + "properties": { + "markets": { + "type": "array", + "items": { + "$ref": "#/definitions/MarketsItems" + } + }, + "value": { + "type": "number", + "description": "The locked price for the priceable node. Validation: Required. Must be greater than or equal to 0. If the case of billing plans. This represents the price for each cycle charge." }, + "currency": { + "type": "string", + "description": "The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code." + } + } + }, + "MarketsItems": { + "type": "string", + "description": "The country codes of the markets in which this price may apply. Note prices are not extended in market + currency combinations which have not been configured in product ingestion. Validation: Required. Elements must be a valid ISO 3166 2-letter country code. Must contain at least one element(no duplicate). For custom price, must be at-max 1 market." + }, + "AppliedDiscount": { + "type": "object", + "x-ms-azure-resource": true, + "description": "Applied discount", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" + } + ], + "properties": { "properties": { - "description": "Role assignment entity properties", + "description": "Discount properties", "x-ms-client-flatten": true, - "$ref": "#/definitions/RoleAssignmentEntityProperties" + "$ref": "#/definitions/DiscountProperties" } } }, - "RoleAssignmentEntityProperties": { + "DiscountPatchRequest": { "type": "object", - "description": "Role assignment entity properties", + "description": "Discounts patch request", "properties": { - "principalId": { - "description": "Principal Id", - "type": "string" - }, - "roleDefinitionId": { - "description": "Role definition id", - "type": "string" + "properties": { + "description": "Discounts patch request properties", + "$ref": "#/definitions/DiscountPatchRequestProperties", + "x-ms-client-flatten": true }, - "scope": { - "description": "Scope of the role assignment entity", - "type": "string" + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "DiscountPatchRequestProperties": { + "type": "object", + "description": "Discounts patch request properties", + "properties": { + "displayName": { + "$ref": "#/definitions/DisplayName" } } } @@ -1919,7 +3062,43 @@ "schema": { "$ref": "#/definitions/ReservationOrderAliasRequest" } + }, + "DiscountRequestParameter": { + "name": "body", + "in": "body", + "x-ms-parameter-location": "method", + "required": true, + "description": "Request body for creating a discount.", + "schema": { + "$ref": "#/definitions/Discount" + } + }, + "DiscountNameParameter": { + "name": "discountName", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_\\-\\.]+$", + "description": "Name of the discount" + }, + "DiscountPatchRequestParameter": { + "name": "body", + "in": "body", + "x-ms-parameter-location": "method", + "required": true, + "description": "Request body for updating discounts", + "schema": { + "$ref": "#/definitions/DiscountPatchRequest" + } + }, + "ScopeParameter": { + "name": "scope", + "in": "path", + "x-ms-parameter-location": "method", + "required": true, + "type": "string", + "description": "The scope at which the benefits are listed." } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/ApplicableDiscountsList.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/ApplicableDiscountsList.json new file mode 100644 index 00000000000..938e3e8a147 --- /dev/null +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/ApplicableDiscountsList.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "scope": "providers/Microsoft.Billing/billingAccounts/{acctId}", + "api-version": "2024-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/providers/Microsoft.BillingBenefits/applicableDiscounts/13810867107109237", + "name": "13810867107109237", + "type": "Microsoft.BillingBenefits/applicableDiscounts", + "properties": { + "benefitResourceId": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Succeeded", + "status": "Active", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "Sku", + "applyDiscountOn": "Purchase", + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "discountPercentage": 14, + "conditions": [ + { + "type": "equalAny", + "conditionName": "Cloud", + "value": [ + "US-Sec" + ] + } + ] + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/providers/Microsoft.BillingBenefits/applicableDiscounts/63810867107109237", + "name": "63810867107109237", + "type": "Microsoft.BillingBenefits/applicableDiscounts", + "properties": { + "benefitResourceId": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "displayName": "Virtual Machines D Series", + "entityType": "Affiliate", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "primaryResourceId": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testaffiliatediscount", + "systemId": "63810867107109237", + "provisioningState": "Succeeded", + "status": "Active", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31" + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + ] + } + } + } +} diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountCancel.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountCancel.json new file mode 100644 index 00000000000..1806a4d376e --- /dev/null +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountCancel.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "30000000-0000-0000-0000-000000000000", + "resourceGroupName": "testrg", + "discountName": "testdiscount" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Succeeded", + "status": "Canceled", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "account", + "discountTypeProperties": { + "discountType": "Sku", + "applyDiscountOn": "Purchase", + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "discountPercentage": 14, + "conditions": [ + { + "type": "equalAny", + "conditionName": "Cloud", + "value": [ + "US-Sec" + ] + } + ] + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/30000000-0000-0000-0000-000000000000/Microsoft.BillingBenefits/operationStatuses/4e2ffff7-b331-4fcb-ab11-b5fa49368188?api-version=2024-11-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/30000000-0000-0000-0000-000000000000/providers/Microsoft.BillingBenefits/operationStatuses/4e2ffff7-b331-4fcb-ab11-b5fa49368188?api-version=2024-11-01-preview", + "Retry-After": 5 + } + } + } +} diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountGet.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountGet.json new file mode 100644 index 00000000000..7fa48928bb1 --- /dev/null +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountGet.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "30000000-0000-0000-0000-000000000000", + "resourceGroupName": "testrg", + "discountName": "testprimarydiscount", + "api-version": "2024-11-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Succeeded", + "status": "Active", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "Sku", + "applyDiscountOn": "Purchase", + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "discountPercentage": 14, + "conditions": [ + { + "type": "equalAny", + "conditionName": "Cloud", + "value": [ + "US-Sec" + ] + } + ] + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountList.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountList.json new file mode 100644 index 00000000000..b40cd8a3f58 --- /dev/null +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountList.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "30000000-0000-0000-0000-000000000000", + "resourceGroupName": "testrg", + "discountName": "testprimarydiscount", + "api-version": "2024-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Succeeded", + "status": "Active", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "Sku", + "applyDiscountOn": "Purchase", + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "discountPercentage": 14, + "conditions": [ + { + "type": "equalAny", + "conditionName": "Cloud", + "value": [ + "US-Sec" + ] + } + ] + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + }, + { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Affiliate", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "primaryResourceId": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testaffiliatediscount", + "systemId": "13810867107109237", + "provisioningState": "Succeeded", + "status": "Active", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000" + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + ] + } + } + } +} diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreateAffiliate.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreateAffiliate.json new file mode 100644 index 00000000000..41da8703942 --- /dev/null +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreateAffiliate.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "30000000-0000-0000-0000-000000000000", + "resourceGroupName": "testrg", + "discountName": "testaffiliatediscount", + "api-version": "2024-11-01-preview", + "body": { + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Affiliate", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "systemId": "13810867107109237" + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Affiliate", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "primaryResourceId": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testaffiliatediscount", + "systemId": "13810867107109237", + "provisioningState": "Pending", + "status": "Pending", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000" + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Affiliate", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "primaryResourceId": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testaffiliatediscount", + "systemId": "13810867107109237", + "provisioningState": "Succeeded", + "status": "Active", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000" + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimary.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimary.json new file mode 100644 index 00000000000..e285c9ec3da --- /dev/null +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimary.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "subscriptionId": "30000000-0000-0000-0000-000000000000", + "resourceGroupName": "testrg", + "discountName": "testprimarydiscount", + "api-version": "2024-11-01-preview", + "body": { + "location": "global", + "properties": { + "entityType": "Primary", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "Sku", + "applyDiscountOn": "Purchase", + "conditions": [ + { + "conditionName": "Cloud", + "type": "equalAny", + "value": [ + "US-Sec" + ] + } + ], + "discountCombinationRule": "BestOf", + "discountPercentage": 14, + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001" + }, + "displayName": "Virtual Machines D Series", + "endAt": "2024-07-01T23:59:59Z", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z" + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Pending", + "status": "Pending", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "Sku", + "applyDiscountOn": "Purchase", + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "discountPercentage": 14, + "conditions": [ + { + "type": "equalAny", + "conditionName": "Cloud", + "value": [ + "US-Sec" + ] + } + ] + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Succeeded", + "status": "Active", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "Sku", + "applyDiscountOn": "Purchase", + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "discountPercentage": 14, + "conditions": [ + { + "type": "equalAny", + "conditionName": "Cloud", + "value": [ + "US-Sec" + ] + } + ] + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimaryBackfill.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimaryBackfill.json new file mode 100644 index 00000000000..d84bd0bfbc2 --- /dev/null +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimaryBackfill.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "subscriptionId": "30000000-0000-0000-0000-000000000000", + "resourceGroupName": "testrg", + "discountName": "testprimarydiscount", + "api-version": "2024-11-01-preview", + "body": { + "location": "global", + "properties": { + "entityType": "Primary", + "appliedScopeType": "BillingAccount", + "systemId": "13810867107109237", + "discountTypeProperties": { + "discountType": "ProductFamily", + "applyDiscountOn": "Purchase", + "conditions": [ + { + "conditionName": "Cloud", + "type": "equalAny", + "value": [ + "US-Sec" + ] + } + ], + "discountCombinationRule": "BestOf", + "discountPercentage": 14, + "productFamilyName": "Azure" + }, + "displayName": "Virtual Machines D Series", + "endAt": "2024-07-01T23:59:59Z", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z" + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Pending", + "status": "Pending", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "account", + "discountTypeProperties": { + "discountType": "ProductFamily", + "applyDiscountOn": "Purchase", + "productFamilyName": "Azure", + "discountPercentage": 14, + "conditions": [ + { + "type": "equalAny", + "conditionName": "Cloud", + "value": [ + "US-Sec" + ] + } + ] + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Succeeded", + "status": "Active", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "account", + "discountTypeProperties": { + "discountType": "ProductFamily", + "applyDiscountOn": "Purchase", + "productFamilyName": "Azure", + "discountPercentage": 14, + "conditions": [ + { + "type": "equalAny", + "conditionName": "Cloud", + "value": [ + "US-Sec" + ] + } + ] + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimaryWithCustomPrice.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimaryWithCustomPrice.json new file mode 100644 index 00000000000..04f5acb588f --- /dev/null +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimaryWithCustomPrice.json @@ -0,0 +1,170 @@ +{ + "parameters": { + "subscriptionId": "30000000-0000-0000-0000-000000000000", + "resourceGroupName": "testrg", + "discountName": "testprimarydiscount", + "api-version": "2024-11-01-preview", + "body": { + "location": "global", + "properties": { + "entityType": "Primary", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "CustomPrice", + "applyDiscountOn": "Purchase", + "conditions": [ + { + "conditionName": "Cloud", + "type": "equalAny", + "value": [ + "US-Sec" + ] + } + ], + "discountCombinationRule": "BestOf", + "discountPercentage": 14, + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "customPriceProperties": { + "ruleType": "FixedPriceLock", + "catalogId": "4", + "catalogClaims": [ + { + "catalogClaimsItemType": "NationalCloud", + "value": "USSec" + } + ], + "termUnits": "ASI1251A", + "marketSetPrices": [ + { + "markets": [ + "US" + ], + "value": 125.16, + "currency": "USD" + } + ] + } + }, + "displayName": "Virtual Machines D Series", + "endAt": "2024-07-01T23:59:59Z", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z" + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Pending", + "status": "Pending", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "CustomPrice", + "applyDiscountOn": "Purchase", + "conditions": [ + { + "conditionName": "Cloud", + "type": "equalAny", + "value": [ + "US-Sec" + ] + } + ], + "discountCombinationRule": "BestOf", + "discountPercentage": 14, + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "customPriceProperties": { + "ruleType": "FixedPriceLock", + "catalogId": "4", + "catalogClaims": [ + { + "catalogClaimsItemType": "NationalCloud", + "value": "USSec" + } + ], + "termUnits": "ASI1251A", + "marketSetPrices": [ + { + "markets": [ + "US" + ], + "value": 125.16, + "currency": "USD" + } + ] + } + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Succeeded", + "status": "Active", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "Sku", + "applyDiscountOn": "Purchase", + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "discountPercentage": 14, + "conditions": [ + { + "type": "equalAny", + "conditionName": "Cloud", + "value": [ + "US-Sec" + ] + } + ] + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimaryWithCustomPriceMultiCurrency.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimaryWithCustomPriceMultiCurrency.json new file mode 100644 index 00000000000..b5692274c3b --- /dev/null +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimaryWithCustomPriceMultiCurrency.json @@ -0,0 +1,212 @@ +{ + "parameters": { + "subscriptionId": "30000000-0000-0000-0000-000000000000", + "resourceGroupName": "testrg", + "discountName": "testprimarydiscount", + "api-version": "2024-11-01-preview", + "body": { + "location": "global", + "properties": { + "entityType": "Primary", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "CustomPriceMultiCurrency", + "applyDiscountOn": "Purchase", + "conditions": [ + { + "conditionName": "Cloud", + "type": "equalAny", + "value": [ + "US-Sec" + ] + } + ], + "discountCombinationRule": "BestOf", + "discountPercentage": 14, + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "customPriceProperties": { + "ruleType": "FixedPriceLock", + "catalogId": "4", + "catalogClaims": [ + { + "catalogClaimsItemType": "NationalCloud", + "value": "USSec" + } + ], + "termUnits": "ASI1251A", + "marketSetPrices": [ + { + "markets": [ + "US" + ], + "value": 125.16, + "currency": "USD" + }, + { + "markets": [ + "FR" + ], + "value": 110.16, + "currency": "EUR" + } + ] + } + }, + "displayName": "Virtual Machines D Series", + "endAt": "2024-07-01T23:59:59Z", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z" + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Pending", + "status": "Pending", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "account", + "discountTypeProperties": { + "discountType": "CustomPriceMultiCurrency", + "applyDiscountOn": "Purchase", + "conditions": [ + { + "conditionName": "Cloud", + "type": "equalAny", + "value": [ + "US-Sec" + ] + } + ], + "discountCombinationRule": "BestOf", + "discountPercentage": 14, + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "customPriceProperties": { + "ruleType": "FixedPriceLock", + "catalogId": "4", + "catalogClaims": [ + { + "catalogClaimsItemType": "NationalCloud", + "value": "USSec" + } + ], + "termUnits": "ASI1251A", + "marketSetPrices": [ + { + "markets": [ + "US" + ], + "value": 125.16, + "currency": "USD" + }, + { + "markets": [ + "FR" + ], + "value": 110.16, + "currency": "EUR" + } + ] + } + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Succeeded", + "status": "Active", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "account", + "discountTypeProperties": { + "discountType": "CustomPriceMultiCurrency", + "applyDiscountOn": "Purchase", + "conditions": [ + { + "conditionName": "Cloud", + "type": "equalAny", + "value": [ + "US-Sec" + ] + } + ], + "discountCombinationRule": "BestOf", + "discountPercentage": 14, + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "customPriceProperties": { + "ruleType": "FixedPriceLock", + "catalogId": "4", + "catalogClaims": [ + { + "catalogClaimsItemType": "NationalCloud", + "value": "USSec" + } + ], + "termUnits": "ASI1251A", + "marketSetPrices": [ + { + "markets": [ + "US" + ], + "value": 125.16, + "currency": "USD" + }, + { + "markets": [ + "FR" + ], + "value": 110.16, + "currency": "EUR" + } + ] + } + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimaryWithPriceGuarantee.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimaryWithPriceGuarantee.json new file mode 100644 index 00000000000..9f4eb57978f --- /dev/null +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsCreatePrimaryWithPriceGuarantee.json @@ -0,0 +1,138 @@ +{ + "parameters": { + "subscriptionId": "30000000-0000-0000-0000-000000000000", + "resourceGroupName": "testrg", + "discountName": "testprimarydiscount", + "api-version": "2024-11-01-preview", + "body": { + "location": "global", + "properties": { + "entityType": "Primary", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "Sku", + "applyDiscountOn": "Purchase", + "conditions": [ + { + "conditionName": "Cloud", + "type": "equalAny", + "value": [ + "US-Sec" + ] + } + ], + "discountCombinationRule": "BestOf", + "priceGuaranteeProperties": { + "pricingPolicy": "Protected", + "priceGuaranteeDate": "2024-11-01T00:00:00" + }, + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001" + }, + "displayName": "Virtual Machines D Series", + "endAt": "2024-07-01T23:59:59Z", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z" + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Pending", + "status": "Pending", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountCombinationRule": "BestOf", + "discountType": "Sku", + "applyDiscountOn": "Purchase", + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "priceGuaranteeProperties": { + "pricingPolicy": "Protected", + "priceGuaranteeDate": "2024-11-01T00:00:00" + }, + "conditions": [ + { + "type": "equalAny", + "conditionName": "Cloud", + "value": [ + "US-Sec" + ] + } + ] + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series Discount", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Succeeded", + "status": "Active", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "Sku", + "applyDiscountOn": "Purchase", + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "priceGuaranteeProperties": { + "pricingPolicy": "Protected", + "priceGuaranteeDate": "2024-11-01T00:00:00" + }, + "conditions": [ + { + "type": "equalAny", + "conditionName": "Cloud", + "value": [ + "US-Sec" + ] + } + ] + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsDelete.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsDelete.json new file mode 100644 index 00000000000..7b7d5bc88d9 --- /dev/null +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsDelete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "30000000-0000-0000-0000-000000000000", + "resourceGroupName": "testrg", + "discountName": "testdiscount" + }, + "responses": { + "204": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/30000000-0000-0000-0000-000000000000/Microsoft.BillingBenefits/operationStatuses/4e2ffff7-b331-4fcb-ab11-b5fa49368188?api-version=2024-11-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/30000000-0000-0000-0000-000000000000/providers/Microsoft.BillingBenefits/operationStatuses/4e2ffff7-b331-4fcb-ab11-b5fa49368188?api-version=2024-11-01-preview", + "Retry-After": 5 + } + } + } +} diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsUpdate.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsUpdate.json new file mode 100644 index 00000000000..baa27bca435 --- /dev/null +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/DiscountsUpdate.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "30000000-0000-0000-0000-000000000000", + "resourceGroupName": "testrg", + "discountName": "testprimarydiscount", + "api-version": "2024-11-01-preview", + "body": { + "properties": { + "displayName": "Virtual Machines D Series" + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/operationResults/4e2ffff7-b331-4fcb-ab11-b5fa49368188?api-version=2023-11-01-preview", + "Azure-Asyncoperation": "https://management.azure.com/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/operationResults/4e2ffff7-b331-4fcb-ab11-b5fa49368188?api-version=2023-11-01-preview", + "Retry-After": "5" + } + }, + "200": { + "body": { + "id": "/subscriptions/30000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/Microsoft.BillingBenefits/discounts/testprimarydiscount", + "name": "testprimarydiscount", + "type": "Microsoft.BillingBenefits/discounts", + "properties": { + "displayName": "Virtual Machines D Series", + "entityType": "Primary", + "productCode": "0001d726-0000-0160-330f-a0b98cdbbdc4", + "startAt": "2023-07-01T00:00:00Z", + "endAt": "2024-07-01T23:59:59Z", + "systemId": "13810867107109237", + "provisioningState": "Succeeded", + "status": "Active", + "billingAccountResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31", + "billingProfileResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/billingProfiles/KPSV-DWNE-BG7-TGB", + "customerResourceId": "/providers/Microsoft.Billing/billingAccounts/20000000-1000-0000-0000-000000000000:20000000-0000-3000-0000-000000000000_2019-05-31/customers/40000000-0000-0000-0000-000000000000", + "appliedScopeType": "BillingAccount", + "discountTypeProperties": { + "discountType": "Sku", + "applyDiscountOn": "Purchase", + "productFamilyName": "Azure", + "productId": "DZH318Z0BQ35", + "skuId": "0001", + "discountPercentage": 14, + "conditions": [ + { + "type": "equalAny", + "conditionName": "Cloud", + "value": [ + "US-Sec" + ] + } + ] + } + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/OperationsGet.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/OperationsGet.json index 5e7e50d989e..e0205befaf7 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/OperationsGet.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/OperationsGet.json @@ -83,4 +83,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/ReservationOrderAliasCreate.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/ReservationOrderAliasCreate.json index 31ba172df2f..f31dc6d7d2e 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/ReservationOrderAliasCreate.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/ReservationOrderAliasCreate.json @@ -89,4 +89,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/ReservationOrderAliasGet.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/ReservationOrderAliasGet.json index d3deb527c3f..d7ecdaa2c3b 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/ReservationOrderAliasGet.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/ReservationOrderAliasGet.json @@ -35,4 +35,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanItemExpandedGet.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanItemExpandedGet.json index 90994dc2bf0..0e77367c2bc 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanItemExpandedGet.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanItemExpandedGet.json @@ -81,4 +81,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanItemGet.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanItemGet.json index d6ae2358652..8df674f5f61 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanItemGet.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanItemGet.json @@ -61,4 +61,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderAliasCreate.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderAliasCreate.json index dbccd75606f..147559075c0 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderAliasCreate.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderAliasCreate.json @@ -80,4 +80,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderAliasCreateSingleScope.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderAliasCreateSingleScope.json index 10536ebe7e7..9ad306d3c25 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderAliasCreateSingleScope.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderAliasCreateSingleScope.json @@ -86,4 +86,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderAliasGet.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderAliasGet.json index c5afca95670..8df93287c01 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderAliasGet.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderAliasGet.json @@ -34,4 +34,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderElevate.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderElevate.json index d8c1969e9ec..7b12eda157c 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderElevate.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderElevate.json @@ -17,4 +17,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderExpandedGet.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderExpandedGet.json index 9a72d03e7c8..1977e49b6c5 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderExpandedGet.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderExpandedGet.json @@ -333,4 +333,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderGet.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderGet.json index 6ae2d0f4997..027608203f2 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderGet.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderGet.json @@ -29,4 +29,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderList.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderList.json index abf625b5c6c..b5e917c9529 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderList.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanOrderList.json @@ -32,4 +32,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanUpdate.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanUpdate.json index 378651a9cf4..a0b98f9a51c 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanUpdate.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanUpdate.json @@ -98,9 +98,11 @@ } }, "202": { - "description": "The request is completed." + "description": "The request is completed.", + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/locations/eastus/operationStatus/default/operationId/00000000-0000-0000-0000-000000000000?api-version=2020-07-01" + } }, "404": {} } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanValidatePurchase.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanValidatePurchase.json index 74e77add3d4..bf50a40f2f4 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanValidatePurchase.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanValidatePurchase.json @@ -61,4 +61,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanValidateUpdate.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanValidateUpdate.json index a1e1f8d3987..8043aaa942c 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanValidateUpdate.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlanValidateUpdate.json @@ -37,4 +37,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlansInOrderList.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlansInOrderList.json index 53d297b04a1..d3904dacfe0 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlansInOrderList.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlansInOrderList.json @@ -66,4 +66,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlansList.json b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlansList.json index 9fb5834ac6a..f44f5dae979 100644 --- a/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlansList.json +++ b/specification/billingbenefits/resource-manager/Microsoft.BillingBenefits/preview/2024-11-01-preview/examples/SavingsPlansList.json @@ -87,4 +87,3 @@ } } } - diff --git a/specification/billingbenefits/resource-manager/readme.az.md b/specification/billingbenefits/resource-manager/readme.az.md index 47a68f35f13..7a6bf61c0cb 100644 --- a/specification/billingbenefits/resource-manager/readme.az.md +++ b/specification/billingbenefits/resource-manager/readme.az.md @@ -2,27 +2,26 @@ These settings apply only when `--az` is specified on the command line. -For new Resource Provider. It is highly recommended to onboard Azure CLI extensions. There's no differences in terms of customer usage. +For new Resource Provider. It is highly recommended to onboard Azure CLI extensions. There's no differences in terms of customer usage. -``` yaml $(az) && $(target-mode) != 'core' +```yaml $(az) && $(target-mode) != 'core' az: - extensions: billingbenefits - namespace: azure.mgmt.billingbenefits - package-name: azure-mgmt-billingbenefits + extensions: billingbenefits + namespace: azure.mgmt.billingbenefits + package-name: azure-mgmt-billingbenefits az-output-folder: $(azure-cli-extension-folder)/src/billingbenefits python-sdk-output-folder: "$(az-output-folder)/azext_billingbenefits/vendored_sdks/billingbenefits" # add additional configuration here specific for Azure CLI # refer to the faq.md for more details ``` +This is for command modules that already in azure cli main repo. - -This is for command modules that already in azure cli main repo. -``` yaml $(az) && $(target-mode) == 'core' +```yaml $(az) && $(target-mode) == 'core' az: extensions: billingbenefits namespace: azure.mgmt.billingbenefits package-name: azure-mgmt-billingbenefits az-output-folder: $(azure-cli-folder)/src/azure-cli/azure/cli/command_modules/billingbenefits python-sdk-output-folder: "$(az-output-folder)/vendored_sdks/billingbenefits" -``` \ No newline at end of file +``` diff --git a/specification/billingbenefits/resource-manager/readme.cli.md b/specification/billingbenefits/resource-manager/readme.cli.md index c6cf6ad37ea..13278814ef9 100644 --- a/specification/billingbenefits/resource-manager/readme.cli.md +++ b/specification/billingbenefits/resource-manager/readme.cli.md @@ -1 +1 @@ -## CLI Common Settings for all the command line tools \ No newline at end of file +## CLI Common Settings for all the command line tools diff --git a/specification/billingbenefits/resource-manager/readme.go.md b/specification/billingbenefits/resource-manager/readme.go.md index 767133e6a0f..5715709f563 100644 --- a/specification/billingbenefits/resource-manager/readme.go.md +++ b/specification/billingbenefits/resource-manager/readme.go.md @@ -8,13 +8,13 @@ license-header: MICROSOFT_MIT_NO_VERSION module-name: sdk/resourcemanager/billingbenefits/armbillingbenefits module: github.com/Azure/azure-sdk-for-go/$(module-name) output-folder: $(go-sdk-folder)/$(module-name) -directive: -- from: swagger-document - where: $.parameters.ApiVersionParameter - transform: > - $["x-ms-parameter-location"] = "method"; -- from: swagger-document - where: $.parameters.ExpandParameter - transform: > - $["x-ms-parameter-location"] = "method"; +directive: + - from: swagger-document + where: $.parameters.ApiVersionParameter + transform: > + $["x-ms-parameter-location"] = "method"; + - from: swagger-document + where: $.parameters.ExpandParameter + transform: > + $["x-ms-parameter-location"] = "method"; ``` diff --git a/specification/billingbenefits/resource-manager/readme.md b/specification/billingbenefits/resource-manager/readme.md index e5851764f85..6c253e737d9 100644 --- a/specification/billingbenefits/resource-manager/readme.md +++ b/specification/billingbenefits/resource-manager/readme.md @@ -26,11 +26,13 @@ These are the global settings for the billingbenefits. ```yaml openapi-type: arm +openapi-subtype: providerHub tag: package-preview-2024-11-01 ``` ### Suppression -``` yaml + +```yaml directive: - suppress: ProvisioningStateValidation from: billingbenefits.json @@ -42,17 +44,64 @@ directive: - suppress: PatchSkuProperty from: billingbenefits.json reason: \'Sku\' is not a supported property in savings plan patch operation - - suppress: AllResourcesMustHaveDelete + - suppress: AllResourcesMustHaveDelete from: billingbenefits.json reason: This service does not support deleting resources once created. - - suppress: TopLevelResourcesListBySubscription + - suppress: TopLevelResourcesListBySubscription from: billingbenefits.json reason: Currently only list by tenant is supported. - - suppress: CreateOperationAsyncResponseValidation + - suppress: CreateOperationAsyncResponseValidation from: billingbenefits.json reason: According to ARM's guide 200 is returned when PUT call finishes. - suppress: TrackedResourcePatchOperation from: billingbenefits.json + - suppress: TenantLevelAPIsNotAllowed + from: billingbenefits.json + reason: Service design forces this behavior. This API will remain managed by BenefitsRP when onboarded to RPaaS. (Direct type) + where: $.paths["/providers/Microsoft.BillingBenefits/savingsPlanOrderAliases/{savingsPlanOrderAliasName}"] + - suppress: ParametersInPointGet + from: billingbenefits.json + reason: Service design forces this behavior. This API will remain managed by BenefitsRP when onboarded to RPaaS. (Direct type) + where: $.paths["/providers/Microsoft.BillingBenefits/savingsPlanOrders/{savingsPlanOrderId}"].get.parameters + - suppress: ParametersInPointGet + from: billingbenefits.json + reason: Service design forces this behavior. This API will remain managed by BenefitsRP when onboarded to RPaaS. (Direct type) + where: $.paths["/providers/Microsoft.BillingBenefits/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}"].get.parameters + - suppress: GetCollectionOnlyHasValueAndNextLink + from: billingbenefits.json + reason: Service design forces this behavior. This API will remain managed by BenefitsRP when onboarded to RPaaS. (Direct type) + - suppress: PatchResponseCodes + from: billingbenefits.json + reason: Service design forces this behavior. This API will remain managed by BenefitsRP when onboarded to RPaaS. (Direct type) + where: $.paths["/providers/Microsoft.BillingBenefits/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}"].patch + - suppress: NoErrorCodeResponses + from: billingbenefits.json + reason: Service design forces this behavior. This API will remain managed by BenefitsRP when onboarded to RPaaS. (Direct type) + where: $.paths["/providers/Microsoft.BillingBenefits/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}"].patch.responses["404"] + - suppress: PathForTrackedResourceTypes + from: billingbenefits.json + reason: Service design forces this behavior. This API will remain managed by BenefitsRP when onboarded to RPaaS. (Direct type) + where: $.paths["/providers/Microsoft.BillingBenefits/reservationOrderAliases/{reservationOrderAliasName}"] + - suppress: PutRequestResponseSchemeArm + from: billingbenefits.json + reason: Service design forces this behavior. This API will remain managed by BenefitsRP when onboarded to RPaaS. (Direct type) + where: $.paths["/providers/Microsoft.BillingBenefits/reservationOrderAliases/{reservationOrderAliasName}"].put + - suppress: RequestSchemaForTrackedResourcesMustHaveTags + from: billingbenefits.json + reason: False-positive. Tags property exists. + where: $.paths["/providers/Microsoft.BillingBenefits/reservationOrderAliases/{reservationOrderAliasName}"].put + - suppress: AvoidAdditionalProperties + from: billingbenefits.json + reason: Service design forces this behavior. This API will remain managed by BenefitsRP when onboarded to RPaaS. (Direct type) + where: $.definitions.SavingsPlanModelListResult.properties + - suppress: AllTrackedResourcesMustHaveDelete + from: billingbenefits.json + reason: False-positive. ReservationOrderAliasResponse is a type defintion that does not require a delete operation. + where: $.definitions.ReservationOrderAliasResponse + - suppress: PatchIdentityProperty + from: billingbenefits.json + reason: False-positive. Identity property is never defined on the model. + where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BillingBenefits/discounts/{discountName}"].patch.parameters[4] ``` ### Tag: package-preview-2024-11-01-preview @@ -92,6 +141,7 @@ swagger-to-sdk: - repo: azure-cli-extensions - repo: azure-powershell ``` + ## Az See configuration in [readme.az.md](./readme.az.md) @@ -110,4 +160,4 @@ See configuration in [readme.typescript.md](./readme.typescript.md) ## CSharp -See configuration in [readme.csharp.md](./readme.csharp.md) \ No newline at end of file +See configuration in [readme.csharp.md](./readme.csharp.md) diff --git a/specification/billingbenefits/resource-manager/readme.python.md b/specification/billingbenefits/resource-manager/readme.python.md index e9f56050887..f7389b303cc 100644 --- a/specification/billingbenefits/resource-manager/readme.python.md +++ b/specification/billingbenefits/resource-manager/readme.python.md @@ -3,7 +3,7 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(python) +```yaml $(python) azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION package-name: azure-mgmt-billingbenefits @@ -12,7 +12,7 @@ package-version: 1.0.0b1 clear-output-folder: true ``` -``` yaml $(python) +```yaml $(python) no-namespace-folders: true output-folder: $(python-sdks-folder)/billingbenefits/azure-mgmt-billingbenefits/azure/mgmt/billingbenefits ``` diff --git a/specification/billingbenefits/resource-manager/readme.typescript.md b/specification/billingbenefits/resource-manager/readme.typescript.md index bef6f8d3f03..34ee8654383 100644 --- a/specification/billingbenefits/resource-manager/readme.typescript.md +++ b/specification/billingbenefits/resource-manager/readme.typescript.md @@ -3,7 +3,7 @@ These settings apply only when `--typescript` is specified on the command line. Please also specify `--typescript-sdks-folder=`. -``` yaml $(typescript) +```yaml $(typescript) typescript: azure-arm: true package-name: "@azure/arm-billingbenefits" @@ -12,9 +12,9 @@ typescript: clear-output-folder: true generate-metadata: true -directive: -- from: swagger-document - where: $.parameters.ExpandParameter - transform: > - $["x-ms-parameter-location"] = "method"; +directive: + - from: swagger-document + where: $.parameters.ExpandParameter + transform: > + $["x-ms-parameter-location"] = "method"; ```