Welcome to Pulumi Registry, your window into the cloud. Read the announcement.

Azure Native

v1.47.0 published on Saturday, Nov 20, 2021 by Pulumi

Budget

A budget resource. API Version: 2019-10-01.

Example Usage

CreateOrUpdateBudget

using Pulumi;
using AzureNative = Pulumi.AzureNative;

class MyStack : Stack
{
    public MyStack()
    {
        var budget = new AzureNative.Consumption.Budget("budget", new AzureNative.Consumption.BudgetArgs
        {
            Amount = 100.65,
            BudgetName = "TestBudget",
            Category = "Cost",
            ETag = "\"1d34d016a593709\"",
            Filter = new AzureNative.Consumption.Inputs.BudgetFilterArgs
            {
                And = 
                {
                    new AzureNative.Consumption.Inputs.BudgetFilterPropertiesArgs
                    {
                        Dimensions = new AzureNative.Consumption.Inputs.BudgetComparisonExpressionArgs
                        {
                            Name = "ResourceId",
                            Operator = "In",
                            Values = 
                            {
                                "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
                                "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1",
                            },
                        },
                    },
                    new AzureNative.Consumption.Inputs.BudgetFilterPropertiesArgs
                    {
                        Tags = new AzureNative.Consumption.Inputs.BudgetComparisonExpressionArgs
                        {
                            Name = "category",
                            Operator = "In",
                            Values = 
                            {
                                "Dev",
                                "Prod",
                            },
                        },
                    },
                    new AzureNative.Consumption.Inputs.BudgetFilterPropertiesArgs
                    {
                        Tags = new AzureNative.Consumption.Inputs.BudgetComparisonExpressionArgs
                        {
                            Name = "department",
                            Operator = "In",
                            Values = 
                            {
                                "engineering",
                                "sales",
                            },
                        },
                    },
                },
            },
            Notifications = 
            {
                { "Actual_GreaterThan_80_Percent", new AzureNative.Consumption.Inputs.NotificationArgs
                {
                    ContactEmails = 
                    {
                        "johndoe@contoso.com",
                        "janesmith@contoso.com",
                    },
                    ContactGroups = 
                    {
                        "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup",
                    },
                    ContactRoles = 
                    {
                        "Contributor",
                        "Reader",
                    },
                    Enabled = true,
                    Locale = "en-us",
                    Operator = "GreaterThan",
                    Threshold = 80,
                    ThresholdType = "Actual",
                } },
            },
            Scope = "subscriptions/00000000-0000-0000-0000-000000000000",
            TimeGrain = "Monthly",
            TimePeriod = new AzureNative.Consumption.Inputs.BudgetTimePeriodArgs
            {
                EndDate = "2018-10-31T00:00:00Z",
                StartDate = "2017-10-01T00:00:00Z",
            },
        });
    }

}

package main

import (
	consumption "github.com/pulumi/pulumi-azure-native/sdk/go/azure/consumption"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := consumption.NewBudget(ctx, "budget", &consumption.BudgetArgs{
			Amount:     pulumi.Float64(100.65),
			BudgetName: pulumi.String("TestBudget"),
			Category:   pulumi.String("Cost"),
			ETag:       pulumi.String("\"1d34d016a593709\""),
			Filter: &consumption.BudgetFilterArgs{
				And: consumption.BudgetFilterPropertiesArray{
					&consumption.BudgetFilterPropertiesArgs{
						Dimensions: &consumption.BudgetComparisonExpressionArgs{
							Name:     pulumi.String("ResourceId"),
							Operator: pulumi.String("In"),
							Values: pulumi.StringArray{
								pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2"),
								pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"),
							},
						},
					},
					&consumption.BudgetFilterPropertiesArgs{
						Tags: &consumption.BudgetComparisonExpressionArgs{
							Name:     pulumi.String("category"),
							Operator: pulumi.String("In"),
							Values: pulumi.StringArray{
								pulumi.String("Dev"),
								pulumi.String("Prod"),
							},
						},
					},
					&consumption.BudgetFilterPropertiesArgs{
						Tags: &consumption.BudgetComparisonExpressionArgs{
							Name:     pulumi.String("department"),
							Operator: pulumi.String("In"),
							Values: pulumi.StringArray{
								pulumi.String("engineering"),
								pulumi.String("sales"),
							},
						},
					},
				},
			},
			Notifications: consumption.NotificationMap{
				"Actual_GreaterThan_80_Percent": &consumption.NotificationArgs{
					ContactEmails: pulumi.StringArray{
						pulumi.String("johndoe@contoso.com"),
						pulumi.String("janesmith@contoso.com"),
					},
					ContactGroups: pulumi.StringArray{
						pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"),
					},
					ContactRoles: pulumi.StringArray{
						pulumi.String("Contributor"),
						pulumi.String("Reader"),
					},
					Enabled:       pulumi.Bool(true),
					Locale:        pulumi.String("en-us"),
					Operator:      pulumi.String("GreaterThan"),
					Threshold:     pulumi.Float64(80),
					ThresholdType: pulumi.String("Actual"),
				},
			},
			Scope:     pulumi.String("subscriptions/00000000-0000-0000-0000-000000000000"),
			TimeGrain: pulumi.String("Monthly"),
			TimePeriod: &consumption.BudgetTimePeriodArgs{
				EndDate:   pulumi.String("2018-10-31T00:00:00Z"),
				StartDate: pulumi.String("2017-10-01T00:00:00Z"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

import pulumi
import pulumi_azure_native as azure_native

budget = azure_native.consumption.Budget("budget",
    amount=100.65,
    budget_name="TestBudget",
    category="Cost",
    e_tag="\"1d34d016a593709\"",
    filter=azure_native.consumption.BudgetFilterArgs(
        and_=[
            azure_native.consumption.BudgetFilterPropertiesArgs(
                dimensions=azure_native.consumption.BudgetComparisonExpressionArgs(
                    name="ResourceId",
                    operator="In",
                    values=[
                        "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
                        "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1",
                    ],
                ),
            ),
            azure_native.consumption.BudgetFilterPropertiesArgs(
                tags=azure_native.consumption.BudgetComparisonExpressionArgs(
                    name="category",
                    operator="In",
                    values=[
                        "Dev",
                        "Prod",
                    ],
                ),
            ),
            azure_native.consumption.BudgetFilterPropertiesArgs(
                tags=azure_native.consumption.BudgetComparisonExpressionArgs(
                    name="department",
                    operator="In",
                    values=[
                        "engineering",
                        "sales",
                    ],
                ),
            ),
        ],
    ),
    notifications={
        "Actual_GreaterThan_80_Percent": azure_native.consumption.NotificationArgs(
            contact_emails=[
                "johndoe@contoso.com",
                "janesmith@contoso.com",
            ],
            contact_groups=["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"],
            contact_roles=[
                "Contributor",
                "Reader",
            ],
            enabled=True,
            locale="en-us",
            operator="GreaterThan",
            threshold=80,
            threshold_type="Actual",
        ),
    },
    scope="subscriptions/00000000-0000-0000-0000-000000000000",
    time_grain="Monthly",
    time_period=azure_native.consumption.BudgetTimePeriodArgs(
        end_date="2018-10-31T00:00:00Z",
        start_date="2017-10-01T00:00:00Z",
    ))

import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const budget = new azure_native.consumption.Budget("budget", {
    amount: 100.65,
    budgetName: "TestBudget",
    category: "Cost",
    eTag: "\"1d34d016a593709\"",
    filter: {
        and: [
            {
                dimensions: {
                    name: "ResourceId",
                    operator: "In",
                    values: [
                        "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
                        "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1",
                    ],
                },
            },
            {
                tags: {
                    name: "category",
                    operator: "In",
                    values: [
                        "Dev",
                        "Prod",
                    ],
                },
            },
            {
                tags: {
                    name: "department",
                    operator: "In",
                    values: [
                        "engineering",
                        "sales",
                    ],
                },
            },
        ],
    },
    notifications: {
        Actual_GreaterThan_80_Percent: {
            contactEmails: [
                "johndoe@contoso.com",
                "janesmith@contoso.com",
            ],
            contactGroups: ["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"],
            contactRoles: [
                "Contributor",
                "Reader",
            ],
            enabled: true,
            locale: "en-us",
            operator: "GreaterThan",
            threshold: 80,
            thresholdType: "Actual",
        },
    },
    scope: "subscriptions/00000000-0000-0000-0000-000000000000",
    timeGrain: "Monthly",
    timePeriod: {
        endDate: "2018-10-31T00:00:00Z",
        startDate: "2017-10-01T00:00:00Z",
    },
});

Create a Budget Resource

new Budget(name: string, args: BudgetArgs, opts?: CustomResourceOptions);
@overload
def Budget(resource_name: str,
           opts: Optional[ResourceOptions] = None,
           amount: Optional[float] = None,
           budget_name: Optional[str] = None,
           category: Optional[Union[str, CategoryType]] = None,
           e_tag: Optional[str] = None,
           filter: Optional[BudgetFilterArgs] = None,
           notifications: Optional[Mapping[str, NotificationArgs]] = None,
           scope: Optional[str] = None,
           time_grain: Optional[Union[str, TimeGrainType]] = None,
           time_period: Optional[BudgetTimePeriodArgs] = None)
@overload
def Budget(resource_name: str,
           args: BudgetArgs,
           opts: Optional[ResourceOptions] = None)
func NewBudget(ctx *Context, name string, args BudgetArgs, opts ...ResourceOption) (*Budget, error)
public Budget(string name, BudgetArgs args, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args BudgetArgs
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 BudgetArgs
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 BudgetArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args BudgetArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

Budget Resource Properties

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

Inputs

The Budget resource accepts the following input properties:

Amount double
The total amount of cost to track with the budget
Category string | Pulumi.AzureNative.Consumption.CategoryType
The category of the budget, whether the budget tracks cost or usage.
Scope string
The scope associated with budget operations. This includes ‘/subscriptions/{subscriptionId}/’ for subscription scope, ‘/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}’ for resourceGroup scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}’ for Billing Account scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}’ for Department scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}’ for EnrollmentAccount scope, ‘/providers/Microsoft.Management/managementGroups/{managementGroupId}’ for Management Group scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}’ for billingProfile scope, ‘providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}’ for invoiceSection scope.
TimeGrain string | Pulumi.AzureNative.Consumption.TimeGrainType
The time covered by a budget. Tracking of the amount will be reset based on the time grain. BillingMonth, BillingQuarter, and BillingAnnual are only supported by WD customers
TimePeriod Pulumi.AzureNative.Consumption.Inputs.BudgetTimePeriodArgs
Has start and end date of the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. There are no restrictions on the end date.
BudgetName string
Budget Name.
ETag string
eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not.
Filter Pulumi.AzureNative.Consumption.Inputs.BudgetFilterArgs
May be used to filter budgets by user-specified dimensions and/or tags.
Notifications Dictionary<string, Pulumi.AzureNative.Consumption.Inputs.NotificationArgs>
Dictionary of notifications associated with the budget. Budget can have up to five notifications.
Amount float64
The total amount of cost to track with the budget
Category string | CategoryType
The category of the budget, whether the budget tracks cost or usage.
Scope string
The scope associated with budget operations. This includes ‘/subscriptions/{subscriptionId}/’ for subscription scope, ‘/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}’ for resourceGroup scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}’ for Billing Account scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}’ for Department scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}’ for EnrollmentAccount scope, ‘/providers/Microsoft.Management/managementGroups/{managementGroupId}’ for Management Group scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}’ for billingProfile scope, ‘providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}’ for invoiceSection scope.
TimeGrain string | TimeGrainType
The time covered by a budget. Tracking of the amount will be reset based on the time grain. BillingMonth, BillingQuarter, and BillingAnnual are only supported by WD customers
TimePeriod BudgetTimePeriodArgs
Has start and end date of the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. There are no restrictions on the end date.
BudgetName string
Budget Name.
ETag string
eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not.
Filter BudgetFilterArgs
May be used to filter budgets by user-specified dimensions and/or tags.
Notifications map[string]NotificationArgs
Dictionary of notifications associated with the budget. Budget can have up to five notifications.
amount number
The total amount of cost to track with the budget
category string | CategoryType
The category of the budget, whether the budget tracks cost or usage.
scope string
The scope associated with budget operations. This includes ‘/subscriptions/{subscriptionId}/’ for subscription scope, ‘/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}’ for resourceGroup scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}’ for Billing Account scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}’ for Department scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}’ for EnrollmentAccount scope, ‘/providers/Microsoft.Management/managementGroups/{managementGroupId}’ for Management Group scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}’ for billingProfile scope, ‘providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}’ for invoiceSection scope.
timeGrain string | TimeGrainType
The time covered by a budget. Tracking of the amount will be reset based on the time grain. BillingMonth, BillingQuarter, and BillingAnnual are only supported by WD customers
timePeriod BudgetTimePeriodArgs
Has start and end date of the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. There are no restrictions on the end date.
budgetName string
Budget Name.
eTag string
eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not.
filter BudgetFilterArgs
May be used to filter budgets by user-specified dimensions and/or tags.
notifications {[key: string]: NotificationArgs}
Dictionary of notifications associated with the budget. Budget can have up to five notifications.
amount float
The total amount of cost to track with the budget
category str | CategoryType
The category of the budget, whether the budget tracks cost or usage.
scope str
The scope associated with budget operations. This includes ‘/subscriptions/{subscriptionId}/’ for subscription scope, ‘/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}’ for resourceGroup scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}’ for Billing Account scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}’ for Department scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}’ for EnrollmentAccount scope, ‘/providers/Microsoft.Management/managementGroups/{managementGroupId}’ for Management Group scope, ‘/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}’ for billingProfile scope, ‘providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}’ for invoiceSection scope.
time_grain str | TimeGrainType
The time covered by a budget. Tracking of the amount will be reset based on the time grain. BillingMonth, BillingQuarter, and BillingAnnual are only supported by WD customers
time_period BudgetTimePeriodArgs
Has start and end date of the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. There are no restrictions on the end date.
budget_name str
Budget Name.
e_tag str
eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not.
filter BudgetFilterArgs
May be used to filter budgets by user-specified dimensions and/or tags.
notifications Mapping[str, NotificationArgs]
Dictionary of notifications associated with the budget. Budget can have up to five notifications.

Outputs

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

CurrentSpend Pulumi.AzureNative.Consumption.Outputs.CurrentSpendResponse
The current amount of cost which is being tracked for a budget.
ForecastSpend Pulumi.AzureNative.Consumption.Outputs.ForecastSpendResponse
The forecasted cost which is being tracked for a budget.
Id string
The provider-assigned unique ID for this managed resource.
Name string
Resource name.
Type string
Resource type.
CurrentSpend CurrentSpendResponse
The current amount of cost which is being tracked for a budget.
ForecastSpend ForecastSpendResponse
The forecasted cost which is being tracked for a budget.
Id string
The provider-assigned unique ID for this managed resource.
Name string
Resource name.
Type string
Resource type.
currentSpend CurrentSpendResponse
The current amount of cost which is being tracked for a budget.
forecastSpend ForecastSpendResponse
The forecasted cost which is being tracked for a budget.
id string
The provider-assigned unique ID for this managed resource.
name string
Resource name.
type string
Resource type.
current_spend CurrentSpendResponse
The current amount of cost which is being tracked for a budget.
forecast_spend ForecastSpendResponse
The forecasted cost which is being tracked for a budget.
id str
The provider-assigned unique ID for this managed resource.
name str
Resource name.
type str
Resource type.

Supporting Types

BudgetComparisonExpression

Name string
The name of the column to use in comparison.
Operator string | Pulumi.AzureNative.Consumption.BudgetOperatorType
The operator to use for comparison.
Values List<string>
Array of values to use for comparison
Name string
The name of the column to use in comparison.
Operator string | BudgetOperatorType
The operator to use for comparison.
Values []string
Array of values to use for comparison
name string
The name of the column to use in comparison.
operator string | BudgetOperatorType
The operator to use for comparison.
values string[]
Array of values to use for comparison
name str
The name of the column to use in comparison.
operator str | BudgetOperatorType
The operator to use for comparison.
values Sequence[str]
Array of values to use for comparison

BudgetComparisonExpressionResponse

Name string
The name of the column to use in comparison.
Operator string
The operator to use for comparison.
Values List<string>
Array of values to use for comparison
Name string
The name of the column to use in comparison.
Operator string
The operator to use for comparison.
Values []string
Array of values to use for comparison
name string
The name of the column to use in comparison.
operator string
The operator to use for comparison.
values string[]
Array of values to use for comparison
name str
The name of the column to use in comparison.
operator str
The operator to use for comparison.
values Sequence[str]
Array of values to use for comparison

BudgetFilter

And []BudgetFilterProperties
The logical “AND” expression. Must have at least 2 items.
Dimensions BudgetComparisonExpression
Has comparison expression for a dimension
Not BudgetFilterProperties
The logical “NOT” expression.
Tags BudgetComparisonExpression
Has comparison expression for a tag
and BudgetFilterProperties[]
The logical “AND” expression. Must have at least 2 items.
dimensions BudgetComparisonExpression
Has comparison expression for a dimension
not BudgetFilterProperties
The logical “NOT” expression.
tags BudgetComparisonExpression
Has comparison expression for a tag
and_ Sequence[BudgetFilterProperties]
The logical “AND” expression. Must have at least 2 items.
dimensions BudgetComparisonExpression
Has comparison expression for a dimension
not_ BudgetFilterProperties
The logical “NOT” expression.
tags BudgetComparisonExpression
Has comparison expression for a tag

BudgetFilterProperties

Dimensions BudgetComparisonExpression
Has comparison expression for a dimension
Tags BudgetComparisonExpression
Has comparison expression for a tag
dimensions BudgetComparisonExpression
Has comparison expression for a dimension
tags BudgetComparisonExpression
Has comparison expression for a tag
dimensions BudgetComparisonExpression
Has comparison expression for a dimension
tags BudgetComparisonExpression
Has comparison expression for a tag

BudgetFilterPropertiesResponse

Dimensions BudgetComparisonExpressionResponse
Has comparison expression for a dimension
Tags BudgetComparisonExpressionResponse
Has comparison expression for a tag
dimensions BudgetComparisonExpressionResponse
Has comparison expression for a dimension
tags BudgetComparisonExpressionResponse
Has comparison expression for a tag
dimensions BudgetComparisonExpressionResponse
Has comparison expression for a dimension
tags BudgetComparisonExpressionResponse
Has comparison expression for a tag

BudgetFilterResponse

And []BudgetFilterPropertiesResponse
The logical “AND” expression. Must have at least 2 items.
Dimensions BudgetComparisonExpressionResponse
Has comparison expression for a dimension
Not BudgetFilterPropertiesResponse
The logical “NOT” expression.
Tags BudgetComparisonExpressionResponse
Has comparison expression for a tag
and BudgetFilterPropertiesResponse[]
The logical “AND” expression. Must have at least 2 items.
dimensions BudgetComparisonExpressionResponse
Has comparison expression for a dimension
not BudgetFilterPropertiesResponse
The logical “NOT” expression.
tags BudgetComparisonExpressionResponse
Has comparison expression for a tag
and_ Sequence[BudgetFilterPropertiesResponse]
The logical “AND” expression. Must have at least 2 items.
dimensions BudgetComparisonExpressionResponse
Has comparison expression for a dimension
not_ BudgetFilterPropertiesResponse
The logical “NOT” expression.
tags BudgetComparisonExpressionResponse
Has comparison expression for a tag

BudgetOperatorType

In
In
BudgetOperatorTypeIn
In
In
In
IN_
In

BudgetTimePeriod

StartDate string
The start date for the budget.
EndDate string
The end date for the budget. If not provided, we default this to 10 years from the start date.
StartDate string
The start date for the budget.
EndDate string
The end date for the budget. If not provided, we default this to 10 years from the start date.
startDate string
The start date for the budget.
endDate string
The end date for the budget. If not provided, we default this to 10 years from the start date.
start_date str
The start date for the budget.
end_date str
The end date for the budget. If not provided, we default this to 10 years from the start date.

BudgetTimePeriodResponse

StartDate string
The start date for the budget.
EndDate string
The end date for the budget. If not provided, we default this to 10 years from the start date.
StartDate string
The start date for the budget.
EndDate string
The end date for the budget. If not provided, we default this to 10 years from the start date.
startDate string
The start date for the budget.
endDate string
The end date for the budget. If not provided, we default this to 10 years from the start date.
start_date str
The start date for the budget.
end_date str
The end date for the budget. If not provided, we default this to 10 years from the start date.

CategoryType

Cost
Cost
CategoryTypeCost
Cost
Cost
Cost
COST
Cost

CultureCode

En_us
en-us
Ja_jp
ja-jp
Zh_cn
zh-cn
De_de
de-de
Es_es
es-es
Fr_fr
fr-fr
It_it
it-it
Ko_kr
ko-kr
Pt_br
pt-br
Ru_ru
ru-ru
Zh_tw
zh-tw
Cs_cz
cs-cz
Pl_pl
pl-pl
Tr_tr
tr-tr
Da_dk
da-dk
En_gb
en-gb
Hu_hu
hu-hu
Nb_no
nb-no
Nl_nl
nl-nl
Pt_pt
pt-pt
Sv_se
sv-se
CultureCode_En_us
en-us
CultureCode_Ja_jp
ja-jp
CultureCode_Zh_cn
zh-cn
CultureCode_De_de
de-de
CultureCode_Es_es
es-es
CultureCode_Fr_fr
fr-fr
CultureCode_It_it
it-it
CultureCode_Ko_kr
ko-kr
CultureCode_Pt_br
pt-br
CultureCode_Ru_ru
ru-ru
CultureCode_Zh_tw
zh-tw
CultureCode_Cs_cz
cs-cz
CultureCode_Pl_pl
pl-pl
CultureCode_Tr_tr
tr-tr
CultureCode_Da_dk
da-dk
CultureCode_En_gb
en-gb
CultureCode_Hu_hu
hu-hu
CultureCode_Nb_no
nb-no
CultureCode_Nl_nl
nl-nl
CultureCode_Pt_pt
pt-pt
CultureCode_Sv_se
sv-se
En_us
en-us
Ja_jp
ja-jp
Zh_cn
zh-cn
De_de
de-de
Es_es
es-es
Fr_fr
fr-fr
It_it
it-it
Ko_kr
ko-kr
Pt_br
pt-br
Ru_ru
ru-ru
Zh_tw
zh-tw
Cs_cz
cs-cz
Pl_pl
pl-pl
Tr_tr
tr-tr
Da_dk
da-dk
En_gb
en-gb
Hu_hu
hu-hu
Nb_no
nb-no
Nl_nl
nl-nl
Pt_pt
pt-pt
Sv_se
sv-se
EN_US
en-us
JA_JP
ja-jp
ZH_CN
zh-cn
DE_DE
de-de
ES_ES
es-es
FR_FR
fr-fr
IT_IT
it-it
KO_KR
ko-kr
PT_BR
pt-br
RU_RU
ru-ru
ZH_TW
zh-tw
CS_CZ
cs-cz
PL_PL
pl-pl
TR_TR
tr-tr
DA_DK
da-dk
EN_GB
en-gb
HU_HU
hu-hu
NB_NO
nb-no
NL_NL
nl-nl
PT_PT
pt-pt
SV_SE
sv-se

CurrentSpendResponse

Amount double
The total amount of cost which is being tracked by the budget.
Unit string
The unit of measure for the budget amount.
Amount float64
The total amount of cost which is being tracked by the budget.
Unit string
The unit of measure for the budget amount.
amount number
The total amount of cost which is being tracked by the budget.
unit string
The unit of measure for the budget amount.
amount float
The total amount of cost which is being tracked by the budget.
unit str
The unit of measure for the budget amount.

ForecastSpendResponse

Amount double
The forecasted cost for the total time period which is being tracked by the budget. This value is only provided if the budget contains a forecast alert type.
Unit string
The unit of measure for the budget amount.
Amount float64
The forecasted cost for the total time period which is being tracked by the budget. This value is only provided if the budget contains a forecast alert type.
Unit string
The unit of measure for the budget amount.
amount number
The forecasted cost for the total time period which is being tracked by the budget. This value is only provided if the budget contains a forecast alert type.
unit string
The unit of measure for the budget amount.
amount float
The forecasted cost for the total time period which is being tracked by the budget. This value is only provided if the budget contains a forecast alert type.
unit str
The unit of measure for the budget amount.

Notification

ContactEmails List<string>
Email addresses to send the budget notification to when the threshold is exceeded. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.
Enabled bool
The notification is enabled or not.
Operator string | Pulumi.AzureNative.Consumption.OperatorType
The comparison operator.
Threshold double
Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.
ContactGroups List<string>
Action groups to send the budget notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id. Only supported at Subscription or Resource Group scopes.
ContactRoles List<string>
Contact roles to send the budget notification to when the threshold is exceeded.
Locale string | Pulumi.AzureNative.Consumption.CultureCode
Language in which the recipient will receive the notification
ThresholdType string | Pulumi.AzureNative.Consumption.ThresholdType
The type of threshold
ContactEmails []string
Email addresses to send the budget notification to when the threshold is exceeded. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.
Enabled bool
The notification is enabled or not.
Operator string | OperatorType
The comparison operator.
Threshold float64
Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.
ContactGroups []string
Action groups to send the budget notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id. Only supported at Subscription or Resource Group scopes.
ContactRoles []string
Contact roles to send the budget notification to when the threshold is exceeded.
Locale string | CultureCode
Language in which the recipient will receive the notification
ThresholdType string | ThresholdType
The type of threshold
contactEmails string[]
Email addresses to send the budget notification to when the threshold is exceeded. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.
enabled boolean
The notification is enabled or not.
operator string | OperatorType
The comparison operator.
threshold number
Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.
contactGroups string[]
Action groups to send the budget notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id. Only supported at Subscription or Resource Group scopes.
contactRoles string[]
Contact roles to send the budget notification to when the threshold is exceeded.
locale string | CultureCode
Language in which the recipient will receive the notification
thresholdType string | ThresholdType
The type of threshold
contact_emails Sequence[str]
Email addresses to send the budget notification to when the threshold is exceeded. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.
enabled bool
The notification is enabled or not.
operator str | OperatorType
The comparison operator.
threshold float
Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.
contact_groups Sequence[str]
Action groups to send the budget notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id. Only supported at Subscription or Resource Group scopes.
contact_roles Sequence[str]
Contact roles to send the budget notification to when the threshold is exceeded.
locale str | CultureCode
Language in which the recipient will receive the notification
threshold_type str | ThresholdType
The type of threshold

NotificationResponse

ContactEmails List<string>
Email addresses to send the budget notification to when the threshold is exceeded. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.
Enabled bool
The notification is enabled or not.
Operator string
The comparison operator.
Threshold double
Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.
ContactGroups List<string>
Action groups to send the budget notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id. Only supported at Subscription or Resource Group scopes.
ContactRoles List<string>
Contact roles to send the budget notification to when the threshold is exceeded.
Locale string
Language in which the recipient will receive the notification
ThresholdType string
The type of threshold
ContactEmails []string
Email addresses to send the budget notification to when the threshold is exceeded. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.
Enabled bool
The notification is enabled or not.
Operator string
The comparison operator.
Threshold float64
Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.
ContactGroups []string
Action groups to send the budget notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id. Only supported at Subscription or Resource Group scopes.
ContactRoles []string
Contact roles to send the budget notification to when the threshold is exceeded.
Locale string
Language in which the recipient will receive the notification
ThresholdType string
The type of threshold
contactEmails string[]
Email addresses to send the budget notification to when the threshold is exceeded. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.
enabled boolean
The notification is enabled or not.
operator string
The comparison operator.
threshold number
Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.
contactGroups string[]
Action groups to send the budget notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id. Only supported at Subscription or Resource Group scopes.
contactRoles string[]
Contact roles to send the budget notification to when the threshold is exceeded.
locale string
Language in which the recipient will receive the notification
thresholdType string
The type of threshold
contact_emails Sequence[str]
Email addresses to send the budget notification to when the threshold is exceeded. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.
enabled bool
The notification is enabled or not.
operator str
The comparison operator.
threshold float
Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.
contact_groups Sequence[str]
Action groups to send the budget notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id. Only supported at Subscription or Resource Group scopes.
contact_roles Sequence[str]
Contact roles to send the budget notification to when the threshold is exceeded.
locale str
Language in which the recipient will receive the notification
threshold_type str
The type of threshold

OperatorType

EqualTo
EqualTo
GreaterThan
GreaterThan
GreaterThanOrEqualTo
GreaterThanOrEqualTo
OperatorTypeEqualTo
EqualTo
OperatorTypeGreaterThan
GreaterThan
OperatorTypeGreaterThanOrEqualTo
GreaterThanOrEqualTo
EqualTo
EqualTo
GreaterThan
GreaterThan
GreaterThanOrEqualTo
GreaterThanOrEqualTo
EQUAL_TO
EqualTo
GREATER_THAN
GreaterThan
GREATER_THAN_OR_EQUAL_TO
GreaterThanOrEqualTo

ThresholdType

Actual
Actual
ThresholdTypeActual
Actual
Actual
Actual
ACTUAL
Actual

TimeGrainType

Monthly
Monthly
Quarterly
Quarterly
Annually
Annually
BillingMonth
BillingMonth
BillingQuarter
BillingQuarter
BillingAnnual
BillingAnnual
TimeGrainTypeMonthly
Monthly
TimeGrainTypeQuarterly
Quarterly
TimeGrainTypeAnnually
Annually
TimeGrainTypeBillingMonth
BillingMonth
TimeGrainTypeBillingQuarter
BillingQuarter
TimeGrainTypeBillingAnnual
BillingAnnual
Monthly
Monthly
Quarterly
Quarterly
Annually
Annually
BillingMonth
BillingMonth
BillingQuarter
BillingQuarter
BillingAnnual
BillingAnnual
MONTHLY
Monthly
QUARTERLY
Quarterly
ANNUALLY
Annually
BILLING_MONTH
BillingMonth
BILLING_QUARTER
BillingQuarter
BILLING_ANNUAL
BillingAnnual

Import

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

$ pulumi import azure-native:consumption:Budget TestBudget subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/budgets/TestBudget 

Package Details

Repository
https://github.com/pulumi/pulumi-azure-native
License
Apache-2.0