New-AzConsumptionBudget

Create a budget in either a subscription or a resource group.

Syntax

New-AzConsumptionBudget
   [-DefaultProfile <IAzureContextContainer>]
   -Name <String>
   -Amount <Decimal>
   -Category <String>
   -TimeGrain <String>
   -StartDate <DateTime>
   [-EndDate <DateTime>]
   [-ResourceGroupName <String>]
   [-MeterFilter <String[]>]
   [-ResourceFilter <String[]>]
   [-ResourceGroupFilter <String[]>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzConsumptionBudget
   [-DefaultProfile <IAzureContextContainer>]
   -Name <String>
   -Amount <Decimal>
   -Category <String>
   -TimeGrain <String>
   -StartDate <DateTime>
   [-EndDate <DateTime>]
   [-ResourceGroupName <String>]
   [-MeterFilter <String[]>]
   [-ResourceFilter <String[]>]
   [-ResourceGroupFilter <String[]>]
   -NotificationKey <String>
   [-NotificationEnabled]
   -NotificationThreshold <Decimal>
   -ContactEmail <String[]>
   [-ContactGroup <String[]>]
   [-ContactRole <String[]>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

The New-AzConsumptionBudget cmdlet creates a budget in either a subscription or a resource group.

Examples

Example 1: Create a cost budget with a budget name at subscription level

New-AzConsumptionBudget -Amount 60 -Name PSBudget -Category Cost -StartDate 2018-06-01 -EndDate 2018-11-01 -TimeGrain Monthly

Amount:  60		
Category:  Cost
CurrentSpend:  null
Id:  subscriptions/1caaa5a3-2b66-438e-8ab4-bce37d518c5d/providers/Microsoft.Consumption/budgets/PSBudget
Name:  PSBudget
TimeGrain:  Monthly
TimePeriod:  EndDate:  11/1/2018 12:00:00 AM
             StartDate:  6/1/2018 12:00:00 AM
Type:  Microsoft.Consumption/budgets

Example 2: Create a cost budget with a budget name at resource group level

New-AzConsumptionBudget -ResourceGroupName RGBudgets -Amount 60 -Name PSBudgetRG -Category Cost -StartDate 2018-06-01 -EndDate 2018-11-01 -TimeGrain Monthly

Amount:  60		
Category:  Cost
CurrentSpend:  null
Id:  subscriptions/1caaa5a3-2b66-438e-8ab4-bce37d518c5d/resourceGroups/RGBudgets/providers/Microsoft.Consumption/budgets/PSBudgetRG
Name:  PSBudgetRG
TimeGrain:  Monthly
TimePeriod:  EndDate:  11/1/2018 12:00:00 AM
             StartDate:  6/1/2018 12:00:00 AM
Type:  Microsoft.Consumption/budgets

Parameters

-Amount

Amount of a budget.

Type:Decimal
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Category

Category of the budget can be cost or usage.

Type:String
Accepted values:Cost, Usage
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ContactEmail

Email addresses to send the budget notification to when the threshold is exceeded.

Type:String[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ContactGroup

Action groups to send the budget notification to when the threshold is exceeded.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ContactRole

Contact roles to send the budget notification to when the threshold is exceeded.

Type:String[]
Accepted values:Owner, Reader, Contributor
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

The credentials, account, tenant, and subscription used for communication with Azure.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EndDate

End date (YYYY-MM-DD in UTC) of time period of a budget.

Type:Nullable<T>[DateTime]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MeterFilter

Comma-separated list of meters to filter on. Required if category is usage.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Name of a budget.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NotificationEnabled

The notification is enabled or not.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NotificationKey

Key of a notification associated with a budget, required to create a notification with notification enabled switch, notification threshold, contact emails, contact groups, or contact roles.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NotificationThreshold

Threshold value associated with a notification. Notification is sent when the cost or usage exceeded the threshold. It is always percent and has to be between 0 and 1000.

Type:Nullable<T>[Decimal]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ResourceFilter

Comma-separated list of resource instances to filter on.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupFilter

Comma-separated list of resource groups to filter on.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

Resource Group of a budget.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StartDate

Start date (YYYY-MM-DD in UTC) of time period of a budget. Not prior to current month for monthly time grain. Not prior to three months for quarterly time grain. Not prior to twelve months for yearly time grain. Future start date not more than three months.

Type:Nullable<T>[DateTime]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-TimeGrain

Time grain of the budget can be monthly, quarterly, or annually.

Type:String
Accepted values:Monthly, Quarterly, Annually
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Inputs

None

Outputs

PSBudget

Notes

  • Currently, PowerShell SDK for Consumption is only available to Enterprise Agreement customers.
  • PowerShell SDK for Consumption is using an older version of Budgets API and few backwards non-compatible items like listing Budgets with filters will not work as expected.