2016/10/20 - AWS Budgets - 13 new api methods
Changes Adds the AWS Budgets service API via AWS.Budgets.
Create a new budget
Request Syntax
client.create_budget( AccountId='string', Budget={ 'BudgetName': 'string', 'BudgetLimit': { 'Amount': 'string', 'Unit': 'string' }, 'CostFilters': { 'string': [ 'string', ] }, 'CostTypes': { 'IncludeTax': True|False, 'IncludeSubscription': True|False, 'UseBlended': True|False }, 'TimeUnit': 'MONTHLY'|'QUARTERLY'|'ANNUALLY', 'TimePeriod': { 'Start': datetime(2015, 1, 1), 'End': datetime(2015, 1, 1) }, 'CalculatedSpend': { 'ActualSpend': { 'Amount': 'string', 'Unit': 'string' }, 'ForecastedSpend': { 'Amount': 'string', 'Unit': 'string' } }, 'BudgetType': 'USAGE'|'COST' }, NotificationsWithSubscribers=[ { 'Notification': { 'NotificationType': 'ACTUAL'|'FORECASTED', 'ComparisonOperator': 'GREATER_THAN'|'LESS_THAN'|'EQUAL_TO', 'Threshold': 123.0 }, 'Subscribers': [ { 'SubscriptionType': 'SNS'|'EMAIL', 'Address': 'string' }, ] }, ] )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
dict
[REQUIRED] AWS Budget model
BudgetName (string) -- [REQUIRED] A string represents the budget name. No ":" character is allowed.
BudgetLimit (dict) -- [REQUIRED] A structure represent either a cost spend or usage spend. Contains an amount and a unit.
Amount (string) -- [REQUIRED] A string to represent NumericValue.
Unit (string) -- [REQUIRED] A generic String.
CostFilters (dict) -- A map represents the cost filters applied to the budget.
(string) -- A generic String.
(list) --
(string) -- A generic String.
CostTypes (dict) -- [REQUIRED] This includes the options for getting the cost of a budget.
IncludeTax (boolean) -- [REQUIRED] A generic boolean value.
IncludeSubscription (boolean) -- [REQUIRED] A generic boolean value.
UseBlended (boolean) -- [REQUIRED] A generic boolean value.
TimeUnit (string) -- [REQUIRED] The time unit of the budget. e.g. weekly, monthly, etc.
TimePeriod (dict) -- [REQUIRED] A time period indicated the start date and end date of a budget.
Start (datetime) -- [REQUIRED] A generic timestamp. In Java it is transformed to a Date object.
End (datetime) -- [REQUIRED] A generic timestamp. In Java it is transformed to a Date object.
CalculatedSpend (dict) -- A structure holds the actual and forecasted spend for a budget.
ActualSpend (dict) -- [REQUIRED] A structure represent either a cost spend or usage spend. Contains an amount and a unit.
Amount (string) -- [REQUIRED] A string to represent NumericValue.
Unit (string) -- [REQUIRED] A generic String.
ForecastedSpend (dict) -- A structure represent either a cost spend or usage spend. Contains an amount and a unit.
Amount (string) -- [REQUIRED] A string to represent NumericValue.
Unit (string) -- [REQUIRED] A generic String.
BudgetType (string) -- [REQUIRED] The type of a budget. Can be COST or USAGE.
list
A list of Notifications, each with a list of subscribers.
(dict) -- A structure to relate notification and a list of subscribers who belong to the notification.
Notification (dict) -- [REQUIRED] Notification model. Each budget may contain multiple notifications with different settings.
NotificationType (string) -- [REQUIRED] The type of a notification. It should be ACTUAL or FORECASTED.
ComparisonOperator (string) -- [REQUIRED] The comparison operator of a notification. Currently we support less than, equal to and greater than.
Threshold (float) -- [REQUIRED] The threshold of the a notification. It should be a number between 0 and 100.
Subscribers (list) -- [REQUIRED] A list of subscribers.
(dict) -- Subscriber model. Each notification may contain multiple subscribers with different addresses.
SubscriptionType (string) -- [REQUIRED] The subscription type of the subscriber. It can be SMS or EMAIL.
Address (string) -- [REQUIRED] A generic String.
dict
Response Syntax
{}
Response Structure
(dict) -- Response of CreateBudget
Get a single budget
Request Syntax
client.describe_budget( AccountId='string', BudgetName='string' )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
string
[REQUIRED] A string represents the budget name. No ":" character is allowed.
dict
Response Syntax
{ 'Budget': { 'BudgetName': 'string', 'BudgetLimit': { 'Amount': 'string', 'Unit': 'string' }, 'CostFilters': { 'string': [ 'string', ] }, 'CostTypes': { 'IncludeTax': True|False, 'IncludeSubscription': True|False, 'UseBlended': True|False }, 'TimeUnit': 'MONTHLY'|'QUARTERLY'|'ANNUALLY', 'TimePeriod': { 'Start': datetime(2015, 1, 1), 'End': datetime(2015, 1, 1) }, 'CalculatedSpend': { 'ActualSpend': { 'Amount': 'string', 'Unit': 'string' }, 'ForecastedSpend': { 'Amount': 'string', 'Unit': 'string' } }, 'BudgetType': 'USAGE'|'COST' } }
Response Structure
(dict) -- Response of DescribeBudget
Budget (dict) -- AWS Budget model
BudgetName (string) -- A string represents the budget name. No ":" character is allowed.
BudgetLimit (dict) -- A structure represent either a cost spend or usage spend. Contains an amount and a unit.
Amount (string) -- A string to represent NumericValue.
Unit (string) -- A generic String.
CostFilters (dict) -- A map represents the cost filters applied to the budget.
(string) -- A generic String.
(list) --
(string) -- A generic String.
CostTypes (dict) -- This includes the options for getting the cost of a budget.
IncludeTax (boolean) -- A generic boolean value.
IncludeSubscription (boolean) -- A generic boolean value.
UseBlended (boolean) -- A generic boolean value.
TimeUnit (string) -- The time unit of the budget. e.g. weekly, monthly, etc.
TimePeriod (dict) -- A time period indicated the start date and end date of a budget.
Start (datetime) -- A generic timestamp. In Java it is transformed to a Date object.
End (datetime) -- A generic timestamp. In Java it is transformed to a Date object.
CalculatedSpend (dict) -- A structure holds the actual and forecasted spend for a budget.
ActualSpend (dict) -- A structure represent either a cost spend or usage spend. Contains an amount and a unit.
Amount (string) -- A string to represent NumericValue.
Unit (string) -- A generic String.
ForecastedSpend (dict) -- A structure represent either a cost spend or usage spend. Contains an amount and a unit.
Amount (string) -- A string to represent NumericValue.
Unit (string) -- A generic String.
BudgetType (string) -- The type of a budget. Can be COST or USAGE.
Create a new Notification with subscribers for a budget
Request Syntax
client.create_notification( AccountId='string', BudgetName='string', Notification={ 'NotificationType': 'ACTUAL'|'FORECASTED', 'ComparisonOperator': 'GREATER_THAN'|'LESS_THAN'|'EQUAL_TO', 'Threshold': 123.0 }, Subscribers=[ { 'SubscriptionType': 'SNS'|'EMAIL', 'Address': 'string' }, ] )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
string
[REQUIRED] A string represents the budget name. No ":" character is allowed.
dict
[REQUIRED] Notification model. Each budget may contain multiple notifications with different settings.
NotificationType (string) -- [REQUIRED] The type of a notification. It should be ACTUAL or FORECASTED.
ComparisonOperator (string) -- [REQUIRED] The comparison operator of a notification. Currently we support less than, equal to and greater than.
Threshold (float) -- [REQUIRED] The threshold of the a notification. It should be a number between 0 and 100.
list
[REQUIRED] A list of subscribers.
(dict) -- Subscriber model. Each notification may contain multiple subscribers with different addresses.
SubscriptionType (string) -- [REQUIRED] The subscription type of the subscriber. It can be SMS or EMAIL.
Address (string) -- [REQUIRED] A generic String.
dict
Response Syntax
{}
Response Structure
(dict) -- Response of CreateNotification
Get subscribers of a notification
Request Syntax
client.describe_subscribers_for_notification( AccountId='string', BudgetName='string', Notification={ 'NotificationType': 'ACTUAL'|'FORECASTED', 'ComparisonOperator': 'GREATER_THAN'|'LESS_THAN'|'EQUAL_TO', 'Threshold': 123.0 }, MaxResults=123, NextToken='string' )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
string
[REQUIRED] A string represents the budget name. No ":" character is allowed.
dict
[REQUIRED] Notification model. Each budget may contain multiple notifications with different settings.
NotificationType (string) -- [REQUIRED] The type of a notification. It should be ACTUAL or FORECASTED.
ComparisonOperator (string) -- [REQUIRED] The comparison operator of a notification. Currently we support less than, equal to and greater than.
Threshold (float) -- [REQUIRED] The threshold of the a notification. It should be a number between 0 and 100.
integer
An integer to represent how many entries should a pagianted response contains. Maxium is set to 100.
string
A generic String.
dict
Response Syntax
{ 'Subscribers': [ { 'SubscriptionType': 'SNS'|'EMAIL', 'Address': 'string' }, ], 'NextToken': 'string' }
Response Structure
(dict) -- Response of DescribeSubscribersForNotification
Subscribers (list) -- A list of subscribers.
(dict) -- Subscriber model. Each notification may contain multiple subscribers with different addresses.
SubscriptionType (string) -- The subscription type of the subscriber. It can be SMS or EMAIL.
Address (string) -- A generic String.
NextToken (string) -- A generic String.
Create a new Subscriber for a notification
Request Syntax
client.create_subscriber( AccountId='string', BudgetName='string', Notification={ 'NotificationType': 'ACTUAL'|'FORECASTED', 'ComparisonOperator': 'GREATER_THAN'|'LESS_THAN'|'EQUAL_TO', 'Threshold': 123.0 }, Subscriber={ 'SubscriptionType': 'SNS'|'EMAIL', 'Address': 'string' } )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
string
[REQUIRED] A string represents the budget name. No ":" character is allowed.
dict
[REQUIRED] Notification model. Each budget may contain multiple notifications with different settings.
NotificationType (string) -- [REQUIRED] The type of a notification. It should be ACTUAL or FORECASTED.
ComparisonOperator (string) -- [REQUIRED] The comparison operator of a notification. Currently we support less than, equal to and greater than.
Threshold (float) -- [REQUIRED] The threshold of the a notification. It should be a number between 0 and 100.
dict
[REQUIRED] Subscriber model. Each notification may contain multiple subscribers with different addresses.
SubscriptionType (string) -- [REQUIRED] The subscription type of the subscriber. It can be SMS or EMAIL.
Address (string) -- [REQUIRED] A generic String.
dict
Response Syntax
{}
Response Structure
(dict) -- Response of CreateSubscriber
Delete a notification and related subscribers
Request Syntax
client.delete_notification( AccountId='string', BudgetName='string', Notification={ 'NotificationType': 'ACTUAL'|'FORECASTED', 'ComparisonOperator': 'GREATER_THAN'|'LESS_THAN'|'EQUAL_TO', 'Threshold': 123.0 } )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
string
[REQUIRED] A string represents the budget name. No ":" character is allowed.
dict
[REQUIRED] Notification model. Each budget may contain multiple notifications with different settings.
NotificationType (string) -- [REQUIRED] The type of a notification. It should be ACTUAL or FORECASTED.
ComparisonOperator (string) -- [REQUIRED] The comparison operator of a notification. Currently we support less than, equal to and greater than.
Threshold (float) -- [REQUIRED] The threshold of the a notification. It should be a number between 0 and 100.
dict
Response Syntax
{}
Response Structure
(dict) -- Response of DeleteNotification
Update the information about a notification already created
Request Syntax
client.update_notification( AccountId='string', BudgetName='string', OldNotification={ 'NotificationType': 'ACTUAL'|'FORECASTED', 'ComparisonOperator': 'GREATER_THAN'|'LESS_THAN'|'EQUAL_TO', 'Threshold': 123.0 }, NewNotification={ 'NotificationType': 'ACTUAL'|'FORECASTED', 'ComparisonOperator': 'GREATER_THAN'|'LESS_THAN'|'EQUAL_TO', 'Threshold': 123.0 } )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
string
[REQUIRED] A string represents the budget name. No ":" character is allowed.
dict
[REQUIRED] Notification model. Each budget may contain multiple notifications with different settings.
NotificationType (string) -- [REQUIRED] The type of a notification. It should be ACTUAL or FORECASTED.
ComparisonOperator (string) -- [REQUIRED] The comparison operator of a notification. Currently we support less than, equal to and greater than.
Threshold (float) -- [REQUIRED] The threshold of the a notification. It should be a number between 0 and 100.
dict
[REQUIRED] Notification model. Each budget may contain multiple notifications with different settings.
NotificationType (string) -- [REQUIRED] The type of a notification. It should be ACTUAL or FORECASTED.
ComparisonOperator (string) -- [REQUIRED] The comparison operator of a notification. Currently we support less than, equal to and greater than.
Threshold (float) -- [REQUIRED] The threshold of the a notification. It should be a number between 0 and 100.
dict
Response Syntax
{}
Response Structure
(dict) -- Response of UpdateNotification
Delete a Subscriber for a notification
Request Syntax
client.delete_subscriber( AccountId='string', BudgetName='string', Notification={ 'NotificationType': 'ACTUAL'|'FORECASTED', 'ComparisonOperator': 'GREATER_THAN'|'LESS_THAN'|'EQUAL_TO', 'Threshold': 123.0 }, Subscriber={ 'SubscriptionType': 'SNS'|'EMAIL', 'Address': 'string' } )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
string
[REQUIRED] A string represents the budget name. No ":" character is allowed.
dict
[REQUIRED] Notification model. Each budget may contain multiple notifications with different settings.
NotificationType (string) -- [REQUIRED] The type of a notification. It should be ACTUAL or FORECASTED.
ComparisonOperator (string) -- [REQUIRED] The comparison operator of a notification. Currently we support less than, equal to and greater than.
Threshold (float) -- [REQUIRED] The threshold of the a notification. It should be a number between 0 and 100.
dict
[REQUIRED] Subscriber model. Each notification may contain multiple subscribers with different addresses.
SubscriptionType (string) -- [REQUIRED] The subscription type of the subscriber. It can be SMS or EMAIL.
Address (string) -- [REQUIRED] A generic String.
dict
Response Syntax
{}
Response Structure
(dict) -- Response of DeleteSubscriber
Get all budgets for an account
Request Syntax
client.describe_budgets( AccountId='string', MaxResults=123, NextToken='string' )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
integer
An integer to represent how many entries should a pagianted response contains. Maxium is set to 100.
string
A generic String.
dict
Response Syntax
{ 'Budgets': [ { 'BudgetName': 'string', 'BudgetLimit': { 'Amount': 'string', 'Unit': 'string' }, 'CostFilters': { 'string': [ 'string', ] }, 'CostTypes': { 'IncludeTax': True|False, 'IncludeSubscription': True|False, 'UseBlended': True|False }, 'TimeUnit': 'MONTHLY'|'QUARTERLY'|'ANNUALLY', 'TimePeriod': { 'Start': datetime(2015, 1, 1), 'End': datetime(2015, 1, 1) }, 'CalculatedSpend': { 'ActualSpend': { 'Amount': 'string', 'Unit': 'string' }, 'ForecastedSpend': { 'Amount': 'string', 'Unit': 'string' } }, 'BudgetType': 'USAGE'|'COST' }, ], 'NextToken': 'string' }
Response Structure
(dict) -- Response of DescribeBudgets
Budgets (list) -- A list of budgets
(dict) -- AWS Budget model
BudgetName (string) -- A string represents the budget name. No ":" character is allowed.
BudgetLimit (dict) -- A structure represent either a cost spend or usage spend. Contains an amount and a unit.
Amount (string) -- A string to represent NumericValue.
Unit (string) -- A generic String.
CostFilters (dict) -- A map represents the cost filters applied to the budget.
(string) -- A generic String.
(list) --
(string) -- A generic String.
CostTypes (dict) -- This includes the options for getting the cost of a budget.
IncludeTax (boolean) -- A generic boolean value.
IncludeSubscription (boolean) -- A generic boolean value.
UseBlended (boolean) -- A generic boolean value.
TimeUnit (string) -- The time unit of the budget. e.g. weekly, monthly, etc.
TimePeriod (dict) -- A time period indicated the start date and end date of a budget.
Start (datetime) -- A generic timestamp. In Java it is transformed to a Date object.
End (datetime) -- A generic timestamp. In Java it is transformed to a Date object.
CalculatedSpend (dict) -- A structure holds the actual and forecasted spend for a budget.
ActualSpend (dict) -- A structure represent either a cost spend or usage spend. Contains an amount and a unit.
Amount (string) -- A string to represent NumericValue.
Unit (string) -- A generic String.
ForecastedSpend (dict) -- A structure represent either a cost spend or usage spend. Contains an amount and a unit.
Amount (string) -- A string to represent NumericValue.
Unit (string) -- A generic String.
BudgetType (string) -- The type of a budget. Can be COST or USAGE.
NextToken (string) -- A generic String.
Get notifications of a budget
Request Syntax
client.describe_notifications_for_budget( AccountId='string', BudgetName='string', MaxResults=123, NextToken='string' )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
string
[REQUIRED] A string represents the budget name. No ":" character is allowed.
integer
An integer to represent how many entries should a pagianted response contains. Maxium is set to 100.
string
A generic String.
dict
Response Syntax
{ 'Notifications': [ { 'NotificationType': 'ACTUAL'|'FORECASTED', 'ComparisonOperator': 'GREATER_THAN'|'LESS_THAN'|'EQUAL_TO', 'Threshold': 123.0 }, ], 'NextToken': 'string' }
Response Structure
(dict) -- Response of GetNotificationsForBudget
Notifications (list) -- A list of notifications.
(dict) -- Notification model. Each budget may contain multiple notifications with different settings.
NotificationType (string) -- The type of a notification. It should be ACTUAL or FORECASTED.
ComparisonOperator (string) -- The comparison operator of a notification. Currently we support less than, equal to and greater than.
Threshold (float) -- The threshold of the a notification. It should be a number between 0 and 100.
NextToken (string) -- A generic String.
Delete a budget and related notifications
Request Syntax
client.delete_budget( AccountId='string', BudgetName='string' )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
string
[REQUIRED] A string represents the budget name. No ":" character is allowed.
dict
Response Syntax
{}
Response Structure
(dict) -- Response of DeleteBudget
Update a subscriber
Request Syntax
client.update_subscriber( AccountId='string', BudgetName='string', Notification={ 'NotificationType': 'ACTUAL'|'FORECASTED', 'ComparisonOperator': 'GREATER_THAN'|'LESS_THAN'|'EQUAL_TO', 'Threshold': 123.0 }, OldSubscriber={ 'SubscriptionType': 'SNS'|'EMAIL', 'Address': 'string' }, NewSubscriber={ 'SubscriptionType': 'SNS'|'EMAIL', 'Address': 'string' } )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
string
[REQUIRED] A string represents the budget name. No ":" character is allowed.
dict
[REQUIRED] Notification model. Each budget may contain multiple notifications with different settings.
NotificationType (string) -- [REQUIRED] The type of a notification. It should be ACTUAL or FORECASTED.
ComparisonOperator (string) -- [REQUIRED] The comparison operator of a notification. Currently we support less than, equal to and greater than.
Threshold (float) -- [REQUIRED] The threshold of the a notification. It should be a number between 0 and 100.
dict
[REQUIRED] Subscriber model. Each notification may contain multiple subscribers with different addresses.
SubscriptionType (string) -- [REQUIRED] The subscription type of the subscriber. It can be SMS or EMAIL.
Address (string) -- [REQUIRED] A generic String.
dict
[REQUIRED] Subscriber model. Each notification may contain multiple subscribers with different addresses.
SubscriptionType (string) -- [REQUIRED] The subscription type of the subscriber. It can be SMS or EMAIL.
Address (string) -- [REQUIRED] A generic String.
dict
Response Syntax
{}
Response Structure
(dict) -- Response of UpdateSubscriber
Update the information of a budget already created
Request Syntax
client.update_budget( AccountId='string', NewBudget={ 'BudgetName': 'string', 'BudgetLimit': { 'Amount': 'string', 'Unit': 'string' }, 'CostFilters': { 'string': [ 'string', ] }, 'CostTypes': { 'IncludeTax': True|False, 'IncludeSubscription': True|False, 'UseBlended': True|False }, 'TimeUnit': 'MONTHLY'|'QUARTERLY'|'ANNUALLY', 'TimePeriod': { 'Start': datetime(2015, 1, 1), 'End': datetime(2015, 1, 1) }, 'CalculatedSpend': { 'ActualSpend': { 'Amount': 'string', 'Unit': 'string' }, 'ForecastedSpend': { 'Amount': 'string', 'Unit': 'string' } }, 'BudgetType': 'USAGE'|'COST' } )
string
[REQUIRED] Account Id of the customer. It should be a 12 digit number.
dict
[REQUIRED] AWS Budget model
BudgetName (string) -- [REQUIRED] A string represents the budget name. No ":" character is allowed.
BudgetLimit (dict) -- [REQUIRED] A structure represent either a cost spend or usage spend. Contains an amount and a unit.
Amount (string) -- [REQUIRED] A string to represent NumericValue.
Unit (string) -- [REQUIRED] A generic String.
CostFilters (dict) -- A map represents the cost filters applied to the budget.
(string) -- A generic String.
(list) --
(string) -- A generic String.
CostTypes (dict) -- [REQUIRED] This includes the options for getting the cost of a budget.
IncludeTax (boolean) -- [REQUIRED] A generic boolean value.
IncludeSubscription (boolean) -- [REQUIRED] A generic boolean value.
UseBlended (boolean) -- [REQUIRED] A generic boolean value.
TimeUnit (string) -- [REQUIRED] The time unit of the budget. e.g. weekly, monthly, etc.
TimePeriod (dict) -- [REQUIRED] A time period indicated the start date and end date of a budget.
Start (datetime) -- [REQUIRED] A generic timestamp. In Java it is transformed to a Date object.
End (datetime) -- [REQUIRED] A generic timestamp. In Java it is transformed to a Date object.
CalculatedSpend (dict) -- A structure holds the actual and forecasted spend for a budget.
ActualSpend (dict) -- [REQUIRED] A structure represent either a cost spend or usage spend. Contains an amount and a unit.
Amount (string) -- [REQUIRED] A string to represent NumericValue.
Unit (string) -- [REQUIRED] A generic String.
ForecastedSpend (dict) -- A structure represent either a cost spend or usage spend. Contains an amount and a unit.
Amount (string) -- [REQUIRED] A string to represent NumericValue.
Unit (string) -- [REQUIRED] A generic String.
BudgetType (string) -- [REQUIRED] The type of a budget. Can be COST or USAGE.
dict
Response Syntax
{}
Response Structure
(dict) -- Response of UpdateBudget