published on Tuesday, Sep 22, 2026 by Pulumi
published on Tuesday, Sep 22, 2026 by Pulumi
Provides a budget action resource. Budget actions are cost savings controls that run either automatically on your behalf or by using a workflow approval process.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = aws.iam.getPolicyDocument({
statements: [{
effect: "Allow",
actions: ["ec2:Describe*"],
resources: ["*"],
}],
});
const examplePolicy = new aws.iam.Policy("example", {
name: "example",
description: "My example policy",
policy: example.then(example => example.json),
});
const current = aws.getPartition({});
const assumeRole = current.then(current => aws.iam.getPolicyDocument({
statements: [{
principals: [{
type: "Service",
identifiers: [`budgets.${current.dnsSuffix}`],
}],
effect: "Allow",
actions: ["sts:AssumeRole"],
}],
}));
const exampleRole = new aws.iam.Role("example", {
name: "example",
assumeRolePolicy: assumeRole.then(assumeRole => assumeRole.json),
});
const exampleBudget = new aws.budgets.Budget("example", {
name: "example",
budgetType: "USAGE",
limitAmount: "10.0",
limitUnit: "dollars",
timePeriodStart: "2006-01-02_15:04",
timeUnit: "MONTHLY",
});
const exampleBudgetAction = new aws.budgets.BudgetAction("example", {
actionThreshold: {
actionThresholdType: "ABSOLUTE_VALUE",
actionThresholdValue: 100,
},
definition: {
iamActionDefinition: {
policyArn: examplePolicy.arn,
roles: [exampleRole.name],
},
},
subscribers: [{
address: "example@example.example",
subscriptionType: "EMAIL",
}],
budgetName: exampleBudget.name,
actionType: "APPLY_IAM_POLICY",
approvalModel: "AUTOMATIC",
notificationType: "ACTUAL",
executionRoleArn: exampleRole.arn,
tags: {
Tag1: "Value1",
Tag2: "Value2",
},
});
import pulumi
import pulumi_aws as aws
example = aws.iam.get_policy_document(statements=[{
"effect": "Allow",
"actions": ["ec2:Describe*"],
"resources": ["*"],
}])
example_policy = aws.iam.Policy("example",
name="example",
description="My example policy",
policy=example.json)
current = aws.get_partition()
assume_role = aws.iam.get_policy_document(statements=[{
"principals": [{
"type": "Service",
"identifiers": [f"budgets.{current.dns_suffix}"],
}],
"effect": "Allow",
"actions": ["sts:AssumeRole"],
}])
example_role = aws.iam.Role("example",
name="example",
assume_role_policy=assume_role.json)
example_budget = aws.budgets.Budget("example",
name="example",
budget_type="USAGE",
limit_amount="10.0",
limit_unit="dollars",
time_period_start="2006-01-02_15:04",
time_unit="MONTHLY")
example_budget_action = aws.budgets.BudgetAction("example",
action_threshold={
"action_threshold_type": "ABSOLUTE_VALUE",
"action_threshold_value": float(100),
},
definition={
"iam_action_definition": {
"policy_arn": example_policy.arn,
"roles": [example_role.name],
},
},
subscribers=[{
"address": "example@example.example",
"subscription_type": "EMAIL",
}],
budget_name=example_budget.name,
action_type="APPLY_IAM_POLICY",
approval_model="AUTOMATIC",
notification_type="ACTUAL",
execution_role_arn=example_role.arn,
tags={
"Tag1": "Value1",
"Tag2": "Value2",
})
package main
import (
"fmt"
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/budgets"
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/iam"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{
Statements: []iam.GetPolicyDocumentStatement{
{
Effect: pulumi.StringRef("Allow"),
Actions: []string{
"ec2:Describe*",
},
Resources: []string{
"*",
},
},
},
}, nil)
if err != nil {
return err
}
examplePolicy, err := iam.NewPolicy(ctx, "example", &iam.PolicyArgs{
Name: pulumi.String("example"),
Description: pulumi.String("My example policy"),
Policy: pulumi.String(example.Json),
})
if err != nil {
return err
}
current, err := aws.GetPartition(ctx, &aws.GetPartitionArgs{}, nil)
if err != nil {
return err
}
assumeRole, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{
Statements: []iam.GetPolicyDocumentStatement{
{
Principals: []iam.GetPolicyDocumentStatementPrincipal{
{
Type: "Service",
Identifiers: []string{
fmt.Sprintf("budgets.%v", current.DnsSuffix),
},
},
},
Effect: pulumi.StringRef("Allow"),
Actions: []string{
"sts:AssumeRole",
},
},
},
}, nil)
if err != nil {
return err
}
exampleRole, err := iam.NewRole(ctx, "example", &iam.RoleArgs{
Name: pulumi.String("example"),
AssumeRolePolicy: pulumi.String(assumeRole.Json),
})
if err != nil {
return err
}
exampleBudget, err := budgets.NewBudget(ctx, "example", &budgets.BudgetArgs{
Name: pulumi.String("example"),
BudgetType: pulumi.String("USAGE"),
LimitAmount: pulumi.String("10.0"),
LimitUnit: pulumi.String("dollars"),
TimePeriodStart: pulumi.String("2006-01-02_15:04"),
TimeUnit: pulumi.String("MONTHLY"),
})
if err != nil {
return err
}
_, err = budgets.NewBudgetAction(ctx, "example", &budgets.BudgetActionArgs{
ActionThreshold: &budgets.BudgetActionActionThresholdArgs{
ActionThresholdType: pulumi.String("ABSOLUTE_VALUE"),
ActionThresholdValue: pulumi.Float64(100),
},
Definition: &budgets.BudgetActionDefinitionArgs{
IamActionDefinition: &budgets.BudgetActionDefinitionIamActionDefinitionArgs{
PolicyArn: examplePolicy.Arn,
Roles: pulumi.StringArray{
exampleRole.Name,
},
},
},
Subscribers: budgets.BudgetActionSubscriberArray{
&budgets.BudgetActionSubscriberArgs{
Address: pulumi.String("example@example.example"),
SubscriptionType: pulumi.String("EMAIL"),
},
},
BudgetName: exampleBudget.Name,
ActionType: pulumi.String("APPLY_IAM_POLICY"),
ApprovalModel: pulumi.String("AUTOMATIC"),
NotificationType: pulumi.String("ACTUAL"),
ExecutionRoleArn: exampleRole.Arn,
Tags: pulumi.StringMap{
"Tag1": pulumi.String("Value1"),
"Tag2": pulumi.String("Value2"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = Aws.Iam.GetPolicyDocument.Invoke(new()
{
Statements = new[]
{
new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs
{
Effect = "Allow",
Actions = new[]
{
"ec2:Describe*",
},
Resources = new[]
{
"*",
},
},
},
});
var examplePolicy = new Aws.Iam.Policy("example", new()
{
Name = "example",
Description = "My example policy",
PolicyDocument = example.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json),
});
var current = Aws.GetPartition.Invoke();
var assumeRole = Aws.Iam.GetPolicyDocument.Invoke(new()
{
Statements = new[]
{
new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs
{
Principals = new[]
{
new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalInputArgs
{
Type = "Service",
Identifiers = new[]
{
$"budgets.{current.Apply(getPartitionResult => getPartitionResult.DnsSuffix)}",
},
},
},
Effect = "Allow",
Actions = new[]
{
"sts:AssumeRole",
},
},
},
});
var exampleRole = new Aws.Iam.Role("example", new()
{
Name = "example",
AssumeRolePolicy = assumeRole.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json),
});
var exampleBudget = new Aws.Budgets.Budget("example", new()
{
Name = "example",
BudgetType = "USAGE",
LimitAmount = "10.0",
LimitUnit = "dollars",
TimePeriodStart = "2006-01-02_15:04",
TimeUnit = "MONTHLY",
});
var exampleBudgetAction = new Aws.Budgets.BudgetAction("example", new()
{
ActionThreshold = new Aws.Budgets.Inputs.BudgetActionActionThresholdArgs
{
ActionThresholdType = "ABSOLUTE_VALUE",
ActionThresholdValue = 100,
},
Definition = new Aws.Budgets.Inputs.BudgetActionDefinitionArgs
{
IamActionDefinition = new Aws.Budgets.Inputs.BudgetActionDefinitionIamActionDefinitionArgs
{
PolicyArn = examplePolicy.Arn,
Roles = new[]
{
exampleRole.Name,
},
},
},
Subscribers = new[]
{
new Aws.Budgets.Inputs.BudgetActionSubscriberArgs
{
Address = "example@example.example",
SubscriptionType = "EMAIL",
},
},
BudgetName = exampleBudget.Name,
ActionType = "APPLY_IAM_POLICY",
ApprovalModel = "AUTOMATIC",
NotificationType = "ACTUAL",
ExecutionRoleArn = exampleRole.Arn,
Tags =
{
{ "Tag1", "Value1" },
{ "Tag2", "Value2" },
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.iam.IamFunctions;
import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs;
import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementArgs;
import com.pulumi.aws.iam.Policy;
import com.pulumi.aws.iam.PolicyArgs;
import com.pulumi.aws.AwsFunctions;
import com.pulumi.aws.inputs.GetPartitionArgs;
import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementPrincipalArgs;
import com.pulumi.aws.iam.Role;
import com.pulumi.aws.iam.RoleArgs;
import com.pulumi.aws.budgets.Budget;
import com.pulumi.aws.budgets.BudgetArgs;
import com.pulumi.aws.budgets.BudgetAction;
import com.pulumi.aws.budgets.BudgetActionArgs;
import com.pulumi.aws.budgets.inputs.BudgetActionActionThresholdArgs;
import com.pulumi.aws.budgets.inputs.BudgetActionDefinitionArgs;
import com.pulumi.aws.budgets.inputs.BudgetActionDefinitionIamActionDefinitionArgs;
import com.pulumi.aws.budgets.inputs.BudgetActionSubscriberArgs;
import java.util.ArrayList;
import java.util.Arrays;
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) {
final var example = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
.statements(GetPolicyDocumentStatementArgs.builder()
.effect("Allow")
.actions("ec2:Describe*")
.resources("*")
.build())
.build());
var examplePolicy = new Policy("examplePolicy", PolicyArgs.builder()
.name("example")
.description("My example policy")
.policy(example.json())
.build());
final var current = AwsFunctions.getPartition(GetPartitionArgs.builder()
.build());
final var assumeRole = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
.statements(GetPolicyDocumentStatementArgs.builder()
.principals(GetPolicyDocumentStatementPrincipalArgs.builder()
.type("Service")
.identifiers(String.format("budgets.%s", current.dnsSuffix()))
.build())
.effect("Allow")
.actions("sts:AssumeRole")
.build())
.build());
var exampleRole = new Role("exampleRole", RoleArgs.builder()
.name("example")
.assumeRolePolicy(assumeRole.json())
.build());
var exampleBudget = new Budget("exampleBudget", BudgetArgs.builder()
.name("example")
.budgetType("USAGE")
.limitAmount("10.0")
.limitUnit("dollars")
.timePeriodStart("2006-01-02_15:04")
.timeUnit("MONTHLY")
.build());
var exampleBudgetAction = new BudgetAction("exampleBudgetAction", BudgetActionArgs.builder()
.actionThreshold(BudgetActionActionThresholdArgs.builder()
.actionThresholdType("ABSOLUTE_VALUE")
.actionThresholdValue(100.0)
.build())
.definition(BudgetActionDefinitionArgs.builder()
.iamActionDefinition(BudgetActionDefinitionIamActionDefinitionArgs.builder()
.policyArn(examplePolicy.arn())
.roles(exampleRole.name())
.build())
.build())
.subscribers(BudgetActionSubscriberArgs.builder()
.address("example@example.example")
.subscriptionType("EMAIL")
.build())
.budgetName(exampleBudget.name())
.actionType("APPLY_IAM_POLICY")
.approvalModel("AUTOMATIC")
.notificationType("ACTUAL")
.executionRoleArn(exampleRole.arn())
.tags(Map.ofEntries(
Map.entry("Tag1", "Value1"),
Map.entry("Tag2", "Value2")
))
.build());
}
}
resources:
exampleBudgetAction:
type: aws:budgets:BudgetAction
name: example
properties:
actionThreshold:
actionThresholdType: ABSOLUTE_VALUE
actionThresholdValue: 100
definition:
iamActionDefinition:
policyArn: ${examplePolicy.arn}
roles:
- ${exampleRole.name}
subscribers:
- address: example@example.example
subscriptionType: EMAIL
budgetName: ${exampleBudget.name}
actionType: APPLY_IAM_POLICY
approvalModel: AUTOMATIC
notificationType: ACTUAL
executionRoleArn: ${exampleRole.arn}
tags:
Tag1: Value1
Tag2: Value2
examplePolicy:
type: aws:iam:Policy
name: example
properties:
name: example
description: My example policy
policy: ${example.json}
exampleRole:
type: aws:iam:Role
name: example
properties:
name: example
assumeRolePolicy: ${assumeRole.json}
exampleBudget:
type: aws:budgets:Budget
name: example
properties:
name: example
budgetType: USAGE
limitAmount: '10.0'
limitUnit: dollars
timePeriodStart: 2006-01-02_15:04
timeUnit: MONTHLY
variables:
example:
fn::invoke:
function: aws:iam:getPolicyDocument
arguments:
statements:
- effect: Allow
actions:
- ec2:Describe*
resources:
- '*'
current:
fn::invoke:
function: aws:getPartition
arguments: {}
assumeRole:
fn::invoke:
function: aws:iam:getPolicyDocument
arguments:
statements:
- principals:
- type: Service
identifiers:
- budgets.${current.dnsSuffix}
effect: Allow
actions:
- sts:AssumeRole
pulumi {
required_providers {
aws = {
source = "pulumi/aws"
}
}
}
data "aws_iam_getpolicydocument" "example" {
statements {
effect = "Allow"
actions = ["ec2:Describe*"]
resources = ["*"]
}
}
data "aws_getpartition" "current" {
}
data "aws_iam_getpolicydocument" "assumeRole" {
statements {
principals {
type = "Service"
identifiers = ["budgets.${data.aws_getpartition.current.dns_suffix}"]
}
effect = "Allow"
actions = ["sts:AssumeRole"]
}
}
resource "aws_budgets_budgetaction" "example" {
action_threshold = {
action_threshold_type = "ABSOLUTE_VALUE"
action_threshold_value = 100
}
definition = {
iam_action_definition = {
policy_arn = aws_iam_policy.example.arn
roles = [aws_iam_role.example.name]
}
}
subscribers {
address = "example@example.example"
subscription_type = "EMAIL"
}
budget_name = aws_budgets_budget.example.name
action_type = "APPLY_IAM_POLICY"
approval_model = "AUTOMATIC"
notification_type = "ACTUAL"
execution_role_arn = aws_iam_role.example.arn
tags = {
"Tag1" = "Value1"
"Tag2" = "Value2"
}
}
resource "aws_iam_policy" "example" {
name = "example"
description = "My example policy"
policy = data.aws_iam_getpolicydocument.example.json
}
resource "aws_iam_role" "example" {
name = "example"
assume_role_policy = data.aws_iam_getpolicydocument.assumeRole.json
}
resource "aws_budgets_budget" "example" {
name = "example"
budget_type = "USAGE"
limit_amount = "10.0"
limit_unit = "dollars"
time_period_start = "2006-01-02_15:04"
time_unit = "MONTHLY"
}
Create BudgetAction Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new BudgetAction(name: string, args: BudgetActionArgs, opts?: CustomResourceOptions);@overload
def BudgetAction(resource_name: str,
args: BudgetActionArgs,
opts: Optional[ResourceOptions] = None)
@overload
def BudgetAction(resource_name: str,
opts: Optional[ResourceOptions] = None,
action_threshold: Optional[BudgetActionActionThresholdArgs] = None,
action_type: Optional[str] = None,
approval_model: Optional[str] = None,
budget_name: Optional[str] = None,
definition: Optional[BudgetActionDefinitionArgs] = None,
execution_role_arn: Optional[str] = None,
notification_type: Optional[str] = None,
subscribers: Optional[Sequence[BudgetActionSubscriberArgs]] = None,
account_id: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None)func NewBudgetAction(ctx *Context, name string, args BudgetActionArgs, opts ...ResourceOption) (*BudgetAction, error)public BudgetAction(string name, BudgetActionArgs args, CustomResourceOptions? opts = null)
public BudgetAction(String name, BudgetActionArgs args)
public BudgetAction(String name, BudgetActionArgs args, CustomResourceOptions options)
type: aws:budgets:BudgetAction
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "aws_budgets_budget_action" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args BudgetActionArgs
- 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 BudgetActionArgs
- 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 BudgetActionArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args BudgetActionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args BudgetActionArgs
- 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 budgetActionResource = new Aws.Budgets.BudgetAction("budgetActionResource", new()
{
ActionThreshold = new Aws.Budgets.Inputs.BudgetActionActionThresholdArgs
{
ActionThresholdType = "string",
ActionThresholdValue = 0.0,
},
ActionType = "string",
ApprovalModel = "string",
BudgetName = "string",
Definition = new Aws.Budgets.Inputs.BudgetActionDefinitionArgs
{
IamActionDefinition = new Aws.Budgets.Inputs.BudgetActionDefinitionIamActionDefinitionArgs
{
PolicyArn = "string",
Groups = new[]
{
"string",
},
Roles = new[]
{
"string",
},
Users = new[]
{
"string",
},
},
ScpActionDefinition = new Aws.Budgets.Inputs.BudgetActionDefinitionScpActionDefinitionArgs
{
PolicyId = "string",
TargetIds = new[]
{
"string",
},
},
SsmActionDefinition = new Aws.Budgets.Inputs.BudgetActionDefinitionSsmActionDefinitionArgs
{
ActionSubType = "string",
InstanceIds = new[]
{
"string",
},
Region = "string",
},
},
ExecutionRoleArn = "string",
NotificationType = "string",
Subscribers = new[]
{
new Aws.Budgets.Inputs.BudgetActionSubscriberArgs
{
Address = "string",
SubscriptionType = "string",
},
},
AccountId = "string",
Tags =
{
{ "string", "string" },
},
});
example, err := budgets.NewBudgetAction(ctx, "budgetActionResource", &budgets.BudgetActionArgs{
ActionThreshold: &budgets.BudgetActionActionThresholdArgs{
ActionThresholdType: pulumi.String("string"),
ActionThresholdValue: pulumi.Float64(0),
},
ActionType: pulumi.String("string"),
ApprovalModel: pulumi.String("string"),
BudgetName: pulumi.String("string"),
Definition: &budgets.BudgetActionDefinitionArgs{
IamActionDefinition: &budgets.BudgetActionDefinitionIamActionDefinitionArgs{
PolicyArn: pulumi.String("string"),
Groups: pulumi.StringArray{
pulumi.String("string"),
},
Roles: pulumi.StringArray{
pulumi.String("string"),
},
Users: pulumi.StringArray{
pulumi.String("string"),
},
},
ScpActionDefinition: &budgets.BudgetActionDefinitionScpActionDefinitionArgs{
PolicyId: pulumi.String("string"),
TargetIds: pulumi.StringArray{
pulumi.String("string"),
},
},
SsmActionDefinition: &budgets.BudgetActionDefinitionSsmActionDefinitionArgs{
ActionSubType: pulumi.String("string"),
InstanceIds: pulumi.StringArray{
pulumi.String("string"),
},
Region: pulumi.String("string"),
},
},
ExecutionRoleArn: pulumi.String("string"),
NotificationType: pulumi.String("string"),
Subscribers: budgets.BudgetActionSubscriberArray{
&budgets.BudgetActionSubscriberArgs{
Address: pulumi.String("string"),
SubscriptionType: pulumi.String("string"),
},
},
AccountId: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
})
resource "aws_budgets_budget_action" "budgetActionResource" {
lifecycle {
create_before_destroy = true
}
action_threshold = {
action_threshold_type = "string"
action_threshold_value = 0
}
action_type = "string"
approval_model = "string"
budget_name = "string"
definition = {
iam_action_definition = {
policy_arn = "string"
groups = ["string"]
roles = ["string"]
users = ["string"]
}
scp_action_definition = {
policy_id = "string"
target_ids = ["string"]
}
ssm_action_definition = {
action_sub_type = "string"
instance_ids = ["string"]
region = "string"
}
}
execution_role_arn = "string"
notification_type = "string"
subscribers {
address = "string"
subscription_type = "string"
}
account_id = "string"
tags = {
"string" = "string"
}
}
var budgetActionResource = new BudgetAction("budgetActionResource", BudgetActionArgs.builder()
.actionThreshold(BudgetActionActionThresholdArgs.builder()
.actionThresholdType("string")
.actionThresholdValue(0.0)
.build())
.actionType("string")
.approvalModel("string")
.budgetName("string")
.definition(BudgetActionDefinitionArgs.builder()
.iamActionDefinition(BudgetActionDefinitionIamActionDefinitionArgs.builder()
.policyArn("string")
.groups("string")
.roles("string")
.users("string")
.build())
.scpActionDefinition(BudgetActionDefinitionScpActionDefinitionArgs.builder()
.policyId("string")
.targetIds("string")
.build())
.ssmActionDefinition(BudgetActionDefinitionSsmActionDefinitionArgs.builder()
.actionSubType("string")
.instanceIds("string")
.region("string")
.build())
.build())
.executionRoleArn("string")
.notificationType("string")
.subscribers(BudgetActionSubscriberArgs.builder()
.address("string")
.subscriptionType("string")
.build())
.accountId("string")
.tags(Map.of("string", "string"))
.build());
budget_action_resource = aws.budgets.BudgetAction("budgetActionResource",
action_threshold={
"action_threshold_type": "string",
"action_threshold_value": float(0),
},
action_type="string",
approval_model="string",
budget_name="string",
definition={
"iam_action_definition": {
"policy_arn": "string",
"groups": ["string"],
"roles": ["string"],
"users": ["string"],
},
"scp_action_definition": {
"policy_id": "string",
"target_ids": ["string"],
},
"ssm_action_definition": {
"action_sub_type": "string",
"instance_ids": ["string"],
"region": "string",
},
},
execution_role_arn="string",
notification_type="string",
subscribers=[{
"address": "string",
"subscription_type": "string",
}],
account_id="string",
tags={
"string": "string",
})
const budgetActionResource = new aws.budgets.BudgetAction("budgetActionResource", {
actionThreshold: {
actionThresholdType: "string",
actionThresholdValue: 0,
},
actionType: "string",
approvalModel: "string",
budgetName: "string",
definition: {
iamActionDefinition: {
policyArn: "string",
groups: ["string"],
roles: ["string"],
users: ["string"],
},
scpActionDefinition: {
policyId: "string",
targetIds: ["string"],
},
ssmActionDefinition: {
actionSubType: "string",
instanceIds: ["string"],
region: "string",
},
},
executionRoleArn: "string",
notificationType: "string",
subscribers: [{
address: "string",
subscriptionType: "string",
}],
accountId: "string",
tags: {
string: "string",
},
});
type: aws:budgets:BudgetAction
properties:
accountId: string
actionThreshold:
actionThresholdType: string
actionThresholdValue: 0
actionType: string
approvalModel: string
budgetName: string
definition:
iamActionDefinition:
groups:
- string
policyArn: string
roles:
- string
users:
- string
scpActionDefinition:
policyId: string
targetIds:
- string
ssmActionDefinition:
actionSubType: string
instanceIds:
- string
region: string
executionRoleArn: string
notificationType: string
subscribers:
- address: string
subscriptionType: string
tags:
string: string
BudgetAction 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 BudgetAction resource accepts the following input properties:
- Action
Threshold BudgetAction Action Threshold - Trigger threshold of the action. See
actionThresholdBlock. - Action
Type string - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - Approval
Model string - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - Budget
Name string - Name of a budget.
- Definition
Budget
Action Definition - Type-specific parameters. See
definitionBlock. - Execution
Role stringArn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- Notification
Type string - Type of a notification. Valid values are
ACTUALorFORECASTED. - Subscribers
List<Budget
Action Subscriber> - Set of subscribers. See
subscriberBlock. - Account
Id string - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- Dictionary<string, string>
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- Action
Threshold BudgetAction Action Threshold Args - Trigger threshold of the action. See
actionThresholdBlock. - Action
Type string - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - Approval
Model string - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - Budget
Name string - Name of a budget.
- Definition
Budget
Action Definition Args - Type-specific parameters. See
definitionBlock. - Execution
Role stringArn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- Notification
Type string - Type of a notification. Valid values are
ACTUALorFORECASTED. - Subscribers
[]Budget
Action Subscriber Args - Set of subscribers. See
subscriberBlock. - Account
Id string - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- map[string]string
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- action_
threshold object - Trigger threshold of the action. See
actionThresholdBlock. - action_
type string - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - approval_
model string - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - budget_
name string - Name of a budget.
- definition object
- Type-specific parameters. See
definitionBlock. - execution_
role_ stringarn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- notification_
type string - Type of a notification. Valid values are
ACTUALorFORECASTED. - subscribers list(object)
- Set of subscribers. See
subscriberBlock. - account_
id string - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- map(string)
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- action
Threshold BudgetAction Action Threshold - Trigger threshold of the action. See
actionThresholdBlock. - action
Type String - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - approval
Model String - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - budget
Name String - Name of a budget.
- definition
Budget
Action Definition - Type-specific parameters. See
definitionBlock. - execution
Role StringArn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- notification
Type String - Type of a notification. Valid values are
ACTUALorFORECASTED. - subscribers
List<Budget
Action Subscriber> - Set of subscribers. See
subscriberBlock. - account
Id String - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- Map<String,String>
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- action
Threshold BudgetAction Action Threshold - Trigger threshold of the action. See
actionThresholdBlock. - action
Type string - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - approval
Model string - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - budget
Name string - Name of a budget.
- definition
Budget
Action Definition - Type-specific parameters. See
definitionBlock. - execution
Role stringArn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- notification
Type string - Type of a notification. Valid values are
ACTUALorFORECASTED. - subscribers
Budget
Action Subscriber[] - Set of subscribers. See
subscriberBlock. - account
Id string - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- {[key: string]: string}
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- action_
threshold BudgetAction Action Threshold Args - Trigger threshold of the action. See
actionThresholdBlock. - action_
type str - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - approval_
model str - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - budget_
name str - Name of a budget.
- definition
Budget
Action Definition Args - Type-specific parameters. See
definitionBlock. - execution_
role_ strarn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- notification_
type str - Type of a notification. Valid values are
ACTUALorFORECASTED. - subscribers
Sequence[Budget
Action Subscriber Args] - Set of subscribers. See
subscriberBlock. - account_
id str - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- Mapping[str, str]
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- action
Threshold Property Map - Trigger threshold of the action. See
actionThresholdBlock. - action
Type String - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - approval
Model String - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - budget
Name String - Name of a budget.
- definition Property Map
- Type-specific parameters. See
definitionBlock. - execution
Role StringArn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- notification
Type String - Type of a notification. Valid values are
ACTUALorFORECASTED. - subscribers List<Property Map>
- Set of subscribers. See
subscriberBlock. - account
Id String - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- Map<String>
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
Outputs
All input properties are implicitly available as output properties. Additionally, the BudgetAction resource produces the following output properties:
- Action
Id string - ID of the budget action.
- Arn string
- ARN of the budget action.
- Id string
- The provider-assigned unique ID for this managed resource.
- Status string
- Status of the budget action.
- Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- Action
Id string - ID of the budget action.
- Arn string
- ARN of the budget action.
- Id string
- The provider-assigned unique ID for this managed resource.
- Status string
- Status of the budget action.
- map[string]string
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- action_
id string - ID of the budget action.
- arn string
- ARN of the budget action.
- id string
- The provider-assigned unique ID for this managed resource.
- status string
- Status of the budget action.
- map(string)
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- action
Id String - ID of the budget action.
- arn String
- ARN of the budget action.
- id String
- The provider-assigned unique ID for this managed resource.
- status String
- Status of the budget action.
- Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- action
Id string - ID of the budget action.
- arn string
- ARN of the budget action.
- id string
- The provider-assigned unique ID for this managed resource.
- status string
- Status of the budget action.
- {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- action_
id str - ID of the budget action.
- arn str
- ARN of the budget action.
- id str
- The provider-assigned unique ID for this managed resource.
- status str
- Status of the budget action.
- Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- action
Id String - ID of the budget action.
- arn String
- ARN of the budget action.
- id String
- The provider-assigned unique ID for this managed resource.
- status String
- Status of the budget action.
- Map<String>
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
Look up Existing BudgetAction Resource
Get an existing BudgetAction resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: BudgetActionState, opts?: CustomResourceOptions): BudgetAction@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
account_id: Optional[str] = None,
action_id: Optional[str] = None,
action_threshold: Optional[BudgetActionActionThresholdArgs] = None,
action_type: Optional[str] = None,
approval_model: Optional[str] = None,
arn: Optional[str] = None,
budget_name: Optional[str] = None,
definition: Optional[BudgetActionDefinitionArgs] = None,
execution_role_arn: Optional[str] = None,
notification_type: Optional[str] = None,
status: Optional[str] = None,
subscribers: Optional[Sequence[BudgetActionSubscriberArgs]] = None,
tags: Optional[Mapping[str, str]] = None,
tags_all: Optional[Mapping[str, str]] = None) -> BudgetActionfunc GetBudgetAction(ctx *Context, name string, id IDInput, state *BudgetActionState, opts ...ResourceOption) (*BudgetAction, error)public static BudgetAction Get(string name, Input<string> id, BudgetActionState? state, CustomResourceOptions? opts = null)public static BudgetAction get(String name, Output<String> id, BudgetActionState state, CustomResourceOptions options)resources: _: type: aws:budgets:BudgetAction get: id: ${id}import {
to = aws_budgets_budget_action.example
id = "${id}"
}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Account
Id string - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- Action
Id string - ID of the budget action.
- Action
Threshold BudgetAction Action Threshold - Trigger threshold of the action. See
actionThresholdBlock. - Action
Type string - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - Approval
Model string - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - Arn string
- ARN of the budget action.
- Budget
Name string - Name of a budget.
- Definition
Budget
Action Definition - Type-specific parameters. See
definitionBlock. - Execution
Role stringArn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- Notification
Type string - Type of a notification. Valid values are
ACTUALorFORECASTED. - Status string
- Status of the budget action.
- Subscribers
List<Budget
Action Subscriber> - Set of subscribers. See
subscriberBlock. - Dictionary<string, string>
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- Account
Id string - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- Action
Id string - ID of the budget action.
- Action
Threshold BudgetAction Action Threshold Args - Trigger threshold of the action. See
actionThresholdBlock. - Action
Type string - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - Approval
Model string - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - Arn string
- ARN of the budget action.
- Budget
Name string - Name of a budget.
- Definition
Budget
Action Definition Args - Type-specific parameters. See
definitionBlock. - Execution
Role stringArn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- Notification
Type string - Type of a notification. Valid values are
ACTUALorFORECASTED. - Status string
- Status of the budget action.
- Subscribers
[]Budget
Action Subscriber Args - Set of subscribers. See
subscriberBlock. - map[string]string
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - map[string]string
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- account_
id string - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- action_
id string - ID of the budget action.
- action_
threshold object - Trigger threshold of the action. See
actionThresholdBlock. - action_
type string - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - approval_
model string - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - arn string
- ARN of the budget action.
- budget_
name string - Name of a budget.
- definition object
- Type-specific parameters. See
definitionBlock. - execution_
role_ stringarn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- notification_
type string - Type of a notification. Valid values are
ACTUALorFORECASTED. - status string
- Status of the budget action.
- subscribers list(object)
- Set of subscribers. See
subscriberBlock. - map(string)
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - map(string)
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- account
Id String - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- action
Id String - ID of the budget action.
- action
Threshold BudgetAction Action Threshold - Trigger threshold of the action. See
actionThresholdBlock. - action
Type String - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - approval
Model String - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - arn String
- ARN of the budget action.
- budget
Name String - Name of a budget.
- definition
Budget
Action Definition - Type-specific parameters. See
definitionBlock. - execution
Role StringArn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- notification
Type String - Type of a notification. Valid values are
ACTUALorFORECASTED. - status String
- Status of the budget action.
- subscribers
List<Budget
Action Subscriber> - Set of subscribers. See
subscriberBlock. - Map<String,String>
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- account
Id string - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- action
Id string - ID of the budget action.
- action
Threshold BudgetAction Action Threshold - Trigger threshold of the action. See
actionThresholdBlock. - action
Type string - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - approval
Model string - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - arn string
- ARN of the budget action.
- budget
Name string - Name of a budget.
- definition
Budget
Action Definition - Type-specific parameters. See
definitionBlock. - execution
Role stringArn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- notification
Type string - Type of a notification. Valid values are
ACTUALorFORECASTED. - status string
- Status of the budget action.
- subscribers
Budget
Action Subscriber[] - Set of subscribers. See
subscriberBlock. - {[key: string]: string}
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- account_
id str - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- action_
id str - ID of the budget action.
- action_
threshold BudgetAction Action Threshold Args - Trigger threshold of the action. See
actionThresholdBlock. - action_
type str - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - approval_
model str - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - arn str
- ARN of the budget action.
- budget_
name str - Name of a budget.
- definition
Budget
Action Definition Args - Type-specific parameters. See
definitionBlock. - execution_
role_ strarn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- notification_
type str - Type of a notification. Valid values are
ACTUALorFORECASTED. - status str
- Status of the budget action.
- subscribers
Sequence[Budget
Action Subscriber Args] - Set of subscribers. See
subscriberBlock. - Mapping[str, str]
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- account
Id String - ID of the target account for the budget. Uses the current user's account ID by default if omitted.
- action
Id String - ID of the budget action.
- action
Threshold Property Map - Trigger threshold of the action. See
actionThresholdBlock. - action
Type String - Type of action. This defines the type of tasks that can be carried out by this action. This field also determines the format for definition. Valid values are
APPLY_IAM_POLICY,APPLY_SCP_POLICY, andRUN_SSM_DOCUMENTS. - approval
Model String - Whether the action needs manual or automatic approval. Valid values are
AUTOMATICandMANUAL. - arn String
- ARN of the budget action.
- budget
Name String - Name of a budget.
- definition Property Map
- Type-specific parameters. See
definitionBlock. - execution
Role StringArn - Role passed for action execution and reversion. Roles and actions must be in the same account.
- notification
Type String - Type of a notification. Valid values are
ACTUALorFORECASTED. - status String
- Status of the budget action.
- subscribers List<Property Map>
- Set of subscribers. See
subscriberBlock. - Map<String>
- Map of tags assigned to the resource. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String>
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
Supporting Types
BudgetActionActionThreshold, BudgetActionActionThresholdArgs
- Action
Threshold stringType - Type of threshold for a notification. Valid values are
PERCENTAGEorABSOLUTE_VALUE. - Action
Threshold doubleValue - Threshold of a notification.
- Action
Threshold stringType - Type of threshold for a notification. Valid values are
PERCENTAGEorABSOLUTE_VALUE. - Action
Threshold float64Value - Threshold of a notification.
- action_
threshold_ stringtype - Type of threshold for a notification. Valid values are
PERCENTAGEorABSOLUTE_VALUE. - action_
threshold_ numbervalue - Threshold of a notification.
- action
Threshold StringType - Type of threshold for a notification. Valid values are
PERCENTAGEorABSOLUTE_VALUE. - action
Threshold DoubleValue - Threshold of a notification.
- action
Threshold stringType - Type of threshold for a notification. Valid values are
PERCENTAGEorABSOLUTE_VALUE. - action
Threshold numberValue - Threshold of a notification.
- action_
threshold_ strtype - Type of threshold for a notification. Valid values are
PERCENTAGEorABSOLUTE_VALUE. - action_
threshold_ floatvalue - Threshold of a notification.
- action
Threshold StringType - Type of threshold for a notification. Valid values are
PERCENTAGEorABSOLUTE_VALUE. - action
Threshold NumberValue - Threshold of a notification.
BudgetActionDefinition, BudgetActionDefinitionArgs
- Iam
Action BudgetDefinition Action Definition Iam Action Definition - AWS Identity and Access Management (IAM) action definition details. See
iamActionDefinitionBlock. - Scp
Action BudgetDefinition Action Definition Scp Action Definition - Service control policies (SCPs) action definition details. See
scpActionDefinitionBlock. - Ssm
Action BudgetDefinition Action Definition Ssm Action Definition - AWS Systems Manager (SSM) action definition details. See
ssmActionDefinitionBlock.
- Iam
Action BudgetDefinition Action Definition Iam Action Definition - AWS Identity and Access Management (IAM) action definition details. See
iamActionDefinitionBlock. - Scp
Action BudgetDefinition Action Definition Scp Action Definition - Service control policies (SCPs) action definition details. See
scpActionDefinitionBlock. - Ssm
Action BudgetDefinition Action Definition Ssm Action Definition - AWS Systems Manager (SSM) action definition details. See
ssmActionDefinitionBlock.
- iam_
action_ objectdefinition - AWS Identity and Access Management (IAM) action definition details. See
iamActionDefinitionBlock. - scp_
action_ objectdefinition - Service control policies (SCPs) action definition details. See
scpActionDefinitionBlock. - ssm_
action_ objectdefinition - AWS Systems Manager (SSM) action definition details. See
ssmActionDefinitionBlock.
- iam
Action BudgetDefinition Action Definition Iam Action Definition - AWS Identity and Access Management (IAM) action definition details. See
iamActionDefinitionBlock. - scp
Action BudgetDefinition Action Definition Scp Action Definition - Service control policies (SCPs) action definition details. See
scpActionDefinitionBlock. - ssm
Action BudgetDefinition Action Definition Ssm Action Definition - AWS Systems Manager (SSM) action definition details. See
ssmActionDefinitionBlock.
- iam
Action BudgetDefinition Action Definition Iam Action Definition - AWS Identity and Access Management (IAM) action definition details. See
iamActionDefinitionBlock. - scp
Action BudgetDefinition Action Definition Scp Action Definition - Service control policies (SCPs) action definition details. See
scpActionDefinitionBlock. - ssm
Action BudgetDefinition Action Definition Ssm Action Definition - AWS Systems Manager (SSM) action definition details. See
ssmActionDefinitionBlock.
- iam_
action_ Budgetdefinition Action Definition Iam Action Definition - AWS Identity and Access Management (IAM) action definition details. See
iamActionDefinitionBlock. - scp_
action_ Budgetdefinition Action Definition Scp Action Definition - Service control policies (SCPs) action definition details. See
scpActionDefinitionBlock. - ssm_
action_ Budgetdefinition Action Definition Ssm Action Definition - AWS Systems Manager (SSM) action definition details. See
ssmActionDefinitionBlock.
- iam
Action Property MapDefinition - AWS Identity and Access Management (IAM) action definition details. See
iamActionDefinitionBlock. - scp
Action Property MapDefinition - Service control policies (SCPs) action definition details. See
scpActionDefinitionBlock. - ssm
Action Property MapDefinition - AWS Systems Manager (SSM) action definition details. See
ssmActionDefinitionBlock.
BudgetActionDefinitionIamActionDefinition, BudgetActionDefinitionIamActionDefinitionArgs
- policy_
arn string - ARN of the policy to be attached.
- groups list(string)
- List of groups to be attached. There must be at least one group.
- roles list(string)
- List of roles to be attached. There must be at least one role.
- users list(string)
- List of users to be attached. There must be at least one user.
- policy_
arn str - ARN of the policy to be attached.
- groups Sequence[str]
- List of groups to be attached. There must be at least one group.
- roles Sequence[str]
- List of roles to be attached. There must be at least one role.
- users Sequence[str]
- List of users to be attached. There must be at least one user.
BudgetActionDefinitionScpActionDefinition, BudgetActionDefinitionScpActionDefinitionArgs
- policy_
id string - Policy ID attached.
- target_
ids list(string) - List of target IDs.
- policy_
id str - Policy ID attached.
- target_
ids Sequence[str] - List of target IDs.
BudgetActionDefinitionSsmActionDefinition, BudgetActionDefinitionSsmActionDefinitionArgs
- Action
Sub stringType - Action subType. Valid values are
STOP_EC2_INSTANCESorSTOP_RDS_INSTANCES. - Instance
Ids List<string> - EC2 and RDS instance IDs.
- Region string
- Region to run the SSM document.
- Action
Sub stringType - Action subType. Valid values are
STOP_EC2_INSTANCESorSTOP_RDS_INSTANCES. - Instance
Ids []string - EC2 and RDS instance IDs.
- Region string
- Region to run the SSM document.
- action_
sub_ stringtype - Action subType. Valid values are
STOP_EC2_INSTANCESorSTOP_RDS_INSTANCES. - instance_
ids list(string) - EC2 and RDS instance IDs.
- region string
- Region to run the SSM document.
- action
Sub StringType - Action subType. Valid values are
STOP_EC2_INSTANCESorSTOP_RDS_INSTANCES. - instance
Ids List<String> - EC2 and RDS instance IDs.
- region String
- Region to run the SSM document.
- action
Sub stringType - Action subType. Valid values are
STOP_EC2_INSTANCESorSTOP_RDS_INSTANCES. - instance
Ids string[] - EC2 and RDS instance IDs.
- region string
- Region to run the SSM document.
- action_
sub_ strtype - Action subType. Valid values are
STOP_EC2_INSTANCESorSTOP_RDS_INSTANCES. - instance_
ids Sequence[str] - EC2 and RDS instance IDs.
- region str
- Region to run the SSM document.
- action
Sub StringType - Action subType. Valid values are
STOP_EC2_INSTANCESorSTOP_RDS_INSTANCES. - instance
Ids List<String> - EC2 and RDS instance IDs.
- region String
- Region to run the SSM document.
BudgetActionSubscriber, BudgetActionSubscriberArgs
- Address string
- Address that AWS sends budget notifications to, either an SNS topic or an email.
- Subscription
Type string - Type of notification that AWS sends to a subscriber. Valid values are
SNSorEMAIL.
- Address string
- Address that AWS sends budget notifications to, either an SNS topic or an email.
- Subscription
Type string - Type of notification that AWS sends to a subscriber. Valid values are
SNSorEMAIL.
- address string
- Address that AWS sends budget notifications to, either an SNS topic or an email.
- subscription_
type string - Type of notification that AWS sends to a subscriber. Valid values are
SNSorEMAIL.
- address String
- Address that AWS sends budget notifications to, either an SNS topic or an email.
- subscription
Type String - Type of notification that AWS sends to a subscriber. Valid values are
SNSorEMAIL.
- address string
- Address that AWS sends budget notifications to, either an SNS topic or an email.
- subscription
Type string - Type of notification that AWS sends to a subscriber. Valid values are
SNSorEMAIL.
- address str
- Address that AWS sends budget notifications to, either an SNS topic or an email.
- subscription_
type str - Type of notification that AWS sends to a subscriber. Valid values are
SNSorEMAIL.
- address String
- Address that AWS sends budget notifications to, either an SNS topic or an email.
- subscription
Type String - Type of notification that AWS sends to a subscriber. Valid values are
SNSorEMAIL.
Import
Using pulumi import, import budget actions using AccountID:ActionID:BudgetName. For example:
$ pulumi import aws:budgets/budgetAction:BudgetAction myBudget 123456789012:some-id:myBudget
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
awsTerraform Provider.
published on Tuesday, Sep 22, 2026 by Pulumi