update_budget_action

update_budget_action(**kwargs)

Updates a budget action.

See also: AWS API Documentation

Request Syntax

response = client.update_budget_action(
    AccountId='string',
    BudgetName='string',
    ActionId='string',
    NotificationType='ACTUAL'|'FORECASTED',
    ActionThreshold={
        'ActionThresholdValue': 123.0,
        'ActionThresholdType': 'PERCENTAGE'|'ABSOLUTE_VALUE'
    },
    Definition={
        'IamActionDefinition': {
            'PolicyArn': 'string',
            'Roles': [
                'string',
            ],
            'Groups': [
                'string',
            ],
            'Users': [
                'string',
            ]
        },
        'ScpActionDefinition': {
            'PolicyId': 'string',
            'TargetIds': [
                'string',
            ]
        },
        'SsmActionDefinition': {
            'ActionSubType': 'STOP_EC2_INSTANCES'|'STOP_RDS_INSTANCES',
            'Region': 'string',
            'InstanceIds': [
                'string',
            ]
        }
    },
    ExecutionRoleArn='string',
    ApprovalModel='AUTOMATIC'|'MANUAL',
    Subscribers=[
        {
            'SubscriptionType': 'SNS'|'EMAIL',
            'Address': 'string'
        },
    ]
)
Parameters
  • AccountId (string) --

    [REQUIRED]

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

  • BudgetName (string) --

    [REQUIRED]

    A string that represents the budget name. The ":" and "" characters aren't allowed.

  • ActionId (string) --

    [REQUIRED]

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

  • NotificationType (string) -- The type of a notification. It must be ACTUAL or FORECASTED.
  • ActionThreshold (dict) --

    The trigger threshold of the action.

    • ActionThresholdValue (float) -- [REQUIRED]

      The threshold of a notification.

    • ActionThresholdType (string) -- [REQUIRED]

      The type of threshold for a notification.

  • Definition (dict) --

    Specifies all of the type-specific parameters.

    • IamActionDefinition (dict) --

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

      • PolicyArn (string) -- [REQUIRED]

        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.

        • (string) --
      • Groups (list) --

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

        • (string) --
      • Users (list) --

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

        • (string) --
    • ScpActionDefinition (dict) --

      The service control policies (SCPs) action definition details.

      • PolicyId (string) -- [REQUIRED]

        The policy ID attached.

      • TargetIds (list) -- [REQUIRED]

        A list of target IDs.

        • (string) --
    • SsmActionDefinition (dict) --

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

      • ActionSubType (string) -- [REQUIRED]

        The action subType.

      • Region (string) -- [REQUIRED]

        The Region to run the SSM document.

      • InstanceIds (list) -- [REQUIRED]

        The EC2 and RDS instance IDs.

        • (string) --
  • ExecutionRoleArn (string) -- The role passed for action execution and reversion. Roles and actions must be in the same account.
  • ApprovalModel (string) -- This specifies if the action needs manual or automatic approval.
  • Subscribers (list) --

    A list of subscribers.

    • (dict) --

      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) -- [REQUIRED]

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

      • Address (string) -- [REQUIRED]

        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.

Return type

dict

Returns

Response Syntax

{
    'AccountId': 'string',
    'BudgetName': 'string',
    'OldAction': {
        'ActionId': 'string',
        'BudgetName': 'string',
        'NotificationType': 'ACTUAL'|'FORECASTED',
        'ActionType': 'APPLY_IAM_POLICY'|'APPLY_SCP_POLICY'|'RUN_SSM_DOCUMENTS',
        'ActionThreshold': {
            'ActionThresholdValue': 123.0,
            'ActionThresholdType': 'PERCENTAGE'|'ABSOLUTE_VALUE'
        },
        'Definition': {
            'IamActionDefinition': {
                'PolicyArn': 'string',
                'Roles': [
                    'string',
                ],
                'Groups': [
                    'string',
                ],
                'Users': [
                    'string',
                ]
            },
            'ScpActionDefinition': {
                'PolicyId': 'string',
                'TargetIds': [
                    'string',
                ]
            },
            'SsmActionDefinition': {
                'ActionSubType': 'STOP_EC2_INSTANCES'|'STOP_RDS_INSTANCES',
                'Region': 'string',
                'InstanceIds': [
                    'string',
                ]
            }
        },
        'ExecutionRoleArn': 'string',
        'ApprovalModel': 'AUTOMATIC'|'MANUAL',
        'Status': 'STANDBY'|'PENDING'|'EXECUTION_IN_PROGRESS'|'EXECUTION_SUCCESS'|'EXECUTION_FAILURE'|'REVERSE_IN_PROGRESS'|'REVERSE_SUCCESS'|'REVERSE_FAILURE'|'RESET_IN_PROGRESS'|'RESET_FAILURE',
        'Subscribers': [
            {
                'SubscriptionType': 'SNS'|'EMAIL',
                'Address': 'string'
            },
        ]
    },
    'NewAction': {
        'ActionId': 'string',
        'BudgetName': 'string',
        'NotificationType': 'ACTUAL'|'FORECASTED',
        'ActionType': 'APPLY_IAM_POLICY'|'APPLY_SCP_POLICY'|'RUN_SSM_DOCUMENTS',
        'ActionThreshold': {
            'ActionThresholdValue': 123.0,
            'ActionThresholdType': 'PERCENTAGE'|'ABSOLUTE_VALUE'
        },
        'Definition': {
            'IamActionDefinition': {
                'PolicyArn': 'string',
                'Roles': [
                    'string',
                ],
                'Groups': [
                    'string',
                ],
                'Users': [
                    'string',
                ]
            },
            'ScpActionDefinition': {
                'PolicyId': 'string',
                'TargetIds': [
                    'string',
                ]
            },
            'SsmActionDefinition': {
                'ActionSubType': 'STOP_EC2_INSTANCES'|'STOP_RDS_INSTANCES',
                'Region': 'string',
                'InstanceIds': [
                    'string',
                ]
            }
        },
        'ExecutionRoleArn': 'string',
        'ApprovalModel': 'AUTOMATIC'|'MANUAL',
        'Status': 'STANDBY'|'PENDING'|'EXECUTION_IN_PROGRESS'|'EXECUTION_SUCCESS'|'EXECUTION_FAILURE'|'REVERSE_IN_PROGRESS'|'REVERSE_SUCCESS'|'REVERSE_FAILURE'|'RESET_IN_PROGRESS'|'RESET_FAILURE',
        'Subscribers': [
            {
                'SubscriptionType': 'SNS'|'EMAIL',
                'Address': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) --

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

    • OldAction (dict) --

      The previous action resource information.

      • ActionId (string) --

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

      • BudgetName (string) --

        A string that represents the budget name. The ":" and "" characters aren't allowed.

      • NotificationType (string) --

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

      • ActionType (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.

      • ActionThreshold (dict) --

        The trigger threshold of the action.

        • ActionThresholdValue (float) --

          The threshold of a notification.

        • ActionThresholdType (string) --

          The type of threshold for a notification.

      • Definition (dict) --

        Where you specify all of the type-specific parameters.

        • IamActionDefinition (dict) --

          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.

            • (string) --
          • Groups (list) --

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

            • (string) --
          • Users (list) --

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

            • (string) --
        • ScpActionDefinition (dict) --

          The service control policies (SCPs) action definition details.

          • PolicyId (string) --

            The policy ID attached.

          • TargetIds (list) --

            A list of target IDs.

            • (string) --
        • SsmActionDefinition (dict) --

          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.

            • (string) --
      • ExecutionRoleArn (string) --

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

      • ApprovalModel (string) --

        This specifies if the action needs manual or automatic approval.

      • Status (string) --

        The status of the action.

      • Subscribers (list) --

        A list of subscribers.

        • (dict) --

          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.

    • NewAction (dict) --

      The updated action resource information.

      • ActionId (string) --

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

      • BudgetName (string) --

        A string that represents the budget name. The ":" and "" characters aren't allowed.

      • NotificationType (string) --

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

      • ActionType (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.

      • ActionThreshold (dict) --

        The trigger threshold of the action.

        • ActionThresholdValue (float) --

          The threshold of a notification.

        • ActionThresholdType (string) --

          The type of threshold for a notification.

      • Definition (dict) --

        Where you specify all of the type-specific parameters.

        • IamActionDefinition (dict) --

          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.

            • (string) --
          • Groups (list) --

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

            • (string) --
          • Users (list) --

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

            • (string) --
        • ScpActionDefinition (dict) --

          The service control policies (SCPs) action definition details.

          • PolicyId (string) --

            The policy ID attached.

          • TargetIds (list) --

            A list of target IDs.

            • (string) --
        • SsmActionDefinition (dict) --

          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.

            • (string) --
      • ExecutionRoleArn (string) --

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

      • ApprovalModel (string) --

        This specifies if the action needs manual or automatic approval.

      • Status (string) --

        The status of the action.

      • Subscribers (list) --

        A list of subscribers.

        • (dict) --

          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.

Exceptions

  • Budgets.Client.exceptions.InternalErrorException
  • Budgets.Client.exceptions.InvalidParameterException
  • Budgets.Client.exceptions.NotFoundException
  • Budgets.Client.exceptions.AccessDeniedException
  • Budgets.Client.exceptions.ResourceLockedException
  • Budgets.Client.exceptions.ThrottlingException