[ aws . budgets ]



Creates a budget action.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.


--account-id <value>
--budget-name <value>
--notification-type <value>
--action-type <value>
--action-threshold <value>
--definition <value>
--execution-role-arn <value>
--approval-model <value>
--subscribers <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]


--account-id (string)

The account ID of the user. It’s a 12-digit number.

--budget-name (string)

A string that represents the budget name. The “:” and “” characters aren’t allowed.

--notification-type (string)

The type of a notification. It must be ACTUAL or FORECASTED.

Possible values:



--action-type (string)

The 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.

Possible values:




--action-threshold (structure)

The trigger threshold of the action.

ActionThresholdValue -> (double)

The threshold of a notification.

ActionThresholdType -> (string)

The type of threshold for a notification.

Shorthand Syntax:


JSON Syntax:

  "ActionThresholdValue": double,
  "ActionThresholdType": "PERCENTAGE"|"ABSOLUTE_VALUE"

--definition (structure)

Specifies all of the type-specific parameters.

IamActionDefinition -> (structure)

The Identity and Access Management (IAM) action definition details.

PolicyArn -> (string)

The Amazon Resource Name (ARN) of the policy to be attached.

Roles -> (list)

A list of roles to be attached. There must be at least one role.


Groups -> (list)

A list of groups to be attached. There must be at least one group.


Users -> (list)

A list of users to be attached. There must be at least one user.


ScpActionDefinition -> (structure)

The service control policies (SCPs) action definition details.

PolicyId -> (string)

The policy ID attached.

TargetIds -> (list)

A list of target IDs.


SsmActionDefinition -> (structure)

The Amazon Web Services Systems Manager (SSM) action definition details.

ActionSubType -> (string)

The action subType.

Region -> (string)

The Region to run the SSM document.

InstanceIds -> (list)

The EC2 and RDS instance IDs.


Shorthand Syntax:


JSON Syntax:

  "IamActionDefinition": {
    "PolicyArn": "string",
    "Roles": ["string", ...],
    "Groups": ["string", ...],
    "Users": ["string", ...]
  "ScpActionDefinition": {
    "PolicyId": "string",
    "TargetIds": ["string", ...]
  "SsmActionDefinition": {
    "Region": "string",
    "InstanceIds": ["string", ...]

--execution-role-arn (string)

The role passed for action execution and reversion. Roles and actions must be in the same account.

--approval-model (string)

This specifies if the action needs manual or automatic approval.

Possible values:



--subscribers (list)

A list of subscribers.


The subscriber to a budget notification. The subscriber consists of a subscription type and either an Amazon SNS topic or an email address.

For example, an email subscriber has the following parameters:

  • A subscriptionType of EMAIL

  • An address of example@example.com

SubscriptionType -> (string)

The type of notification that Amazon Web Services sends to a subscriber.

Address -> (string)

The address that Amazon Web Services sends budget notifications to, either an SNS topic or an email.

When you create a subscriber, the value of Address can’t contain line breaks.

Shorthand Syntax:

SubscriptionType=string,Address=string ...

JSON Syntax:

    "SubscriptionType": "SNS"|"EMAIL",
    "Address": "string"

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See ‘aws help’ for descriptions of global parameters.


AccountId -> (string)

The account ID of the user. It’s a 12-digit number.

BudgetName -> (string)

A string that represents the budget name. The “:” and “” characters aren’t allowed.

ActionId -> (string)

A system-generated universally unique identifier (UUID) for the action.