CreateBudgetAction
Creates a budget action.
Request Syntax
{
"AccountId": "string
",
"ActionThreshold": {
"ActionThresholdType": "string
",
"ActionThresholdValue": number
},
"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
",
"ResourceTags": [
{
"Key": "string
",
"Value": "string
"
}
],
"Subscribers": [
{
"Address": "string
",
"SubscriptionType": "string
"
}
]
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
- AccountId
-
The account ID of the user. It's a 12-digit number.
Type: String
Length Constraints: Fixed length of 12.
Pattern:
\d{12}
Required: Yes
- ActionThreshold
-
The trigger threshold of the action.
Type: ActionThreshold object
Required: Yes
- ActionType
-
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.
Type: String
Valid Values:
APPLY_IAM_POLICY | APPLY_SCP_POLICY | RUN_SSM_DOCUMENTS
Required: Yes
- ApprovalModel
-
This specifies if the action needs manual or automatic approval.
Type: String
Valid Values:
AUTOMATIC | MANUAL
Required: Yes
- BudgetName
-
A string that represents the budget name. The ":" and "\" characters, and the "/action/" substring, aren't allowed.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 100.
Pattern:
^(?![^:\\]*/action/|(?i).*<script>.*</script>.*)[^:\\]+$
Required: Yes
- Definition
-
Specifies all of the type-specific parameters.
Type: Definition object
Required: Yes
- ExecutionRoleArn
-
The role passed for action execution and reversion. Roles and actions must be in the same account.
Type: String
Length Constraints: Minimum length of 32. Maximum length of 618.
Pattern:
^arn:(aws|aws-cn|aws-us-gov|us-iso-east-1|us-isob-east-1):iam::\d{12}:role(\u002F[\u0021-\u007F]+\u002F|\u002F)[\w+=,.@-]+$
Required: Yes
- NotificationType
-
The type of a notification. It must be ACTUAL or FORECASTED.
Type: String
Valid Values:
ACTUAL | FORECASTED
Required: Yes
- ResourceTags
-
An optional list of tags to associate with the specified budget action. Each tag consists of a key and a value, and each key must be unique for the resource.
Type: Array of ResourceTag objects
Array Members: Minimum number of 0 items. Maximum number of 200 items.
Required: No
- Subscribers
-
A list of subscribers.
Type: Array of Subscriber objects
Array Members: Minimum number of 1 item. Maximum number of 11 items.
Required: Yes
Response Syntax
{
"AccountId": "string",
"ActionId": "string",
"BudgetName": "string"
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- AccountId
-
The account ID of the user. It's a 12-digit number.
Type: String
Length Constraints: Fixed length of 12.
Pattern:
\d{12}
- ActionId
-
A system-generated universally unique identifier (UUID) for the action.
Type: String
Length Constraints: Fixed length of 36.
Pattern:
^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$
- BudgetName
-
A string that represents the budget name. The ":" and "\" characters, and the "/action/" substring, aren't allowed.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 100.
Pattern:
^(?![^:\\]*/action/|(?i).*<script>.*</script>.*)[^:\\]+$
Errors
For information about the errors that are common to all actions, see Common Errors.
- AccessDeniedException
-
You are not authorized to use this operation with the given parameters.
HTTP Status Code: 400
- CreationLimitExceededException
-
You've exceeded the notification or subscriber limit.
HTTP Status Code: 400
- DuplicateRecordException
-
The budget name already exists. Budget names must be unique within an account.
HTTP Status Code: 400
- InternalErrorException
-
An error on the server occurred during the processing of your request. Try again later.
HTTP Status Code: 400
- InvalidParameterException
-
An error on the client occurred. Typically, the cause is an invalid input value.
HTTP Status Code: 400
- NotFoundException
-
We can’t locate the resource that you specified.
HTTP Status Code: 400
- ServiceQuotaExceededException
-
You've reached the limit on the number of tags you can associate with a resource.
HTTP Status Code: 400
- ThrottlingException
-
The number of API requests has exceeded the maximum allowed API request throttling limit for the account.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: