1. Packages
  2. Azure Native
  3. API Docs
  4. billingbenefits
  5. Discount
This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.10.1 published on Friday, Nov 7, 2025 by Pulumi
azure-native logo
This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.10.1 published on Friday, Nov 7, 2025 by Pulumi

    Resource definition for Discounts.

    Uses Azure REST API version 2024-11-01-preview. In version 2.x of the Azure Native provider, it used API version 2024-11-01-preview.

    Example Usage

    DiscountsCreateAffiliate

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var discount = new AzureNative.BillingBenefits.Discount("discount", new()
        {
            DiscountName = "testaffiliatediscount",
            Location = "global",
            Properties = new AzureNative.BillingBenefits.Inputs.EntityTypeAffiliateDiscountArgs
            {
                DisplayName = "Virtual Machines D Series",
                EntityType = "Affiliate",
                ProductCode = "0001d726-0000-0160-330f-a0b98cdbbdc4",
                StartAt = "2023-07-01T00:00:00Z",
                SystemId = "13810867107109237",
            },
            ResourceGroupName = "testrg",
            Tags = 
            {
                { "key1", "value1" },
                { "key2", "value2" },
            },
        });
    
    });
    
    package main
    
    import (
    	billingbenefits "github.com/pulumi/pulumi-azure-native-sdk/billingbenefits/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := billingbenefits.NewDiscount(ctx, "discount", &billingbenefits.DiscountArgs{
    			DiscountName: pulumi.String("testaffiliatediscount"),
    			Location:     pulumi.String("global"),
    			Properties: &billingbenefits.EntityTypeAffiliateDiscountArgs{
    				DisplayName: pulumi.String("Virtual Machines D Series"),
    				EntityType:  pulumi.String("Affiliate"),
    				ProductCode: pulumi.String("0001d726-0000-0160-330f-a0b98cdbbdc4"),
    				StartAt:     pulumi.String("2023-07-01T00:00:00Z"),
    				SystemId:    pulumi.String("13810867107109237"),
    			},
    			ResourceGroupName: pulumi.String("testrg"),
    			Tags: pulumi.StringMap{
    				"key1": pulumi.String("value1"),
    				"key2": pulumi.String("value2"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.billingbenefits.Discount;
    import com.pulumi.azurenative.billingbenefits.DiscountArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var discount = new Discount("discount", DiscountArgs.builder()
                .discountName("testaffiliatediscount")
                .location("global")
                .properties(EntityTypeAffiliateDiscountArgs.builder()
                    .displayName("Virtual Machines D Series")
                    .entityType("Affiliate")
                    .productCode("0001d726-0000-0160-330f-a0b98cdbbdc4")
                    .startAt("2023-07-01T00:00:00Z")
                    .systemId("13810867107109237")
                    .build())
                .resourceGroupName("testrg")
                .tags(Map.ofEntries(
                    Map.entry("key1", "value1"),
                    Map.entry("key2", "value2")
                ))
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const discount = new azure_native.billingbenefits.Discount("discount", {
        discountName: "testaffiliatediscount",
        location: "global",
        properties: {
            displayName: "Virtual Machines D Series",
            entityType: "Affiliate",
            productCode: "0001d726-0000-0160-330f-a0b98cdbbdc4",
            startAt: "2023-07-01T00:00:00Z",
            systemId: "13810867107109237",
        },
        resourceGroupName: "testrg",
        tags: {
            key1: "value1",
            key2: "value2",
        },
    });
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    discount = azure_native.billingbenefits.Discount("discount",
        discount_name="testaffiliatediscount",
        location="global",
        properties={
            "display_name": "Virtual Machines D Series",
            "entity_type": "Affiliate",
            "product_code": "0001d726-0000-0160-330f-a0b98cdbbdc4",
            "start_at": "2023-07-01T00:00:00Z",
            "system_id": "13810867107109237",
        },
        resource_group_name="testrg",
        tags={
            "key1": "value1",
            "key2": "value2",
        })
    
    resources:
      discount:
        type: azure-native:billingbenefits:Discount
        properties:
          discountName: testaffiliatediscount
          location: global
          properties:
            displayName: Virtual Machines D Series
            entityType: Affiliate
            productCode: 0001d726-0000-0160-330f-a0b98cdbbdc4
            startAt: 2023-07-01T00:00:00Z
            systemId: '13810867107109237'
          resourceGroupName: testrg
          tags:
            key1: value1
            key2: value2
    

    DiscountsCreatePrimary

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var discount = new AzureNative.BillingBenefits.Discount("discount", new()
        {
            DiscountName = "testprimarydiscount",
            Location = "global",
            Properties = new AzureNative.BillingBenefits.Inputs.EntityTypePrimaryDiscountArgs
            {
                AppliedScopeType = AzureNative.BillingBenefits.DiscountAppliedScopeType.BillingAccount,
                DiscountTypeProperties = new AzureNative.BillingBenefits.Inputs.DiscountTypeProductSkuArgs
                {
                    ApplyDiscountOn = AzureNative.BillingBenefits.ApplyDiscountOn.Purchase,
                    Conditions = new[]
                    {
                        new AzureNative.BillingBenefits.Inputs.ConditionsItemArgs
                        {
                            ConditionName = "Cloud",
                            Type = "equalAny",
                            Value = new[]
                            {
                                "US-Sec",
                            },
                        },
                    },
                    DiscountCombinationRule = AzureNative.BillingBenefits.DiscountCombinationRule.BestOf,
                    DiscountPercentage = 14,
                    DiscountType = "Sku",
                    ProductFamilyName = "Azure",
                    ProductId = "DZH318Z0BQ35",
                    SkuId = "0001",
                },
                DisplayName = "Virtual Machines D Series",
                EndAt = "2024-07-01T23:59:59Z",
                EntityType = "Primary",
                ProductCode = "0001d726-0000-0160-330f-a0b98cdbbdc4",
                StartAt = "2023-07-01T00:00:00Z",
            },
            ResourceGroupName = "testrg",
            Tags = 
            {
                { "key1", "value1" },
                { "key2", "value2" },
            },
        });
    
    });
    
    package main
    
    import (
    	billingbenefits "github.com/pulumi/pulumi-azure-native-sdk/billingbenefits/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := billingbenefits.NewDiscount(ctx, "discount", &billingbenefits.DiscountArgs{
    			DiscountName: pulumi.String("testprimarydiscount"),
    			Location:     pulumi.String("global"),
    			Properties: &billingbenefits.EntityTypePrimaryDiscountArgs{
    				AppliedScopeType: pulumi.String(billingbenefits.DiscountAppliedScopeTypeBillingAccount),
    				DiscountTypeProperties: billingbenefits.DiscountTypeProductSku{
    					ApplyDiscountOn: billingbenefits.ApplyDiscountOnPurchase,
    					Conditions: []billingbenefits.ConditionsItem{
    						{
    							ConditionName: "Cloud",
    							Type:          "equalAny",
    							Value: []string{
    								"US-Sec",
    							},
    						},
    					},
    					DiscountCombinationRule: billingbenefits.DiscountCombinationRuleBestOf,
    					DiscountPercentage:      14,
    					DiscountType:            "Sku",
    					ProductFamilyName:       "Azure",
    					ProductId:               "DZH318Z0BQ35",
    					SkuId:                   "0001",
    				},
    				DisplayName: pulumi.String("Virtual Machines D Series"),
    				EndAt:       pulumi.String("2024-07-01T23:59:59Z"),
    				EntityType:  pulumi.String("Primary"),
    				ProductCode: pulumi.String("0001d726-0000-0160-330f-a0b98cdbbdc4"),
    				StartAt:     pulumi.String("2023-07-01T00:00:00Z"),
    			},
    			ResourceGroupName: pulumi.String("testrg"),
    			Tags: pulumi.StringMap{
    				"key1": pulumi.String("value1"),
    				"key2": pulumi.String("value2"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.billingbenefits.Discount;
    import com.pulumi.azurenative.billingbenefits.DiscountArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var discount = new Discount("discount", DiscountArgs.builder()
                .discountName("testprimarydiscount")
                .location("global")
                .properties(EntityTypePrimaryDiscountArgs.builder()
                    .appliedScopeType("BillingAccount")
                    .discountTypeProperties(DiscountTypeProductSkuArgs.builder()
                        .applyDiscountOn("Purchase")
                        .conditions(ConditionsItemArgs.builder()
                            .conditionName("Cloud")
                            .type("equalAny")
                            .value("US-Sec")
                            .build())
                        .discountCombinationRule("BestOf")
                        .discountPercentage(14)
                        .discountType("Sku")
                        .productFamilyName("Azure")
                        .productId("DZH318Z0BQ35")
                        .skuId("0001")
                        .build())
                    .displayName("Virtual Machines D Series")
                    .endAt("2024-07-01T23:59:59Z")
                    .entityType("Primary")
                    .productCode("0001d726-0000-0160-330f-a0b98cdbbdc4")
                    .startAt("2023-07-01T00:00:00Z")
                    .build())
                .resourceGroupName("testrg")
                .tags(Map.ofEntries(
                    Map.entry("key1", "value1"),
                    Map.entry("key2", "value2")
                ))
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const discount = new azure_native.billingbenefits.Discount("discount", {
        discountName: "testprimarydiscount",
        location: "global",
        properties: {
            appliedScopeType: azure_native.billingbenefits.DiscountAppliedScopeType.BillingAccount,
            discountTypeProperties: {
                applyDiscountOn: azure_native.billingbenefits.ApplyDiscountOn.Purchase,
                conditions: [{
                    conditionName: "Cloud",
                    type: "equalAny",
                    value: ["US-Sec"],
                }],
                discountCombinationRule: azure_native.billingbenefits.DiscountCombinationRule.BestOf,
                discountPercentage: 14,
                discountType: "Sku",
                productFamilyName: "Azure",
                productId: "DZH318Z0BQ35",
                skuId: "0001",
            },
            displayName: "Virtual Machines D Series",
            endAt: "2024-07-01T23:59:59Z",
            entityType: "Primary",
            productCode: "0001d726-0000-0160-330f-a0b98cdbbdc4",
            startAt: "2023-07-01T00:00:00Z",
        },
        resourceGroupName: "testrg",
        tags: {
            key1: "value1",
            key2: "value2",
        },
    });
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    discount = azure_native.billingbenefits.Discount("discount",
        discount_name="testprimarydiscount",
        location="global",
        properties={
            "applied_scope_type": azure_native.billingbenefits.DiscountAppliedScopeType.BILLING_ACCOUNT,
            "discount_type_properties": {
                "apply_discount_on": azure_native.billingbenefits.ApplyDiscountOn.PURCHASE,
                "conditions": [{
                    "condition_name": "Cloud",
                    "type": "equalAny",
                    "value": ["US-Sec"],
                }],
                "discount_combination_rule": azure_native.billingbenefits.DiscountCombinationRule.BEST_OF,
                "discount_percentage": 14,
                "discount_type": "Sku",
                "product_family_name": "Azure",
                "product_id": "DZH318Z0BQ35",
                "sku_id": "0001",
            },
            "display_name": "Virtual Machines D Series",
            "end_at": "2024-07-01T23:59:59Z",
            "entity_type": "Primary",
            "product_code": "0001d726-0000-0160-330f-a0b98cdbbdc4",
            "start_at": "2023-07-01T00:00:00Z",
        },
        resource_group_name="testrg",
        tags={
            "key1": "value1",
            "key2": "value2",
        })
    
    resources:
      discount:
        type: azure-native:billingbenefits:Discount
        properties:
          discountName: testprimarydiscount
          location: global
          properties:
            appliedScopeType: BillingAccount
            discountTypeProperties:
              applyDiscountOn: Purchase
              conditions:
                - conditionName: Cloud
                  type: equalAny
                  value:
                    - US-Sec
              discountCombinationRule: BestOf
              discountPercentage: 14
              discountType: Sku
              productFamilyName: Azure
              productId: DZH318Z0BQ35
              skuId: '0001'
            displayName: Virtual Machines D Series
            endAt: 2024-07-01T23:59:59Z
            entityType: Primary
            productCode: 0001d726-0000-0160-330f-a0b98cdbbdc4
            startAt: 2023-07-01T00:00:00Z
          resourceGroupName: testrg
          tags:
            key1: value1
            key2: value2
    

    DiscountsCreatePrimaryBackfill

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var discount = new AzureNative.BillingBenefits.Discount("discount", new()
        {
            DiscountName = "testprimarydiscount",
            Location = "global",
            Properties = new AzureNative.BillingBenefits.Inputs.EntityTypePrimaryDiscountArgs
            {
                AppliedScopeType = AzureNative.BillingBenefits.DiscountAppliedScopeType.BillingAccount,
                DiscountTypeProperties = new AzureNative.BillingBenefits.Inputs.DiscountProductFamilyArgs
                {
                    ApplyDiscountOn = AzureNative.BillingBenefits.ApplyDiscountOn.Purchase,
                    Conditions = new[]
                    {
                        new AzureNative.BillingBenefits.Inputs.ConditionsItemArgs
                        {
                            ConditionName = "Cloud",
                            Type = "equalAny",
                            Value = new[]
                            {
                                "US-Sec",
                            },
                        },
                    },
                    DiscountCombinationRule = AzureNative.BillingBenefits.DiscountCombinationRule.BestOf,
                    DiscountPercentage = 14,
                    DiscountType = "ProductFamily",
                    ProductFamilyName = "Azure",
                },
                DisplayName = "Virtual Machines D Series",
                EndAt = "2024-07-01T23:59:59Z",
                EntityType = "Primary",
                ProductCode = "0001d726-0000-0160-330f-a0b98cdbbdc4",
                StartAt = "2023-07-01T00:00:00Z",
                SystemId = "13810867107109237",
            },
            ResourceGroupName = "testrg",
            Tags = 
            {
                { "key1", "value1" },
                { "key2", "value2" },
            },
        });
    
    });
    
    package main
    
    import (
    	billingbenefits "github.com/pulumi/pulumi-azure-native-sdk/billingbenefits/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := billingbenefits.NewDiscount(ctx, "discount", &billingbenefits.DiscountArgs{
    			DiscountName: pulumi.String("testprimarydiscount"),
    			Location:     pulumi.String("global"),
    			Properties: &billingbenefits.EntityTypePrimaryDiscountArgs{
    				AppliedScopeType: pulumi.String(billingbenefits.DiscountAppliedScopeTypeBillingAccount),
    				DiscountTypeProperties: billingbenefits.DiscountProductFamily{
    					ApplyDiscountOn: billingbenefits.ApplyDiscountOnPurchase,
    					Conditions: []billingbenefits.ConditionsItem{
    						{
    							ConditionName: "Cloud",
    							Type:          "equalAny",
    							Value: []string{
    								"US-Sec",
    							},
    						},
    					},
    					DiscountCombinationRule: billingbenefits.DiscountCombinationRuleBestOf,
    					DiscountPercentage:      14,
    					DiscountType:            "ProductFamily",
    					ProductFamilyName:       "Azure",
    				},
    				DisplayName: pulumi.String("Virtual Machines D Series"),
    				EndAt:       pulumi.String("2024-07-01T23:59:59Z"),
    				EntityType:  pulumi.String("Primary"),
    				ProductCode: pulumi.String("0001d726-0000-0160-330f-a0b98cdbbdc4"),
    				StartAt:     pulumi.String("2023-07-01T00:00:00Z"),
    				SystemId:    pulumi.String("13810867107109237"),
    			},
    			ResourceGroupName: pulumi.String("testrg"),
    			Tags: pulumi.StringMap{
    				"key1": pulumi.String("value1"),
    				"key2": pulumi.String("value2"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.billingbenefits.Discount;
    import com.pulumi.azurenative.billingbenefits.DiscountArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var discount = new Discount("discount", DiscountArgs.builder()
                .discountName("testprimarydiscount")
                .location("global")
                .properties(EntityTypePrimaryDiscountArgs.builder()
                    .appliedScopeType("BillingAccount")
                    .discountTypeProperties(DiscountProductFamilyArgs.builder()
                        .applyDiscountOn("Purchase")
                        .conditions(ConditionsItemArgs.builder()
                            .conditionName("Cloud")
                            .type("equalAny")
                            .value("US-Sec")
                            .build())
                        .discountCombinationRule("BestOf")
                        .discountPercentage(14)
                        .discountType("ProductFamily")
                        .productFamilyName("Azure")
                        .build())
                    .displayName("Virtual Machines D Series")
                    .endAt("2024-07-01T23:59:59Z")
                    .entityType("Primary")
                    .productCode("0001d726-0000-0160-330f-a0b98cdbbdc4")
                    .startAt("2023-07-01T00:00:00Z")
                    .systemId("13810867107109237")
                    .build())
                .resourceGroupName("testrg")
                .tags(Map.ofEntries(
                    Map.entry("key1", "value1"),
                    Map.entry("key2", "value2")
                ))
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const discount = new azure_native.billingbenefits.Discount("discount", {
        discountName: "testprimarydiscount",
        location: "global",
        properties: {
            appliedScopeType: azure_native.billingbenefits.DiscountAppliedScopeType.BillingAccount,
            discountTypeProperties: {
                applyDiscountOn: azure_native.billingbenefits.ApplyDiscountOn.Purchase,
                conditions: [{
                    conditionName: "Cloud",
                    type: "equalAny",
                    value: ["US-Sec"],
                }],
                discountCombinationRule: azure_native.billingbenefits.DiscountCombinationRule.BestOf,
                discountPercentage: 14,
                discountType: "ProductFamily",
                productFamilyName: "Azure",
            },
            displayName: "Virtual Machines D Series",
            endAt: "2024-07-01T23:59:59Z",
            entityType: "Primary",
            productCode: "0001d726-0000-0160-330f-a0b98cdbbdc4",
            startAt: "2023-07-01T00:00:00Z",
            systemId: "13810867107109237",
        },
        resourceGroupName: "testrg",
        tags: {
            key1: "value1",
            key2: "value2",
        },
    });
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    discount = azure_native.billingbenefits.Discount("discount",
        discount_name="testprimarydiscount",
        location="global",
        properties={
            "applied_scope_type": azure_native.billingbenefits.DiscountAppliedScopeType.BILLING_ACCOUNT,
            "discount_type_properties": {
                "apply_discount_on": azure_native.billingbenefits.ApplyDiscountOn.PURCHASE,
                "conditions": [{
                    "condition_name": "Cloud",
                    "type": "equalAny",
                    "value": ["US-Sec"],
                }],
                "discount_combination_rule": azure_native.billingbenefits.DiscountCombinationRule.BEST_OF,
                "discount_percentage": 14,
                "discount_type": "ProductFamily",
                "product_family_name": "Azure",
            },
            "display_name": "Virtual Machines D Series",
            "end_at": "2024-07-01T23:59:59Z",
            "entity_type": "Primary",
            "product_code": "0001d726-0000-0160-330f-a0b98cdbbdc4",
            "start_at": "2023-07-01T00:00:00Z",
            "system_id": "13810867107109237",
        },
        resource_group_name="testrg",
        tags={
            "key1": "value1",
            "key2": "value2",
        })
    
    resources:
      discount:
        type: azure-native:billingbenefits:Discount
        properties:
          discountName: testprimarydiscount
          location: global
          properties:
            appliedScopeType: BillingAccount
            discountTypeProperties:
              applyDiscountOn: Purchase
              conditions:
                - conditionName: Cloud
                  type: equalAny
                  value:
                    - US-Sec
              discountCombinationRule: BestOf
              discountPercentage: 14
              discountType: ProductFamily
              productFamilyName: Azure
            displayName: Virtual Machines D Series
            endAt: 2024-07-01T23:59:59Z
            entityType: Primary
            productCode: 0001d726-0000-0160-330f-a0b98cdbbdc4
            startAt: 2023-07-01T00:00:00Z
            systemId: '13810867107109237'
          resourceGroupName: testrg
          tags:
            key1: value1
            key2: value2
    

    DiscountsCreatePrimaryWithCustomPrice

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var discount = new AzureNative.BillingBenefits.Discount("discount", new()
        {
            DiscountName = "testprimarydiscount",
            Location = "global",
            Properties = new AzureNative.BillingBenefits.Inputs.EntityTypePrimaryDiscountArgs
            {
                AppliedScopeType = AzureNative.BillingBenefits.DiscountAppliedScopeType.BillingAccount,
                DiscountTypeProperties = new AzureNative.BillingBenefits.Inputs.DiscountCustomPriceArgs
                {
                    ApplyDiscountOn = AzureNative.BillingBenefits.ApplyDiscountOn.Purchase,
                    Conditions = new[]
                    {
                        new AzureNative.BillingBenefits.Inputs.ConditionsItemArgs
                        {
                            ConditionName = "Cloud",
                            Type = "equalAny",
                            Value = new[]
                            {
                                "US-Sec",
                            },
                        },
                    },
                    CustomPriceProperties = new AzureNative.BillingBenefits.Inputs.CustomPricePropertiesArgs
                    {
                        CatalogClaims = new[]
                        {
                            new AzureNative.BillingBenefits.Inputs.CatalogClaimsItemArgs
                            {
                                CatalogClaimsItemType = "NationalCloud",
                                Value = "USSec",
                            },
                        },
                        CatalogId = "4",
                        MarketSetPrices = new[]
                        {
                            new AzureNative.BillingBenefits.Inputs.MarketSetPricesItemsArgs
                            {
                                Currency = "USD",
                                Markets = new[]
                                {
                                    "US",
                                },
                                Value = 125.16,
                            },
                        },
                        RuleType = AzureNative.BillingBenefits.DiscountRuleType.FixedPriceLock,
                        TermUnits = "ASI1251A",
                    },
                    DiscountCombinationRule = AzureNative.BillingBenefits.DiscountCombinationRule.BestOf,
                    DiscountPercentage = 14,
                    DiscountType = "CustomPrice",
                    ProductFamilyName = "Azure",
                    ProductId = "DZH318Z0BQ35",
                    SkuId = "0001",
                },
                DisplayName = "Virtual Machines D Series",
                EndAt = "2024-07-01T23:59:59Z",
                EntityType = "Primary",
                ProductCode = "0001d726-0000-0160-330f-a0b98cdbbdc4",
                StartAt = "2023-07-01T00:00:00Z",
            },
            ResourceGroupName = "testrg",
            Tags = 
            {
                { "key1", "value1" },
                { "key2", "value2" },
            },
        });
    
    });
    
    package main
    
    import (
    	billingbenefits "github.com/pulumi/pulumi-azure-native-sdk/billingbenefits/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := billingbenefits.NewDiscount(ctx, "discount", &billingbenefits.DiscountArgs{
    			DiscountName: pulumi.String("testprimarydiscount"),
    			Location:     pulumi.String("global"),
    			Properties: &billingbenefits.EntityTypePrimaryDiscountArgs{
    				AppliedScopeType: pulumi.String(billingbenefits.DiscountAppliedScopeTypeBillingAccount),
    				DiscountTypeProperties: billingbenefits.DiscountCustomPrice{
    					ApplyDiscountOn: billingbenefits.ApplyDiscountOnPurchase,
    					Conditions: []billingbenefits.ConditionsItem{
    						{
    							ConditionName: "Cloud",
    							Type:          "equalAny",
    							Value: []string{
    								"US-Sec",
    							},
    						},
    					},
    					CustomPriceProperties: billingbenefits.CustomPriceProperties{
    						CatalogClaims: []billingbenefits.CatalogClaimsItem{
    							{
    								CatalogClaimsItemType: "NationalCloud",
    								Value:                 "USSec",
    							},
    						},
    						CatalogId: "4",
    						MarketSetPrices: []billingbenefits.MarketSetPricesItems{
    							{
    								Currency: "USD",
    								Markets: []string{
    									"US",
    								},
    								Value: 125.16,
    							},
    						},
    						RuleType:  billingbenefits.DiscountRuleTypeFixedPriceLock,
    						TermUnits: "ASI1251A",
    					},
    					DiscountCombinationRule: billingbenefits.DiscountCombinationRuleBestOf,
    					DiscountPercentage:      14,
    					DiscountType:            "CustomPrice",
    					ProductFamilyName:       "Azure",
    					ProductId:               "DZH318Z0BQ35",
    					SkuId:                   "0001",
    				},
    				DisplayName: pulumi.String("Virtual Machines D Series"),
    				EndAt:       pulumi.String("2024-07-01T23:59:59Z"),
    				EntityType:  pulumi.String("Primary"),
    				ProductCode: pulumi.String("0001d726-0000-0160-330f-a0b98cdbbdc4"),
    				StartAt:     pulumi.String("2023-07-01T00:00:00Z"),
    			},
    			ResourceGroupName: pulumi.String("testrg"),
    			Tags: pulumi.StringMap{
    				"key1": pulumi.String("value1"),
    				"key2": pulumi.String("value2"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.billingbenefits.Discount;
    import com.pulumi.azurenative.billingbenefits.DiscountArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var discount = new Discount("discount", DiscountArgs.builder()
                .discountName("testprimarydiscount")
                .location("global")
                .properties(EntityTypePrimaryDiscountArgs.builder()
                    .appliedScopeType("BillingAccount")
                    .discountTypeProperties(DiscountCustomPriceArgs.builder()
                        .applyDiscountOn("Purchase")
                        .conditions(ConditionsItemArgs.builder()
                            .conditionName("Cloud")
                            .type("equalAny")
                            .value("US-Sec")
                            .build())
                        .customPriceProperties(CustomPricePropertiesArgs.builder()
                            .catalogClaims(CatalogClaimsItemArgs.builder()
                                .catalogClaimsItemType("NationalCloud")
                                .value("USSec")
                                .build())
                            .catalogId("4")
                            .marketSetPrices(MarketSetPricesItemsArgs.builder()
                                .currency("USD")
                                .markets("US")
                                .value(125.16)
                                .build())
                            .ruleType("FixedPriceLock")
                            .termUnits("ASI1251A")
                            .build())
                        .discountCombinationRule("BestOf")
                        .discountPercentage(14)
                        .discountType("CustomPrice")
                        .productFamilyName("Azure")
                        .productId("DZH318Z0BQ35")
                        .skuId("0001")
                        .build())
                    .displayName("Virtual Machines D Series")
                    .endAt("2024-07-01T23:59:59Z")
                    .entityType("Primary")
                    .productCode("0001d726-0000-0160-330f-a0b98cdbbdc4")
                    .startAt("2023-07-01T00:00:00Z")
                    .build())
                .resourceGroupName("testrg")
                .tags(Map.ofEntries(
                    Map.entry("key1", "value1"),
                    Map.entry("key2", "value2")
                ))
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const discount = new azure_native.billingbenefits.Discount("discount", {
        discountName: "testprimarydiscount",
        location: "global",
        properties: {
            appliedScopeType: azure_native.billingbenefits.DiscountAppliedScopeType.BillingAccount,
            discountTypeProperties: {
                applyDiscountOn: azure_native.billingbenefits.ApplyDiscountOn.Purchase,
                conditions: [{
                    conditionName: "Cloud",
                    type: "equalAny",
                    value: ["US-Sec"],
                }],
                customPriceProperties: {
                    catalogClaims: [{
                        catalogClaimsItemType: "NationalCloud",
                        value: "USSec",
                    }],
                    catalogId: "4",
                    marketSetPrices: [{
                        currency: "USD",
                        markets: ["US"],
                        value: 125.16,
                    }],
                    ruleType: azure_native.billingbenefits.DiscountRuleType.FixedPriceLock,
                    termUnits: "ASI1251A",
                },
                discountCombinationRule: azure_native.billingbenefits.DiscountCombinationRule.BestOf,
                discountPercentage: 14,
                discountType: "CustomPrice",
                productFamilyName: "Azure",
                productId: "DZH318Z0BQ35",
                skuId: "0001",
            },
            displayName: "Virtual Machines D Series",
            endAt: "2024-07-01T23:59:59Z",
            entityType: "Primary",
            productCode: "0001d726-0000-0160-330f-a0b98cdbbdc4",
            startAt: "2023-07-01T00:00:00Z",
        },
        resourceGroupName: "testrg",
        tags: {
            key1: "value1",
            key2: "value2",
        },
    });
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    discount = azure_native.billingbenefits.Discount("discount",
        discount_name="testprimarydiscount",
        location="global",
        properties={
            "applied_scope_type": azure_native.billingbenefits.DiscountAppliedScopeType.BILLING_ACCOUNT,
            "discount_type_properties": {
                "apply_discount_on": azure_native.billingbenefits.ApplyDiscountOn.PURCHASE,
                "conditions": [{
                    "condition_name": "Cloud",
                    "type": "equalAny",
                    "value": ["US-Sec"],
                }],
                "custom_price_properties": {
                    "catalog_claims": [{
                        "catalog_claims_item_type": "NationalCloud",
                        "value": "USSec",
                    }],
                    "catalog_id": "4",
                    "market_set_prices": [{
                        "currency": "USD",
                        "markets": ["US"],
                        "value": 125.16,
                    }],
                    "rule_type": azure_native.billingbenefits.DiscountRuleType.FIXED_PRICE_LOCK,
                    "term_units": "ASI1251A",
                },
                "discount_combination_rule": azure_native.billingbenefits.DiscountCombinationRule.BEST_OF,
                "discount_percentage": 14,
                "discount_type": "CustomPrice",
                "product_family_name": "Azure",
                "product_id": "DZH318Z0BQ35",
                "sku_id": "0001",
            },
            "display_name": "Virtual Machines D Series",
            "end_at": "2024-07-01T23:59:59Z",
            "entity_type": "Primary",
            "product_code": "0001d726-0000-0160-330f-a0b98cdbbdc4",
            "start_at": "2023-07-01T00:00:00Z",
        },
        resource_group_name="testrg",
        tags={
            "key1": "value1",
            "key2": "value2",
        })
    
    resources:
      discount:
        type: azure-native:billingbenefits:Discount
        properties:
          discountName: testprimarydiscount
          location: global
          properties:
            appliedScopeType: BillingAccount
            discountTypeProperties:
              applyDiscountOn: Purchase
              conditions:
                - conditionName: Cloud
                  type: equalAny
                  value:
                    - US-Sec
              customPriceProperties:
                catalogClaims:
                  - catalogClaimsItemType: NationalCloud
                    value: USSec
                catalogId: '4'
                marketSetPrices:
                  - currency: USD
                    markets:
                      - US
                    value: 125.16
                ruleType: FixedPriceLock
                termUnits: ASI1251A
              discountCombinationRule: BestOf
              discountPercentage: 14
              discountType: CustomPrice
              productFamilyName: Azure
              productId: DZH318Z0BQ35
              skuId: '0001'
            displayName: Virtual Machines D Series
            endAt: 2024-07-01T23:59:59Z
            entityType: Primary
            productCode: 0001d726-0000-0160-330f-a0b98cdbbdc4
            startAt: 2023-07-01T00:00:00Z
          resourceGroupName: testrg
          tags:
            key1: value1
            key2: value2
    

    DiscountsCreatePrimaryWithCustomPriceMultiCurrency

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var discount = new AzureNative.BillingBenefits.Discount("discount", new()
        {
            DiscountName = "testprimarydiscount",
            Location = "global",
            Properties = new AzureNative.BillingBenefits.Inputs.EntityTypePrimaryDiscountArgs
            {
                AppliedScopeType = AzureNative.BillingBenefits.DiscountAppliedScopeType.BillingAccount,
                DiscountTypeProperties = new AzureNative.BillingBenefits.Inputs.DiscountCustomPriceMultiCurrencyArgs
                {
                    ApplyDiscountOn = AzureNative.BillingBenefits.ApplyDiscountOn.Purchase,
                    Conditions = new[]
                    {
                        new AzureNative.BillingBenefits.Inputs.ConditionsItemArgs
                        {
                            ConditionName = "Cloud",
                            Type = "equalAny",
                            Value = new[]
                            {
                                "US-Sec",
                            },
                        },
                    },
                    CustomPriceProperties = new AzureNative.BillingBenefits.Inputs.CustomPricePropertiesArgs
                    {
                        CatalogClaims = new[]
                        {
                            new AzureNative.BillingBenefits.Inputs.CatalogClaimsItemArgs
                            {
                                CatalogClaimsItemType = "NationalCloud",
                                Value = "USSec",
                            },
                        },
                        CatalogId = "4",
                        MarketSetPrices = new[]
                        {
                            new AzureNative.BillingBenefits.Inputs.MarketSetPricesItemsArgs
                            {
                                Currency = "USD",
                                Markets = new[]
                                {
                                    "US",
                                },
                                Value = 125.16,
                            },
                            new AzureNative.BillingBenefits.Inputs.MarketSetPricesItemsArgs
                            {
                                Currency = "EUR",
                                Markets = new[]
                                {
                                    "FR",
                                },
                                Value = 110.16,
                            },
                        },
                        RuleType = AzureNative.BillingBenefits.DiscountRuleType.FixedPriceLock,
                        TermUnits = "ASI1251A",
                    },
                    DiscountCombinationRule = AzureNative.BillingBenefits.DiscountCombinationRule.BestOf,
                    DiscountPercentage = 14,
                    DiscountType = "CustomPriceMultiCurrency",
                    ProductFamilyName = "Azure",
                    ProductId = "DZH318Z0BQ35",
                    SkuId = "0001",
                },
                DisplayName = "Virtual Machines D Series",
                EndAt = "2024-07-01T23:59:59Z",
                EntityType = "Primary",
                ProductCode = "0001d726-0000-0160-330f-a0b98cdbbdc4",
                StartAt = "2023-07-01T00:00:00Z",
            },
            ResourceGroupName = "testrg",
            Tags = 
            {
                { "key1", "value1" },
                { "key2", "value2" },
            },
        });
    
    });
    
    package main
    
    import (
    	billingbenefits "github.com/pulumi/pulumi-azure-native-sdk/billingbenefits/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := billingbenefits.NewDiscount(ctx, "discount", &billingbenefits.DiscountArgs{
    			DiscountName: pulumi.String("testprimarydiscount"),
    			Location:     pulumi.String("global"),
    			Properties: &billingbenefits.EntityTypePrimaryDiscountArgs{
    				AppliedScopeType: pulumi.String(billingbenefits.DiscountAppliedScopeTypeBillingAccount),
    				DiscountTypeProperties: billingbenefits.DiscountCustomPriceMultiCurrency{
    					ApplyDiscountOn: billingbenefits.ApplyDiscountOnPurchase,
    					Conditions: []billingbenefits.ConditionsItem{
    						{
    							ConditionName: "Cloud",
    							Type:          "equalAny",
    							Value: []string{
    								"US-Sec",
    							},
    						},
    					},
    					CustomPriceProperties: billingbenefits.CustomPriceProperties{
    						CatalogClaims: []billingbenefits.CatalogClaimsItem{
    							{
    								CatalogClaimsItemType: "NationalCloud",
    								Value:                 "USSec",
    							},
    						},
    						CatalogId: "4",
    						MarketSetPrices: []billingbenefits.MarketSetPricesItems{
    							{
    								Currency: "USD",
    								Markets: []string{
    									"US",
    								},
    								Value: 125.16,
    							},
    							{
    								Currency: "EUR",
    								Markets: []string{
    									"FR",
    								},
    								Value: 110.16,
    							},
    						},
    						RuleType:  billingbenefits.DiscountRuleTypeFixedPriceLock,
    						TermUnits: "ASI1251A",
    					},
    					DiscountCombinationRule: billingbenefits.DiscountCombinationRuleBestOf,
    					DiscountPercentage:      14,
    					DiscountType:            "CustomPriceMultiCurrency",
    					ProductFamilyName:       "Azure",
    					ProductId:               "DZH318Z0BQ35",
    					SkuId:                   "0001",
    				},
    				DisplayName: pulumi.String("Virtual Machines D Series"),
    				EndAt:       pulumi.String("2024-07-01T23:59:59Z"),
    				EntityType:  pulumi.String("Primary"),
    				ProductCode: pulumi.String("0001d726-0000-0160-330f-a0b98cdbbdc4"),
    				StartAt:     pulumi.String("2023-07-01T00:00:00Z"),
    			},
    			ResourceGroupName: pulumi.String("testrg"),
    			Tags: pulumi.StringMap{
    				"key1": pulumi.String("value1"),
    				"key2": pulumi.String("value2"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.billingbenefits.Discount;
    import com.pulumi.azurenative.billingbenefits.DiscountArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var discount = new Discount("discount", DiscountArgs.builder()
                .discountName("testprimarydiscount")
                .location("global")
                .properties(EntityTypePrimaryDiscountArgs.builder()
                    .appliedScopeType("BillingAccount")
                    .discountTypeProperties(DiscountCustomPriceMultiCurrencyArgs.builder()
                        .applyDiscountOn("Purchase")
                        .conditions(ConditionsItemArgs.builder()
                            .conditionName("Cloud")
                            .type("equalAny")
                            .value("US-Sec")
                            .build())
                        .customPriceProperties(CustomPricePropertiesArgs.builder()
                            .catalogClaims(CatalogClaimsItemArgs.builder()
                                .catalogClaimsItemType("NationalCloud")
                                .value("USSec")
                                .build())
                            .catalogId("4")
                            .marketSetPrices(                        
                                MarketSetPricesItemsArgs.builder()
                                    .currency("USD")
                                    .markets("US")
                                    .value(125.16)
                                    .build(),
                                MarketSetPricesItemsArgs.builder()
                                    .currency("EUR")
                                    .markets("FR")
                                    .value(110.16)
                                    .build())
                            .ruleType("FixedPriceLock")
                            .termUnits("ASI1251A")
                            .build())
                        .discountCombinationRule("BestOf")
                        .discountPercentage(14)
                        .discountType("CustomPriceMultiCurrency")
                        .productFamilyName("Azure")
                        .productId("DZH318Z0BQ35")
                        .skuId("0001")
                        .build())
                    .displayName("Virtual Machines D Series")
                    .endAt("2024-07-01T23:59:59Z")
                    .entityType("Primary")
                    .productCode("0001d726-0000-0160-330f-a0b98cdbbdc4")
                    .startAt("2023-07-01T00:00:00Z")
                    .build())
                .resourceGroupName("testrg")
                .tags(Map.ofEntries(
                    Map.entry("key1", "value1"),
                    Map.entry("key2", "value2")
                ))
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const discount = new azure_native.billingbenefits.Discount("discount", {
        discountName: "testprimarydiscount",
        location: "global",
        properties: {
            appliedScopeType: azure_native.billingbenefits.DiscountAppliedScopeType.BillingAccount,
            discountTypeProperties: {
                applyDiscountOn: azure_native.billingbenefits.ApplyDiscountOn.Purchase,
                conditions: [{
                    conditionName: "Cloud",
                    type: "equalAny",
                    value: ["US-Sec"],
                }],
                customPriceProperties: {
                    catalogClaims: [{
                        catalogClaimsItemType: "NationalCloud",
                        value: "USSec",
                    }],
                    catalogId: "4",
                    marketSetPrices: [
                        {
                            currency: "USD",
                            markets: ["US"],
                            value: 125.16,
                        },
                        {
                            currency: "EUR",
                            markets: ["FR"],
                            value: 110.16,
                        },
                    ],
                    ruleType: azure_native.billingbenefits.DiscountRuleType.FixedPriceLock,
                    termUnits: "ASI1251A",
                },
                discountCombinationRule: azure_native.billingbenefits.DiscountCombinationRule.BestOf,
                discountPercentage: 14,
                discountType: "CustomPriceMultiCurrency",
                productFamilyName: "Azure",
                productId: "DZH318Z0BQ35",
                skuId: "0001",
            },
            displayName: "Virtual Machines D Series",
            endAt: "2024-07-01T23:59:59Z",
            entityType: "Primary",
            productCode: "0001d726-0000-0160-330f-a0b98cdbbdc4",
            startAt: "2023-07-01T00:00:00Z",
        },
        resourceGroupName: "testrg",
        tags: {
            key1: "value1",
            key2: "value2",
        },
    });
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    discount = azure_native.billingbenefits.Discount("discount",
        discount_name="testprimarydiscount",
        location="global",
        properties={
            "applied_scope_type": azure_native.billingbenefits.DiscountAppliedScopeType.BILLING_ACCOUNT,
            "discount_type_properties": {
                "apply_discount_on": azure_native.billingbenefits.ApplyDiscountOn.PURCHASE,
                "conditions": [{
                    "condition_name": "Cloud",
                    "type": "equalAny",
                    "value": ["US-Sec"],
                }],
                "custom_price_properties": {
                    "catalog_claims": [{
                        "catalog_claims_item_type": "NationalCloud",
                        "value": "USSec",
                    }],
                    "catalog_id": "4",
                    "market_set_prices": [
                        {
                            "currency": "USD",
                            "markets": ["US"],
                            "value": 125.16,
                        },
                        {
                            "currency": "EUR",
                            "markets": ["FR"],
                            "value": 110.16,
                        },
                    ],
                    "rule_type": azure_native.billingbenefits.DiscountRuleType.FIXED_PRICE_LOCK,
                    "term_units": "ASI1251A",
                },
                "discount_combination_rule": azure_native.billingbenefits.DiscountCombinationRule.BEST_OF,
                "discount_percentage": 14,
                "discount_type": "CustomPriceMultiCurrency",
                "product_family_name": "Azure",
                "product_id": "DZH318Z0BQ35",
                "sku_id": "0001",
            },
            "display_name": "Virtual Machines D Series",
            "end_at": "2024-07-01T23:59:59Z",
            "entity_type": "Primary",
            "product_code": "0001d726-0000-0160-330f-a0b98cdbbdc4",
            "start_at": "2023-07-01T00:00:00Z",
        },
        resource_group_name="testrg",
        tags={
            "key1": "value1",
            "key2": "value2",
        })
    
    resources:
      discount:
        type: azure-native:billingbenefits:Discount
        properties:
          discountName: testprimarydiscount
          location: global
          properties:
            appliedScopeType: BillingAccount
            discountTypeProperties:
              applyDiscountOn: Purchase
              conditions:
                - conditionName: Cloud
                  type: equalAny
                  value:
                    - US-Sec
              customPriceProperties:
                catalogClaims:
                  - catalogClaimsItemType: NationalCloud
                    value: USSec
                catalogId: '4'
                marketSetPrices:
                  - currency: USD
                    markets:
                      - US
                    value: 125.16
                  - currency: EUR
                    markets:
                      - FR
                    value: 110.16
                ruleType: FixedPriceLock
                termUnits: ASI1251A
              discountCombinationRule: BestOf
              discountPercentage: 14
              discountType: CustomPriceMultiCurrency
              productFamilyName: Azure
              productId: DZH318Z0BQ35
              skuId: '0001'
            displayName: Virtual Machines D Series
            endAt: 2024-07-01T23:59:59Z
            entityType: Primary
            productCode: 0001d726-0000-0160-330f-a0b98cdbbdc4
            startAt: 2023-07-01T00:00:00Z
          resourceGroupName: testrg
          tags:
            key1: value1
            key2: value2
    

    DiscountsCreatePrimaryWithPriceGuarantee

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var discount = new AzureNative.BillingBenefits.Discount("discount", new()
        {
            DiscountName = "testprimarydiscount",
            Location = "global",
            Properties = new AzureNative.BillingBenefits.Inputs.EntityTypePrimaryDiscountArgs
            {
                AppliedScopeType = AzureNative.BillingBenefits.DiscountAppliedScopeType.BillingAccount,
                DiscountTypeProperties = new AzureNative.BillingBenefits.Inputs.DiscountTypeProductSkuArgs
                {
                    ApplyDiscountOn = AzureNative.BillingBenefits.ApplyDiscountOn.Purchase,
                    Conditions = new[]
                    {
                        new AzureNative.BillingBenefits.Inputs.ConditionsItemArgs
                        {
                            ConditionName = "Cloud",
                            Type = "equalAny",
                            Value = new[]
                            {
                                "US-Sec",
                            },
                        },
                    },
                    DiscountCombinationRule = AzureNative.BillingBenefits.DiscountCombinationRule.BestOf,
                    DiscountType = "Sku",
                    PriceGuaranteeProperties = new AzureNative.BillingBenefits.Inputs.PriceGuaranteePropertiesArgs
                    {
                        PriceGuaranteeDate = "2024-11-01T00:00:00",
                        PricingPolicy = AzureNative.BillingBenefits.PricingPolicy.Protected,
                    },
                    ProductFamilyName = "Azure",
                    ProductId = "DZH318Z0BQ35",
                    SkuId = "0001",
                },
                DisplayName = "Virtual Machines D Series",
                EndAt = "2024-07-01T23:59:59Z",
                EntityType = "Primary",
                ProductCode = "0001d726-0000-0160-330f-a0b98cdbbdc4",
                StartAt = "2023-07-01T00:00:00Z",
            },
            ResourceGroupName = "testrg",
            Tags = 
            {
                { "key1", "value1" },
                { "key2", "value2" },
            },
        });
    
    });
    
    package main
    
    import (
    	billingbenefits "github.com/pulumi/pulumi-azure-native-sdk/billingbenefits/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := billingbenefits.NewDiscount(ctx, "discount", &billingbenefits.DiscountArgs{
    			DiscountName: pulumi.String("testprimarydiscount"),
    			Location:     pulumi.String("global"),
    			Properties: &billingbenefits.EntityTypePrimaryDiscountArgs{
    				AppliedScopeType: pulumi.String(billingbenefits.DiscountAppliedScopeTypeBillingAccount),
    				DiscountTypeProperties: billingbenefits.DiscountTypeProductSku{
    					ApplyDiscountOn: billingbenefits.ApplyDiscountOnPurchase,
    					Conditions: []billingbenefits.ConditionsItem{
    						{
    							ConditionName: "Cloud",
    							Type:          "equalAny",
    							Value: []string{
    								"US-Sec",
    							},
    						},
    					},
    					DiscountCombinationRule: billingbenefits.DiscountCombinationRuleBestOf,
    					DiscountType:            "Sku",
    					PriceGuaranteeProperties: billingbenefits.PriceGuaranteeProperties{
    						PriceGuaranteeDate: "2024-11-01T00:00:00",
    						PricingPolicy:      billingbenefits.PricingPolicyProtected,
    					},
    					ProductFamilyName: "Azure",
    					ProductId:         "DZH318Z0BQ35",
    					SkuId:             "0001",
    				},
    				DisplayName: pulumi.String("Virtual Machines D Series"),
    				EndAt:       pulumi.String("2024-07-01T23:59:59Z"),
    				EntityType:  pulumi.String("Primary"),
    				ProductCode: pulumi.String("0001d726-0000-0160-330f-a0b98cdbbdc4"),
    				StartAt:     pulumi.String("2023-07-01T00:00:00Z"),
    			},
    			ResourceGroupName: pulumi.String("testrg"),
    			Tags: pulumi.StringMap{
    				"key1": pulumi.String("value1"),
    				"key2": pulumi.String("value2"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.billingbenefits.Discount;
    import com.pulumi.azurenative.billingbenefits.DiscountArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var discount = new Discount("discount", DiscountArgs.builder()
                .discountName("testprimarydiscount")
                .location("global")
                .properties(EntityTypePrimaryDiscountArgs.builder()
                    .appliedScopeType("BillingAccount")
                    .discountTypeProperties(DiscountTypeProductSkuArgs.builder()
                        .applyDiscountOn("Purchase")
                        .conditions(ConditionsItemArgs.builder()
                            .conditionName("Cloud")
                            .type("equalAny")
                            .value("US-Sec")
                            .build())
                        .discountCombinationRule("BestOf")
                        .discountType("Sku")
                        .priceGuaranteeProperties(PriceGuaranteePropertiesArgs.builder()
                            .priceGuaranteeDate("2024-11-01T00:00:00")
                            .pricingPolicy("Protected")
                            .build())
                        .productFamilyName("Azure")
                        .productId("DZH318Z0BQ35")
                        .skuId("0001")
                        .build())
                    .displayName("Virtual Machines D Series")
                    .endAt("2024-07-01T23:59:59Z")
                    .entityType("Primary")
                    .productCode("0001d726-0000-0160-330f-a0b98cdbbdc4")
                    .startAt("2023-07-01T00:00:00Z")
                    .build())
                .resourceGroupName("testrg")
                .tags(Map.ofEntries(
                    Map.entry("key1", "value1"),
                    Map.entry("key2", "value2")
                ))
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const discount = new azure_native.billingbenefits.Discount("discount", {
        discountName: "testprimarydiscount",
        location: "global",
        properties: {
            appliedScopeType: azure_native.billingbenefits.DiscountAppliedScopeType.BillingAccount,
            discountTypeProperties: {
                applyDiscountOn: azure_native.billingbenefits.ApplyDiscountOn.Purchase,
                conditions: [{
                    conditionName: "Cloud",
                    type: "equalAny",
                    value: ["US-Sec"],
                }],
                discountCombinationRule: azure_native.billingbenefits.DiscountCombinationRule.BestOf,
                discountType: "Sku",
                priceGuaranteeProperties: {
                    priceGuaranteeDate: "2024-11-01T00:00:00",
                    pricingPolicy: azure_native.billingbenefits.PricingPolicy.Protected,
                },
                productFamilyName: "Azure",
                productId: "DZH318Z0BQ35",
                skuId: "0001",
            },
            displayName: "Virtual Machines D Series",
            endAt: "2024-07-01T23:59:59Z",
            entityType: "Primary",
            productCode: "0001d726-0000-0160-330f-a0b98cdbbdc4",
            startAt: "2023-07-01T00:00:00Z",
        },
        resourceGroupName: "testrg",
        tags: {
            key1: "value1",
            key2: "value2",
        },
    });
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    discount = azure_native.billingbenefits.Discount("discount",
        discount_name="testprimarydiscount",
        location="global",
        properties={
            "applied_scope_type": azure_native.billingbenefits.DiscountAppliedScopeType.BILLING_ACCOUNT,
            "discount_type_properties": {
                "apply_discount_on": azure_native.billingbenefits.ApplyDiscountOn.PURCHASE,
                "conditions": [{
                    "condition_name": "Cloud",
                    "type": "equalAny",
                    "value": ["US-Sec"],
                }],
                "discount_combination_rule": azure_native.billingbenefits.DiscountCombinationRule.BEST_OF,
                "discount_type": "Sku",
                "price_guarantee_properties": {
                    "price_guarantee_date": "2024-11-01T00:00:00",
                    "pricing_policy": azure_native.billingbenefits.PricingPolicy.PROTECTED,
                },
                "product_family_name": "Azure",
                "product_id": "DZH318Z0BQ35",
                "sku_id": "0001",
            },
            "display_name": "Virtual Machines D Series",
            "end_at": "2024-07-01T23:59:59Z",
            "entity_type": "Primary",
            "product_code": "0001d726-0000-0160-330f-a0b98cdbbdc4",
            "start_at": "2023-07-01T00:00:00Z",
        },
        resource_group_name="testrg",
        tags={
            "key1": "value1",
            "key2": "value2",
        })
    
    resources:
      discount:
        type: azure-native:billingbenefits:Discount
        properties:
          discountName: testprimarydiscount
          location: global
          properties:
            appliedScopeType: BillingAccount
            discountTypeProperties:
              applyDiscountOn: Purchase
              conditions:
                - conditionName: Cloud
                  type: equalAny
                  value:
                    - US-Sec
              discountCombinationRule: BestOf
              discountType: Sku
              priceGuaranteeProperties:
                priceGuaranteeDate: 2024-11-01T00:00:00
                pricingPolicy: Protected
              productFamilyName: Azure
              productId: DZH318Z0BQ35
              skuId: '0001'
            displayName: Virtual Machines D Series
            endAt: 2024-07-01T23:59:59Z
            entityType: Primary
            productCode: 0001d726-0000-0160-330f-a0b98cdbbdc4
            startAt: 2023-07-01T00:00:00Z
          resourceGroupName: testrg
          tags:
            key1: value1
            key2: value2
    

    Create Discount Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Discount(name: string, args: DiscountArgs, opts?: CustomResourceOptions);
    @overload
    def Discount(resource_name: str,
                 args: DiscountArgs,
                 opts: Optional[ResourceOptions] = None)
    
    @overload
    def Discount(resource_name: str,
                 opts: Optional[ResourceOptions] = None,
                 resource_group_name: Optional[str] = None,
                 discount_name: Optional[str] = None,
                 identity: Optional[ManagedServiceIdentityArgs] = None,
                 kind: Optional[str] = None,
                 location: Optional[str] = None,
                 managed_by: Optional[str] = None,
                 plan: Optional[PlanArgs] = None,
                 properties: Optional[Union[EntityTypeAffiliateDiscountArgs, EntityTypePrimaryDiscountArgs]] = None,
                 sku: Optional[SkuArgs] = None,
                 tags: Optional[Mapping[str, str]] = None)
    func NewDiscount(ctx *Context, name string, args DiscountArgs, opts ...ResourceOption) (*Discount, error)
    public Discount(string name, DiscountArgs args, CustomResourceOptions? opts = null)
    public Discount(String name, DiscountArgs args)
    public Discount(String name, DiscountArgs args, CustomResourceOptions options)
    
    type: azure-native:billingbenefits:Discount
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args DiscountArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args DiscountArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args DiscountArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DiscountArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DiscountArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var discountResource = new AzureNative.BillingBenefits.Discount("discountResource", new()
    {
        ResourceGroupName = "string",
        DiscountName = "string",
        Identity = new AzureNative.BillingBenefits.Inputs.ManagedServiceIdentityArgs
        {
            Type = "string",
            UserAssignedIdentities = new[]
            {
                "string",
            },
        },
        Kind = "string",
        Location = "string",
        ManagedBy = "string",
        Plan = new AzureNative.BillingBenefits.Inputs.PlanArgs
        {
            Name = "string",
            Product = "string",
            Publisher = "string",
            PromotionCode = "string",
            Version = "string",
        },
        Properties = new AzureNative.BillingBenefits.Inputs.EntityTypeAffiliateDiscountArgs
        {
            EntityType = "Affiliate",
            ProductCode = "string",
            StartAt = "string",
            AppliedScopeType = "string",
            DisplayName = "string",
            SystemId = "string",
        },
        Sku = new AzureNative.BillingBenefits.Inputs.SkuArgs
        {
            Name = "string",
            Capacity = 0,
            Family = "string",
            Size = "string",
            Tier = AzureNative.BillingBenefits.SkuTier.Free,
        },
        Tags = 
        {
            { "string", "string" },
        },
    });
    
    example, err := billingbenefits.NewDiscount(ctx, "discountResource", &billingbenefits.DiscountArgs{
    	ResourceGroupName: pulumi.String("string"),
    	DiscountName:      pulumi.String("string"),
    	Identity: &billingbenefits.ManagedServiceIdentityArgs{
    		Type: pulumi.String("string"),
    		UserAssignedIdentities: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	Kind:      pulumi.String("string"),
    	Location:  pulumi.String("string"),
    	ManagedBy: pulumi.String("string"),
    	Plan: &billingbenefits.PlanArgs{
    		Name:          pulumi.String("string"),
    		Product:       pulumi.String("string"),
    		Publisher:     pulumi.String("string"),
    		PromotionCode: pulumi.String("string"),
    		Version:       pulumi.String("string"),
    	},
    	Properties: &billingbenefits.EntityTypeAffiliateDiscountArgs{
    		EntityType:       pulumi.String("Affiliate"),
    		ProductCode:      pulumi.String("string"),
    		StartAt:          pulumi.String("string"),
    		AppliedScopeType: pulumi.String("string"),
    		DisplayName:      pulumi.String("string"),
    		SystemId:         pulumi.String("string"),
    	},
    	Sku: &billingbenefits.SkuArgs{
    		Name:     pulumi.String("string"),
    		Capacity: pulumi.Int(0),
    		Family:   pulumi.String("string"),
    		Size:     pulumi.String("string"),
    		Tier:     billingbenefits.SkuTierFree,
    	},
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    })
    
    var discountResource = new Discount("discountResource", DiscountArgs.builder()
        .resourceGroupName("string")
        .discountName("string")
        .identity(ManagedServiceIdentityArgs.builder()
            .type("string")
            .userAssignedIdentities("string")
            .build())
        .kind("string")
        .location("string")
        .managedBy("string")
        .plan(PlanArgs.builder()
            .name("string")
            .product("string")
            .publisher("string")
            .promotionCode("string")
            .version("string")
            .build())
        .properties(EntityTypeAffiliateDiscountArgs.builder()
            .entityType("Affiliate")
            .productCode("string")
            .startAt("string")
            .appliedScopeType("string")
            .displayName("string")
            .systemId("string")
            .build())
        .sku(SkuArgs.builder()
            .name("string")
            .capacity(0)
            .family("string")
            .size("string")
            .tier("Free")
            .build())
        .tags(Map.of("string", "string"))
        .build());
    
    discount_resource = azure_native.billingbenefits.Discount("discountResource",
        resource_group_name="string",
        discount_name="string",
        identity={
            "type": "string",
            "user_assigned_identities": ["string"],
        },
        kind="string",
        location="string",
        managed_by="string",
        plan={
            "name": "string",
            "product": "string",
            "publisher": "string",
            "promotion_code": "string",
            "version": "string",
        },
        properties={
            "entity_type": "Affiliate",
            "product_code": "string",
            "start_at": "string",
            "applied_scope_type": "string",
            "display_name": "string",
            "system_id": "string",
        },
        sku={
            "name": "string",
            "capacity": 0,
            "family": "string",
            "size": "string",
            "tier": azure_native.billingbenefits.SkuTier.FREE,
        },
        tags={
            "string": "string",
        })
    
    const discountResource = new azure_native.billingbenefits.Discount("discountResource", {
        resourceGroupName: "string",
        discountName: "string",
        identity: {
            type: "string",
            userAssignedIdentities: ["string"],
        },
        kind: "string",
        location: "string",
        managedBy: "string",
        plan: {
            name: "string",
            product: "string",
            publisher: "string",
            promotionCode: "string",
            version: "string",
        },
        properties: {
            entityType: "Affiliate",
            productCode: "string",
            startAt: "string",
            appliedScopeType: "string",
            displayName: "string",
            systemId: "string",
        },
        sku: {
            name: "string",
            capacity: 0,
            family: "string",
            size: "string",
            tier: azure_native.billingbenefits.SkuTier.Free,
        },
        tags: {
            string: "string",
        },
    });
    
    type: azure-native:billingbenefits:Discount
    properties:
        discountName: string
        identity:
            type: string
            userAssignedIdentities:
                - string
        kind: string
        location: string
        managedBy: string
        plan:
            name: string
            product: string
            promotionCode: string
            publisher: string
            version: string
        properties:
            appliedScopeType: string
            displayName: string
            entityType: Affiliate
            productCode: string
            startAt: string
            systemId: string
        resourceGroupName: string
        sku:
            capacity: 0
            family: string
            name: string
            size: string
            tier: Free
        tags:
            string: string
    

    Discount Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The Discount resource accepts the following input properties:

    ResourceGroupName string
    The name of the resource group. The name is case insensitive.
    DiscountName string
    Name of the discount
    Identity Pulumi.AzureNative.BillingBenefits.Inputs.ManagedServiceIdentity
    Managed service identity (system assigned and/or user assigned identities)
    Kind string
    Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type. E.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value.
    Location string
    The geo-location where the resource lives
    ManagedBy string
    The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource.
    Plan Pulumi.AzureNative.BillingBenefits.Inputs.Plan
    Plan for the resource.
    Properties Pulumi.AzureNative.BillingBenefits.Inputs.EntityTypeAffiliateDiscount | Pulumi.AzureNative.BillingBenefits.Inputs.EntityTypePrimaryDiscount
    Discount properties
    Sku Pulumi.AzureNative.BillingBenefits.Inputs.Sku
    The resource model definition representing SKU
    Tags Dictionary<string, string>
    Resource tags.
    ResourceGroupName string
    The name of the resource group. The name is case insensitive.
    DiscountName string
    Name of the discount
    Identity ManagedServiceIdentityArgs
    Managed service identity (system assigned and/or user assigned identities)
    Kind string
    Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type. E.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value.
    Location string
    The geo-location where the resource lives
    ManagedBy string
    The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource.
    Plan PlanArgs
    Plan for the resource.
    Properties EntityTypeAffiliateDiscountArgs | EntityTypePrimaryDiscountArgs
    Discount properties
    Sku SkuArgs
    The resource model definition representing SKU
    Tags map[string]string
    Resource tags.
    resourceGroupName String
    The name of the resource group. The name is case insensitive.
    discountName String
    Name of the discount
    identity ManagedServiceIdentity
    Managed service identity (system assigned and/or user assigned identities)
    kind String
    Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type. E.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value.
    location String
    The geo-location where the resource lives
    managedBy String
    The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource.
    plan Plan
    Plan for the resource.
    properties EntityTypeAffiliateDiscount | EntityTypePrimaryDiscount
    Discount properties
    sku Sku
    The resource model definition representing SKU
    tags Map<String,String>
    Resource tags.
    resourceGroupName string
    The name of the resource group. The name is case insensitive.
    discountName string
    Name of the discount
    identity ManagedServiceIdentity
    Managed service identity (system assigned and/or user assigned identities)
    kind string
    Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type. E.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value.
    location string
    The geo-location where the resource lives
    managedBy string
    The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource.
    plan Plan
    Plan for the resource.
    properties EntityTypeAffiliateDiscount | EntityTypePrimaryDiscount
    Discount properties
    sku Sku
    The resource model definition representing SKU
    tags {[key: string]: string}
    Resource tags.
    resource_group_name str
    The name of the resource group. The name is case insensitive.
    discount_name str
    Name of the discount
    identity ManagedServiceIdentityArgs
    Managed service identity (system assigned and/or user assigned identities)
    kind str
    Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type. E.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value.
    location str
    The geo-location where the resource lives
    managed_by str
    The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource.
    plan PlanArgs
    Plan for the resource.
    properties EntityTypeAffiliateDiscountArgs | EntityTypePrimaryDiscountArgs
    Discount properties
    sku SkuArgs
    The resource model definition representing SKU
    tags Mapping[str, str]
    Resource tags.
    resourceGroupName String
    The name of the resource group. The name is case insensitive.
    discountName String
    Name of the discount
    identity Property Map
    Managed service identity (system assigned and/or user assigned identities)
    kind String
    Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type. E.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value.
    location String
    The geo-location where the resource lives
    managedBy String
    The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource.
    plan Property Map
    Plan for the resource.
    properties Property Map | Property Map
    Discount properties
    sku Property Map
    The resource model definition representing SKU
    tags Map<String>
    Resource tags.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Discount resource produces the following output properties:

    AzureApiVersion string
    The Azure API version of the resource.
    Etag string
    The etag field is not required. If it is provided in the response body, it must also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    The name of the resource
    SystemData Pulumi.AzureNative.BillingBenefits.Outputs.SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    Type string
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    AzureApiVersion string
    The Azure API version of the resource.
    Etag string
    The etag field is not required. If it is provided in the response body, it must also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    The name of the resource
    SystemData SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    Type string
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    azureApiVersion String
    The Azure API version of the resource.
    etag String
    The etag field is not required. If it is provided in the response body, it must also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    The name of the resource
    systemData SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    type String
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    azureApiVersion string
    The Azure API version of the resource.
    etag string
    The etag field is not required. If it is provided in the response body, it must also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields.
    id string
    The provider-assigned unique ID for this managed resource.
    name string
    The name of the resource
    systemData SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    type string
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    azure_api_version str
    The Azure API version of the resource.
    etag str
    The etag field is not required. If it is provided in the response body, it must also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields.
    id str
    The provider-assigned unique ID for this managed resource.
    name str
    The name of the resource
    system_data SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    type str
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    azureApiVersion String
    The Azure API version of the resource.
    etag String
    The etag field is not required. If it is provided in the response body, it must also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    The name of the resource
    systemData Property Map
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    type String
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

    Supporting Types

    ApplyDiscountOn, ApplyDiscountOnArgs

    Purchase
    Purchase
    Consume
    Consume
    Renew
    Renew
    ApplyDiscountOnPurchase
    Purchase
    ApplyDiscountOnConsume
    Consume
    ApplyDiscountOnRenew
    Renew
    Purchase
    Purchase
    Consume
    Consume
    Renew
    Renew
    Purchase
    Purchase
    Consume
    Consume
    Renew
    Renew
    PURCHASE
    Purchase
    CONSUME
    Consume
    RENEW
    Renew
    "Purchase"
    Purchase
    "Consume"
    Consume
    "Renew"
    Renew

    CatalogClaimsItem, CatalogClaimsItemArgs

    Catalog claim for a discount.

    CatalogClaimsItemResponse, CatalogClaimsItemResponseArgs

    Catalog claim for a discount.

    ConditionsItem, ConditionsItemArgs

    Condition for a discount.
    ConditionName string
    Type string
    Value List<string>
    These items are open-ended strings.
    ConditionName string
    Type string
    Value []string
    These items are open-ended strings.
    conditionName String
    type String
    value List<String>
    These items are open-ended strings.
    conditionName string
    type string
    value string[]
    These items are open-ended strings.
    condition_name str
    type str
    value Sequence[str]
    These items are open-ended strings.
    conditionName String
    type String
    value List<String>
    These items are open-ended strings.

    ConditionsItemResponse, ConditionsItemResponseArgs

    Condition for a discount.
    ConditionName string
    Type string
    Value List<string>
    These items are open-ended strings.
    ConditionName string
    Type string
    Value []string
    These items are open-ended strings.
    conditionName String
    type String
    value List<String>
    These items are open-ended strings.
    conditionName string
    type string
    value string[]
    These items are open-ended strings.
    condition_name str
    type str
    value Sequence[str]
    These items are open-ended strings.
    conditionName String
    type String
    value List<String>
    These items are open-ended strings.

    CustomPriceProperties, CustomPricePropertiesArgs

    Custom price properties for a given discount.
    CatalogClaims List<Pulumi.AzureNative.BillingBenefits.Inputs.CatalogClaimsItem>
    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.
    CatalogId string
    The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team.
    MarketSetPrices List<Pulumi.AzureNative.BillingBenefits.Inputs.MarketSetPricesItems>
    The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.
    RuleType string | Pulumi.AzureNative.BillingBenefits.DiscountRuleType
    The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.
    BillingPeriod string
    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 string
    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.
    TermUnits string
    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.
    CatalogClaims []CatalogClaimsItem
    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.
    CatalogId string
    The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team.
    MarketSetPrices []MarketSetPricesItems
    The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.
    RuleType string | DiscountRuleType
    The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.
    BillingPeriod string
    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 string
    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.
    TermUnits string
    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.
    catalogClaims List<CatalogClaimsItem>
    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.
    catalogId String
    The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team.
    marketSetPrices List<MarketSetPricesItems>
    The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.
    ruleType String | DiscountRuleType
    The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.
    billingPeriod String
    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 String
    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.
    termUnits String
    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.
    catalogClaims CatalogClaimsItem[]
    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.
    catalogId string
    The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team.
    marketSetPrices MarketSetPricesItems[]
    The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.
    ruleType string | DiscountRuleType
    The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.
    billingPeriod string
    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 string
    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.
    termUnits string
    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.
    catalog_claims Sequence[CatalogClaimsItem]
    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.
    catalog_id str
    The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team.
    market_set_prices Sequence[MarketSetPricesItems]
    The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.
    rule_type str | DiscountRuleType
    The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.
    billing_period str
    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.
    meter_type str
    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.
    term_units str
    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.
    catalogClaims List<Property Map>
    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.
    catalogId String
    The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team.
    marketSetPrices List<Property Map>
    The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.
    ruleType String | "FixedPriceLock" | "FixedListPrice" | "PriceCeiling"
    The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.
    billingPeriod String
    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 String
    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.
    termUnits String
    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.

    CustomPricePropertiesResponse, CustomPricePropertiesResponseArgs

    Custom price properties for a given discount.
    CatalogClaims List<Pulumi.AzureNative.BillingBenefits.Inputs.CatalogClaimsItemResponse>
    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.
    CatalogId string
    The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team.
    MarketSetPrices List<Pulumi.AzureNative.BillingBenefits.Inputs.MarketSetPricesItemsResponse>
    The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.
    RuleType string
    The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.
    BillingPeriod string
    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 string
    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.
    TermUnits string
    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.
    CatalogClaims []CatalogClaimsItemResponse
    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.
    CatalogId string
    The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team.
    MarketSetPrices []MarketSetPricesItemsResponse
    The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.
    RuleType string
    The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.
    BillingPeriod string
    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 string
    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.
    TermUnits string
    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.
    catalogClaims List<CatalogClaimsItemResponse>
    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.
    catalogId String
    The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team.
    marketSetPrices List<MarketSetPricesItemsResponse>
    The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.
    ruleType String
    The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.
    billingPeriod String
    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 String
    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.
    termUnits String
    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.
    catalogClaims CatalogClaimsItemResponse[]
    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.
    catalogId string
    The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team.
    marketSetPrices MarketSetPricesItemsResponse[]
    The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.
    ruleType string
    The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.
    billingPeriod string
    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 string
    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.
    termUnits string
    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.
    catalog_claims Sequence[CatalogClaimsItemResponse]
    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.
    catalog_id str
    The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team.
    market_set_prices Sequence[MarketSetPricesItemsResponse]
    The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.
    rule_type str
    The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.
    billing_period str
    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.
    meter_type str
    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.
    term_units str
    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.
    catalogClaims List<Property Map>
    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.
    catalogId String
    The catalog instance where the priceable node lives. Validation: Required. No defined format, will vary per team.
    marketSetPrices List<Property Map>
    The set of market set prices of the priceable node. Validation: Required. Must contain at least one element.
    ruleType String
    The type of the priceable node pricing rule. Validation: Required. Supported values are fixedPriceLock, fixedListPrice, and priceCeiling.
    billingPeriod String
    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 String
    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.
    termUnits String
    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.

    DiscountAppliedScopeType, DiscountAppliedScopeTypeArgs

    BillingAccount
    BillingAccount
    BillingProfile
    BillingProfile
    Customer
    Customer
    DiscountAppliedScopeTypeBillingAccount
    BillingAccount
    DiscountAppliedScopeTypeBillingProfile
    BillingProfile
    DiscountAppliedScopeTypeCustomer
    Customer
    BillingAccount
    BillingAccount
    BillingProfile
    BillingProfile
    Customer
    Customer
    BillingAccount
    BillingAccount
    BillingProfile
    BillingProfile
    Customer
    Customer
    BILLING_ACCOUNT
    BillingAccount
    BILLING_PROFILE
    BillingProfile
    CUSTOMER
    Customer
    "BillingAccount"
    BillingAccount
    "BillingProfile"
    BillingProfile
    "Customer"
    Customer

    DiscountCombinationRule, DiscountCombinationRuleArgs

    BestOf
    BestOf
    Stackable
    Stackable
    DiscountCombinationRuleBestOf
    BestOf
    DiscountCombinationRuleStackable
    Stackable
    BestOf
    BestOf
    Stackable
    Stackable
    BestOf
    BestOf
    Stackable
    Stackable
    BEST_OF
    BestOf
    STACKABLE
    Stackable
    "BestOf"
    BestOf
    "Stackable"
    Stackable

    DiscountCustomPrice, DiscountCustomPriceArgs

    Discount type properties including product family name, product id, sku, and custom price properties. Allows a single entry in marketSetPrices.
    ApplyDiscountOn string | Pulumi.AzureNative.BillingBenefits.ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions List<Pulumi.AzureNative.BillingBenefits.Inputs.ConditionsItem>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    CustomPriceProperties Pulumi.AzureNative.BillingBenefits.Inputs.CustomPriceProperties
    Custom price properties for a given discount.
    DiscountCombinationRule string | Pulumi.AzureNative.BillingBenefits.DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties Pulumi.AzureNative.BillingBenefits.Inputs.PriceGuaranteeProperties
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    SkuId string
    ResourceSku for the given discount. Validation: Optional.
    ApplyDiscountOn string | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions []ConditionsItem
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    CustomPriceProperties CustomPriceProperties
    Custom price properties for a given discount.
    DiscountCombinationRule string | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage float64
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    SkuId string
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn String | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<ConditionsItem>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    customPriceProperties CustomPriceProperties
    Custom price properties for a given discount.
    discountCombinationRule String | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId String
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn string | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions ConditionsItem[]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    customPriceProperties CustomPriceProperties
    Custom price properties for a given discount.
    discountCombinationRule string | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    productFamilyName string
    Product family for which the discount is given. Validation: Optional
    productId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId string
    ResourceSku for the given discount. Validation: Optional.
    apply_discount_on str | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions Sequence[ConditionsItem]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    custom_price_properties CustomPriceProperties
    Custom price properties for a given discount.
    discount_combination_rule str | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discount_percentage float
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    price_guarantee_properties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    product_family_name str
    Product family for which the discount is given. Validation: Optional
    product_id str
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    sku_id str
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn String | "Purchase" | "Consume" | "Renew"
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<Property Map>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    customPriceProperties Property Map
    Custom price properties for a given discount.
    discountCombinationRule String | "BestOf" | "Stackable"
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties Property Map
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId String
    ResourceSku for the given discount. Validation: Optional.

    DiscountCustomPriceMultiCurrency, DiscountCustomPriceMultiCurrencyArgs

    Discount type properties including product family name, product id, sku, and custom price properties. Allows multiple entries in marketSetPrices.
    ApplyDiscountOn string | Pulumi.AzureNative.BillingBenefits.ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions List<Pulumi.AzureNative.BillingBenefits.Inputs.ConditionsItem>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    CustomPriceProperties Pulumi.AzureNative.BillingBenefits.Inputs.CustomPriceProperties
    Custom price properties for a given discount.
    DiscountCombinationRule string | Pulumi.AzureNative.BillingBenefits.DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties Pulumi.AzureNative.BillingBenefits.Inputs.PriceGuaranteeProperties
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    SkuId string
    ResourceSku for the given discount. Validation: Optional.
    ApplyDiscountOn string | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions []ConditionsItem
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    CustomPriceProperties CustomPriceProperties
    Custom price properties for a given discount.
    DiscountCombinationRule string | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage float64
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    SkuId string
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn String | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<ConditionsItem>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    customPriceProperties CustomPriceProperties
    Custom price properties for a given discount.
    discountCombinationRule String | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId String
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn string | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions ConditionsItem[]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    customPriceProperties CustomPriceProperties
    Custom price properties for a given discount.
    discountCombinationRule string | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    productFamilyName string
    Product family for which the discount is given. Validation: Optional
    productId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId string
    ResourceSku for the given discount. Validation: Optional.
    apply_discount_on str | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions Sequence[ConditionsItem]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    custom_price_properties CustomPriceProperties
    Custom price properties for a given discount.
    discount_combination_rule str | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discount_percentage float
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    price_guarantee_properties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    product_family_name str
    Product family for which the discount is given. Validation: Optional
    product_id str
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    sku_id str
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn String | "Purchase" | "Consume" | "Renew"
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<Property Map>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    customPriceProperties Property Map
    Custom price properties for a given discount.
    discountCombinationRule String | "BestOf" | "Stackable"
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties Property Map
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId String
    ResourceSku for the given discount. Validation: Optional.

    DiscountCustomPriceMultiCurrencyResponse, DiscountCustomPriceMultiCurrencyResponseArgs

    Discount type properties including product family name, product id, sku, and custom price properties. Allows multiple entries in marketSetPrices.
    ApplyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions List<Pulumi.AzureNative.BillingBenefits.Inputs.ConditionsItemResponse>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    CustomPriceProperties Pulumi.AzureNative.BillingBenefits.Inputs.CustomPricePropertiesResponse
    Custom price properties for a given discount.
    DiscountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties Pulumi.AzureNative.BillingBenefits.Inputs.PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    SkuId string
    ResourceSku for the given discount. Validation: Optional.
    ApplyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions []ConditionsItemResponse
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    CustomPriceProperties CustomPricePropertiesResponse
    Custom price properties for a given discount.
    DiscountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage float64
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    SkuId string
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn String
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<ConditionsItemResponse>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    customPriceProperties CustomPricePropertiesResponse
    Custom price properties for a given discount.
    discountCombinationRule String
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId String
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions ConditionsItemResponse[]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    customPriceProperties CustomPricePropertiesResponse
    Custom price properties for a given discount.
    discountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    productFamilyName string
    Product family for which the discount is given. Validation: Optional
    productId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId string
    ResourceSku for the given discount. Validation: Optional.
    apply_discount_on str
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions Sequence[ConditionsItemResponse]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    custom_price_properties CustomPricePropertiesResponse
    Custom price properties for a given discount.
    discount_combination_rule str
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discount_percentage float
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    price_guarantee_properties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    product_family_name str
    Product family for which the discount is given. Validation: Optional
    product_id str
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    sku_id str
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn String
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<Property Map>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    customPriceProperties Property Map
    Custom price properties for a given discount.
    discountCombinationRule String
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties Property Map
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId String
    ResourceSku for the given discount. Validation: Optional.

    DiscountCustomPriceResponse, DiscountCustomPriceResponseArgs

    Discount type properties including product family name, product id, sku, and custom price properties. Allows a single entry in marketSetPrices.
    ApplyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions List<Pulumi.AzureNative.BillingBenefits.Inputs.ConditionsItemResponse>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    CustomPriceProperties Pulumi.AzureNative.BillingBenefits.Inputs.CustomPricePropertiesResponse
    Custom price properties for a given discount.
    DiscountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties Pulumi.AzureNative.BillingBenefits.Inputs.PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    SkuId string
    ResourceSku for the given discount. Validation: Optional.
    ApplyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions []ConditionsItemResponse
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    CustomPriceProperties CustomPricePropertiesResponse
    Custom price properties for a given discount.
    DiscountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage float64
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    SkuId string
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn String
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<ConditionsItemResponse>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    customPriceProperties CustomPricePropertiesResponse
    Custom price properties for a given discount.
    discountCombinationRule String
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId String
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions ConditionsItemResponse[]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    customPriceProperties CustomPricePropertiesResponse
    Custom price properties for a given discount.
    discountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    productFamilyName string
    Product family for which the discount is given. Validation: Optional
    productId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId string
    ResourceSku for the given discount. Validation: Optional.
    apply_discount_on str
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions Sequence[ConditionsItemResponse]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    custom_price_properties CustomPricePropertiesResponse
    Custom price properties for a given discount.
    discount_combination_rule str
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discount_percentage float
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    price_guarantee_properties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    product_family_name str
    Product family for which the discount is given. Validation: Optional
    product_id str
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    sku_id str
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn String
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<Property Map>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    customPriceProperties Property Map
    Custom price properties for a given discount.
    discountCombinationRule String
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties Property Map
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId String
    ResourceSku for the given discount. Validation: Optional.

    DiscountProduct, DiscountProductArgs

    Discount type properties including product family name and product id.
    ApplyDiscountOn string | Pulumi.AzureNative.BillingBenefits.ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions List<Pulumi.AzureNative.BillingBenefits.Inputs.ConditionsItem>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    DiscountCombinationRule string | Pulumi.AzureNative.BillingBenefits.DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties Pulumi.AzureNative.BillingBenefits.Inputs.PriceGuaranteeProperties
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    ApplyDiscountOn string | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions []ConditionsItem
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    DiscountCombinationRule string | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage float64
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    applyDiscountOn String | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<ConditionsItem>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule String | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    applyDiscountOn string | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions ConditionsItem[]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule string | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    productFamilyName string
    Product family for which the discount is given. Validation: Optional
    productId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    apply_discount_on str | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions Sequence[ConditionsItem]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discount_combination_rule str | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discount_percentage float
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    price_guarantee_properties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    product_family_name str
    Product family for which the discount is given. Validation: Optional
    product_id str
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    applyDiscountOn String | "Purchase" | "Consume" | "Renew"
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<Property Map>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule String | "BestOf" | "Stackable"
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties Property Map
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F

    DiscountProductFamily, DiscountProductFamilyArgs

    Discount type properties including product family name
    ApplyDiscountOn string | Pulumi.AzureNative.BillingBenefits.ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions List<Pulumi.AzureNative.BillingBenefits.Inputs.ConditionsItem>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    DiscountCombinationRule string | Pulumi.AzureNative.BillingBenefits.DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties Pulumi.AzureNative.BillingBenefits.Inputs.PriceGuaranteeProperties
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ApplyDiscountOn string | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions []ConditionsItem
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    DiscountCombinationRule string | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage float64
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    applyDiscountOn String | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<ConditionsItem>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule String | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    applyDiscountOn string | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions ConditionsItem[]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule string | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    productFamilyName string
    Product family for which the discount is given. Validation: Optional
    apply_discount_on str | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions Sequence[ConditionsItem]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discount_combination_rule str | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discount_percentage float
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    price_guarantee_properties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    product_family_name str
    Product family for which the discount is given. Validation: Optional
    applyDiscountOn String | "Purchase" | "Consume" | "Renew"
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<Property Map>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule String | "BestOf" | "Stackable"
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties Property Map
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional

    DiscountProductFamilyResponse, DiscountProductFamilyResponseArgs

    Discount type properties including product family name
    ApplyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions List<Pulumi.AzureNative.BillingBenefits.Inputs.ConditionsItemResponse>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    DiscountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties Pulumi.AzureNative.BillingBenefits.Inputs.PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ApplyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions []ConditionsItemResponse
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    DiscountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage float64
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    applyDiscountOn String
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<ConditionsItemResponse>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule String
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    applyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions ConditionsItemResponse[]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    productFamilyName string
    Product family for which the discount is given. Validation: Optional
    apply_discount_on str
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions Sequence[ConditionsItemResponse]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discount_combination_rule str
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discount_percentage float
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    price_guarantee_properties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    product_family_name str
    Product family for which the discount is given. Validation: Optional
    applyDiscountOn String
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<Property Map>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule String
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties Property Map
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional

    DiscountProductResponse, DiscountProductResponseArgs

    Discount type properties including product family name and product id.
    ApplyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions List<Pulumi.AzureNative.BillingBenefits.Inputs.ConditionsItemResponse>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    DiscountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties Pulumi.AzureNative.BillingBenefits.Inputs.PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    ApplyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions []ConditionsItemResponse
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    DiscountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage float64
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    applyDiscountOn String
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<ConditionsItemResponse>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule String
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    applyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions ConditionsItemResponse[]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    productFamilyName string
    Product family for which the discount is given. Validation: Optional
    productId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    apply_discount_on str
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions Sequence[ConditionsItemResponse]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discount_combination_rule str
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discount_percentage float
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    price_guarantee_properties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    product_family_name str
    Product family for which the discount is given. Validation: Optional
    product_id str
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    applyDiscountOn String
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<Property Map>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule String
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties Property Map
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F

    DiscountRuleType, DiscountRuleTypeArgs

    FixedPriceLock
    FixedPriceLock
    FixedListPrice
    FixedListPrice
    PriceCeiling
    PriceCeiling
    DiscountRuleTypeFixedPriceLock
    FixedPriceLock
    DiscountRuleTypeFixedListPrice
    FixedListPrice
    DiscountRuleTypePriceCeiling
    PriceCeiling
    FixedPriceLock
    FixedPriceLock
    FixedListPrice
    FixedListPrice
    PriceCeiling
    PriceCeiling
    FixedPriceLock
    FixedPriceLock
    FixedListPrice
    FixedListPrice
    PriceCeiling
    PriceCeiling
    FIXED_PRICE_LOCK
    FixedPriceLock
    FIXED_LIST_PRICE
    FixedListPrice
    PRICE_CEILING
    PriceCeiling
    "FixedPriceLock"
    FixedPriceLock
    "FixedListPrice"
    FixedListPrice
    "PriceCeiling"
    PriceCeiling

    DiscountTypeProductSku, DiscountTypeProductSkuArgs

    Discount type properties including product family name, product id, and sku id.
    ApplyDiscountOn string | Pulumi.AzureNative.BillingBenefits.ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions List<Pulumi.AzureNative.BillingBenefits.Inputs.ConditionsItem>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    DiscountCombinationRule string | Pulumi.AzureNative.BillingBenefits.DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties Pulumi.AzureNative.BillingBenefits.Inputs.PriceGuaranteeProperties
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    SkuId string
    ResourceSku for the given discount. Validation: Optional.
    ApplyDiscountOn string | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions []ConditionsItem
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    DiscountCombinationRule string | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage float64
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    SkuId string
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn String | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<ConditionsItem>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule String | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId String
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn string | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions ConditionsItem[]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule string | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    productFamilyName string
    Product family for which the discount is given. Validation: Optional
    productId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId string
    ResourceSku for the given discount. Validation: Optional.
    apply_discount_on str | ApplyDiscountOn
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions Sequence[ConditionsItem]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discount_combination_rule str | DiscountCombinationRule
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discount_percentage float
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    price_guarantee_properties PriceGuaranteeProperties
    Set only in price guarantee scenario.
    product_family_name str
    Product family for which the discount is given. Validation: Optional
    product_id str
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    sku_id str
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn String | "Purchase" | "Consume" | "Renew"
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<Property Map>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule String | "BestOf" | "Stackable"
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties Property Map
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId String
    ResourceSku for the given discount. Validation: Optional.

    DiscountTypeProductSkuResponse, DiscountTypeProductSkuResponseArgs

    Discount type properties including product family name, product id, and sku id.
    ApplyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions List<Pulumi.AzureNative.BillingBenefits.Inputs.ConditionsItemResponse>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    DiscountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties Pulumi.AzureNative.BillingBenefits.Inputs.PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    SkuId string
    ResourceSku for the given discount. Validation: Optional.
    ApplyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    Conditions []ConditionsItemResponse
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    DiscountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    DiscountPercentage float64
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    PriceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    ProductFamilyName string
    Product family for which the discount is given. Validation: Optional
    ProductId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    SkuId string
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn String
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<ConditionsItemResponse>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule String
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Double
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId String
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn string
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions ConditionsItemResponse[]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule string
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    productFamilyName string
    Product family for which the discount is given. Validation: Optional
    productId string
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId string
    ResourceSku for the given discount. Validation: Optional.
    apply_discount_on str
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions Sequence[ConditionsItemResponse]
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discount_combination_rule str
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discount_percentage float
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    price_guarantee_properties PriceGuaranteePropertiesResponse
    Set only in price guarantee scenario.
    product_family_name str
    Product family for which the discount is given. Validation: Optional
    product_id str
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    sku_id str
    ResourceSku for the given discount. Validation: Optional.
    applyDiscountOn String
    The customer action on which the discount is applied. Supported values are Purchase, Consume, and Renew. Validation: Required, one of supported values.
    conditions List<Property Map>
    Array of conditions for the discount. Validation: Optional. Maximum length is 1000.
    discountCombinationRule String
    The discount combination rule when there are multiple applicable custom prices. Validation: Required. Supported values are Stackable and BestOf.
    discountPercentage Number
    Discount percentage provided for the customer. Validation: Required unless this is a price rule.
    priceGuaranteeProperties Property Map
    Set only in price guarantee scenario.
    productFamilyName String
    Product family for which the discount is given. Validation: Optional
    productId String
    Product ID for which the discount is given. Validation: Optional. No specific format, example: DZH318Z09V6F
    skuId String
    ResourceSku for the given discount. Validation: Optional.

    EntityTypeAffiliateDiscount, EntityTypeAffiliateDiscountArgs

    Entity type for affiliate discounts
    ProductCode string
    This is the catalog UPN for the product.
    StartAt string
    Start date of the discount. Value is the date the discount started or will start in the future.
    AppliedScopeType string | Pulumi.AzureNative.BillingBenefits.DiscountAppliedScopeType
    List of applied scopes supported for discounts.
    DisplayName string
    This defines a user friendly display name for the discount.
    SystemId string
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    ProductCode string
    This is the catalog UPN for the product.
    StartAt string
    Start date of the discount. Value is the date the discount started or will start in the future.
    AppliedScopeType string | DiscountAppliedScopeType
    List of applied scopes supported for discounts.
    DisplayName string
    This defines a user friendly display name for the discount.
    SystemId string
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    productCode String
    This is the catalog UPN for the product.
    startAt String
    Start date of the discount. Value is the date the discount started or will start in the future.
    appliedScopeType String | DiscountAppliedScopeType
    List of applied scopes supported for discounts.
    displayName String
    This defines a user friendly display name for the discount.
    systemId String
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    productCode string
    This is the catalog UPN for the product.
    startAt string
    Start date of the discount. Value is the date the discount started or will start in the future.
    appliedScopeType string | DiscountAppliedScopeType
    List of applied scopes supported for discounts.
    displayName string
    This defines a user friendly display name for the discount.
    systemId string
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    product_code str
    This is the catalog UPN for the product.
    start_at str
    Start date of the discount. Value is the date the discount started or will start in the future.
    applied_scope_type str | DiscountAppliedScopeType
    List of applied scopes supported for discounts.
    display_name str
    This defines a user friendly display name for the discount.
    system_id str
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    productCode String
    This is the catalog UPN for the product.
    startAt String
    Start date of the discount. Value is the date the discount started or will start in the future.
    appliedScopeType String | "BillingAccount" | "BillingProfile" | "Customer"
    List of applied scopes supported for discounts.
    displayName String
    This defines a user friendly display name for the discount.
    systemId String
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.

    EntityTypeAffiliateDiscountResponse, EntityTypeAffiliateDiscountResponseArgs

    Entity type for affiliate discounts
    BenefitResourceId string
    Fully-qualified identifier of the benefit under applicable benefit list.
    BillingAccountResourceId string
    Billing account resource id where the discount metadata is present.
    BillingProfileResourceId string
    Billing profile resource id where the discount is scoped to.
    CustomerResourceId string
    Customer resource id where the discount is scoped to.
    EndAt string
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    PrimaryResourceId string
    This will be present in the response if the primary has a resource ID
    ProductCode string
    This is the catalog UPN for the product.
    ProvisioningState string
    The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled.
    StartAt string
    Start date of the discount. Value is the date the discount started or will start in the future.
    Status string
    Represents the current status of the discount.
    AppliedScopeType string
    List of applied scopes supported for discounts.
    DisplayName string
    This defines a user friendly display name for the discount.
    SystemId string
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    BenefitResourceId string
    Fully-qualified identifier of the benefit under applicable benefit list.
    BillingAccountResourceId string
    Billing account resource id where the discount metadata is present.
    BillingProfileResourceId string
    Billing profile resource id where the discount is scoped to.
    CustomerResourceId string
    Customer resource id where the discount is scoped to.
    EndAt string
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    PrimaryResourceId string
    This will be present in the response if the primary has a resource ID
    ProductCode string
    This is the catalog UPN for the product.
    ProvisioningState string
    The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled.
    StartAt string
    Start date of the discount. Value is the date the discount started or will start in the future.
    Status string
    Represents the current status of the discount.
    AppliedScopeType string
    List of applied scopes supported for discounts.
    DisplayName string
    This defines a user friendly display name for the discount.
    SystemId string
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    benefitResourceId String
    Fully-qualified identifier of the benefit under applicable benefit list.
    billingAccountResourceId String
    Billing account resource id where the discount metadata is present.
    billingProfileResourceId String
    Billing profile resource id where the discount is scoped to.
    customerResourceId String
    Customer resource id where the discount is scoped to.
    endAt String
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    primaryResourceId String
    This will be present in the response if the primary has a resource ID
    productCode String
    This is the catalog UPN for the product.
    provisioningState String
    The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled.
    startAt String
    Start date of the discount. Value is the date the discount started or will start in the future.
    status String
    Represents the current status of the discount.
    appliedScopeType String
    List of applied scopes supported for discounts.
    displayName String
    This defines a user friendly display name for the discount.
    systemId String
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    benefitResourceId string
    Fully-qualified identifier of the benefit under applicable benefit list.
    billingAccountResourceId string
    Billing account resource id where the discount metadata is present.
    billingProfileResourceId string
    Billing profile resource id where the discount is scoped to.
    customerResourceId string
    Customer resource id where the discount is scoped to.
    endAt string
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    primaryResourceId string
    This will be present in the response if the primary has a resource ID
    productCode string
    This is the catalog UPN for the product.
    provisioningState string
    The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled.
    startAt string
    Start date of the discount. Value is the date the discount started or will start in the future.
    status string
    Represents the current status of the discount.
    appliedScopeType string
    List of applied scopes supported for discounts.
    displayName string
    This defines a user friendly display name for the discount.
    systemId string
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    benefit_resource_id str
    Fully-qualified identifier of the benefit under applicable benefit list.
    billing_account_resource_id str
    Billing account resource id where the discount metadata is present.
    billing_profile_resource_id str
    Billing profile resource id where the discount is scoped to.
    customer_resource_id str
    Customer resource id where the discount is scoped to.
    end_at str
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    primary_resource_id str
    This will be present in the response if the primary has a resource ID
    product_code str
    This is the catalog UPN for the product.
    provisioning_state str
    The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled.
    start_at str
    Start date of the discount. Value is the date the discount started or will start in the future.
    status str
    Represents the current status of the discount.
    applied_scope_type str
    List of applied scopes supported for discounts.
    display_name str
    This defines a user friendly display name for the discount.
    system_id str
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    benefitResourceId String
    Fully-qualified identifier of the benefit under applicable benefit list.
    billingAccountResourceId String
    Billing account resource id where the discount metadata is present.
    billingProfileResourceId String
    Billing profile resource id where the discount is scoped to.
    customerResourceId String
    Customer resource id where the discount is scoped to.
    endAt String
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    primaryResourceId String
    This will be present in the response if the primary has a resource ID
    productCode String
    This is the catalog UPN for the product.
    provisioningState String
    The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled.
    startAt String
    Start date of the discount. Value is the date the discount started or will start in the future.
    status String
    Represents the current status of the discount.
    appliedScopeType String
    List of applied scopes supported for discounts.
    displayName String
    This defines a user friendly display name for the discount.
    systemId String
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.

    EntityTypePrimaryDiscount, EntityTypePrimaryDiscountArgs

    Entity type for primary discounts
    EndAt string
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    ProductCode string
    This is the catalog UPN for the product.
    StartAt string
    Start date of the discount. Value is the date the discount started or will start in the future.
    AppliedScopeType string | Pulumi.AzureNative.BillingBenefits.DiscountAppliedScopeType
    List of applied scopes supported for discounts.
    DiscountTypeProperties Pulumi.AzureNative.BillingBenefits.Inputs.DiscountCustomPrice | Pulumi.AzureNative.BillingBenefits.Inputs.DiscountCustomPriceMultiCurrency | Pulumi.AzureNative.BillingBenefits.Inputs.DiscountProduct | Pulumi.AzureNative.BillingBenefits.Inputs.DiscountProductFamily | Pulumi.AzureNative.BillingBenefits.Inputs.DiscountTypeProductSku
    This defines the conditions for a given discount type.
    DisplayName string
    This defines a user friendly display name for the discount.
    SystemId string
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    EndAt string
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    ProductCode string
    This is the catalog UPN for the product.
    StartAt string
    Start date of the discount. Value is the date the discount started or will start in the future.
    AppliedScopeType string | DiscountAppliedScopeType
    List of applied scopes supported for discounts.
    DiscountTypeProperties DiscountCustomPrice | DiscountCustomPriceMultiCurrency | DiscountProduct | DiscountProductFamily | DiscountTypeProductSku
    This defines the conditions for a given discount type.
    DisplayName string
    This defines a user friendly display name for the discount.
    SystemId string
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    endAt String
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    productCode String
    This is the catalog UPN for the product.
    startAt String
    Start date of the discount. Value is the date the discount started or will start in the future.
    appliedScopeType String | DiscountAppliedScopeType
    List of applied scopes supported for discounts.
    discountTypeProperties DiscountCustomPrice | DiscountCustomPriceMultiCurrency | DiscountProduct | DiscountProductFamily | DiscountTypeProductSku
    This defines the conditions for a given discount type.
    displayName String
    This defines a user friendly display name for the discount.
    systemId String
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    endAt string
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    productCode string
    This is the catalog UPN for the product.
    startAt string
    Start date of the discount. Value is the date the discount started or will start in the future.
    appliedScopeType string | DiscountAppliedScopeType
    List of applied scopes supported for discounts.
    discountTypeProperties DiscountCustomPrice | DiscountCustomPriceMultiCurrency | DiscountProduct | DiscountProductFamily | DiscountTypeProductSku
    This defines the conditions for a given discount type.
    displayName string
    This defines a user friendly display name for the discount.
    systemId string
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    end_at str
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    product_code str
    This is the catalog UPN for the product.
    start_at str
    Start date of the discount. Value is the date the discount started or will start in the future.
    applied_scope_type str | DiscountAppliedScopeType
    List of applied scopes supported for discounts.
    discount_type_properties DiscountCustomPrice | DiscountCustomPriceMultiCurrency | DiscountProduct | DiscountProductFamily | DiscountTypeProductSku
    This defines the conditions for a given discount type.
    display_name str
    This defines a user friendly display name for the discount.
    system_id str
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    endAt String
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    productCode String
    This is the catalog UPN for the product.
    startAt String
    Start date of the discount. Value is the date the discount started or will start in the future.
    appliedScopeType String | "BillingAccount" | "BillingProfile" | "Customer"
    List of applied scopes supported for discounts.
    discountTypeProperties Property Map | Property Map | Property Map | Property Map | Property Map
    This defines the conditions for a given discount type.
    displayName String
    This defines a user friendly display name for the discount.
    systemId String
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.

    EntityTypePrimaryDiscountResponse, EntityTypePrimaryDiscountResponseArgs

    Entity type for primary discounts
    BenefitResourceId string
    Fully-qualified identifier of the benefit under applicable benefit list.
    BillingAccountResourceId string
    Billing account resource id where the discount metadata is present.
    BillingProfileResourceId string
    Billing profile resource id where the discount is scoped to.
    CustomerResourceId string
    Customer resource id where the discount is scoped to.
    EndAt string
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    ProductCode string
    This is the catalog UPN for the product.
    ProvisioningState string
    The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled.
    StartAt string
    Start date of the discount. Value is the date the discount started or will start in the future.
    Status string
    Represents the current status of the discount.
    AppliedScopeType string
    List of applied scopes supported for discounts.
    DiscountTypeProperties Pulumi.AzureNative.BillingBenefits.Inputs.DiscountCustomPriceResponse | Pulumi.AzureNative.BillingBenefits.Inputs.DiscountCustomPriceMultiCurrencyResponse | Pulumi.AzureNative.BillingBenefits.Inputs.DiscountProductResponse | Pulumi.AzureNative.BillingBenefits.Inputs.DiscountProductFamilyResponse | Pulumi.AzureNative.BillingBenefits.Inputs.DiscountTypeProductSkuResponse
    This defines the conditions for a given discount type.
    DisplayName string
    This defines a user friendly display name for the discount.
    SystemId string
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    BenefitResourceId string
    Fully-qualified identifier of the benefit under applicable benefit list.
    BillingAccountResourceId string
    Billing account resource id where the discount metadata is present.
    BillingProfileResourceId string
    Billing profile resource id where the discount is scoped to.
    CustomerResourceId string
    Customer resource id where the discount is scoped to.
    EndAt string
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    ProductCode string
    This is the catalog UPN for the product.
    ProvisioningState string
    The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled.
    StartAt string
    Start date of the discount. Value is the date the discount started or will start in the future.
    Status string
    Represents the current status of the discount.
    AppliedScopeType string
    List of applied scopes supported for discounts.
    DiscountTypeProperties DiscountCustomPriceResponse | DiscountCustomPriceMultiCurrencyResponse | DiscountProductResponse | DiscountProductFamilyResponse | DiscountTypeProductSkuResponse
    This defines the conditions for a given discount type.
    DisplayName string
    This defines a user friendly display name for the discount.
    SystemId string
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    benefitResourceId String
    Fully-qualified identifier of the benefit under applicable benefit list.
    billingAccountResourceId String
    Billing account resource id where the discount metadata is present.
    billingProfileResourceId String
    Billing profile resource id where the discount is scoped to.
    customerResourceId String
    Customer resource id where the discount is scoped to.
    endAt String
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    productCode String
    This is the catalog UPN for the product.
    provisioningState String
    The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled.
    startAt String
    Start date of the discount. Value is the date the discount started or will start in the future.
    status String
    Represents the current status of the discount.
    appliedScopeType String
    List of applied scopes supported for discounts.
    discountTypeProperties DiscountCustomPriceResponse | DiscountCustomPriceMultiCurrencyResponse | DiscountProductResponse | DiscountProductFamilyResponse | DiscountTypeProductSkuResponse
    This defines the conditions for a given discount type.
    displayName String
    This defines a user friendly display name for the discount.
    systemId String
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    benefitResourceId string
    Fully-qualified identifier of the benefit under applicable benefit list.
    billingAccountResourceId string
    Billing account resource id where the discount metadata is present.
    billingProfileResourceId string
    Billing profile resource id where the discount is scoped to.
    customerResourceId string
    Customer resource id where the discount is scoped to.
    endAt string
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    productCode string
    This is the catalog UPN for the product.
    provisioningState string
    The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled.
    startAt string
    Start date of the discount. Value is the date the discount started or will start in the future.
    status string
    Represents the current status of the discount.
    appliedScopeType string
    List of applied scopes supported for discounts.
    discountTypeProperties DiscountCustomPriceResponse | DiscountCustomPriceMultiCurrencyResponse | DiscountProductResponse | DiscountProductFamilyResponse | DiscountTypeProductSkuResponse
    This defines the conditions for a given discount type.
    displayName string
    This defines a user friendly display name for the discount.
    systemId string
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    benefit_resource_id str
    Fully-qualified identifier of the benefit under applicable benefit list.
    billing_account_resource_id str
    Billing account resource id where the discount metadata is present.
    billing_profile_resource_id str
    Billing profile resource id where the discount is scoped to.
    customer_resource_id str
    Customer resource id where the discount is scoped to.
    end_at str
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    product_code str
    This is the catalog UPN for the product.
    provisioning_state str
    The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled.
    start_at str
    Start date of the discount. Value is the date the discount started or will start in the future.
    status str
    Represents the current status of the discount.
    applied_scope_type str
    List of applied scopes supported for discounts.
    discount_type_properties DiscountCustomPriceResponse | DiscountCustomPriceMultiCurrencyResponse | DiscountProductResponse | DiscountProductFamilyResponse | DiscountTypeProductSkuResponse
    This defines the conditions for a given discount type.
    display_name str
    This defines a user friendly display name for the discount.
    system_id str
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.
    benefitResourceId String
    Fully-qualified identifier of the benefit under applicable benefit list.
    billingAccountResourceId String
    Billing account resource id where the discount metadata is present.
    billingProfileResourceId String
    Billing profile resource id where the discount is scoped to.
    customerResourceId String
    Customer resource id where the discount is scoped to.
    endAt String
    End date of the discount. No duration will be supported. Allowed value is any date greater than or equal to startDate.
    productCode String
    This is the catalog UPN for the product.
    provisioningState String
    The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled.
    startAt String
    Start date of the discount. Value is the date the discount started or will start in the future.
    status String
    Represents the current status of the discount.
    appliedScopeType String
    List of applied scopes supported for discounts.
    discountTypeProperties Property Map | Property Map | Property Map | Property Map | Property Map
    This defines the conditions for a given discount type.
    displayName String
    This defines a user friendly display name for the discount.
    systemId String
    This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount.

    ManagedServiceIdentity, ManagedServiceIdentityArgs

    Managed service identity (system assigned and/or user assigned identities)
    Type string | Pulumi.AzureNative.BillingBenefits.ManagedServiceIdentityType
    Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
    UserAssignedIdentities List<string>
    The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
    Type string | ManagedServiceIdentityType
    Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
    UserAssignedIdentities []string
    The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
    type String | ManagedServiceIdentityType
    Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
    userAssignedIdentities List<String>
    The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
    type string | ManagedServiceIdentityType
    Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
    userAssignedIdentities string[]
    The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
    type str | ManagedServiceIdentityType
    Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
    user_assigned_identities Sequence[str]
    The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
    type String | "None" | "SystemAssigned" | "UserAssigned" | "SystemAssigned,UserAssigned"
    Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
    userAssignedIdentities List<String>
    The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.

    ManagedServiceIdentityResponse, ManagedServiceIdentityResponseArgs

    Managed service identity (system assigned and/or user assigned identities)
    PrincipalId string
    The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity.
    TenantId string
    The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity.
    Type string
    Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
    UserAssignedIdentities Dictionary<string, Pulumi.AzureNative.BillingBenefits.Inputs.UserAssignedIdentityResponse>
    The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
    PrincipalId string
    The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity.
    TenantId string
    The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity.
    Type string
    Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
    UserAssignedIdentities map[string]UserAssignedIdentityResponse
    The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
    principalId String
    The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity.
    tenantId String
    The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity.
    type String
    Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
    userAssignedIdentities Map<String,UserAssignedIdentityResponse>
    The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
    principalId string
    The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity.
    tenantId string
    The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity.
    type string
    Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
    userAssignedIdentities {[key: string]: UserAssignedIdentityResponse}
    The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
    principal_id str
    The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity.
    tenant_id str
    The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity.
    type str
    Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
    user_assigned_identities Mapping[str, UserAssignedIdentityResponse]
    The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
    principalId String
    The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity.
    tenantId String
    The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity.
    type String
    Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
    userAssignedIdentities Map<Property Map>
    The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.

    ManagedServiceIdentityType, ManagedServiceIdentityTypeArgs

    None
    None
    SystemAssigned
    SystemAssigned
    UserAssigned
    UserAssigned
    SystemAssigned_UserAssigned
    SystemAssigned,UserAssigned
    ManagedServiceIdentityTypeNone
    None
    ManagedServiceIdentityTypeSystemAssigned
    SystemAssigned
    ManagedServiceIdentityTypeUserAssigned
    UserAssigned
    ManagedServiceIdentityType_SystemAssigned_UserAssigned
    SystemAssigned,UserAssigned
    None
    None
    SystemAssigned
    SystemAssigned
    UserAssigned
    UserAssigned
    SystemAssigned_UserAssigned
    SystemAssigned,UserAssigned
    None
    None
    SystemAssigned
    SystemAssigned
    UserAssigned
    UserAssigned
    SystemAssigned_UserAssigned
    SystemAssigned,UserAssigned
    NONE
    None
    SYSTEM_ASSIGNED
    SystemAssigned
    USER_ASSIGNED
    UserAssigned
    SYSTEM_ASSIGNED_USER_ASSIGNED
    SystemAssigned,UserAssigned
    "None"
    None
    "SystemAssigned"
    SystemAssigned
    "UserAssigned"
    UserAssigned
    "SystemAssigned,UserAssigned"
    SystemAssigned,UserAssigned

    MarketSetPricesItems, MarketSetPricesItemsArgs

    Items in the MarketSetPrices array.
    Currency string
    The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code.
    Markets List<string>
    Value double
    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 string
    The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code.
    Markets []string
    Value float64
    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 String
    The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code.
    markets List<String>
    value Double
    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 string
    The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code.
    markets string[]
    value number
    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 str
    The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code.
    markets Sequence[str]
    value float
    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 String
    The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code.
    markets List<String>
    value Number
    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.

    MarketSetPricesItemsResponse, MarketSetPricesItemsResponseArgs

    Items in the MarketSetPrices array.
    Currency string
    The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code.
    Markets List<string>
    Value double
    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 string
    The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code.
    Markets []string
    Value float64
    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 String
    The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code.
    markets List<String>
    value Double
    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 string
    The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code.
    markets string[]
    value number
    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 str
    The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code.
    markets Sequence[str]
    value float
    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 String
    The currency of the locked price value. Validation: Required. Must be a valid ISO 4217 3-letter currency code.
    markets List<String>
    value Number
    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.

    Plan, PlanArgs

    Plan for the resource.
    Name string
    A user defined name of the 3rd Party Artifact that is being procured.
    Product string
    The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
    Publisher string
    The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
    PromotionCode string
    A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
    Version string
    The version of the desired product/artifact.
    Name string
    A user defined name of the 3rd Party Artifact that is being procured.
    Product string
    The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
    Publisher string
    The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
    PromotionCode string
    A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
    Version string
    The version of the desired product/artifact.
    name String
    A user defined name of the 3rd Party Artifact that is being procured.
    product String
    The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
    publisher String
    The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
    promotionCode String
    A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
    version String
    The version of the desired product/artifact.
    name string
    A user defined name of the 3rd Party Artifact that is being procured.
    product string
    The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
    publisher string
    The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
    promotionCode string
    A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
    version string
    The version of the desired product/artifact.
    name str
    A user defined name of the 3rd Party Artifact that is being procured.
    product str
    The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
    publisher str
    The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
    promotion_code str
    A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
    version str
    The version of the desired product/artifact.
    name String
    A user defined name of the 3rd Party Artifact that is being procured.
    product String
    The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
    publisher String
    The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
    promotionCode String
    A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
    version String
    The version of the desired product/artifact.

    PlanResponse, PlanResponseArgs

    Plan for the resource.
    Name string
    A user defined name of the 3rd Party Artifact that is being procured.
    Product string
    The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
    Publisher string
    The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
    PromotionCode string
    A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
    Version string
    The version of the desired product/artifact.
    Name string
    A user defined name of the 3rd Party Artifact that is being procured.
    Product string
    The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
    Publisher string
    The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
    PromotionCode string
    A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
    Version string
    The version of the desired product/artifact.
    name String
    A user defined name of the 3rd Party Artifact that is being procured.
    product String
    The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
    publisher String
    The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
    promotionCode String
    A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
    version String
    The version of the desired product/artifact.
    name string
    A user defined name of the 3rd Party Artifact that is being procured.
    product string
    The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
    publisher string
    The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
    promotionCode string
    A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
    version string
    The version of the desired product/artifact.
    name str
    A user defined name of the 3rd Party Artifact that is being procured.
    product str
    The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
    publisher str
    The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
    promotion_code str
    A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
    version str
    The version of the desired product/artifact.
    name String
    A user defined name of the 3rd Party Artifact that is being procured.
    product String
    The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
    publisher String
    The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
    promotionCode String
    A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
    version String
    The version of the desired product/artifact.

    PriceGuaranteeProperties, PriceGuaranteePropertiesArgs

    Set only in price guarantee scenario.
    PriceGuaranteeDate string
    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.
    PricingPolicy string | Pulumi.AzureNative.BillingBenefits.PricingPolicy
    Supported values: Protected, Locked
    PriceGuaranteeDate string
    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.
    PricingPolicy string | PricingPolicy
    Supported values: Protected, Locked
    priceGuaranteeDate String
    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.
    pricingPolicy String | PricingPolicy
    Supported values: Protected, Locked
    priceGuaranteeDate string
    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.
    pricingPolicy string | PricingPolicy
    Supported values: Protected, Locked
    price_guarantee_date str
    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.
    pricing_policy str | PricingPolicy
    Supported values: Protected, Locked
    priceGuaranteeDate String
    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.
    pricingPolicy String | "Protected" | "Locked"
    Supported values: Protected, Locked

    PriceGuaranteePropertiesResponse, PriceGuaranteePropertiesResponseArgs

    Set only in price guarantee scenario.
    PriceGuaranteeDate string
    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.
    PricingPolicy string
    Supported values: Protected, Locked
    PriceGuaranteeDate string
    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.
    PricingPolicy string
    Supported values: Protected, Locked
    priceGuaranteeDate String
    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.
    pricingPolicy String
    Supported values: Protected, Locked
    priceGuaranteeDate string
    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.
    pricingPolicy string
    Supported values: Protected, Locked
    price_guarantee_date str
    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.
    pricing_policy str
    Supported values: Protected, Locked
    priceGuaranteeDate String
    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.
    pricingPolicy String
    Supported values: Protected, Locked

    PricingPolicy, PricingPolicyArgs

    Protected
    Protected
    Locked
    Locked
    PricingPolicyProtected
    Protected
    PricingPolicyLocked
    Locked
    Protected
    Protected
    Locked
    Locked
    Protected
    Protected
    Locked
    Locked
    PROTECTED
    Protected
    LOCKED
    Locked
    "Protected"
    Protected
    "Locked"
    Locked

    Sku, SkuArgs

    The resource model definition representing SKU
    Name string
    The name of the SKU. E.g. P3. It is typically a letter+number code
    Capacity int
    If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
    Family string
    If the service has different generations of hardware, for the same SKU, then that can be captured here.
    Size string
    The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
    Tier Pulumi.AzureNative.BillingBenefits.SkuTier
    This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
    Name string
    The name of the SKU. E.g. P3. It is typically a letter+number code
    Capacity int
    If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
    Family string
    If the service has different generations of hardware, for the same SKU, then that can be captured here.
    Size string
    The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
    Tier SkuTier
    This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
    name String
    The name of the SKU. E.g. P3. It is typically a letter+number code
    capacity Integer
    If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
    family String
    If the service has different generations of hardware, for the same SKU, then that can be captured here.
    size String
    The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
    tier SkuTier
    This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
    name string
    The name of the SKU. E.g. P3. It is typically a letter+number code
    capacity number
    If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
    family string
    If the service has different generations of hardware, for the same SKU, then that can be captured here.
    size string
    The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
    tier SkuTier
    This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
    name str
    The name of the SKU. E.g. P3. It is typically a letter+number code
    capacity int
    If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
    family str
    If the service has different generations of hardware, for the same SKU, then that can be captured here.
    size str
    The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
    tier SkuTier
    This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
    name String
    The name of the SKU. E.g. P3. It is typically a letter+number code
    capacity Number
    If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
    family String
    If the service has different generations of hardware, for the same SKU, then that can be captured here.
    size String
    The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
    tier "Free" | "Basic" | "Standard" | "Premium"
    This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.

    SkuResponse, SkuResponseArgs

    The resource model definition representing SKU
    Name string
    The name of the SKU. E.g. P3. It is typically a letter+number code
    Capacity int
    If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
    Family string
    If the service has different generations of hardware, for the same SKU, then that can be captured here.
    Size string
    The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
    Tier string
    This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
    Name string
    The name of the SKU. E.g. P3. It is typically a letter+number code
    Capacity int
    If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
    Family string
    If the service has different generations of hardware, for the same SKU, then that can be captured here.
    Size string
    The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
    Tier string
    This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
    name String
    The name of the SKU. E.g. P3. It is typically a letter+number code
    capacity Integer
    If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
    family String
    If the service has different generations of hardware, for the same SKU, then that can be captured here.
    size String
    The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
    tier String
    This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
    name string
    The name of the SKU. E.g. P3. It is typically a letter+number code
    capacity number
    If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
    family string
    If the service has different generations of hardware, for the same SKU, then that can be captured here.
    size string
    The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
    tier string
    This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
    name str
    The name of the SKU. E.g. P3. It is typically a letter+number code
    capacity int
    If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
    family str
    If the service has different generations of hardware, for the same SKU, then that can be captured here.
    size str
    The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
    tier str
    This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
    name String
    The name of the SKU. E.g. P3. It is typically a letter+number code
    capacity Number
    If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
    family String
    If the service has different generations of hardware, for the same SKU, then that can be captured here.
    size String
    The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
    tier String
    This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.

    SkuTier, SkuTierArgs

    Free
    Free
    Basic
    Basic
    Standard
    Standard
    Premium
    Premium
    SkuTierFree
    Free
    SkuTierBasic
    Basic
    SkuTierStandard
    Standard
    SkuTierPremium
    Premium
    Free
    Free
    Basic
    Basic
    Standard
    Standard
    Premium
    Premium
    Free
    Free
    Basic
    Basic
    Standard
    Standard
    Premium
    Premium
    FREE
    Free
    BASIC
    Basic
    STANDARD
    Standard
    PREMIUM
    Premium
    "Free"
    Free
    "Basic"
    Basic
    "Standard"
    Standard
    "Premium"
    Premium

    SystemDataResponse, SystemDataResponseArgs

    Metadata pertaining to creation and last modification of the resource.
    CreatedAt string
    The timestamp of resource creation (UTC).
    CreatedBy string
    The identity that created the resource.
    CreatedByType string
    The type of identity that created the resource.
    LastModifiedAt string
    The timestamp of resource last modification (UTC)
    LastModifiedBy string
    The identity that last modified the resource.
    LastModifiedByType string
    The type of identity that last modified the resource.
    CreatedAt string
    The timestamp of resource creation (UTC).
    CreatedBy string
    The identity that created the resource.
    CreatedByType string
    The type of identity that created the resource.
    LastModifiedAt string
    The timestamp of resource last modification (UTC)
    LastModifiedBy string
    The identity that last modified the resource.
    LastModifiedByType string
    The type of identity that last modified the resource.
    createdAt String
    The timestamp of resource creation (UTC).
    createdBy String
    The identity that created the resource.
    createdByType String
    The type of identity that created the resource.
    lastModifiedAt String
    The timestamp of resource last modification (UTC)
    lastModifiedBy String
    The identity that last modified the resource.
    lastModifiedByType String
    The type of identity that last modified the resource.
    createdAt string
    The timestamp of resource creation (UTC).
    createdBy string
    The identity that created the resource.
    createdByType string
    The type of identity that created the resource.
    lastModifiedAt string
    The timestamp of resource last modification (UTC)
    lastModifiedBy string
    The identity that last modified the resource.
    lastModifiedByType string
    The type of identity that last modified the resource.
    created_at str
    The timestamp of resource creation (UTC).
    created_by str
    The identity that created the resource.
    created_by_type str
    The type of identity that created the resource.
    last_modified_at str
    The timestamp of resource last modification (UTC)
    last_modified_by str
    The identity that last modified the resource.
    last_modified_by_type str
    The type of identity that last modified the resource.
    createdAt String
    The timestamp of resource creation (UTC).
    createdBy String
    The identity that created the resource.
    createdByType String
    The type of identity that created the resource.
    lastModifiedAt String
    The timestamp of resource last modification (UTC)
    lastModifiedBy String
    The identity that last modified the resource.
    lastModifiedByType String
    The type of identity that last modified the resource.

    UserAssignedIdentityResponse, UserAssignedIdentityResponseArgs

    User assigned identity properties
    ClientId string
    The client ID of the assigned identity.
    PrincipalId string
    The principal ID of the assigned identity.
    ClientId string
    The client ID of the assigned identity.
    PrincipalId string
    The principal ID of the assigned identity.
    clientId String
    The client ID of the assigned identity.
    principalId String
    The principal ID of the assigned identity.
    clientId string
    The client ID of the assigned identity.
    principalId string
    The principal ID of the assigned identity.
    client_id str
    The client ID of the assigned identity.
    principal_id str
    The principal ID of the assigned identity.
    clientId String
    The client ID of the assigned identity.
    principalId String
    The principal ID of the assigned identity.

    Import

    An existing resource can be imported using its type token, name, and identifier, e.g.

    $ pulumi import azure-native:billingbenefits:Discount testprimarydiscount /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BillingBenefits/discounts/{discountName} 
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Azure Native pulumi/pulumi-azure-native
    License
    Apache-2.0
    azure-native logo
    This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
    Azure Native v3.10.1 published on Friday, Nov 7, 2025 by Pulumi
      Meet Neo: Your AI Platform Teammate