budgets

package
v0.20.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 17, 2020 License: Apache-2.0 Imports: 8 Imported by: 27

Documentation

Overview

Package budgets provides the client and types for making API requests to AWSBudgets.

The AWS Budgets API enables you to use AWS Budgets to plan your service usage, service costs, and instance reservations. The API reference provides descriptions, syntax, and usage examples for each of the actions and data types for AWS Budgets.

Budgets provide you with a way to see the following information:

  • How close your plan is to your budgeted amount or to the free tier limits

  • Your usage-to-date, including how much you've used of your Reserved Instances (RIs)

  • Your current estimated charges from AWS, and how much your predicted usage will accrue in charges by the end of the month

  • How much of your budget has been used

AWS updates your budget status several times a day. Budgets track your unblended costs, subscriptions, refunds, and RIs. You can create the following types of budgets:

  • Cost budgets - Plan how much you want to spend on a service.

  • Usage budgets - Plan how much you want to use one or more services.

  • RI utilization budgets - Define a utilization threshold, and receive alerts when your RI usage falls below that threshold. This lets you see if your RIs are unused or under-utilized.

  • RI coverage budgets - Define a coverage threshold, and receive alerts when the number of your instance hours that are covered by RIs fall below that threshold. This lets you see how much of your instance usage is covered by a reservation.

Service Endpoint

The AWS Budgets API provides the following endpoint:

For information about costs that are associated with the AWS Budgets API, see AWS Cost Management Pricing (https://aws.amazon.com/aws-cost-management/pricing/).

See budgets package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/budgets/

Using the Client

To use AWSBudgets with the SDK use the New function to create a new service client. With that client you can make API requests to the service. These clients are safe to use concurrently.

See the SDK's documentation for more information on how to use the SDK. https://docs.aws.amazon.com/sdk-for-go/api/

See aws.Config documentation for more information on configuring SDK clients. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the AWSBudgets client for more information on creating client for this service. https://docs.aws.amazon.com/sdk-for-go/api/service/budgets/#New

Index

Constants

View Source
const (
	ServiceName = "AWSBudgets" // Service's name
	ServiceID   = "Budgets"    // Service's identifier
	EndpointsID = "budgets"    // Service's Endpoint identifier
)
View Source
const (

	// ErrCodeAccessDeniedException for service response error code
	// "AccessDeniedException".
	//
	// You are not authorized to use this operation with the given parameters.
	ErrCodeAccessDeniedException = "AccessDeniedException"

	// ErrCodeCreationLimitExceededException for service response error code
	// "CreationLimitExceededException".
	//
	// You've exceeded the notification or subscriber limit.
	ErrCodeCreationLimitExceededException = "CreationLimitExceededException"

	// ErrCodeDuplicateRecordException for service response error code
	// "DuplicateRecordException".
	//
	// The budget name already exists. Budget names must be unique within an account.
	ErrCodeDuplicateRecordException = "DuplicateRecordException"

	// ErrCodeExpiredNextTokenException for service response error code
	// "ExpiredNextTokenException".
	//
	// The pagination token expired.
	ErrCodeExpiredNextTokenException = "ExpiredNextTokenException"

	// ErrCodeInternalErrorException for service response error code
	// "InternalErrorException".
	//
	// An error on the server occurred during the processing of your request. Try
	// again later.
	ErrCodeInternalErrorException = "InternalErrorException"

	// ErrCodeInvalidNextTokenException for service response error code
	// "InvalidNextTokenException".
	//
	// The pagination token is invalid.
	ErrCodeInvalidNextTokenException = "InvalidNextTokenException"

	// ErrCodeInvalidParameterException for service response error code
	// "InvalidParameterException".
	//
	// An error on the client occurred. Typically, the cause is an invalid input
	// value.
	ErrCodeInvalidParameterException = "InvalidParameterException"

	// ErrCodeNotFoundException for service response error code
	// "NotFoundException".
	//
	// We can’t locate the resource that you specified.
	ErrCodeNotFoundException = "NotFoundException"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Budget

type Budget struct {

	// The total amount of cost, usage, RI utilization, RI coverage, Savings Plans
	// utilization, or Savings Plans coverage that you want to track with your budget.
	//
	// BudgetLimit is required for cost or usage budgets, but optional for RI or
	// Savings Plans utilization or coverage budgets. RI and Savings Plans utilization
	// or coverage budgets default to 100, which is the only valid value for RI
	// or Savings Plans utilization or coverage budgets. You can't use BudgetLimit
	// with PlannedBudgetLimits for CreateBudget and UpdateBudget actions.
	BudgetLimit *Spend `type:"structure"`

	// The name of a budget. The name must be unique within an account. The : and
	// \ characters aren't allowed in BudgetName.
	//
	// BudgetName is a required field
	BudgetName *string `min:"1" type:"string" required:"true"`

	// Whether this budget tracks costs, usage, RI utilization, RI coverage, Savings
	// Plans utilization, or Savings Plans coverage.
	//
	// BudgetType is a required field
	BudgetType BudgetType `type:"string" required:"true" enum:"true"`

	// The actual and forecasted cost or usage that the budget tracks.
	CalculatedSpend *CalculatedSpend `type:"structure"`

	// The cost filters, such as service or tag, that are applied to a budget.
	//
	// AWS Budgets supports the following services as a filter for RI budgets:
	//
	//    * Amazon Elastic Compute Cloud - Compute
	//
	//    * Amazon Redshift
	//
	//    * Amazon Relational Database Service
	//
	//    * Amazon ElastiCache
	//
	//    * Amazon Elasticsearch Service
	CostFilters map[string][]string `type:"map"`

	// The types of costs that are included in this COST budget.
	//
	// USAGE, RI_UTILIZATION, RI_COVERAGE, Savings_Plans_Utilization, and Savings_Plans_Coverage
	// budgets do not have CostTypes.
	CostTypes *CostTypes `type:"structure"`

	// The last time that you updated this budget.
	LastUpdatedTime *time.Time `type:"timestamp"`

	// A map containing multiple BudgetLimit, including current or future limits.
	//
	// PlannedBudgetLimits is available for cost or usage budget and supports monthly
	// and quarterly TimeUnit.
	//
	// For monthly budgets, provide 12 months of PlannedBudgetLimits values. This
	// must start from the current month and include the next 11 months. The key
	// is the start of the month, UTC in epoch seconds.
	//
	// For quarterly budgets, provide 4 quarters of PlannedBudgetLimits value entries
	// in standard calendar quarter increments. This must start from the current
	// quarter and include the next 3 quarters. The key is the start of the quarter,
	// UTC in epoch seconds.
	//
	// If the planned budget expires before 12 months for monthly or 4 quarters
	// for quarterly, provide the PlannedBudgetLimits values only for the remaining
	// periods.
	//
	// If the budget begins at a date in the future, provide PlannedBudgetLimits
	// values from the start date of the budget.
	//
	// After all of the BudgetLimit values in PlannedBudgetLimits are used, the
	// budget continues to use the last limit as the BudgetLimit. At that point,
	// the planned budget provides the same experience as a fixed budget.
	//
	// DescribeBudget and DescribeBudgets response along with PlannedBudgetLimits
	// will also contain BudgetLimit representing the current month or quarter limit
	// present in PlannedBudgetLimits. This only applies to budgets created with
	// PlannedBudgetLimits. Budgets created without PlannedBudgetLimits will only
	// contain BudgetLimit, and no PlannedBudgetLimits.
	PlannedBudgetLimits map[string]Spend `type:"map"`

	// The period of time that is covered by a budget. The period has a start date
	// and an end date. The start date must come before the end date. The end date
	// must come before 06/15/87 00:00 UTC.
	//
	// If you create your budget and don't specify a start date, AWS defaults to
	// the start of your chosen time period (DAILY, MONTHLY, QUARTERLY, or ANNUALLY).
	// For example, if you created your budget on January 24, 2018, chose DAILY,
	// and didn't set a start date, AWS set your start date to 01/24/18 00:00 UTC.
	// If you chose MONTHLY, AWS set your start date to 01/01/18 00:00 UTC. If you
	// didn't specify an end date, AWS set your end date to 06/15/87 00:00 UTC.
	// The defaults are the same for the AWS Billing and Cost Management console
	// and the API.
	//
	// You can change either date with the UpdateBudget operation.
	//
	// After the end date, AWS deletes the budget and all associated notifications
	// and subscribers.
	TimePeriod *TimePeriod `type:"structure"`

	// The length of time until a budget resets the actual and forecasted spend.
	// DAILY is available only for RI_UTILIZATION, RI_COVERAGE, Savings_Plans_Utilization,
	// and Savings_Plans_Coverage budgets.
	//
	// TimeUnit is a required field
	TimeUnit TimeUnit `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

Represents the output of the CreateBudget operation. The content consists of the detailed metadata and data file information, and the current status of the budget object.

This is the ARN pattern for a budget:

arn:aws:budgetservice::AccountId:budget/budgetName

func (Budget) String

func (s Budget) String() string

String returns the string representation

func (*Budget) Validate

func (s *Budget) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type BudgetPerformanceHistory added in v0.6.0

type BudgetPerformanceHistory struct {

	// A string that represents the budget name. The ":" and "\" characters aren't
	// allowed.
	BudgetName *string `min:"1" type:"string"`

	// The type of a budget. It must be one of the following types:
	//
	// COST, USAGE, RI_UTILIZATION, or RI_COVERAGE.
	BudgetType BudgetType `type:"string" enum:"true"`

	// A list of amounts of cost or usage that you created budgets for, compared
	// to your actual costs or usage.
	BudgetedAndActualAmountsList []BudgetedAndActualAmounts `type:"list"`

	// The history of the cost filters for a budget during the specified time period.
	CostFilters map[string][]string `type:"map"`

	// The history of the cost types for a budget during the specified time period.
	CostTypes *CostTypes `type:"structure"`

	// The time unit of the budget, such as MONTHLY or QUARTERLY.
	TimeUnit TimeUnit `type:"string" enum:"true"`
	// contains filtered or unexported fields
}

A history of the state of a budget at the end of the budget's specified time period.

func (BudgetPerformanceHistory) String added in v0.6.0

func (s BudgetPerformanceHistory) String() string

String returns the string representation

type BudgetType

type BudgetType string

The type of a budget. It must be one of the following types:

COST, USAGE, RI_UTILIZATION, or RI_COVERAGE.

const (
	BudgetTypeUsage                   BudgetType = "USAGE"
	BudgetTypeCost                    BudgetType = "COST"
	BudgetTypeRiUtilization           BudgetType = "RI_UTILIZATION"
	BudgetTypeRiCoverage              BudgetType = "RI_COVERAGE"
	BudgetTypeSavingsPlansUtilization BudgetType = "SAVINGS_PLANS_UTILIZATION"
	BudgetTypeSavingsPlansCoverage    BudgetType = "SAVINGS_PLANS_COVERAGE"
)

Enum values for BudgetType

func (BudgetType) MarshalValue added in v0.3.0

func (enum BudgetType) MarshalValue() (string, error)

func (BudgetType) MarshalValueBuf added in v0.3.0

func (enum BudgetType) MarshalValueBuf(b []byte) ([]byte, error)

type BudgetedAndActualAmounts added in v0.6.0

type BudgetedAndActualAmounts struct {

	// Your actual costs or usage for a budget period.
	ActualAmount *Spend `type:"structure"`

	// The amount of cost or usage that you created the budget for.
	BudgetedAmount *Spend `type:"structure"`

	// The time period covered by this budget comparison.
	TimePeriod *TimePeriod `type:"structure"`
	// contains filtered or unexported fields
}

The amount of cost or usage that you created the budget for, compared to your actual costs or usage.

func (BudgetedAndActualAmounts) String added in v0.6.0

func (s BudgetedAndActualAmounts) String() string

String returns the string representation

type CalculatedSpend

type CalculatedSpend struct {

	// The amount of cost, usage, or RI units that you have used.
	//
	// ActualSpend is a required field
	ActualSpend *Spend `type:"structure" required:"true"`

	// The amount of cost, usage, or RI units that you are forecasted to use.
	ForecastedSpend *Spend `type:"structure"`
	// contains filtered or unexported fields
}

The spend objects that are associated with this budget. The actualSpend tracks how much you've used, cost, usage, or RI units, and the forecastedSpend tracks how much you are predicted to spend if your current usage remains steady.

For example, if it is the 20th of the month and you have spent 50 dollars on Amazon EC2, your actualSpend is 50 USD, and your forecastedSpend is 75 USD.

func (CalculatedSpend) String

func (s CalculatedSpend) String() string

String returns the string representation

func (*CalculatedSpend) Validate

func (s *CalculatedSpend) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Client added in v0.9.0

type Client struct {
	*aws.Client
}

Client provides the API operation methods for making requests to AWSBudgets. See this package's package overview docs for details on the service.

The client's methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New

func New(config aws.Config) *Client

New creates a new instance of the client from the provided Config.

Example:

// Create a client from just a config.
svc := budgets.New(myConfig)

func (*Client) CreateBudgetRequest added in v0.9.0

func (c *Client) CreateBudgetRequest(input *CreateBudgetInput) CreateBudgetRequest

CreateBudgetRequest returns a request value for making API operation for AWS Budgets.

Creates a budget and, if included, notifications and subscribers.

Only one of BudgetLimit or PlannedBudgetLimits can be present in the syntax at one time. Use the syntax that matches your case. The Request Syntax section shows the BudgetLimit syntax. For PlannedBudgetLimits, see the Examples (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_budgets_CreateBudget.html#API_CreateBudget_Examples) section.

// Example sending a request using CreateBudgetRequest.
req := client.CreateBudgetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) CreateNotificationRequest added in v0.9.0

func (c *Client) CreateNotificationRequest(input *CreateNotificationInput) CreateNotificationRequest

CreateNotificationRequest returns a request value for making API operation for AWS Budgets.

Creates a notification. You must create the budget before you create the associated notification.

// Example sending a request using CreateNotificationRequest.
req := client.CreateNotificationRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) CreateSubscriberRequest added in v0.9.0

func (c *Client) CreateSubscriberRequest(input *CreateSubscriberInput) CreateSubscriberRequest

CreateSubscriberRequest returns a request value for making API operation for AWS Budgets.

Creates a subscriber. You must create the associated budget and notification before you create the subscriber.

// Example sending a request using CreateSubscriberRequest.
req := client.CreateSubscriberRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) DeleteBudgetRequest added in v0.9.0

func (c *Client) DeleteBudgetRequest(input *DeleteBudgetInput) DeleteBudgetRequest

DeleteBudgetRequest returns a request value for making API operation for AWS Budgets.

Deletes a budget. You can delete your budget at any time.

Deleting a budget also deletes the notifications and subscribers that are associated with that budget.

// Example sending a request using DeleteBudgetRequest.
req := client.DeleteBudgetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) DeleteNotificationRequest added in v0.9.0

func (c *Client) DeleteNotificationRequest(input *DeleteNotificationInput) DeleteNotificationRequest

DeleteNotificationRequest returns a request value for making API operation for AWS Budgets.

Deletes a notification.

Deleting a notification also deletes the subscribers that are associated with the notification.

// Example sending a request using DeleteNotificationRequest.
req := client.DeleteNotificationRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) DeleteSubscriberRequest added in v0.9.0

func (c *Client) DeleteSubscriberRequest(input *DeleteSubscriberInput) DeleteSubscriberRequest

DeleteSubscriberRequest returns a request value for making API operation for AWS Budgets.

Deletes a subscriber.

Deleting the last subscriber to a notification also deletes the notification.

// Example sending a request using DeleteSubscriberRequest.
req := client.DeleteSubscriberRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) DescribeBudgetPerformanceHistoryRequest added in v0.9.0

func (c *Client) DescribeBudgetPerformanceHistoryRequest(input *DescribeBudgetPerformanceHistoryInput) DescribeBudgetPerformanceHistoryRequest

DescribeBudgetPerformanceHistoryRequest returns a request value for making API operation for AWS Budgets.

Describes the history for DAILY, MONTHLY, and QUARTERLY budgets. Budget history isn't available for ANNUAL budgets.

// Example sending a request using DescribeBudgetPerformanceHistoryRequest.
req := client.DescribeBudgetPerformanceHistoryRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) DescribeBudgetRequest added in v0.9.0

func (c *Client) DescribeBudgetRequest(input *DescribeBudgetInput) DescribeBudgetRequest

DescribeBudgetRequest returns a request value for making API operation for AWS Budgets.

Describes a budget.

The Request Syntax section shows the BudgetLimit syntax. For PlannedBudgetLimits, see the Examples (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_budgets_DescribeBudget.html#API_DescribeBudget_Examples) section.

// Example sending a request using DescribeBudgetRequest.
req := client.DescribeBudgetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) DescribeBudgetsRequest added in v0.9.0

func (c *Client) DescribeBudgetsRequest(input *DescribeBudgetsInput) DescribeBudgetsRequest

DescribeBudgetsRequest returns a request value for making API operation for AWS Budgets.

Lists the budgets that are associated with an account.

The Request Syntax section shows the BudgetLimit syntax. For PlannedBudgetLimits, see the Examples (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_budgets_DescribeBudgets.html#API_DescribeBudgets_Examples) section.

// Example sending a request using DescribeBudgetsRequest.
req := client.DescribeBudgetsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) DescribeNotificationsForBudgetRequest added in v0.9.0

func (c *Client) DescribeNotificationsForBudgetRequest(input *DescribeNotificationsForBudgetInput) DescribeNotificationsForBudgetRequest

DescribeNotificationsForBudgetRequest returns a request value for making API operation for AWS Budgets.

Lists the notifications that are associated with a budget.

// Example sending a request using DescribeNotificationsForBudgetRequest.
req := client.DescribeNotificationsForBudgetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) DescribeSubscribersForNotificationRequest added in v0.9.0

func (c *Client) DescribeSubscribersForNotificationRequest(input *DescribeSubscribersForNotificationInput) DescribeSubscribersForNotificationRequest

DescribeSubscribersForNotificationRequest returns a request value for making API operation for AWS Budgets.

Lists the subscribers that are associated with a notification.

// Example sending a request using DescribeSubscribersForNotificationRequest.
req := client.DescribeSubscribersForNotificationRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) UpdateBudgetRequest added in v0.9.0

func (c *Client) UpdateBudgetRequest(input *UpdateBudgetInput) UpdateBudgetRequest

UpdateBudgetRequest returns a request value for making API operation for AWS Budgets.

Updates a budget. You can change every part of a budget except for the budgetName and the calculatedSpend. When you modify a budget, the calculatedSpend drops to zero until AWS has new usage data to use for forecasting.

Only one of BudgetLimit or PlannedBudgetLimits can be present in the syntax at one time. Use the syntax that matches your case. The Request Syntax section shows the BudgetLimit syntax. For PlannedBudgetLimits, see the Examples (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_budgets_UpdateBudget.html#API_UpdateBudget_Examples) section.

// Example sending a request using UpdateBudgetRequest.
req := client.UpdateBudgetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) UpdateNotificationRequest added in v0.9.0

func (c *Client) UpdateNotificationRequest(input *UpdateNotificationInput) UpdateNotificationRequest

UpdateNotificationRequest returns a request value for making API operation for AWS Budgets.

Updates a notification.

// Example sending a request using UpdateNotificationRequest.
req := client.UpdateNotificationRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

func (*Client) UpdateSubscriberRequest added in v0.9.0

func (c *Client) UpdateSubscriberRequest(input *UpdateSubscriberInput) UpdateSubscriberRequest

UpdateSubscriberRequest returns a request value for making API operation for AWS Budgets.

Updates a subscriber.

// Example sending a request using UpdateSubscriberRequest.
req := client.UpdateSubscriberRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

type ComparisonOperator

type ComparisonOperator string

The comparison operator of a notification. Currently the service supports the following operators:

GREATER_THAN, LESS_THAN, EQUAL_TO

const (
	ComparisonOperatorGreaterThan ComparisonOperator = "GREATER_THAN"
	ComparisonOperatorLessThan    ComparisonOperator = "LESS_THAN"
	ComparisonOperatorEqualTo     ComparisonOperator = "EQUAL_TO"
)

Enum values for ComparisonOperator

func (ComparisonOperator) MarshalValue added in v0.3.0

func (enum ComparisonOperator) MarshalValue() (string, error)

func (ComparisonOperator) MarshalValueBuf added in v0.3.0

func (enum ComparisonOperator) MarshalValueBuf(b []byte) ([]byte, error)

type CostTypes

type CostTypes struct {

	// Specifies whether a budget includes credits.
	//
	// The default value is true.
	IncludeCredit *bool `type:"boolean"`

	// Specifies whether a budget includes discounts.
	//
	// The default value is true.
	IncludeDiscount *bool `type:"boolean"`

	// Specifies whether a budget includes non-RI subscription costs.
	//
	// The default value is true.
	IncludeOtherSubscription *bool `type:"boolean"`

	// Specifies whether a budget includes recurring fees such as monthly RI fees.
	//
	// The default value is true.
	IncludeRecurring *bool `type:"boolean"`

	// Specifies whether a budget includes refunds.
	//
	// The default value is true.
	IncludeRefund *bool `type:"boolean"`

	// Specifies whether a budget includes subscriptions.
	//
	// The default value is true.
	IncludeSubscription *bool `type:"boolean"`

	// Specifies whether a budget includes support subscription fees.
	//
	// The default value is true.
	IncludeSupport *bool `type:"boolean"`

	// Specifies whether a budget includes taxes.
	//
	// The default value is true.
	IncludeTax *bool `type:"boolean"`

	// Specifies whether a budget includes upfront RI costs.
	//
	// The default value is true.
	IncludeUpfront *bool `type:"boolean"`

	// Specifies whether a budget uses the amortized rate.
	//
	// The default value is false.
	UseAmortized *bool `type:"boolean"`

	// Specifies whether a budget uses a blended rate.
	//
	// The default value is false.
	UseBlended *bool `type:"boolean"`
	// contains filtered or unexported fields
}

The types of cost that are included in a COST budget, such as tax and subscriptions.

USAGE, RI_UTILIZATION, and RI_COVERAGE budgets do not have CostTypes.

func (CostTypes) String

func (s CostTypes) String() string

String returns the string representation

type CreateBudgetInput

type CreateBudgetInput struct {

	// The accountId that is associated with the budget.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// The budget object that you want to create.
	//
	// Budget is a required field
	Budget *Budget `type:"structure" required:"true"`

	// A notification that you want to associate with a budget. A budget can have
	// up to five notifications, and each notification can have one SNS subscriber
	// and up to 10 email subscribers. If you include notifications and subscribers
	// in your CreateBudget call, AWS creates the notifications and subscribers
	// for you.
	NotificationsWithSubscribers []NotificationWithSubscribers `type:"list"`
	// contains filtered or unexported fields
}

Request of CreateBudget

func (CreateBudgetInput) String

func (s CreateBudgetInput) String() string

String returns the string representation

func (*CreateBudgetInput) Validate

func (s *CreateBudgetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateBudgetOutput

type CreateBudgetOutput struct {
	// contains filtered or unexported fields
}

Response of CreateBudget

func (CreateBudgetOutput) String

func (s CreateBudgetOutput) String() string

String returns the string representation

type CreateBudgetRequest

type CreateBudgetRequest struct {
	*aws.Request
	Input *CreateBudgetInput
	Copy  func(*CreateBudgetInput) CreateBudgetRequest
}

CreateBudgetRequest is the request type for the CreateBudget API operation.

func (CreateBudgetRequest) Send

Send marshals and sends the CreateBudget API request.

type CreateBudgetResponse added in v0.9.0

type CreateBudgetResponse struct {
	*CreateBudgetOutput
	// contains filtered or unexported fields
}

CreateBudgetResponse is the response type for the CreateBudget API operation.

func (*CreateBudgetResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateBudgetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateBudget request.

type CreateNotificationInput

type CreateNotificationInput struct {

	// The accountId that is associated with the budget that you want to create
	// a notification for.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// The name of the budget that you want AWS to notify you about. Budget names
	// must be unique within an account.
	//
	// BudgetName is a required field
	BudgetName *string `min:"1" type:"string" required:"true"`

	// The notification that you want to create.
	//
	// Notification is a required field
	Notification *Notification `type:"structure" required:"true"`

	// A list of subscribers that you want to associate with the notification. Each
	// notification can have one SNS subscriber and up to 10 email subscribers.
	//
	// Subscribers is a required field
	Subscribers []Subscriber `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

Request of CreateNotification

func (CreateNotificationInput) String

func (s CreateNotificationInput) String() string

String returns the string representation

func (*CreateNotificationInput) Validate

func (s *CreateNotificationInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateNotificationOutput

type CreateNotificationOutput struct {
	// contains filtered or unexported fields
}

Response of CreateNotification

func (CreateNotificationOutput) String

func (s CreateNotificationOutput) String() string

String returns the string representation

type CreateNotificationRequest

type CreateNotificationRequest struct {
	*aws.Request
	Input *CreateNotificationInput
	Copy  func(*CreateNotificationInput) CreateNotificationRequest
}

CreateNotificationRequest is the request type for the CreateNotification API operation.

func (CreateNotificationRequest) Send

Send marshals and sends the CreateNotification API request.

type CreateNotificationResponse added in v0.9.0

type CreateNotificationResponse struct {
	*CreateNotificationOutput
	// contains filtered or unexported fields
}

CreateNotificationResponse is the response type for the CreateNotification API operation.

func (*CreateNotificationResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateNotificationResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateNotification request.

type CreateSubscriberInput

type CreateSubscriberInput struct {

	// The accountId that is associated with the budget that you want to create
	// a subscriber for.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// The name of the budget that you want to subscribe to. Budget names must be
	// unique within an account.
	//
	// BudgetName is a required field
	BudgetName *string `min:"1" type:"string" required:"true"`

	// The notification that you want to create a subscriber for.
	//
	// Notification is a required field
	Notification *Notification `type:"structure" required:"true"`

	// The subscriber that you want to associate with a budget notification.
	//
	// Subscriber is a required field
	Subscriber *Subscriber `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Request of CreateSubscriber

func (CreateSubscriberInput) String

func (s CreateSubscriberInput) String() string

String returns the string representation

func (*CreateSubscriberInput) Validate

func (s *CreateSubscriberInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateSubscriberOutput

type CreateSubscriberOutput struct {
	// contains filtered or unexported fields
}

Response of CreateSubscriber

func (CreateSubscriberOutput) String

func (s CreateSubscriberOutput) String() string

String returns the string representation

type CreateSubscriberRequest

type CreateSubscriberRequest struct {
	*aws.Request
	Input *CreateSubscriberInput
	Copy  func(*CreateSubscriberInput) CreateSubscriberRequest
}

CreateSubscriberRequest is the request type for the CreateSubscriber API operation.

func (CreateSubscriberRequest) Send

Send marshals and sends the CreateSubscriber API request.

type CreateSubscriberResponse added in v0.9.0

type CreateSubscriberResponse struct {
	*CreateSubscriberOutput
	// contains filtered or unexported fields
}

CreateSubscriberResponse is the response type for the CreateSubscriber API operation.

func (*CreateSubscriberResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateSubscriberResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateSubscriber request.

type DeleteBudgetInput

type DeleteBudgetInput struct {

	// The accountId that is associated with the budget that you want to delete.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// The name of the budget that you want to delete.
	//
	// BudgetName is a required field
	BudgetName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Request of DeleteBudget

func (DeleteBudgetInput) String

func (s DeleteBudgetInput) String() string

String returns the string representation

func (*DeleteBudgetInput) Validate

func (s *DeleteBudgetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteBudgetOutput

type DeleteBudgetOutput struct {
	// contains filtered or unexported fields
}

Response of DeleteBudget

func (DeleteBudgetOutput) String

func (s DeleteBudgetOutput) String() string

String returns the string representation

type DeleteBudgetRequest

type DeleteBudgetRequest struct {
	*aws.Request
	Input *DeleteBudgetInput
	Copy  func(*DeleteBudgetInput) DeleteBudgetRequest
}

DeleteBudgetRequest is the request type for the DeleteBudget API operation.

func (DeleteBudgetRequest) Send

Send marshals and sends the DeleteBudget API request.

type DeleteBudgetResponse added in v0.9.0

type DeleteBudgetResponse struct {
	*DeleteBudgetOutput
	// contains filtered or unexported fields
}

DeleteBudgetResponse is the response type for the DeleteBudget API operation.

func (*DeleteBudgetResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteBudgetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteBudget request.

type DeleteNotificationInput

type DeleteNotificationInput struct {

	// The accountId that is associated with the budget whose notification you want
	// to delete.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// The name of the budget whose notification you want to delete.
	//
	// BudgetName is a required field
	BudgetName *string `min:"1" type:"string" required:"true"`

	// The notification that you want to delete.
	//
	// Notification is a required field
	Notification *Notification `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Request of DeleteNotification

func (DeleteNotificationInput) String

func (s DeleteNotificationInput) String() string

String returns the string representation

func (*DeleteNotificationInput) Validate

func (s *DeleteNotificationInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteNotificationOutput

type DeleteNotificationOutput struct {
	// contains filtered or unexported fields
}

Response of DeleteNotification

func (DeleteNotificationOutput) String

func (s DeleteNotificationOutput) String() string

String returns the string representation

type DeleteNotificationRequest

type DeleteNotificationRequest struct {
	*aws.Request
	Input *DeleteNotificationInput
	Copy  func(*DeleteNotificationInput) DeleteNotificationRequest
}

DeleteNotificationRequest is the request type for the DeleteNotification API operation.

func (DeleteNotificationRequest) Send

Send marshals and sends the DeleteNotification API request.

type DeleteNotificationResponse added in v0.9.0

type DeleteNotificationResponse struct {
	*DeleteNotificationOutput
	// contains filtered or unexported fields
}

DeleteNotificationResponse is the response type for the DeleteNotification API operation.

func (*DeleteNotificationResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteNotificationResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteNotification request.

type DeleteSubscriberInput

type DeleteSubscriberInput struct {

	// The accountId that is associated with the budget whose subscriber you want
	// to delete.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// The name of the budget whose subscriber you want to delete.
	//
	// BudgetName is a required field
	BudgetName *string `min:"1" type:"string" required:"true"`

	// The notification whose subscriber you want to delete.
	//
	// Notification is a required field
	Notification *Notification `type:"structure" required:"true"`

	// The subscriber that you want to delete.
	//
	// Subscriber is a required field
	Subscriber *Subscriber `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Request of DeleteSubscriber

func (DeleteSubscriberInput) String

func (s DeleteSubscriberInput) String() string

String returns the string representation

func (*DeleteSubscriberInput) Validate

func (s *DeleteSubscriberInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteSubscriberOutput

type DeleteSubscriberOutput struct {
	// contains filtered or unexported fields
}

Response of DeleteSubscriber

func (DeleteSubscriberOutput) String

func (s DeleteSubscriberOutput) String() string

String returns the string representation

type DeleteSubscriberRequest

type DeleteSubscriberRequest struct {
	*aws.Request
	Input *DeleteSubscriberInput
	Copy  func(*DeleteSubscriberInput) DeleteSubscriberRequest
}

DeleteSubscriberRequest is the request type for the DeleteSubscriber API operation.

func (DeleteSubscriberRequest) Send

Send marshals and sends the DeleteSubscriber API request.

type DeleteSubscriberResponse added in v0.9.0

type DeleteSubscriberResponse struct {
	*DeleteSubscriberOutput
	// contains filtered or unexported fields
}

DeleteSubscriberResponse is the response type for the DeleteSubscriber API operation.

func (*DeleteSubscriberResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteSubscriberResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteSubscriber request.

type DescribeBudgetInput

type DescribeBudgetInput struct {

	// The accountId that is associated with the budget that you want a description
	// of.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// The name of the budget that you want a description of.
	//
	// BudgetName is a required field
	BudgetName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Request of DescribeBudget

func (DescribeBudgetInput) String

func (s DescribeBudgetInput) String() string

String returns the string representation

func (*DescribeBudgetInput) Validate

func (s *DescribeBudgetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeBudgetOutput

type DescribeBudgetOutput struct {

	// The description of the budget.
	Budget *Budget `type:"structure"`
	// contains filtered or unexported fields
}

Response of DescribeBudget

func (DescribeBudgetOutput) String

func (s DescribeBudgetOutput) String() string

String returns the string representation

type DescribeBudgetPerformanceHistoryInput added in v0.6.0

type DescribeBudgetPerformanceHistoryInput struct {

	// The account ID of the user. It should be a 12-digit number.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// A string that represents the budget name. The ":" and "\" characters aren't
	// allowed.
	//
	// BudgetName is a required field
	BudgetName *string `min:"1" type:"string" required:"true"`

	// An integer that represents how many entries a paginated response contains.
	// The maximum is 100.
	MaxResults *int64 `min:"1" type:"integer"`

	// A generic string.
	NextToken *string `type:"string"`

	// Retrieves how often the budget went into an ALARM state for the specified
	// time period.
	TimePeriod *TimePeriod `type:"structure"`
	// contains filtered or unexported fields
}

func (DescribeBudgetPerformanceHistoryInput) String added in v0.6.0

String returns the string representation

func (*DescribeBudgetPerformanceHistoryInput) Validate added in v0.6.0

Validate inspects the fields of the type to determine if they are valid.

type DescribeBudgetPerformanceHistoryOutput added in v0.6.0

type DescribeBudgetPerformanceHistoryOutput struct {

	// The history of how often the budget has gone into an ALARM state.
	//
	// For DAILY budgets, the history saves the state of the budget for the last
	// 60 days. For MONTHLY budgets, the history saves the state of the budget for
	// the current month plus the last 12 months. For QUARTERLY budgets, the history
	// saves the state of the budget for the last four quarters.
	BudgetPerformanceHistory *BudgetPerformanceHistory `type:"structure"`

	// A generic string.
	NextToken *string `type:"string"`
	// contains filtered or unexported fields
}

func (DescribeBudgetPerformanceHistoryOutput) String added in v0.6.0

String returns the string representation

type DescribeBudgetPerformanceHistoryRequest added in v0.6.0

type DescribeBudgetPerformanceHistoryRequest struct {
	*aws.Request
	Input *DescribeBudgetPerformanceHistoryInput
	Copy  func(*DescribeBudgetPerformanceHistoryInput) DescribeBudgetPerformanceHistoryRequest
}

DescribeBudgetPerformanceHistoryRequest is the request type for the DescribeBudgetPerformanceHistory API operation.

func (DescribeBudgetPerformanceHistoryRequest) Send added in v0.6.0

Send marshals and sends the DescribeBudgetPerformanceHistory API request.

type DescribeBudgetPerformanceHistoryResponse added in v0.9.0

type DescribeBudgetPerformanceHistoryResponse struct {
	*DescribeBudgetPerformanceHistoryOutput
	// contains filtered or unexported fields
}

DescribeBudgetPerformanceHistoryResponse is the response type for the DescribeBudgetPerformanceHistory API operation.

func (*DescribeBudgetPerformanceHistoryResponse) SDKResponseMetdata added in v0.9.0

func (r *DescribeBudgetPerformanceHistoryResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DescribeBudgetPerformanceHistory request.

type DescribeBudgetRequest

type DescribeBudgetRequest struct {
	*aws.Request
	Input *DescribeBudgetInput
	Copy  func(*DescribeBudgetInput) DescribeBudgetRequest
}

DescribeBudgetRequest is the request type for the DescribeBudget API operation.

func (DescribeBudgetRequest) Send

Send marshals and sends the DescribeBudget API request.

type DescribeBudgetResponse added in v0.9.0

type DescribeBudgetResponse struct {
	*DescribeBudgetOutput
	// contains filtered or unexported fields
}

DescribeBudgetResponse is the response type for the DescribeBudget API operation.

func (*DescribeBudgetResponse) SDKResponseMetdata added in v0.9.0

func (r *DescribeBudgetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DescribeBudget request.

type DescribeBudgetsInput

type DescribeBudgetsInput struct {

	// The accountId that is associated with the budgets that you want descriptions
	// of.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// An optional integer that represents how many entries a paginated response
	// contains. The maximum is 100.
	MaxResults *int64 `min:"1" type:"integer"`

	// The pagination token that you include in your request to indicate the next
	// set of results that you want to retrieve.
	NextToken *string `type:"string"`
	// contains filtered or unexported fields
}

Request of DescribeBudgets

func (DescribeBudgetsInput) String

func (s DescribeBudgetsInput) String() string

String returns the string representation

func (*DescribeBudgetsInput) Validate

func (s *DescribeBudgetsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeBudgetsOutput

type DescribeBudgetsOutput struct {

	// A list of budgets.
	Budgets []Budget `type:"list"`

	// The pagination token in the service response that indicates the next set
	// of results that you can retrieve.
	NextToken *string `type:"string"`
	// contains filtered or unexported fields
}

Response of DescribeBudgets

func (DescribeBudgetsOutput) String

func (s DescribeBudgetsOutput) String() string

String returns the string representation

type DescribeBudgetsRequest

type DescribeBudgetsRequest struct {
	*aws.Request
	Input *DescribeBudgetsInput
	Copy  func(*DescribeBudgetsInput) DescribeBudgetsRequest
}

DescribeBudgetsRequest is the request type for the DescribeBudgets API operation.

func (DescribeBudgetsRequest) Send

Send marshals and sends the DescribeBudgets API request.

type DescribeBudgetsResponse added in v0.9.0

type DescribeBudgetsResponse struct {
	*DescribeBudgetsOutput
	// contains filtered or unexported fields
}

DescribeBudgetsResponse is the response type for the DescribeBudgets API operation.

func (*DescribeBudgetsResponse) SDKResponseMetdata added in v0.9.0

func (r *DescribeBudgetsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DescribeBudgets request.

type DescribeNotificationsForBudgetInput

type DescribeNotificationsForBudgetInput struct {

	// The accountId that is associated with the budget whose notifications you
	// want descriptions of.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// The name of the budget whose notifications you want descriptions of.
	//
	// BudgetName is a required field
	BudgetName *string `min:"1" type:"string" required:"true"`

	// An optional integer that represents how many entries a paginated response
	// contains. The maximum is 100.
	MaxResults *int64 `min:"1" type:"integer"`

	// The pagination token that you include in your request to indicate the next
	// set of results that you want to retrieve.
	NextToken *string `type:"string"`
	// contains filtered or unexported fields
}

Request of DescribeNotificationsForBudget

func (DescribeNotificationsForBudgetInput) String

String returns the string representation

func (*DescribeNotificationsForBudgetInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type DescribeNotificationsForBudgetOutput

type DescribeNotificationsForBudgetOutput struct {

	// The pagination token in the service response that indicates the next set
	// of results that you can retrieve.
	NextToken *string `type:"string"`

	// A list of notifications that are associated with a budget.
	Notifications []Notification `type:"list"`
	// contains filtered or unexported fields
}

Response of GetNotificationsForBudget

func (DescribeNotificationsForBudgetOutput) String

String returns the string representation

type DescribeNotificationsForBudgetRequest

type DescribeNotificationsForBudgetRequest struct {
	*aws.Request
	Input *DescribeNotificationsForBudgetInput
	Copy  func(*DescribeNotificationsForBudgetInput) DescribeNotificationsForBudgetRequest
}

DescribeNotificationsForBudgetRequest is the request type for the DescribeNotificationsForBudget API operation.

func (DescribeNotificationsForBudgetRequest) Send

Send marshals and sends the DescribeNotificationsForBudget API request.

type DescribeNotificationsForBudgetResponse added in v0.9.0

type DescribeNotificationsForBudgetResponse struct {
	*DescribeNotificationsForBudgetOutput
	// contains filtered or unexported fields
}

DescribeNotificationsForBudgetResponse is the response type for the DescribeNotificationsForBudget API operation.

func (*DescribeNotificationsForBudgetResponse) SDKResponseMetdata added in v0.9.0

func (r *DescribeNotificationsForBudgetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DescribeNotificationsForBudget request.

type DescribeSubscribersForNotificationInput

type DescribeSubscribersForNotificationInput struct {

	// The accountId that is associated with the budget whose subscribers you want
	// descriptions of.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// The name of the budget whose subscribers you want descriptions of.
	//
	// BudgetName is a required field
	BudgetName *string `min:"1" type:"string" required:"true"`

	// An optional integer that represents how many entries a paginated response
	// contains. The maximum is 100.
	MaxResults *int64 `min:"1" type:"integer"`

	// The pagination token that you include in your request to indicate the next
	// set of results that you want to retrieve.
	NextToken *string `type:"string"`

	// The notification whose subscribers you want to list.
	//
	// Notification is a required field
	Notification *Notification `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Request of DescribeSubscribersForNotification

func (DescribeSubscribersForNotificationInput) String

String returns the string representation

func (*DescribeSubscribersForNotificationInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type DescribeSubscribersForNotificationOutput

type DescribeSubscribersForNotificationOutput struct {

	// The pagination token in the service response that indicates the next set
	// of results that you can retrieve.
	NextToken *string `type:"string"`

	// A list of subscribers that are associated with a notification.
	Subscribers []Subscriber `min:"1" type:"list"`
	// contains filtered or unexported fields
}

Response of DescribeSubscribersForNotification

func (DescribeSubscribersForNotificationOutput) String

String returns the string representation

type DescribeSubscribersForNotificationRequest

DescribeSubscribersForNotificationRequest is the request type for the DescribeSubscribersForNotification API operation.

func (DescribeSubscribersForNotificationRequest) Send

Send marshals and sends the DescribeSubscribersForNotification API request.

type DescribeSubscribersForNotificationResponse added in v0.9.0

type DescribeSubscribersForNotificationResponse struct {
	*DescribeSubscribersForNotificationOutput
	// contains filtered or unexported fields
}

DescribeSubscribersForNotificationResponse is the response type for the DescribeSubscribersForNotification API operation.

func (*DescribeSubscribersForNotificationResponse) SDKResponseMetdata added in v0.9.0

func (r *DescribeSubscribersForNotificationResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DescribeSubscribersForNotification request.

type Notification

type Notification struct {

	// The comparison that is used for this notification.
	//
	// ComparisonOperator is a required field
	ComparisonOperator ComparisonOperator `type:"string" required:"true" enum:"true"`

	// Whether this notification is in alarm. If a budget notification is in the
	// ALARM state, you have passed the set threshold for the budget.
	NotificationState NotificationState `type:"string" enum:"true"`

	// Whether the notification is for how much you have spent (ACTUAL) or for how
	// much you're forecasted to spend (FORECASTED).
	//
	// NotificationType is a required field
	NotificationType NotificationType `type:"string" required:"true" enum:"true"`

	// The threshold that is associated with a notification. Thresholds are always
	// a percentage.
	//
	// Threshold is a required field
	Threshold *float64 `type:"double" required:"true"`

	// The type of threshold for a notification. For ABSOLUTE_VALUE thresholds,
	// AWS notifies you when you go over or are forecasted to go over your total
	// cost threshold. For PERCENTAGE thresholds, AWS notifies you when you go over
	// or are forecasted to go over a certain percentage of your forecasted spend.
	// For example, if you have a budget for 200 dollars and you have a PERCENTAGE
	// threshold of 80%, AWS notifies you when you go over 160 dollars.
	ThresholdType ThresholdType `type:"string" enum:"true"`
	// contains filtered or unexported fields
}

A notification that is associated with a budget. A budget can have up to five notifications.

Each notification must have at least one subscriber. A notification can have one SNS subscriber and up to 10 email subscribers, for a total of 11 subscribers.

For example, if you have a budget for 200 dollars and you want to be notified when you go over 160 dollars, create a notification with the following parameters:

  • A notificationType of ACTUAL

  • A thresholdType of PERCENTAGE

  • A comparisonOperator of GREATER_THAN

  • A notification threshold of 80

func (Notification) String

func (s Notification) String() string

String returns the string representation

func (*Notification) Validate

func (s *Notification) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type NotificationState added in v0.6.0

type NotificationState string
const (
	NotificationStateOk    NotificationState = "OK"
	NotificationStateAlarm NotificationState = "ALARM"
)

Enum values for NotificationState

func (NotificationState) MarshalValue added in v0.6.0

func (enum NotificationState) MarshalValue() (string, error)

func (NotificationState) MarshalValueBuf added in v0.6.0

func (enum NotificationState) MarshalValueBuf(b []byte) ([]byte, error)

type NotificationType

type NotificationType string

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

const (
	NotificationTypeActual     NotificationType = "ACTUAL"
	NotificationTypeForecasted NotificationType = "FORECASTED"
)

Enum values for NotificationType

func (NotificationType) MarshalValue added in v0.3.0

func (enum NotificationType) MarshalValue() (string, error)

func (NotificationType) MarshalValueBuf added in v0.3.0

func (enum NotificationType) MarshalValueBuf(b []byte) ([]byte, error)

type NotificationWithSubscribers

type NotificationWithSubscribers struct {

	// The notification that is associated with a budget.
	//
	// Notification is a required field
	Notification *Notification `type:"structure" required:"true"`

	// A list of subscribers who are subscribed to this notification.
	//
	// Subscribers is a required field
	Subscribers []Subscriber `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

A notification with subscribers. A notification can have one SNS subscriber and up to 10 email subscribers, for a total of 11 subscribers.

func (NotificationWithSubscribers) String

String returns the string representation

func (*NotificationWithSubscribers) Validate

func (s *NotificationWithSubscribers) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Spend

type Spend struct {

	// The cost or usage amount that is associated with a budget forecast, actual
	// spend, or budget threshold.
	//
	// Amount is a required field
	Amount *string `min:"1" type:"string" required:"true"`

	// The unit of measurement that is used for the budget forecast, actual spend,
	// or budget threshold, such as dollars or GB.
	//
	// Unit is a required field
	Unit *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The amount of cost or usage that is measured for a budget.

For example, a Spend for 3 GB of S3 usage would have the following parameters:

  • An Amount of 3

  • A unit of GB

func (Spend) String

func (s Spend) String() string

String returns the string representation

func (*Spend) Validate

func (s *Spend) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Subscriber

type Subscriber struct {

	// The address that AWS 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.
	//
	// Address is a required field
	Address *string `min:"1" type:"string" required:"true" sensitive:"true"`

	// The type of notification that AWS sends to a subscriber.
	//
	// SubscriptionType is a required field
	SubscriptionType SubscriptionType `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

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 would have the following parameters:

  • A subscriptionType of EMAIL

  • An address of example@example.com

func (Subscriber) String

func (s Subscriber) String() string

String returns the string representation

func (*Subscriber) Validate

func (s *Subscriber) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type SubscriptionType

type SubscriptionType string

The subscription type of the subscriber. It can be SMS or EMAIL.

const (
	SubscriptionTypeSns   SubscriptionType = "SNS"
	SubscriptionTypeEmail SubscriptionType = "EMAIL"
)

Enum values for SubscriptionType

func (SubscriptionType) MarshalValue added in v0.3.0

func (enum SubscriptionType) MarshalValue() (string, error)

func (SubscriptionType) MarshalValueBuf added in v0.3.0

func (enum SubscriptionType) MarshalValueBuf(b []byte) ([]byte, error)

type ThresholdType

type ThresholdType string

The type of threshold for a notification. It can be PERCENTAGE or ABSOLUTE_VALUE.

const (
	ThresholdTypePercentage    ThresholdType = "PERCENTAGE"
	ThresholdTypeAbsoluteValue ThresholdType = "ABSOLUTE_VALUE"
)

Enum values for ThresholdType

func (ThresholdType) MarshalValue added in v0.3.0

func (enum ThresholdType) MarshalValue() (string, error)

func (ThresholdType) MarshalValueBuf added in v0.3.0

func (enum ThresholdType) MarshalValueBuf(b []byte) ([]byte, error)

type TimePeriod

type TimePeriod struct {

	// The end date for a budget. If you didn't specify an end date, AWS set your
	// end date to 06/15/87 00:00 UTC. The defaults are the same for the AWS Billing
	// and Cost Management console and the API.
	//
	// After the end date, AWS deletes the budget and all associated notifications
	// and subscribers. You can change your end date with the UpdateBudget operation.
	End *time.Time `type:"timestamp"`

	// The start date for a budget. If you created your budget and didn't specify
	// a start date, AWS defaults to the start of your chosen time period (DAILY,
	// MONTHLY, QUARTERLY, or ANNUALLY). For example, if you created your budget
	// on January 24, 2018, chose DAILY, and didn't set a start date, AWS set your
	// start date to 01/24/18 00:00 UTC. If you chose MONTHLY, AWS set your start
	// date to 01/01/18 00:00 UTC. The defaults are the same for the AWS Billing
	// and Cost Management console and the API.
	//
	// You can change your start date with the UpdateBudget operation.
	Start *time.Time `type:"timestamp"`
	// contains filtered or unexported fields
}

The period of time that is covered by a budget. The period has a start date and an end date. The start date must come before the end date. There are no restrictions on the end date.

func (TimePeriod) String

func (s TimePeriod) String() string

String returns the string representation

type TimeUnit

type TimeUnit string

The time unit of the budget, such as MONTHLY or QUARTERLY.

const (
	TimeUnitDaily     TimeUnit = "DAILY"
	TimeUnitMonthly   TimeUnit = "MONTHLY"
	TimeUnitQuarterly TimeUnit = "QUARTERLY"
	TimeUnitAnnually  TimeUnit = "ANNUALLY"
)

Enum values for TimeUnit

func (TimeUnit) MarshalValue added in v0.3.0

func (enum TimeUnit) MarshalValue() (string, error)

func (TimeUnit) MarshalValueBuf added in v0.3.0

func (enum TimeUnit) MarshalValueBuf(b []byte) ([]byte, error)

type UpdateBudgetInput

type UpdateBudgetInput struct {

	// The accountId that is associated with the budget that you want to update.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// The budget that you want to update your budget to.
	//
	// NewBudget is a required field
	NewBudget *Budget `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Request of UpdateBudget

func (UpdateBudgetInput) String

func (s UpdateBudgetInput) String() string

String returns the string representation

func (*UpdateBudgetInput) Validate

func (s *UpdateBudgetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateBudgetOutput

type UpdateBudgetOutput struct {
	// contains filtered or unexported fields
}

Response of UpdateBudget

func (UpdateBudgetOutput) String

func (s UpdateBudgetOutput) String() string

String returns the string representation

type UpdateBudgetRequest

type UpdateBudgetRequest struct {
	*aws.Request
	Input *UpdateBudgetInput
	Copy  func(*UpdateBudgetInput) UpdateBudgetRequest
}

UpdateBudgetRequest is the request type for the UpdateBudget API operation.

func (UpdateBudgetRequest) Send

Send marshals and sends the UpdateBudget API request.

type UpdateBudgetResponse added in v0.9.0

type UpdateBudgetResponse struct {
	*UpdateBudgetOutput
	// contains filtered or unexported fields
}

UpdateBudgetResponse is the response type for the UpdateBudget API operation.

func (*UpdateBudgetResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateBudgetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateBudget request.

type UpdateNotificationInput

type UpdateNotificationInput struct {

	// The accountId that is associated with the budget whose notification you want
	// to update.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// The name of the budget whose notification you want to update.
	//
	// BudgetName is a required field
	BudgetName *string `min:"1" type:"string" required:"true"`

	// The updated notification to be associated with a budget.
	//
	// NewNotification is a required field
	NewNotification *Notification `type:"structure" required:"true"`

	// The previous notification that is associated with a budget.
	//
	// OldNotification is a required field
	OldNotification *Notification `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Request of UpdateNotification

func (UpdateNotificationInput) String

func (s UpdateNotificationInput) String() string

String returns the string representation

func (*UpdateNotificationInput) Validate

func (s *UpdateNotificationInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateNotificationOutput

type UpdateNotificationOutput struct {
	// contains filtered or unexported fields
}

Response of UpdateNotification

func (UpdateNotificationOutput) String

func (s UpdateNotificationOutput) String() string

String returns the string representation

type UpdateNotificationRequest

type UpdateNotificationRequest struct {
	*aws.Request
	Input *UpdateNotificationInput
	Copy  func(*UpdateNotificationInput) UpdateNotificationRequest
}

UpdateNotificationRequest is the request type for the UpdateNotification API operation.

func (UpdateNotificationRequest) Send

Send marshals and sends the UpdateNotification API request.

type UpdateNotificationResponse added in v0.9.0

type UpdateNotificationResponse struct {
	*UpdateNotificationOutput
	// contains filtered or unexported fields
}

UpdateNotificationResponse is the response type for the UpdateNotification API operation.

func (*UpdateNotificationResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateNotificationResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateNotification request.

type UpdateSubscriberInput

type UpdateSubscriberInput struct {

	// The accountId that is associated with the budget whose subscriber you want
	// to update.
	//
	// AccountId is a required field
	AccountId *string `min:"12" type:"string" required:"true"`

	// The name of the budget whose subscriber you want to update.
	//
	// BudgetName is a required field
	BudgetName *string `min:"1" type:"string" required:"true"`

	// The updated subscriber that is associated with a budget notification.
	//
	// NewSubscriber is a required field
	NewSubscriber *Subscriber `type:"structure" required:"true"`

	// The notification whose subscriber you want to update.
	//
	// Notification is a required field
	Notification *Notification `type:"structure" required:"true"`

	// The previous subscriber that is associated with a budget notification.
	//
	// OldSubscriber is a required field
	OldSubscriber *Subscriber `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Request of UpdateSubscriber

func (UpdateSubscriberInput) String

func (s UpdateSubscriberInput) String() string

String returns the string representation

func (*UpdateSubscriberInput) Validate

func (s *UpdateSubscriberInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateSubscriberOutput

type UpdateSubscriberOutput struct {
	// contains filtered or unexported fields
}

Response of UpdateSubscriber

func (UpdateSubscriberOutput) String

func (s UpdateSubscriberOutput) String() string

String returns the string representation

type UpdateSubscriberRequest

type UpdateSubscriberRequest struct {
	*aws.Request
	Input *UpdateSubscriberInput
	Copy  func(*UpdateSubscriberInput) UpdateSubscriberRequest
}

UpdateSubscriberRequest is the request type for the UpdateSubscriber API operation.

func (UpdateSubscriberRequest) Send

Send marshals and sends the UpdateSubscriber API request.

type UpdateSubscriberResponse added in v0.9.0

type UpdateSubscriberResponse struct {
	*UpdateSubscriberOutput
	// contains filtered or unexported fields
}

UpdateSubscriberResponse is the response type for the UpdateSubscriber API operation.

func (*UpdateSubscriberResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateSubscriberResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateSubscriber request.

Directories

Path Synopsis
Package budgetsiface provides an interface to enable mocking the AWS Budgets service client for testing your code.
Package budgetsiface provides an interface to enable mocking the AWS Budgets service client for testing your code.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL