{ "version": "2.0", "service": "All public APIs for AWS Budgets", "operations": { "CreateBudget": "Create a new budget", "CreateNotification": "Create a new Notification with subscribers for a budget", "CreateSubscriber": "Create a new Subscriber for a notification", "DeleteBudget": "Delete a budget and related notifications", "DeleteNotification": "Delete a notification and related subscribers", "DeleteSubscriber": "Delete a Subscriber for a notification", "DescribeBudget": "Get a single budget", "DescribeBudgets": "Get all budgets for an account", "DescribeNotificationsForBudget": "Get notifications of a budget", "DescribeSubscribersForNotification": "Get subscribers of a notification", "UpdateBudget": "Update the information of a budget already created", "UpdateNotification": "Update the information about a notification already created", "UpdateSubscriber": "Update a subscriber" }, "shapes": { "AccountId": { "base": "Account Id of the customer. It should be a 12 digit number.", "refs": { "CreateBudgetRequest$AccountId": null, "CreateNotificationRequest$AccountId": null, "CreateSubscriberRequest$AccountId": null, "DeleteBudgetRequest$AccountId": null, "DeleteNotificationRequest$AccountId": null, "DeleteSubscriberRequest$AccountId": null, "DescribeBudgetRequest$AccountId": null, "DescribeBudgetsRequest$AccountId": null, "DescribeNotificationsForBudgetRequest$AccountId": null, "DescribeSubscribersForNotificationRequest$AccountId": null, "UpdateBudgetRequest$AccountId": null, "UpdateNotificationRequest$AccountId": null, "UpdateSubscriberRequest$AccountId": null } }, "Budget": { "base": "AWS Budget model", "refs": { "Budgets$member": null, "CreateBudgetRequest$Budget": null, "DescribeBudgetResponse$Budget": null, "UpdateBudgetRequest$NewBudget": null } }, "BudgetName": { "base": "A string represents the budget name. No \":\" and \"\\\" character is allowed.", "refs": { "Budget$BudgetName": null, "CreateNotificationRequest$BudgetName": null, "CreateSubscriberRequest$BudgetName": null, "DeleteBudgetRequest$BudgetName": null, "DeleteNotificationRequest$BudgetName": null, "DeleteSubscriberRequest$BudgetName": null, "DescribeBudgetRequest$BudgetName": null, "DescribeNotificationsForBudgetRequest$BudgetName": null, "DescribeSubscribersForNotificationRequest$BudgetName": null, "UpdateNotificationRequest$BudgetName": null, "UpdateSubscriberRequest$BudgetName": null } }, "BudgetType": { "base": "The type of a budget. It should be COST, USAGE, or RI_UTILIZATION.", "refs": { "Budget$BudgetType": null } }, "Budgets": { "base": "A list of budgets", "refs": { "DescribeBudgetsResponse$Budgets": null } }, "CalculatedSpend": { "base": "A structure that holds the actual and forecasted spend for a budget.", "refs": { "Budget$CalculatedSpend": null } }, "ComparisonOperator": { "base": "The comparison operator of a notification. Currently we support less than, equal to and greater than.", "refs": { "Notification$ComparisonOperator": null } }, "CostFilters": { "base": "A map that represents the cost filters applied to the budget.", "refs": { "Budget$CostFilters": null } }, "CostTypes": { "base": "This includes the options for getting the cost of a budget.", "refs": { "Budget$CostTypes": null } }, "CreateBudgetRequest": { "base": "Request of CreateBudget", "refs": { } }, "CreateBudgetResponse": { "base": "Response of CreateBudget", "refs": { } }, "CreateNotificationRequest": { "base": "Request of CreateNotification", "refs": { } }, "CreateNotificationResponse": { "base": "Response of CreateNotification", "refs": { } }, "CreateSubscriberRequest": { "base": "Request of CreateSubscriber", "refs": { } }, "CreateSubscriberResponse": { "base": "Response of CreateSubscriber", "refs": { } }, "CreationLimitExceededException": { "base": "The exception is thrown when customer tries to create a record (e.g. budget), but the number this record already exceeds the limitation.", "refs": { } }, "DeleteBudgetRequest": { "base": "Request of DeleteBudget", "refs": { } }, "DeleteBudgetResponse": { "base": "Response of DeleteBudget", "refs": { } }, "DeleteNotificationRequest": { "base": "Request of DeleteNotification", "refs": { } }, "DeleteNotificationResponse": { "base": "Response of DeleteNotification", "refs": { } }, "DeleteSubscriberRequest": { "base": "Request of DeleteSubscriber", "refs": { } }, "DeleteSubscriberResponse": { "base": "Response of DeleteSubscriber", "refs": { } }, "DescribeBudgetRequest": { "base": "Request of DescribeBudget", "refs": { } }, "DescribeBudgetResponse": { "base": "Response of DescribeBudget", "refs": { } }, "DescribeBudgetsRequest": { "base": "Request of DescribeBudgets", "refs": { } }, "DescribeBudgetsResponse": { "base": "Response of DescribeBudgets", "refs": { } }, "DescribeNotificationsForBudgetRequest": { "base": "Request of DescribeNotificationsForBudget", "refs": { } }, "DescribeNotificationsForBudgetResponse": { "base": "Response of GetNotificationsForBudget", "refs": { } }, "DescribeSubscribersForNotificationRequest": { "base": "Request of DescribeSubscribersForNotification", "refs": { } }, "DescribeSubscribersForNotificationResponse": { "base": "Response of DescribeSubscribersForNotification", "refs": { } }, "DimensionValues": { "base": null, "refs": { "CostFilters$value": null } }, "DuplicateRecordException": { "base": "The exception is thrown when customer tries to create a record (e.g. budget) that already exists.", "refs": { } }, "ExpiredNextTokenException": { "base": "This exception is thrown if the paging token is expired - past its TTL", "refs": { } }, "GenericBoolean": { "base": "A generic boolean value.", "refs": { "CostTypes$IncludeTax": null, "CostTypes$IncludeSubscription": null, "CostTypes$UseBlended": null } }, "GenericString": { "base": "A generic String.", "refs": { "CostFilters$key": null, "DescribeBudgetsRequest$NextToken": null, "DescribeBudgetsResponse$NextToken": null, "DescribeNotificationsForBudgetRequest$NextToken": null, "DescribeNotificationsForBudgetResponse$NextToken": null, "DescribeSubscribersForNotificationRequest$NextToken": null, "DescribeSubscribersForNotificationResponse$NextToken": null, "DimensionValues$member": null, "Subscriber$Address": null } }, "GenericTimestamp": { "base": "A generic timestamp. In Java it is transformed to a Date object.", "refs": { "TimePeriod$Start": null, "TimePeriod$End": null } }, "InternalErrorException": { "base": "This exception is thrown on an unknown internal failure.", "refs": { } }, "InvalidNextTokenException": { "base": "This exception is thrown if paging token signature didn't match the token, or the paging token isn't for this request", "refs": { } }, "InvalidParameterException": { "base": "This exception is thrown if any request is given an invalid parameter. E.g., if a required Date field is null.", "refs": { } }, "MaxResults": { "base": "An integer to represent how many entries a paginated response contains. Maximum is set to 100.", "refs": { "DescribeBudgetsRequest$MaxResults": null, "DescribeNotificationsForBudgetRequest$MaxResults": null, "DescribeSubscribersForNotificationRequest$MaxResults": null } }, "NotFoundException": { "base": "This exception is thrown if a requested entity is not found. E.g., if a budget id doesn't exist for an account ID.", "refs": { } }, "Notification": { "base": "Notification model. Each budget may contain multiple notifications with different settings.", "refs": { "CreateNotificationRequest$Notification": null, "CreateSubscriberRequest$Notification": null, "DeleteNotificationRequest$Notification": null, "DeleteSubscriberRequest$Notification": null, "DescribeSubscribersForNotificationRequest$Notification": null, "NotificationWithSubscribers$Notification": null, "Notifications$member": null, "UpdateNotificationRequest$OldNotification": null, "UpdateNotificationRequest$NewNotification": null, "UpdateSubscriberRequest$Notification": null } }, "NotificationThreshold": { "base": "The threshold of a notification. It should be a number between 0 and 1,000,000,000.", "refs": { "Notification$Threshold": null } }, "NotificationType": { "base": "The type of a notification. It should be ACTUAL or FORECASTED.", "refs": { "Notification$NotificationType": null } }, "NotificationWithSubscribers": { "base": "A structure to relate notification and a list of subscribers who belong to the notification.", "refs": { "NotificationWithSubscribersList$member": null } }, "NotificationWithSubscribersList": { "base": "A list of Notifications, each with a list of subscribers.", "refs": { "CreateBudgetRequest$NotificationsWithSubscribers": null } }, "Notifications": { "base": "A list of notifications.", "refs": { "DescribeNotificationsForBudgetResponse$Notifications": null } }, "NumericValue": { "base": "A string to represent NumericValue.", "refs": { "Spend$Amount": null } }, "Spend": { "base": "A structure that represents either a cost spend or usage spend. Contains an amount and a unit.", "refs": { "Budget$BudgetLimit": null, "CalculatedSpend$ActualSpend": null, "CalculatedSpend$ForecastedSpend": null } }, "Subscriber": { "base": "Subscriber model. Each notification may contain multiple subscribers with different addresses.", "refs": { "CreateSubscriberRequest$Subscriber": null, "DeleteSubscriberRequest$Subscriber": null, "Subscribers$member": null, "UpdateSubscriberRequest$OldSubscriber": null, "UpdateSubscriberRequest$NewSubscriber": null } }, "Subscribers": { "base": "A list of subscribers.", "refs": { "CreateNotificationRequest$Subscribers": null, "DescribeSubscribersForNotificationResponse$Subscribers": null, "NotificationWithSubscribers$Subscribers": null } }, "SubscriptionType": { "base": "The subscription type of the subscriber. It can be SMS or EMAIL.", "refs": { "Subscriber$SubscriptionType": null } }, "ThresholdType": { "base": "The type of threshold for a notification. It can be PERCENTAGE or ABSOLUTE_VALUE.", "refs": { "Notification$ThresholdType": null } }, "TimePeriod": { "base": "A time period indicating the start date and end date of a budget.", "refs": { "Budget$TimePeriod": null } }, "TimeUnit": { "base": "The time unit of the budget. e.g. MONTHLY, QUARTERLY, etc.", "refs": { "Budget$TimeUnit": null } }, "UnitValue": { "base": "A string to represent budget spend unit. It should be not null and not empty.", "refs": { "Spend$Unit": null } }, "UpdateBudgetRequest": { "base": "Request of UpdateBudget", "refs": { } }, "UpdateBudgetResponse": { "base": "Response of UpdateBudget", "refs": { } }, "UpdateNotificationRequest": { "base": "Request of UpdateNotification", "refs": { } }, "UpdateNotificationResponse": { "base": "Response of UpdateNotification", "refs": { } }, "UpdateSubscriberRequest": { "base": "Request of UpdateSubscriber", "refs": { } }, "UpdateSubscriberResponse": { "base": "Response of UpdateSubscriber", "refs": { } }, "errorMessage": { "base": "The error message the exception carries.", "refs": { "CreationLimitExceededException$Message": null, "DuplicateRecordException$Message": null, "ExpiredNextTokenException$Message": null, "InternalErrorException$Message": null, "InvalidNextTokenException$Message": null, "InvalidParameterException$Message": null, "NotFoundException$Message": null } } } }