costexplorer

package module
v1.37.1 Latest Latest
Warning

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

Go to latest
Published: Mar 29, 2024 License: Apache-2.0 Imports: 39 Imported by: 48

Documentation

Overview

Package costexplorer provides the API client, operations, and parameter types for AWS Cost Explorer Service.

You can use the Cost Explorer API to programmatically query your cost and usage data. You can query for aggregated data such as total monthly costs or total daily usage. You can also query for granular data. This might include the number of daily write operations for Amazon DynamoDB database tables in your production environment. Service Endpoint The Cost Explorer API provides the following endpoint:

For information about the costs that are associated with the Cost Explorer API, see Amazon Web Services Cost Management Pricing (http://aws.amazon.com/aws-cost-management/pricing/) .

Index

Constants

View Source
const ServiceAPIVersion = "2017-10-25"
View Source
const ServiceID = "Cost Explorer"

Variables

This section is empty.

Functions

func NewDefaultEndpointResolver

func NewDefaultEndpointResolver() *internalendpoints.Resolver

NewDefaultEndpointResolver constructs a new service endpoint resolver

func WithAPIOptions added in v1.0.0

func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options)

WithAPIOptions returns a functional option for setting the Client's APIOptions option.

func WithEndpointResolver deprecated

func WithEndpointResolver(v EndpointResolver) func(*Options)

Deprecated: EndpointResolver and WithEndpointResolver. Providing a value for this field will likely prevent you from using any endpoint-related service features released after the introduction of EndpointResolverV2 and BaseEndpoint. To migrate an EndpointResolver implementation that uses a custom endpoint, set the client option BaseEndpoint instead.

func WithEndpointResolverV2 added in v1.27.0

func WithEndpointResolverV2(v EndpointResolverV2) func(*Options)

WithEndpointResolverV2 returns a functional option for setting the Client's EndpointResolverV2 option.

func WithSigV4SigningName added in v1.32.2

func WithSigV4SigningName(name string) func(*Options)

WithSigV4SigningName applies an override to the authentication workflow to use the given signing name for SigV4-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing name from both auth scheme resolution and endpoint resolution.

func WithSigV4SigningRegion added in v1.32.2

func WithSigV4SigningRegion(region string) func(*Options)

WithSigV4SigningRegion applies an override to the authentication workflow to use the given signing region for SigV4-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing region from both auth scheme resolution and endpoint resolution.

Types

type AuthResolverParameters added in v1.32.2

type AuthResolverParameters struct {
	// The name of the operation being invoked.
	Operation string

	// The region in which the operation is being invoked.
	Region string
}

AuthResolverParameters contains the set of inputs necessary for auth scheme resolution.

type AuthSchemeResolver added in v1.32.2

type AuthSchemeResolver interface {
	ResolveAuthSchemes(context.Context, *AuthResolverParameters) ([]*smithyauth.Option, error)
}

AuthSchemeResolver returns a set of possible authentication options for an operation.

type Client

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

Client provides the API client to make operations call for AWS Cost Explorer Service.

func New

func New(options Options, optFns ...func(*Options)) *Client

New returns an initialized Client based on the functional options. Provide additional functional options to further configure the behavior of the client, such as changing the client's endpoint or adding custom middleware behavior.

func NewFromConfig

func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client

NewFromConfig returns a new client from the provided config.

func (*Client) CreateAnomalyMonitor added in v0.29.0

func (c *Client) CreateAnomalyMonitor(ctx context.Context, params *CreateAnomalyMonitorInput, optFns ...func(*Options)) (*CreateAnomalyMonitorOutput, error)

Creates a new cost anomaly detection monitor with the requested type and monitor specification.

func (*Client) CreateAnomalySubscription added in v0.29.0

func (c *Client) CreateAnomalySubscription(ctx context.Context, params *CreateAnomalySubscriptionInput, optFns ...func(*Options)) (*CreateAnomalySubscriptionOutput, error)

Adds an alert subscription to a cost anomaly detection monitor. You can use each subscription to define subscribers with email or SNS notifications. Email subscribers can set an absolute or percentage threshold and a time frequency for receiving notifications.

func (*Client) CreateCostCategoryDefinition

func (c *Client) CreateCostCategoryDefinition(ctx context.Context, params *CreateCostCategoryDefinitionInput, optFns ...func(*Options)) (*CreateCostCategoryDefinitionOutput, error)

Creates a new Cost Category with the requested name and rules.

func (*Client) DeleteAnomalyMonitor added in v0.29.0

func (c *Client) DeleteAnomalyMonitor(ctx context.Context, params *DeleteAnomalyMonitorInput, optFns ...func(*Options)) (*DeleteAnomalyMonitorOutput, error)

Deletes a cost anomaly monitor.

func (*Client) DeleteAnomalySubscription added in v0.29.0

func (c *Client) DeleteAnomalySubscription(ctx context.Context, params *DeleteAnomalySubscriptionInput, optFns ...func(*Options)) (*DeleteAnomalySubscriptionOutput, error)

Deletes a cost anomaly subscription.

func (*Client) DeleteCostCategoryDefinition

func (c *Client) DeleteCostCategoryDefinition(ctx context.Context, params *DeleteCostCategoryDefinitionInput, optFns ...func(*Options)) (*DeleteCostCategoryDefinitionOutput, error)

Deletes a Cost Category. Expenses from this month going forward will no longer be categorized with this Cost Category.

func (*Client) DescribeCostCategoryDefinition

func (c *Client) DescribeCostCategoryDefinition(ctx context.Context, params *DescribeCostCategoryDefinitionInput, optFns ...func(*Options)) (*DescribeCostCategoryDefinitionOutput, error)

Returns the name, Amazon Resource Name (ARN), rules, definition, and effective dates of a Cost Category that's defined in the account. You have the option to use EffectiveOn to return a Cost Category that's active on a specific date. If there's no EffectiveOn specified, you see a Cost Category that's effective on the current date. If Cost Category is still effective, EffectiveEnd is omitted in the response.

func (*Client) GetAnomalies added in v0.29.0

func (c *Client) GetAnomalies(ctx context.Context, params *GetAnomaliesInput, optFns ...func(*Options)) (*GetAnomaliesOutput, error)

Retrieves all of the cost anomalies detected on your account during the time period that's specified by the DateInterval object. Anomalies are available for up to 90 days.

func (*Client) GetAnomalyMonitors added in v0.29.0

func (c *Client) GetAnomalyMonitors(ctx context.Context, params *GetAnomalyMonitorsInput, optFns ...func(*Options)) (*GetAnomalyMonitorsOutput, error)

Retrieves the cost anomaly monitor definitions for your account. You can filter using a list of cost anomaly monitor Amazon Resource Names (ARNs).

func (*Client) GetAnomalySubscriptions added in v0.29.0

func (c *Client) GetAnomalySubscriptions(ctx context.Context, params *GetAnomalySubscriptionsInput, optFns ...func(*Options)) (*GetAnomalySubscriptionsOutput, error)

Retrieves the cost anomaly subscription objects for your account. You can filter using a list of cost anomaly monitor Amazon Resource Names (ARNs).

func (*Client) GetApproximateUsageRecords added in v1.36.0

func (c *Client) GetApproximateUsageRecords(ctx context.Context, params *GetApproximateUsageRecordsInput, optFns ...func(*Options)) (*GetApproximateUsageRecordsOutput, error)

Retrieves estimated usage records for hourly granularity or resource-level data at daily granularity.

func (*Client) GetCostAndUsage

func (c *Client) GetCostAndUsage(ctx context.Context, params *GetCostAndUsageInput, optFns ...func(*Options)) (*GetCostAndUsageOutput, error)

Retrieves cost and usage metrics for your account. You can specify which cost and usage-related metric that you want the request to return. For example, you can specify BlendedCosts or UsageQuantity . You can also filter and group your data by various dimensions, such as SERVICE or AZ , in a specific time range. For a complete list of valid dimensions, see the GetDimensionValues (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_GetDimensionValues.html) operation. Management account in an organization in Organizations have access to all member accounts. For information about filter limitations, see Quotas and restrictions (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-limits.html) in the Billing and Cost Management User Guide.

func (*Client) GetCostAndUsageWithResources

func (c *Client) GetCostAndUsageWithResources(ctx context.Context, params *GetCostAndUsageWithResourcesInput, optFns ...func(*Options)) (*GetCostAndUsageWithResourcesOutput, error)

Retrieves cost and usage metrics with resources for your account. You can specify which cost and usage-related metric, such as BlendedCosts or UsageQuantity , that you want the request to return. You can also filter and group your data by various dimensions, such as SERVICE or AZ , in a specific time range. For a complete list of valid dimensions, see the GetDimensionValues (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_GetDimensionValues.html) operation. Management account in an organization in Organizations have access to all member accounts. This API is currently available for the Amazon Elastic Compute Cloud – Compute service only. This is an opt-in only feature. You can enable this feature from the Cost Explorer Settings page. For information about how to access the Settings page, see Controlling Access for Cost Explorer (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ce-access.html) in the Billing and Cost Management User Guide.

func (*Client) GetCostCategories added in v1.2.0

func (c *Client) GetCostCategories(ctx context.Context, params *GetCostCategoriesInput, optFns ...func(*Options)) (*GetCostCategoriesOutput, error)

Retrieves an array of Cost Category names and values incurred cost. If some Cost Category names and values are not associated with any cost, they will not be returned by this API.

func (*Client) GetCostForecast

func (c *Client) GetCostForecast(ctx context.Context, params *GetCostForecastInput, optFns ...func(*Options)) (*GetCostForecastOutput, error)

Retrieves a forecast for how much Amazon Web Services predicts that you will spend over the forecast time period that you select, based on your past costs.

func (*Client) GetDimensionValues

func (c *Client) GetDimensionValues(ctx context.Context, params *GetDimensionValuesInput, optFns ...func(*Options)) (*GetDimensionValuesOutput, error)

Retrieves all available filter values for a specified filter over a period of time. You can search the dimension values for an arbitrary string.

func (*Client) GetReservationCoverage

func (c *Client) GetReservationCoverage(ctx context.Context, params *GetReservationCoverageInput, optFns ...func(*Options)) (*GetReservationCoverageOutput, error)

Retrieves the reservation coverage for your account, which you can use to see how much of your Amazon Elastic Compute Cloud, Amazon ElastiCache, Amazon Relational Database Service, or Amazon Redshift usage is covered by a reservation. An organization's management account can see the coverage of the associated member accounts. This supports dimensions, Cost Categories, and nested expressions. For any time period, you can filter data about reservation usage by the following dimensions:

  • AZ
  • CACHE_ENGINE
  • DATABASE_ENGINE
  • DEPLOYMENT_OPTION
  • INSTANCE_TYPE
  • LINKED_ACCOUNT
  • OPERATING_SYSTEM
  • PLATFORM
  • REGION
  • SERVICE
  • TAG
  • TENANCY

To determine valid values for a dimension, use the GetDimensionValues operation.

func (*Client) GetReservationPurchaseRecommendation

func (c *Client) GetReservationPurchaseRecommendation(ctx context.Context, params *GetReservationPurchaseRecommendationInput, optFns ...func(*Options)) (*GetReservationPurchaseRecommendationOutput, error)

Gets recommendations for reservation purchases. These recommendations might help you to reduce your costs. Reservations provide a discounted hourly rate (up to 75%) compared to On-Demand pricing. Amazon Web Services generates your recommendations by identifying your On-Demand usage during a specific time period and collecting your usage into categories that are eligible for a reservation. After Amazon Web Services has these categories, it simulates every combination of reservations in each category of usage to identify the best number of each type of Reserved Instance (RI) to purchase to maximize your estimated savings. For example, Amazon Web Services automatically aggregates your Amazon EC2 Linux, shared tenancy, and c4 family usage in the US West (Oregon) Region and recommends that you buy size-flexible regional reservations to apply to the c4 family usage. Amazon Web Services recommends the smallest size instance in an instance family. This makes it easier to purchase a size-flexible Reserved Instance (RI). Amazon Web Services also shows the equal number of normalized units. This way, you can purchase any instance size that you want. For this example, your RI recommendation is for c4.large because that is the smallest size instance in the c4 instance family.

func (*Client) GetReservationUtilization

func (c *Client) GetReservationUtilization(ctx context.Context, params *GetReservationUtilizationInput, optFns ...func(*Options)) (*GetReservationUtilizationOutput, error)

Retrieves the reservation utilization for your account. Management account in an organization have access to member accounts. You can filter data by dimensions in a time period. You can use GetDimensionValues to determine the possible dimension values. Currently, you can group only by SUBSCRIPTION_ID .

func (*Client) GetRightsizingRecommendation

func (c *Client) GetRightsizingRecommendation(ctx context.Context, params *GetRightsizingRecommendationInput, optFns ...func(*Options)) (*GetRightsizingRecommendationOutput, error)

Creates recommendations that help you save cost by identifying idle and underutilized Amazon EC2 instances. Recommendations are generated to either downsize or terminate instances, along with providing savings detail and metrics. For more information about calculation and function, see Optimizing Your Cost with Rightsizing Recommendations (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ce-rightsizing.html) in the Billing and Cost Management User Guide.

func (*Client) GetSavingsPlanPurchaseRecommendationDetails added in v1.26.0

func (c *Client) GetSavingsPlanPurchaseRecommendationDetails(ctx context.Context, params *GetSavingsPlanPurchaseRecommendationDetailsInput, optFns ...func(*Options)) (*GetSavingsPlanPurchaseRecommendationDetailsOutput, error)

Retrieves the details for a Savings Plan recommendation. These details include the hourly data-points that construct the cost, coverage, and utilization charts.

func (*Client) GetSavingsPlansCoverage

func (c *Client) GetSavingsPlansCoverage(ctx context.Context, params *GetSavingsPlansCoverageInput, optFns ...func(*Options)) (*GetSavingsPlansCoverageOutput, error)

Retrieves the Savings Plans covered for your account. This enables you to see how much of your cost is covered by a Savings Plan. An organization’s management account can see the coverage of the associated member accounts. This supports dimensions, Cost Categories, and nested expressions. For any time period, you can filter data for Savings Plans usage with the following dimensions:

  • LINKED_ACCOUNT
  • REGION
  • SERVICE
  • INSTANCE_FAMILY

To determine valid values for a dimension, use the GetDimensionValues operation.

func (*Client) GetSavingsPlansPurchaseRecommendation

func (c *Client) GetSavingsPlansPurchaseRecommendation(ctx context.Context, params *GetSavingsPlansPurchaseRecommendationInput, optFns ...func(*Options)) (*GetSavingsPlansPurchaseRecommendationOutput, error)

Retrieves the Savings Plans recommendations for your account. First use StartSavingsPlansPurchaseRecommendationGeneration to generate a new set of recommendations, and then use GetSavingsPlansPurchaseRecommendation to retrieve them.

func (*Client) GetSavingsPlansUtilization

func (c *Client) GetSavingsPlansUtilization(ctx context.Context, params *GetSavingsPlansUtilizationInput, optFns ...func(*Options)) (*GetSavingsPlansUtilizationOutput, error)

Retrieves the Savings Plans utilization for your account across date ranges with daily or monthly granularity. Management account in an organization have access to member accounts. You can use GetDimensionValues in SAVINGS_PLANS to determine the possible dimension values. You can't group by any dimension values for GetSavingsPlansUtilization .

func (*Client) GetSavingsPlansUtilizationDetails

func (c *Client) GetSavingsPlansUtilizationDetails(ctx context.Context, params *GetSavingsPlansUtilizationDetailsInput, optFns ...func(*Options)) (*GetSavingsPlansUtilizationDetailsOutput, error)

Retrieves attribute data along with aggregate utilization and savings data for a given time period. This doesn't support granular or grouped data (daily/monthly) in response. You can't retrieve data by dates in a single response similar to GetSavingsPlanUtilization , but you have the option to make multiple calls to GetSavingsPlanUtilizationDetails by providing individual dates. You can use GetDimensionValues in SAVINGS_PLANS to determine the possible dimension values. GetSavingsPlanUtilizationDetails internally groups data by SavingsPlansArn .

func (*Client) GetTags

func (c *Client) GetTags(ctx context.Context, params *GetTagsInput, optFns ...func(*Options)) (*GetTagsOutput, error)

Queries for available tag keys and tag values for a specified period. You can search the tag values for an arbitrary string.

func (*Client) GetUsageForecast

func (c *Client) GetUsageForecast(ctx context.Context, params *GetUsageForecastInput, optFns ...func(*Options)) (*GetUsageForecastOutput, error)

Retrieves a forecast for how much Amazon Web Services predicts that you will use over the forecast time period that you select, based on your past usage.

func (*Client) ListCostAllocationTagBackfillHistory added in v1.37.0

func (c *Client) ListCostAllocationTagBackfillHistory(ctx context.Context, params *ListCostAllocationTagBackfillHistoryInput, optFns ...func(*Options)) (*ListCostAllocationTagBackfillHistoryOutput, error)

Retrieves a list of your historical cost allocation tag backfill requests.

func (*Client) ListCostAllocationTags added in v1.19.0

func (c *Client) ListCostAllocationTags(ctx context.Context, params *ListCostAllocationTagsInput, optFns ...func(*Options)) (*ListCostAllocationTagsOutput, error)

Get a list of cost allocation tags. All inputs in the API are optional and serve as filters. By default, all cost allocation tags are returned.

func (*Client) ListCostCategoryDefinitions

func (c *Client) ListCostCategoryDefinitions(ctx context.Context, params *ListCostCategoryDefinitionsInput, optFns ...func(*Options)) (*ListCostCategoryDefinitionsOutput, error)

Returns the name, Amazon Resource Name (ARN), NumberOfRules and effective dates of all Cost Categories defined in the account. You have the option to use EffectiveOn to return a list of Cost Categories that were active on a specific date. If there is no EffectiveOn specified, you’ll see Cost Categories that are effective on the current date. If Cost Category is still effective, EffectiveEnd is omitted in the response. ListCostCategoryDefinitions supports pagination. The request can have a MaxResults range up to 100.

func (*Client) ListSavingsPlansPurchaseRecommendationGeneration added in v1.22.0

func (c *Client) ListSavingsPlansPurchaseRecommendationGeneration(ctx context.Context, params *ListSavingsPlansPurchaseRecommendationGenerationInput, optFns ...func(*Options)) (*ListSavingsPlansPurchaseRecommendationGenerationOutput, error)

Retrieves a list of your historical recommendation generations within the past 30 days.

func (*Client) ListTagsForResource added in v1.18.0

func (c *Client) ListTagsForResource(ctx context.Context, params *ListTagsForResourceInput, optFns ...func(*Options)) (*ListTagsForResourceOutput, error)

Returns a list of resource tags associated with the resource specified by the Amazon Resource Name (ARN).

func (*Client) Options added in v1.33.0

func (c *Client) Options() Options

Options returns a copy of the client configuration.

Callers SHOULD NOT perform mutations on any inner structures within client config. Config overrides should instead be made on a per-operation basis through functional options.

func (*Client) ProvideAnomalyFeedback added in v0.29.0

func (c *Client) ProvideAnomalyFeedback(ctx context.Context, params *ProvideAnomalyFeedbackInput, optFns ...func(*Options)) (*ProvideAnomalyFeedbackOutput, error)

Modifies the feedback property of a given cost anomaly.

func (*Client) StartCostAllocationTagBackfill added in v1.37.0

func (c *Client) StartCostAllocationTagBackfill(ctx context.Context, params *StartCostAllocationTagBackfillInput, optFns ...func(*Options)) (*StartCostAllocationTagBackfillOutput, error)

Request a cost allocation tag backfill. This will backfill the activation status (either active or inactive ) for all tag keys from para:BackfillFrom up to the when this request is made. You can request a backfill once every 24 hours.

func (*Client) StartSavingsPlansPurchaseRecommendationGeneration added in v1.22.0

func (c *Client) StartSavingsPlansPurchaseRecommendationGeneration(ctx context.Context, params *StartSavingsPlansPurchaseRecommendationGenerationInput, optFns ...func(*Options)) (*StartSavingsPlansPurchaseRecommendationGenerationOutput, error)

Requests a Savings Plans recommendation generation. This enables you to calculate a fresh set of Savings Plans recommendations that takes your latest usage data and current Savings Plans inventory into account. You can refresh Savings Plans recommendations up to three times daily for a consolidated billing family. StartSavingsPlansPurchaseRecommendationGeneration has no request syntax because no input parameters are needed to support this operation.

func (*Client) TagResource added in v1.18.0

func (c *Client) TagResource(ctx context.Context, params *TagResourceInput, optFns ...func(*Options)) (*TagResourceOutput, error)

An API operation for adding one or more tags (key-value pairs) to a resource. You can use the TagResource operation with a resource that already has tags. If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value you specify replaces the previous value for that tag. Although the maximum number of array members is 200, user-tag maximum is 50. The remaining are reserved for Amazon Web Services use.

func (*Client) UntagResource added in v1.18.0

func (c *Client) UntagResource(ctx context.Context, params *UntagResourceInput, optFns ...func(*Options)) (*UntagResourceOutput, error)

Removes one or more tags from a resource. Specify only tag keys in your request. Don't specify the value.

func (*Client) UpdateAnomalyMonitor added in v0.29.0

func (c *Client) UpdateAnomalyMonitor(ctx context.Context, params *UpdateAnomalyMonitorInput, optFns ...func(*Options)) (*UpdateAnomalyMonitorOutput, error)

Updates an existing cost anomaly monitor. The changes made are applied going forward, and doesn't change anomalies detected in the past.

func (*Client) UpdateAnomalySubscription added in v0.29.0

func (c *Client) UpdateAnomalySubscription(ctx context.Context, params *UpdateAnomalySubscriptionInput, optFns ...func(*Options)) (*UpdateAnomalySubscriptionOutput, error)

Updates an existing cost anomaly subscription. Specify the fields that you want to update. Omitted fields are unchanged. The JSON below describes the generic construct for each type. See Request Parameters (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_UpdateAnomalySubscription.html#API_UpdateAnomalySubscription_RequestParameters) for possible values as they apply to AnomalySubscription .

func (*Client) UpdateCostAllocationTagsStatus added in v1.19.0

func (c *Client) UpdateCostAllocationTagsStatus(ctx context.Context, params *UpdateCostAllocationTagsStatusInput, optFns ...func(*Options)) (*UpdateCostAllocationTagsStatusOutput, error)

Updates status for cost allocation tags in bulk, with maximum batch size of 20. If the tag status that's updated is the same as the existing tag status, the request doesn't fail. Instead, it doesn't have any effect on the tag status (for example, activating the active tag).

func (*Client) UpdateCostCategoryDefinition

func (c *Client) UpdateCostCategoryDefinition(ctx context.Context, params *UpdateCostCategoryDefinitionInput, optFns ...func(*Options)) (*UpdateCostCategoryDefinitionOutput, error)

Updates an existing Cost Category. Changes made to the Cost Category rules will be used to categorize the current month’s expenses and future expenses. This won’t change categorization for the previous months.

type CreateAnomalyMonitorInput added in v0.29.0

type CreateAnomalyMonitorInput struct {

	// The cost anomaly detection monitor object that you want to create.
	//
	// This member is required.
	AnomalyMonitor *types.AnomalyMonitor

	// An optional list of tags to associate with the specified AnomalyMonitor (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_AnomalyMonitor.html)
	// . You can use resource tags to control access to your monitor using IAM
	// policies. Each tag consists of a key and a value, and each key must be unique
	// for the resource. The following restrictions apply to resource tags:
	//   - Although the maximum number of array members is 200, you can assign a
	//   maximum of 50 user-tags to one resource. The remaining are reserved for Amazon
	//   Web Services use
	//   - The maximum length of a key is 128 characters
	//   - The maximum length of a value is 256 characters
	//   - Keys and values can only contain alphanumeric characters, spaces, and any
	//   of the following: _.:/=+@-
	//   - Keys and values are case sensitive
	//   - Keys and values are trimmed for any leading or trailing whitespaces
	//   - Don’t use aws: as a prefix for your keys. This prefix is reserved for Amazon
	//   Web Services use
	ResourceTags []types.ResourceTag
	// contains filtered or unexported fields
}

type CreateAnomalyMonitorOutput added in v0.29.0

type CreateAnomalyMonitorOutput struct {

	// The unique identifier of your newly created cost anomaly detection monitor.
	//
	// This member is required.
	MonitorArn *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateAnomalySubscriptionInput added in v0.29.0

type CreateAnomalySubscriptionInput struct {

	// The cost anomaly subscription object that you want to create.
	//
	// This member is required.
	AnomalySubscription *types.AnomalySubscription

	// An optional list of tags to associate with the specified AnomalySubscription (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_AnomalySubscription.html)
	// . You can use resource tags to control access to your subscription using IAM
	// policies. Each tag consists of a key and a value, and each key must be unique
	// for the resource. The following restrictions apply to resource tags:
	//   - Although the maximum number of array members is 200, you can assign a
	//   maximum of 50 user-tags to one resource. The remaining are reserved for Amazon
	//   Web Services use
	//   - The maximum length of a key is 128 characters
	//   - The maximum length of a value is 256 characters
	//   - Keys and values can only contain alphanumeric characters, spaces, and any
	//   of the following: _.:/=+@-
	//   - Keys and values are case sensitive
	//   - Keys and values are trimmed for any leading or trailing whitespaces
	//   - Don’t use aws: as a prefix for your keys. This prefix is reserved for Amazon
	//   Web Services use
	ResourceTags []types.ResourceTag
	// contains filtered or unexported fields
}

type CreateAnomalySubscriptionOutput added in v0.29.0

type CreateAnomalySubscriptionOutput struct {

	// The unique identifier of your newly created cost anomaly subscription.
	//
	// This member is required.
	SubscriptionArn *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateCostCategoryDefinitionInput

type CreateCostCategoryDefinitionInput struct {

	// The unique name of the Cost Category.
	//
	// This member is required.
	Name *string

	// The rule schema version in this particular Cost Category.
	//
	// This member is required.
	RuleVersion types.CostCategoryRuleVersion

	// The Cost Category rules used to categorize costs. For more information, see
	// CostCategoryRule (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_CostCategoryRule.html)
	// .
	//
	// This member is required.
	Rules []types.CostCategoryRule

	// The default value for the cost category.
	DefaultValue *string

	// The Cost Category's effective start date. It can only be a billing start date
	// (first day of the month). If the date isn't provided, it's the first day of the
	// current month. Dates can't be before the previous twelve months, or in the
	// future.
	EffectiveStart *string

	// An optional list of tags to associate with the specified CostCategory (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_CostCategory.html)
	// . You can use resource tags to control access to your cost category using IAM
	// policies. Each tag consists of a key and a value, and each key must be unique
	// for the resource. The following restrictions apply to resource tags:
	//   - Although the maximum number of array members is 200, you can assign a
	//   maximum of 50 user-tags to one resource. The remaining are reserved for Amazon
	//   Web Services use
	//   - The maximum length of a key is 128 characters
	//   - The maximum length of a value is 256 characters
	//   - Keys and values can only contain alphanumeric characters, spaces, and any
	//   of the following: _.:/=+@-
	//   - Keys and values are case sensitive
	//   - Keys and values are trimmed for any leading or trailing whitespaces
	//   - Don’t use aws: as a prefix for your keys. This prefix is reserved for Amazon
	//   Web Services use
	ResourceTags []types.ResourceTag

	// The split charge rules used to allocate your charges between your Cost Category
	// values.
	SplitChargeRules []types.CostCategorySplitChargeRule
	// contains filtered or unexported fields
}

type CreateCostCategoryDefinitionOutput

type CreateCostCategoryDefinitionOutput struct {

	// The unique identifier for your newly created Cost Category.
	CostCategoryArn *string

	// The Cost Category's effective start date. It can only be a billing start date
	// (first day of the month).
	EffectiveStart *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteAnomalyMonitorInput added in v0.29.0

type DeleteAnomalyMonitorInput struct {

	// The unique identifier of the cost anomaly monitor that you want to delete.
	//
	// This member is required.
	MonitorArn *string
	// contains filtered or unexported fields
}

type DeleteAnomalyMonitorOutput added in v0.29.0

type DeleteAnomalyMonitorOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteAnomalySubscriptionInput added in v0.29.0

type DeleteAnomalySubscriptionInput struct {

	// The unique identifier of the cost anomaly subscription that you want to delete.
	//
	// This member is required.
	SubscriptionArn *string
	// contains filtered or unexported fields
}

type DeleteAnomalySubscriptionOutput added in v0.29.0

type DeleteAnomalySubscriptionOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteCostCategoryDefinitionInput

type DeleteCostCategoryDefinitionInput struct {

	// The unique identifier for your Cost Category.
	//
	// This member is required.
	CostCategoryArn *string
	// contains filtered or unexported fields
}

type DeleteCostCategoryDefinitionOutput

type DeleteCostCategoryDefinitionOutput struct {

	// The unique identifier for your Cost Category.
	CostCategoryArn *string

	// The effective end date of the Cost Category as a result of deleting it. No
	// costs after this date is categorized by the deleted Cost Category.
	EffectiveEnd *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeCostCategoryDefinitionInput

type DescribeCostCategoryDefinitionInput struct {

	// The unique identifier for your Cost Category.
	//
	// This member is required.
	CostCategoryArn *string

	// The date when the Cost Category was effective.
	EffectiveOn *string
	// contains filtered or unexported fields
}

type DescribeCostCategoryDefinitionOutput

type DescribeCostCategoryDefinitionOutput struct {

	// The structure of Cost Categories. This includes detailed metadata and the set
	// of rules for the CostCategory object.
	CostCategory *types.CostCategory

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type EndpointParameters added in v1.27.0

type EndpointParameters struct {
	// The AWS region used to dispatch the request.
	//
	// Parameter is
	// required.
	//
	// AWS::Region
	Region *string

	// When true, use the dual-stack endpoint. If the configured endpoint does not
	// support dual-stack, dispatching the request MAY return an error.
	//
	// Defaults to
	// false if no value is provided.
	//
	// AWS::UseDualStack
	UseDualStack *bool

	// When true, send this request to the FIPS-compliant regional endpoint. If the
	// configured endpoint does not have a FIPS compliant endpoint, dispatching the
	// request will return an error.
	//
	// Defaults to false if no value is
	// provided.
	//
	// AWS::UseFIPS
	UseFIPS *bool

	// Override the endpoint used to send this request
	//
	// Parameter is
	// required.
	//
	// SDK::Endpoint
	Endpoint *string
}

EndpointParameters provides the parameters that influence how endpoints are resolved.

func (EndpointParameters) ValidateRequired added in v1.27.0

func (p EndpointParameters) ValidateRequired() error

ValidateRequired validates required parameters are set.

func (EndpointParameters) WithDefaults added in v1.27.0

func (p EndpointParameters) WithDefaults() EndpointParameters

WithDefaults returns a shallow copy of EndpointParameterswith default values applied to members where applicable.

type EndpointResolver

type EndpointResolver interface {
	ResolveEndpoint(region string, options EndpointResolverOptions) (aws.Endpoint, error)
}

EndpointResolver interface for resolving service endpoints.

func EndpointResolverFromURL added in v1.1.0

func EndpointResolverFromURL(url string, optFns ...func(*aws.Endpoint)) EndpointResolver

EndpointResolverFromURL returns an EndpointResolver configured using the provided endpoint url. By default, the resolved endpoint resolver uses the client region as signing region, and the endpoint source is set to EndpointSourceCustom.You can provide functional options to configure endpoint values for the resolved endpoint.

type EndpointResolverFunc

type EndpointResolverFunc func(region string, options EndpointResolverOptions) (aws.Endpoint, error)

EndpointResolverFunc is a helper utility that wraps a function so it satisfies the EndpointResolver interface. This is useful when you want to add additional endpoint resolving logic, or stub out specific endpoints with custom values.

func (EndpointResolverFunc) ResolveEndpoint

func (fn EndpointResolverFunc) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error)

type EndpointResolverOptions added in v0.29.0

type EndpointResolverOptions = internalendpoints.Options

EndpointResolverOptions is the service endpoint resolver options

type EndpointResolverV2 added in v1.27.0

type EndpointResolverV2 interface {
	// ResolveEndpoint attempts to resolve the endpoint with the provided options,
	// returning the endpoint if found. Otherwise an error is returned.
	ResolveEndpoint(ctx context.Context, params EndpointParameters) (
		smithyendpoints.Endpoint, error,
	)
}

EndpointResolverV2 provides the interface for resolving service endpoints.

func NewDefaultEndpointResolverV2 added in v1.27.0

func NewDefaultEndpointResolverV2() EndpointResolverV2

type GetAnomaliesInput added in v0.29.0

type GetAnomaliesInput struct {

	// Assigns the start and end dates for retrieving cost anomalies. The returned
	// anomaly object will have an AnomalyEndDate in the specified time range.
	//
	// This member is required.
	DateInterval *types.AnomalyDateInterval

	// Filters anomaly results by the feedback field on the anomaly object.
	Feedback types.AnomalyFeedbackType

	// The number of entries a paginated response contains.
	MaxResults *int32

	// Retrieves all of the cost anomalies detected for a specific cost anomaly
	// monitor Amazon Resource Name (ARN).
	MonitorArn *string

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string

	// Filters anomaly results by the total impact field on the anomaly object. For
	// example, you can filter anomalies GREATER_THAN 200.00 to retrieve anomalies,
	// with an estimated dollar impact greater than 200.
	TotalImpact *types.TotalImpactFilter
	// contains filtered or unexported fields
}

type GetAnomaliesOutput added in v0.29.0

type GetAnomaliesOutput struct {

	// A list of cost anomalies.
	//
	// This member is required.
	Anomalies []types.Anomaly

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetAnomalyMonitorsInput added in v0.29.0

type GetAnomalyMonitorsInput struct {

	// The number of entries that a paginated response contains.
	MaxResults *int32

	// A list of cost anomaly monitor ARNs.
	MonitorArnList []string

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string
	// contains filtered or unexported fields
}

type GetAnomalyMonitorsOutput added in v0.29.0

type GetAnomalyMonitorsOutput struct {

	// A list of cost anomaly monitors that includes the detailed metadata for each
	// monitor.
	//
	// This member is required.
	AnomalyMonitors []types.AnomalyMonitor

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetAnomalySubscriptionsInput added in v0.29.0

type GetAnomalySubscriptionsInput struct {

	// The number of entries a paginated response contains.
	MaxResults *int32

	// Cost anomaly monitor ARNs.
	MonitorArn *string

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string

	// A list of cost anomaly subscription ARNs.
	SubscriptionArnList []string
	// contains filtered or unexported fields
}

type GetAnomalySubscriptionsOutput added in v0.29.0

type GetAnomalySubscriptionsOutput struct {

	// A list of cost anomaly subscriptions that includes the detailed metadata for
	// each one.
	//
	// This member is required.
	AnomalySubscriptions []types.AnomalySubscription

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetApproximateUsageRecordsInput added in v1.36.0

type GetApproximateUsageRecordsInput struct {

	// The service to evaluate for the usage records. You can choose resource-level
	// data at daily granularity, or hourly granularity with or without resource-level
	// data.
	//
	// This member is required.
	ApproximationDimension types.ApproximationDimension

	// How granular you want the data to be. You can enable data at hourly or daily
	// granularity.
	//
	// This member is required.
	Granularity types.Granularity

	// The service metadata for the service or services you want to query. If not
	// specified, all elements are returned.
	Services []string
	// contains filtered or unexported fields
}

type GetApproximateUsageRecordsOutput added in v1.36.0

type GetApproximateUsageRecordsOutput struct {

	// The lookback period that's used for the estimation.
	LookbackPeriod *types.DateInterval

	// The service metadata for the service or services in the response.
	Services map[string]int64

	// The total number of usage records for all services in the services list.
	TotalRecords int64

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetCostAndUsageInput

type GetCostAndUsageInput struct {

	// Sets the Amazon Web Services cost granularity to MONTHLY or DAILY , or HOURLY .
	// If Granularity isn't set, the response object doesn't include the Granularity ,
	// either MONTHLY or DAILY , or HOURLY .
	//
	// This member is required.
	Granularity types.Granularity

	// Which metrics are returned in the query. For more information about blended and
	// unblended rates, see Why does the "blended" annotation appear on some line
	// items in my bill? (http://aws.amazon.com/premiumsupport/knowledge-center/blended-rates-intro/)
	// . Valid values are AmortizedCost , BlendedCost , NetAmortizedCost ,
	// NetUnblendedCost , NormalizedUsageAmount , UnblendedCost , and UsageQuantity .
	// If you return the UsageQuantity metric, the service aggregates all usage
	// numbers without taking into account the units. For example, if you aggregate
	// usageQuantity across all of Amazon EC2, the results aren't meaningful because
	// Amazon EC2 compute hours and data transfer are measured in different units (for
	// example, hours and GB). To get more meaningful UsageQuantity metrics, filter by
	// UsageType or UsageTypeGroups . Metrics is required for GetCostAndUsage requests.
	//
	// This member is required.
	Metrics []string

	// Sets the start date and end date for retrieving Amazon Web Services costs. The
	// start date is inclusive, but the end date is exclusive. For example, if start
	// is 2017-01-01 and end is 2017-05-01 , then the cost and usage data is retrieved
	// from 2017-01-01 up to and including 2017-04-30 but not including 2017-05-01 .
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// Filters Amazon Web Services costs by different dimensions. For example, you can
	// specify SERVICE and LINKED_ACCOUNT and get the costs that are associated with
	// that account's usage of that service. You can nest Expression objects to define
	// any combination of dimension filters. For more information, see Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html)
	// . Valid values for MatchOptions for Dimensions are EQUALS and CASE_SENSITIVE .
	// Valid values for MatchOptions for CostCategories and Tags are EQUALS , ABSENT ,
	// and CASE_SENSITIVE . Default values are EQUALS and CASE_SENSITIVE .
	Filter *types.Expression

	// You can group Amazon Web Services costs using up to two different groups,
	// either dimensions, tag keys, cost categories, or any two group by types. Valid
	// values for the DIMENSION type are AZ , INSTANCE_TYPE , LEGAL_ENTITY_NAME ,
	// INVOICING_ENTITY , LINKED_ACCOUNT , OPERATION , PLATFORM , PURCHASE_TYPE ,
	// SERVICE , TENANCY , RECORD_TYPE , and USAGE_TYPE . When you group by the TAG
	// type and include a valid tag key, you get all tag values, including empty
	// strings.
	GroupBy []types.GroupDefinition

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string
	// contains filtered or unexported fields
}

type GetCostAndUsageOutput

type GetCostAndUsageOutput struct {

	// The attributes that apply to a specific dimension value. For example, if the
	// value is a linked account, the attribute is that account name.
	DimensionValueAttributes []types.DimensionValuesWithAttributes

	// The groups that are specified by the Filter or GroupBy parameters in the
	// request.
	GroupDefinitions []types.GroupDefinition

	// The token for the next set of retrievable results. Amazon Web Services provides
	// the token when the response from a previous call has more results than the
	// maximum page size.
	NextPageToken *string

	// The time period that's covered by the results in the response.
	ResultsByTime []types.ResultByTime

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetCostAndUsageWithResourcesInput

type GetCostAndUsageWithResourcesInput struct {

	// Filters Amazon Web Services costs by different dimensions. For example, you can
	// specify SERVICE and LINKED_ACCOUNT and get the costs that are associated with
	// that account's usage of that service. You can nest Expression objects to define
	// any combination of dimension filters. For more information, see Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html)
	// . The GetCostAndUsageWithResources operation requires that you either group by
	// or filter by a ResourceId . It requires the Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html)
	// "SERVICE = Amazon Elastic Compute Cloud - Compute" in the filter. Valid values
	// for MatchOptions for Dimensions are EQUALS and CASE_SENSITIVE . Valid values for
	// MatchOptions for CostCategories and Tags are EQUALS , ABSENT , and
	// CASE_SENSITIVE . Default values are EQUALS and CASE_SENSITIVE .
	//
	// This member is required.
	Filter *types.Expression

	// Sets the Amazon Web Services cost granularity to MONTHLY , DAILY , or HOURLY .
	// If Granularity isn't set, the response object doesn't include the Granularity ,
	// MONTHLY , DAILY , or HOURLY .
	//
	// This member is required.
	Granularity types.Granularity

	// Sets the start and end dates for retrieving Amazon Web Services costs. The
	// range must be within the last 14 days (the start date cannot be earlier than 14
	// days ago). The start date is inclusive, but the end date is exclusive. For
	// example, if start is 2017-01-01 and end is 2017-05-01 , then the cost and usage
	// data is retrieved from 2017-01-01 up to and including 2017-04-30 but not
	// including 2017-05-01 .
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// You can group Amazon Web Services costs using up to two different groups:
	// DIMENSION , TAG , COST_CATEGORY .
	GroupBy []types.GroupDefinition

	// Which metrics are returned in the query. For more information about blended and
	// unblended rates, see Why does the "blended" annotation appear on some line
	// items in my bill? (http://aws.amazon.com/premiumsupport/knowledge-center/blended-rates-intro/)
	// . Valid values are AmortizedCost , BlendedCost , NetAmortizedCost ,
	// NetUnblendedCost , NormalizedUsageAmount , UnblendedCost , and UsageQuantity .
	// If you return the UsageQuantity metric, the service aggregates all usage
	// numbers without taking the units into account. For example, if you aggregate
	// usageQuantity across all of Amazon EC2, the results aren't meaningful because
	// Amazon EC2 compute hours and data transfer are measured in different units (for
	// example, hour or GB). To get more meaningful UsageQuantity metrics, filter by
	// UsageType or UsageTypeGroups . Metrics is required for
	// GetCostAndUsageWithResources requests.
	Metrics []string

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string
	// contains filtered or unexported fields
}

type GetCostAndUsageWithResourcesOutput

type GetCostAndUsageWithResourcesOutput struct {

	// The attributes that apply to a specific dimension value. For example, if the
	// value is a linked account, the attribute is that account name.
	DimensionValueAttributes []types.DimensionValuesWithAttributes

	// The groups that are specified by the Filter or GroupBy parameters in the
	// request.
	GroupDefinitions []types.GroupDefinition

	// The token for the next set of retrievable results. Amazon Web Services provides
	// the token when the response from a previous call has more results than the
	// maximum page size.
	NextPageToken *string

	// The time period that's covered by the results in the response.
	ResultsByTime []types.ResultByTime

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetCostCategoriesInput added in v1.2.0

type GetCostCategoriesInput struct {

	// The time period of the request.
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// The unique name of the Cost Category.
	CostCategoryName *string

	// Use Expression to filter in various Cost Explorer APIs. Not all Expression
	// types are supported in each API. Refer to the documentation for each specific
	// API to see what is supported. There are two patterns:
	//   - Simple dimension values.
	//   - There are three types of simple dimension values: CostCategories , Tags ,
	//   and Dimensions .
	//   - Specify the CostCategories field to define a filter that acts on Cost
	//   Categories.
	//   - Specify the Tags field to define a filter that acts on Cost Allocation Tags.
	//   - Specify the Dimensions field to define a filter that acts on the
	//   DimensionValues (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_DimensionValues.html)
	//   .
	//   - For each filter type, you can set the dimension name and values for the
	//   filters that you plan to use.
	//   - For example, you can filter for REGION==us-east-1 OR REGION==us-west-1 . For
	//   GetRightsizingRecommendation , the Region is a full name (for example,
	//   REGION==US East (N. Virginia) .
	//   - The corresponding Expression for this example is as follows: {
	//   "Dimensions": { "Key": "REGION", "Values": [ "us-east-1", "us-west-1" ] } }
	//   - As shown in the previous example, lists of dimension values are combined
	//   with OR when applying the filter.
	//   - You can also set different match options to further control how the filter
	//   behaves. Not all APIs support match options. Refer to the documentation for each
	//   specific API to see what is supported.
	//   - For example, you can filter for linked account names that start with "a".
	//   - The corresponding Expression for this example is as follows: {
	//   "Dimensions": { "Key": "LINKED_ACCOUNT_NAME", "MatchOptions": [ "STARTS_WITH" ],
	//   "Values": [ "a" ] } }
	//   - Compound Expression types with logical operations.
	//   - You can use multiple Expression types and the logical operators AND/OR/NOT
	//   to create a list of one or more Expression objects. By doing this, you can
	//   filter by more advanced options.
	//   - For example, you can filter by ((REGION == us-east-1 OR REGION ==
	//   us-west-1) OR (TAG.Type == Type1)) AND (USAGE_TYPE != DataTransfer) .
	//   - The corresponding Expression for this example is as follows: { "And": [
	//   {"Or": [ {"Dimensions": { "Key": "REGION", "Values": [ "us-east-1", "us-west-1"
	//   ] }}, {"Tags": { "Key": "TagName", "Values": ["Value1"] } } ]}, {"Not":
	//   {"Dimensions": { "Key": "USAGE_TYPE", "Values": ["DataTransfer"] }}} ] }
	//   Because each Expression can have only one operator, the service returns an
	//   error if more than one is specified. The following example shows an Expression
	//   object that creates an error: { "And": [ ... ], "Dimensions": { "Key":
	//   "USAGE_TYPE", "Values": [ "DataTransfer" ] } } The following is an example of
	//   the corresponding error message: "Expression has more than one roots. Only
	//   one root operator is allowed for each expression: And, Or, Not, Dimensions,
	//   Tags, CostCategories"
	// For the GetRightsizingRecommendation action, a combination of OR and NOT isn't
	// supported. OR isn't supported between different dimensions, or dimensions and
	// tags. NOT operators aren't supported. Dimensions are also limited to
	// LINKED_ACCOUNT , REGION , or RIGHTSIZING_TYPE . For the
	// GetReservationPurchaseRecommendation action, only NOT is supported. AND and OR
	// aren't supported. Dimensions are limited to LINKED_ACCOUNT .
	Filter *types.Expression

	// This field is only used when the SortBy value is provided in the request. The
	// maximum number of objects that are returned for this request. If MaxResults
	// isn't specified with the SortBy value, the request returns 1000 results as the
	// default value for this parameter. For GetCostCategories , MaxResults has an
	// upper quota of 1000.
	MaxResults *int32

	// If the number of objects that are still available for retrieval exceeds the
	// quota, Amazon Web Services returns a NextPageToken value in the response. To
	// retrieve the next batch of objects, provide the NextPageToken from the previous
	// call in your next request.
	NextPageToken *string

	// The value that you want to search the filter values for. If you don't specify a
	// CostCategoryName , SearchString is used to filter Cost Category names that
	// match the SearchString pattern. If you specify a CostCategoryName , SearchString
	// is used to filter Cost Category values that match the SearchString pattern.
	SearchString *string

	// The value that you sort the data by. The key represents the cost and usage
	// metrics. The following values are supported:
	//   - BlendedCost
	//   - UnblendedCost
	//   - AmortizedCost
	//   - NetAmortizedCost
	//   - NetUnblendedCost
	//   - UsageQuantity
	//   - NormalizedUsageAmount
	// The supported key values for the SortOrder value are ASCENDING and DESCENDING .
	// When you use the SortBy value, the NextPageToken and SearchString key values
	// aren't supported.
	SortBy []types.SortDefinition
	// contains filtered or unexported fields
}

type GetCostCategoriesOutput added in v1.2.0

type GetCostCategoriesOutput struct {

	// The number of objects that are returned.
	//
	// This member is required.
	ReturnSize *int32

	// The total number of objects.
	//
	// This member is required.
	TotalSize *int32

	// The names of the Cost Categories.
	CostCategoryNames []string

	// The Cost Category values. If the CostCategoryName key isn't specified in the
	// request, the CostCategoryValues fields aren't returned.
	CostCategoryValues []string

	// If the number of objects that are still available for retrieval exceeds the
	// quota, Amazon Web Services returns a NextPageToken value in the response. To
	// retrieve the next batch of objects, provide the marker from the prior call in
	// your next request.
	NextPageToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetCostForecastInput

type GetCostForecastInput struct {

	// How granular you want the forecast to be. You can get 3 months of DAILY
	// forecasts or 12 months of MONTHLY forecasts. The GetCostForecast operation
	// supports only DAILY and MONTHLY granularities.
	//
	// This member is required.
	Granularity types.Granularity

	// Which metric Cost Explorer uses to create your forecast. For more information
	// about blended and unblended rates, see Why does the "blended" annotation appear
	// on some line items in my bill? (http://aws.amazon.com/premiumsupport/knowledge-center/blended-rates-intro/)
	// . Valid values for a GetCostForecast call are the following:
	//   - AMORTIZED_COST
	//   - BLENDED_COST
	//   - NET_AMORTIZED_COST
	//   - NET_UNBLENDED_COST
	//   - UNBLENDED_COST
	//
	// This member is required.
	Metric types.Metric

	// The period of time that you want the forecast to cover. The start date must be
	// equal to or no later than the current date to avoid a validation error.
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// The filters that you want to use to filter your forecast. The GetCostForecast
	// API supports filtering by the following dimensions:
	//   - AZ
	//   - INSTANCE_TYPE
	//   - LINKED_ACCOUNT
	//   - LINKED_ACCOUNT_NAME
	//   - OPERATION
	//   - PURCHASE_TYPE
	//   - REGION
	//   - SERVICE
	//   - USAGE_TYPE
	//   - USAGE_TYPE_GROUP
	//   - RECORD_TYPE
	//   - OPERATING_SYSTEM
	//   - TENANCY
	//   - SCOPE
	//   - PLATFORM
	//   - SUBSCRIPTION_ID
	//   - LEGAL_ENTITY_NAME
	//   - DEPLOYMENT_OPTION
	//   - DATABASE_ENGINE
	//   - INSTANCE_TYPE_FAMILY
	//   - BILLING_ENTITY
	//   - RESERVATION_ID
	//   - SAVINGS_PLAN_ARN
	Filter *types.Expression

	// Cost Explorer always returns the mean forecast as a single point. You can
	// request a prediction interval around the mean by specifying a confidence level.
	// The higher the confidence level, the more confident Cost Explorer is about the
	// actual value falling in the prediction interval. Higher confidence levels result
	// in wider prediction intervals.
	PredictionIntervalLevel *int32
	// contains filtered or unexported fields
}

type GetCostForecastOutput

type GetCostForecastOutput struct {

	// The forecasts for your query, in order. For DAILY forecasts, this is a list of
	// days. For MONTHLY forecasts, this is a list of months.
	ForecastResultsByTime []types.ForecastResult

	// How much you are forecasted to spend over the forecast period, in USD .
	Total *types.MetricValue

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetDimensionValuesInput

type GetDimensionValuesInput struct {

	// The name of the dimension. Each Dimension is available for a different Context .
	// For more information, see Context . LINK_ACCOUNT_NAME and SERVICE_CODE can only
	// be used in CostCategoryRule (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/AAPI_CostCategoryRule.html)
	// .
	//
	// This member is required.
	Dimension types.Dimension

	// The start date and end date for retrieving the dimension values. The start date
	// is inclusive, but the end date is exclusive. For example, if start is 2017-01-01
	// and end is 2017-05-01 , then the cost and usage data is retrieved from
	// 2017-01-01 up to and including 2017-04-30 but not including 2017-05-01 .
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// The context for the call to GetDimensionValues . This can be RESERVATIONS or
	// COST_AND_USAGE . The default value is COST_AND_USAGE . If the context is set to
	// RESERVATIONS , the resulting dimension values can be used in the
	// GetReservationUtilization operation. If the context is set to COST_AND_USAGE ,
	// the resulting dimension values can be used in the GetCostAndUsage operation. If
	// you set the context to COST_AND_USAGE , you can use the following dimensions for
	// searching:
	//   - AZ - The Availability Zone. An example is us-east-1a .
	//   - BILLING_ENTITY - The Amazon Web Services seller that your account is with.
	//   Possible values are the following: - Amazon Web Services(Amazon Web Services):
	//   The entity that sells Amazon Web Services. - AISPL (Amazon Internet Services
	//   Pvt. Ltd.): The local Indian entity that's an acting reseller for Amazon Web
	//   Services in India. - Amazon Web Services Marketplace: The entity that supports
	//   the sale of solutions that are built on Amazon Web Services by third-party
	//   software providers.
	//   - CACHE_ENGINE - The Amazon ElastiCache operating system. Examples are
	//   Windows or Linux.
	//   - DEPLOYMENT_OPTION - The scope of Amazon Relational Database Service
	//   deployments. Valid values are SingleAZ and MultiAZ .
	//   - DATABASE_ENGINE - The Amazon Relational Database Service database. Examples
	//   are Aurora or MySQL.
	//   - INSTANCE_TYPE - The type of Amazon EC2 instance. An example is m4.xlarge .
	//   - INSTANCE_TYPE_FAMILY - A family of instance types optimized to fit
	//   different use cases. Examples are Compute Optimized (for example, C4 , C5 ,
	//   C6g , and C7g ), Memory Optimization (for example, R4 , R5n , R5b , and R6g ).
	//   - INVOICING_ENTITY - The name of the entity that issues the Amazon Web
	//   Services invoice.
	//   - LEGAL_ENTITY_NAME - The name of the organization that sells you Amazon Web
	//   Services services, such as Amazon Web Services.
	//   - LINKED_ACCOUNT - The description in the attribute map that includes the
	//   full name of the member account. The value field contains the Amazon Web
	//   Services ID of the member account.
	//   - OPERATING_SYSTEM - The operating system. Examples are Windows or Linux.
	//   - OPERATION - The action performed. Examples include RunInstance and
	//   CreateBucket .
	//   - PLATFORM - The Amazon EC2 operating system. Examples are Windows or Linux.
	//   - PURCHASE_TYPE - The reservation type of the purchase that this usage is
	//   related to. Examples include On-Demand Instances and Standard Reserved
	//   Instances.
	//   - RESERVATION_ID - The unique identifier for an Amazon Web Services
	//   Reservation Instance.
	//   - SAVINGS_PLAN_ARN - The unique identifier for your Savings Plans.
	//   - SAVINGS_PLANS_TYPE - Type of Savings Plans (EC2 Instance or Compute).
	//   - SERVICE - The Amazon Web Services service such as Amazon DynamoDB.
	//   - TENANCY - The tenancy of a resource. Examples are shared or dedicated.
	//   - USAGE_TYPE - The type of usage. An example is DataTransfer-In-Bytes. The
	//   response for the GetDimensionValues operation includes a unit attribute.
	//   Examples include GB and Hrs.
	//   - USAGE_TYPE_GROUP - The grouping of common usage types. An example is Amazon
	//   EC2: CloudWatch – Alarms. The response for this operation includes a unit
	//   attribute.
	//   - REGION - The Amazon Web Services Region.
	//   - RECORD_TYPE - The different types of charges such as Reserved Instance (RI)
	//   fees, usage costs, tax refunds, and credits.
	//   - RESOURCE_ID - The unique identifier of the resource. ResourceId is an
	//   opt-in feature only available for last 14 days for EC2-Compute Service.
	// If you set the context to RESERVATIONS , you can use the following dimensions
	// for searching:
	//   - AZ - The Availability Zone. An example is us-east-1a .
	//   - CACHE_ENGINE - The Amazon ElastiCache operating system. Examples are
	//   Windows or Linux.
	//   - DEPLOYMENT_OPTION - The scope of Amazon Relational Database Service
	//   deployments. Valid values are SingleAZ and MultiAZ .
	//   - INSTANCE_TYPE - The type of Amazon EC2 instance. An example is m4.xlarge .
	//   - LINKED_ACCOUNT - The description in the attribute map that includes the
	//   full name of the member account. The value field contains the Amazon Web
	//   Services ID of the member account.
	//   - PLATFORM - The Amazon EC2 operating system. Examples are Windows or Linux.
	//   - REGION - The Amazon Web Services Region.
	//   - SCOPE (Utilization only) - The scope of a Reserved Instance (RI). Values
	//   are regional or a single Availability Zone.
	//   - TAG (Coverage only) - The tags that are associated with a Reserved Instance
	//   (RI).
	//   - TENANCY - The tenancy of a resource. Examples are shared or dedicated.
	// If you set the context to SAVINGS_PLANS , you can use the following dimensions
	// for searching:
	//   - SAVINGS_PLANS_TYPE - Type of Savings Plans (EC2 Instance or Compute)
	//   - PAYMENT_OPTION - The payment option for the given Savings Plans (for
	//   example, All Upfront)
	//   - REGION - The Amazon Web Services Region.
	//   - INSTANCE_TYPE_FAMILY - The family of instances (For example, m5 )
	//   - LINKED_ACCOUNT - The description in the attribute map that includes the
	//   full name of the member account. The value field contains the Amazon Web
	//   Services ID of the member account.
	//   - SAVINGS_PLAN_ARN - The unique identifier for your Savings Plans.
	Context types.Context

	// Use Expression to filter in various Cost Explorer APIs. Not all Expression
	// types are supported in each API. Refer to the documentation for each specific
	// API to see what is supported. There are two patterns:
	//   - Simple dimension values.
	//   - There are three types of simple dimension values: CostCategories , Tags ,
	//   and Dimensions .
	//   - Specify the CostCategories field to define a filter that acts on Cost
	//   Categories.
	//   - Specify the Tags field to define a filter that acts on Cost Allocation Tags.
	//   - Specify the Dimensions field to define a filter that acts on the
	//   DimensionValues (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_DimensionValues.html)
	//   .
	//   - For each filter type, you can set the dimension name and values for the
	//   filters that you plan to use.
	//   - For example, you can filter for REGION==us-east-1 OR REGION==us-west-1 . For
	//   GetRightsizingRecommendation , the Region is a full name (for example,
	//   REGION==US East (N. Virginia) .
	//   - The corresponding Expression for this example is as follows: {
	//   "Dimensions": { "Key": "REGION", "Values": [ "us-east-1", "us-west-1" ] } }
	//   - As shown in the previous example, lists of dimension values are combined
	//   with OR when applying the filter.
	//   - You can also set different match options to further control how the filter
	//   behaves. Not all APIs support match options. Refer to the documentation for each
	//   specific API to see what is supported.
	//   - For example, you can filter for linked account names that start with "a".
	//   - The corresponding Expression for this example is as follows: {
	//   "Dimensions": { "Key": "LINKED_ACCOUNT_NAME", "MatchOptions": [ "STARTS_WITH" ],
	//   "Values": [ "a" ] } }
	//   - Compound Expression types with logical operations.
	//   - You can use multiple Expression types and the logical operators AND/OR/NOT
	//   to create a list of one or more Expression objects. By doing this, you can
	//   filter by more advanced options.
	//   - For example, you can filter by ((REGION == us-east-1 OR REGION ==
	//   us-west-1) OR (TAG.Type == Type1)) AND (USAGE_TYPE != DataTransfer) .
	//   - The corresponding Expression for this example is as follows: { "And": [
	//   {"Or": [ {"Dimensions": { "Key": "REGION", "Values": [ "us-east-1", "us-west-1"
	//   ] }}, {"Tags": { "Key": "TagName", "Values": ["Value1"] } } ]}, {"Not":
	//   {"Dimensions": { "Key": "USAGE_TYPE", "Values": ["DataTransfer"] }}} ] }
	//   Because each Expression can have only one operator, the service returns an
	//   error if more than one is specified. The following example shows an Expression
	//   object that creates an error: { "And": [ ... ], "Dimensions": { "Key":
	//   "USAGE_TYPE", "Values": [ "DataTransfer" ] } } The following is an example of
	//   the corresponding error message: "Expression has more than one roots. Only
	//   one root operator is allowed for each expression: And, Or, Not, Dimensions,
	//   Tags, CostCategories"
	// For the GetRightsizingRecommendation action, a combination of OR and NOT isn't
	// supported. OR isn't supported between different dimensions, or dimensions and
	// tags. NOT operators aren't supported. Dimensions are also limited to
	// LINKED_ACCOUNT , REGION , or RIGHTSIZING_TYPE . For the
	// GetReservationPurchaseRecommendation action, only NOT is supported. AND and OR
	// aren't supported. Dimensions are limited to LINKED_ACCOUNT .
	Filter *types.Expression

	// This field is only used when SortBy is provided in the request. The maximum
	// number of objects that are returned for this request. If MaxResults isn't
	// specified with SortBy, the request returns 1000 results as the default value for
	// this parameter. For GetDimensionValues , MaxResults has an upper limit of 1000.
	MaxResults *int32

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string

	// The value that you want to search the filter values for.
	SearchString *string

	// The value that you want to sort the data by. The key represents cost and usage
	// metrics. The following values are supported:
	//   - BlendedCost
	//   - UnblendedCost
	//   - AmortizedCost
	//   - NetAmortizedCost
	//   - NetUnblendedCost
	//   - UsageQuantity
	//   - NormalizedUsageAmount
	// The supported values for the SortOrder key are ASCENDING or DESCENDING . When
	// you specify a SortBy paramater, the context must be COST_AND_USAGE . Further,
	// when using SortBy , NextPageToken and SearchString aren't supported.
	SortBy []types.SortDefinition
	// contains filtered or unexported fields
}

type GetDimensionValuesOutput

type GetDimensionValuesOutput struct {

	// The filters that you used to filter your request. Some dimensions are available
	// only for a specific context. If you set the context to COST_AND_USAGE , you can
	// use the following dimensions for searching:
	//   - AZ - The Availability Zone. An example is us-east-1a .
	//   - DATABASE_ENGINE - The Amazon Relational Database Service database. Examples
	//   are Aurora or MySQL.
	//   - INSTANCE_TYPE - The type of Amazon EC2 instance. An example is m4.xlarge .
	//   - LEGAL_ENTITY_NAME - The name of the organization that sells you Amazon Web
	//   Services services, such as Amazon Web Services.
	//   - LINKED_ACCOUNT - The description in the attribute map that includes the
	//   full name of the member account. The value field contains the Amazon Web
	//   Services ID of the member account.
	//   - OPERATING_SYSTEM - The operating system. Examples are Windows or Linux.
	//   - OPERATION - The action performed. Examples include RunInstance and
	//   CreateBucket .
	//   - PLATFORM - The Amazon EC2 operating system. Examples are Windows or Linux.
	//   - PURCHASE_TYPE - The reservation type of the purchase to which this usage is
	//   related. Examples include On-Demand Instances and Standard Reserved Instances.
	//   - SERVICE - The Amazon Web Services service such as Amazon DynamoDB.
	//   - USAGE_TYPE - The type of usage. An example is DataTransfer-In-Bytes. The
	//   response for the GetDimensionValues operation includes a unit attribute.
	//   Examples include GB and Hrs.
	//   - USAGE_TYPE_GROUP - The grouping of common usage types. An example is Amazon
	//   EC2: CloudWatch – Alarms. The response for this operation includes a unit
	//   attribute.
	//   - RECORD_TYPE - The different types of charges such as RI fees, usage costs,
	//   tax refunds, and credits.
	//   - RESOURCE_ID - The unique identifier of the resource. ResourceId is an
	//   opt-in feature only available for last 14 days for EC2-Compute Service. You can
	//   opt-in by enabling Hourly and Resource Level Data in Cost Management Console
	//   preferences.
	// If you set the context to RESERVATIONS , you can use the following dimensions
	// for searching:
	//   - AZ - The Availability Zone. An example is us-east-1a .
	//   - CACHE_ENGINE - The Amazon ElastiCache operating system. Examples are
	//   Windows or Linux.
	//   - DEPLOYMENT_OPTION - The scope of Amazon Relational Database Service
	//   deployments. Valid values are SingleAZ and MultiAZ .
	//   - INSTANCE_TYPE - The type of Amazon EC2 instance. An example is m4.xlarge .
	//   - LINKED_ACCOUNT - The description in the attribute map that includes the
	//   full name of the member account. The value field contains the Amazon Web
	//   Services ID of the member account.
	//   - PLATFORM - The Amazon EC2 operating system. Examples are Windows or Linux.
	//   - REGION - The Amazon Web Services Region.
	//   - SCOPE (Utilization only) - The scope of a Reserved Instance (RI). Values
	//   are regional or a single Availability Zone.
	//   - TAG (Coverage only) - The tags that are associated with a Reserved Instance
	//   (RI).
	//   - TENANCY - The tenancy of a resource. Examples are shared or dedicated.
	// If you set the context to SAVINGS_PLANS , you can use the following dimensions
	// for searching:
	//   - SAVINGS_PLANS_TYPE - Type of Savings Plans (EC2 Instance or Compute)
	//   - PAYMENT_OPTION - Payment option for the given Savings Plans (for example,
	//   All Upfront)
	//   - REGION - The Amazon Web Services Region.
	//   - INSTANCE_TYPE_FAMILY - The family of instances (For example, m5 )
	//   - LINKED_ACCOUNT - The description in the attribute map that includes the
	//   full name of the member account. The value field contains the Amazon Web
	//   Services ID of the member account.
	//   - SAVINGS_PLAN_ARN - The unique identifier for your Savings Plan
	//
	// This member is required.
	DimensionValues []types.DimensionValuesWithAttributes

	// The number of results that Amazon Web Services returned at one time.
	//
	// This member is required.
	ReturnSize *int32

	// The total number of search results.
	//
	// This member is required.
	TotalSize *int32

	// The token for the next set of retrievable results. Amazon Web Services provides
	// the token when the response from a previous call has more results than the
	// maximum page size.
	NextPageToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetReservationCoverageInput

type GetReservationCoverageInput struct {

	// The start and end dates of the period that you want to retrieve data about
	// reservation coverage for. You can retrieve data for a maximum of 13 months: the
	// last 12 months and the current month. The start date is inclusive, but the end
	// date is exclusive. For example, if start is 2017-01-01 and end is 2017-05-01 ,
	// then the cost and usage data is retrieved from 2017-01-01 up to and including
	// 2017-04-30 but not including 2017-05-01 .
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// Filters utilization data by dimensions. You can filter by the following
	// dimensions:
	//   - AZ
	//   - CACHE_ENGINE
	//   - DATABASE_ENGINE
	//   - DEPLOYMENT_OPTION
	//   - INSTANCE_TYPE
	//   - LINKED_ACCOUNT
	//   - OPERATING_SYSTEM
	//   - PLATFORM
	//   - REGION
	//   - SERVICE
	//   - TAG
	//   - TENANCY
	// GetReservationCoverage uses the same Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html)
	// object as the other operations, but only AND is supported among each dimension.
	// You can nest only one level deep. If there are multiple values for a dimension,
	// they are OR'd together. If you don't provide a SERVICE filter, Cost Explorer
	// defaults to EC2. Cost category is also supported.
	Filter *types.Expression

	// The granularity of the Amazon Web Services cost data for the reservation. Valid
	// values are MONTHLY and DAILY . If GroupBy is set, Granularity can't be set. If
	// Granularity isn't set, the response object doesn't include Granularity , either
	// MONTHLY or DAILY . The GetReservationCoverage operation supports only DAILY and
	// MONTHLY granularities.
	Granularity types.Granularity

	// You can group the data by the following attributes:
	//   - AZ
	//   - CACHE_ENGINE
	//   - DATABASE_ENGINE
	//   - DEPLOYMENT_OPTION
	//   - INSTANCE_TYPE
	//   - INVOICING_ENTITY
	//   - LINKED_ACCOUNT
	//   - OPERATING_SYSTEM
	//   - PLATFORM
	//   - REGION
	//   - TENANCY
	GroupBy []types.GroupDefinition

	// The maximum number of objects that you returned for this request. If more
	// objects are available, in the response, Amazon Web Services provides a
	// NextPageToken value that you can use in a subsequent call to get the next batch
	// of objects.
	MaxResults *int32

	// The measurement that you want your reservation coverage reported in. Valid
	// values are Hour , Unit , and Cost . You can use multiple values in a request.
	Metrics []string

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string

	// The value by which you want to sort the data. The following values are
	// supported for Key :
	//   - OnDemandCost
	//   - CoverageHoursPercentage
	//   - OnDemandHours
	//   - ReservedHours
	//   - TotalRunningHours
	//   - CoverageNormalizedUnitsPercentage
	//   - OnDemandNormalizedUnits
	//   - ReservedNormalizedUnits
	//   - TotalRunningNormalizedUnits
	//   - Time
	// Supported values for SortOrder are ASCENDING or DESCENDING .
	SortBy *types.SortDefinition
	// contains filtered or unexported fields
}

You can use the following request parameters to query for how much of your instance usage a reservation covered.

type GetReservationCoverageOutput

type GetReservationCoverageOutput struct {

	// The amount of time that your reservations covered.
	//
	// This member is required.
	CoveragesByTime []types.CoverageByTime

	// The token for the next set of retrievable results. Amazon Web Services provides
	// the token when the response from a previous call has more results than the
	// maximum page size.
	NextPageToken *string

	// The total amount of instance usage that a reservation covered.
	Total *types.Coverage

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetReservationPurchaseRecommendationInput

type GetReservationPurchaseRecommendationInput struct {

	// The specific service that you want recommendations for.
	//
	// This member is required.
	Service *string

	// The account ID that's associated with the recommendation.
	AccountId *string

	// The account scope that you want your recommendations for. Amazon Web Services
	// calculates recommendations including the management account and member accounts
	// if the value is set to PAYER . If the value is LINKED , recommendations are
	// calculated for individual member accounts only.
	AccountScope types.AccountScope

	// Use Expression to filter in various Cost Explorer APIs. Not all Expression
	// types are supported in each API. Refer to the documentation for each specific
	// API to see what is supported. There are two patterns:
	//   - Simple dimension values.
	//   - There are three types of simple dimension values: CostCategories , Tags ,
	//   and Dimensions .
	//   - Specify the CostCategories field to define a filter that acts on Cost
	//   Categories.
	//   - Specify the Tags field to define a filter that acts on Cost Allocation Tags.
	//   - Specify the Dimensions field to define a filter that acts on the
	//   DimensionValues (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_DimensionValues.html)
	//   .
	//   - For each filter type, you can set the dimension name and values for the
	//   filters that you plan to use.
	//   - For example, you can filter for REGION==us-east-1 OR REGION==us-west-1 . For
	//   GetRightsizingRecommendation , the Region is a full name (for example,
	//   REGION==US East (N. Virginia) .
	//   - The corresponding Expression for this example is as follows: {
	//   "Dimensions": { "Key": "REGION", "Values": [ "us-east-1", "us-west-1" ] } }
	//   - As shown in the previous example, lists of dimension values are combined
	//   with OR when applying the filter.
	//   - You can also set different match options to further control how the filter
	//   behaves. Not all APIs support match options. Refer to the documentation for each
	//   specific API to see what is supported.
	//   - For example, you can filter for linked account names that start with "a".
	//   - The corresponding Expression for this example is as follows: {
	//   "Dimensions": { "Key": "LINKED_ACCOUNT_NAME", "MatchOptions": [ "STARTS_WITH" ],
	//   "Values": [ "a" ] } }
	//   - Compound Expression types with logical operations.
	//   - You can use multiple Expression types and the logical operators AND/OR/NOT
	//   to create a list of one or more Expression objects. By doing this, you can
	//   filter by more advanced options.
	//   - For example, you can filter by ((REGION == us-east-1 OR REGION ==
	//   us-west-1) OR (TAG.Type == Type1)) AND (USAGE_TYPE != DataTransfer) .
	//   - The corresponding Expression for this example is as follows: { "And": [
	//   {"Or": [ {"Dimensions": { "Key": "REGION", "Values": [ "us-east-1", "us-west-1"
	//   ] }}, {"Tags": { "Key": "TagName", "Values": ["Value1"] } } ]}, {"Not":
	//   {"Dimensions": { "Key": "USAGE_TYPE", "Values": ["DataTransfer"] }}} ] }
	//   Because each Expression can have only one operator, the service returns an
	//   error if more than one is specified. The following example shows an Expression
	//   object that creates an error: { "And": [ ... ], "Dimensions": { "Key":
	//   "USAGE_TYPE", "Values": [ "DataTransfer" ] } } The following is an example of
	//   the corresponding error message: "Expression has more than one roots. Only
	//   one root operator is allowed for each expression: And, Or, Not, Dimensions,
	//   Tags, CostCategories"
	// For the GetRightsizingRecommendation action, a combination of OR and NOT isn't
	// supported. OR isn't supported between different dimensions, or dimensions and
	// tags. NOT operators aren't supported. Dimensions are also limited to
	// LINKED_ACCOUNT , REGION , or RIGHTSIZING_TYPE . For the
	// GetReservationPurchaseRecommendation action, only NOT is supported. AND and OR
	// aren't supported. Dimensions are limited to LINKED_ACCOUNT .
	Filter *types.Expression

	// The number of previous days that you want Amazon Web Services to consider when
	// it calculates your recommendations.
	LookbackPeriodInDays types.LookbackPeriodInDays

	// The pagination token that indicates the next set of results that you want to
	// retrieve.
	NextPageToken *string

	// The number of recommendations that you want returned in a single response
	// object.
	PageSize int32

	// The reservation purchase option that you want recommendations for.
	PaymentOption types.PaymentOption

	// The hardware specifications for the service instances that you want
	// recommendations for, such as standard or convertible Amazon EC2 instances.
	ServiceSpecification *types.ServiceSpecification

	// The reservation term that you want recommendations for.
	TermInYears types.TermInYears
	// contains filtered or unexported fields
}

type GetReservationPurchaseRecommendationOutput

type GetReservationPurchaseRecommendationOutput struct {

	// Information about this specific recommendation call, such as the time stamp for
	// when Cost Explorer generated this recommendation.
	Metadata *types.ReservationPurchaseRecommendationMetadata

	// The pagination token for the next set of retrievable results.
	NextPageToken *string

	// Recommendations for reservations to purchase.
	Recommendations []types.ReservationPurchaseRecommendation

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetReservationUtilizationInput

type GetReservationUtilizationInput struct {

	// Sets the start and end dates for retrieving Reserved Instance (RI) utilization.
	// The start date is inclusive, but the end date is exclusive. For example, if
	// start is 2017-01-01 and end is 2017-05-01 , then the cost and usage data is
	// retrieved from 2017-01-01 up to and including 2017-04-30 but not including
	// 2017-05-01 .
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// Filters utilization data by dimensions. You can filter by the following
	// dimensions:
	//   - AZ
	//   - CACHE_ENGINE
	//   - DEPLOYMENT_OPTION
	//   - INSTANCE_TYPE
	//   - LINKED_ACCOUNT
	//   - OPERATING_SYSTEM
	//   - PLATFORM
	//   - REGION
	//   - SERVICE
	//   - SCOPE
	//   - TENANCY
	// GetReservationUtilization uses the same Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html)
	// object as the other operations, but only AND is supported among each dimension,
	// and nesting is supported up to only one level deep. If there are multiple values
	// for a dimension, they are OR'd together.
	Filter *types.Expression

	// If GroupBy is set, Granularity can't be set. If Granularity isn't set, the
	// response object doesn't include Granularity , either MONTHLY or DAILY . If both
	// GroupBy and Granularity aren't set, GetReservationUtilization defaults to DAILY
	// . The GetReservationUtilization operation supports only DAILY and MONTHLY
	// granularities.
	Granularity types.Granularity

	// Groups only by SUBSCRIPTION_ID . Metadata is included.
	GroupBy []types.GroupDefinition

	// The maximum number of objects that you returned for this request. If more
	// objects are available, in the response, Amazon Web Services provides a
	// NextPageToken value that you can use in a subsequent call to get the next batch
	// of objects.
	MaxResults *int32

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string

	// The value that you want to sort the data by. The following values are supported
	// for Key :
	//   - UtilizationPercentage
	//   - UtilizationPercentageInUnits
	//   - PurchasedHours
	//   - PurchasedUnits
	//   - TotalActualHours
	//   - TotalActualUnits
	//   - UnusedHours
	//   - UnusedUnits
	//   - OnDemandCostOfRIHoursUsed
	//   - NetRISavings
	//   - TotalPotentialRISavings
	//   - AmortizedUpfrontFee
	//   - AmortizedRecurringFee
	//   - TotalAmortizedFee
	//   - RICostForUnusedHours
	//   - RealizedSavings
	//   - UnrealizedSavings
	// The supported values for SortOrder are ASCENDING and DESCENDING .
	SortBy *types.SortDefinition
	// contains filtered or unexported fields
}

type GetReservationUtilizationOutput

type GetReservationUtilizationOutput struct {

	// The amount of time that you used your Reserved Instances (RIs).
	//
	// This member is required.
	UtilizationsByTime []types.UtilizationByTime

	// The token for the next set of retrievable results. Amazon Web Services provides
	// the token when the response from a previous call has more results than the
	// maximum page size.
	NextPageToken *string

	// The total amount of time that you used your Reserved Instances (RIs).
	Total *types.ReservationAggregates

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetRightsizingRecommendationInput

type GetRightsizingRecommendationInput struct {

	// The specific service that you want recommendations for. The only valid value
	// for GetRightsizingRecommendation is " AmazonEC2 ".
	//
	// This member is required.
	Service *string

	// You can use Configuration to customize recommendations across two attributes.
	// You can choose to view recommendations for instances within the same instance
	// families or across different instance families. You can also choose to view your
	// estimated savings that are associated with recommendations with consideration of
	// existing Savings Plans or RI benefits, or neither.
	Configuration *types.RightsizingRecommendationConfiguration

	// Use Expression to filter in various Cost Explorer APIs. Not all Expression
	// types are supported in each API. Refer to the documentation for each specific
	// API to see what is supported. There are two patterns:
	//   - Simple dimension values.
	//   - There are three types of simple dimension values: CostCategories , Tags ,
	//   and Dimensions .
	//   - Specify the CostCategories field to define a filter that acts on Cost
	//   Categories.
	//   - Specify the Tags field to define a filter that acts on Cost Allocation Tags.
	//   - Specify the Dimensions field to define a filter that acts on the
	//   DimensionValues (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_DimensionValues.html)
	//   .
	//   - For each filter type, you can set the dimension name and values for the
	//   filters that you plan to use.
	//   - For example, you can filter for REGION==us-east-1 OR REGION==us-west-1 . For
	//   GetRightsizingRecommendation , the Region is a full name (for example,
	//   REGION==US East (N. Virginia) .
	//   - The corresponding Expression for this example is as follows: {
	//   "Dimensions": { "Key": "REGION", "Values": [ "us-east-1", "us-west-1" ] } }
	//   - As shown in the previous example, lists of dimension values are combined
	//   with OR when applying the filter.
	//   - You can also set different match options to further control how the filter
	//   behaves. Not all APIs support match options. Refer to the documentation for each
	//   specific API to see what is supported.
	//   - For example, you can filter for linked account names that start with "a".
	//   - The corresponding Expression for this example is as follows: {
	//   "Dimensions": { "Key": "LINKED_ACCOUNT_NAME", "MatchOptions": [ "STARTS_WITH" ],
	//   "Values": [ "a" ] } }
	//   - Compound Expression types with logical operations.
	//   - You can use multiple Expression types and the logical operators AND/OR/NOT
	//   to create a list of one or more Expression objects. By doing this, you can
	//   filter by more advanced options.
	//   - For example, you can filter by ((REGION == us-east-1 OR REGION ==
	//   us-west-1) OR (TAG.Type == Type1)) AND (USAGE_TYPE != DataTransfer) .
	//   - The corresponding Expression for this example is as follows: { "And": [
	//   {"Or": [ {"Dimensions": { "Key": "REGION", "Values": [ "us-east-1", "us-west-1"
	//   ] }}, {"Tags": { "Key": "TagName", "Values": ["Value1"] } } ]}, {"Not":
	//   {"Dimensions": { "Key": "USAGE_TYPE", "Values": ["DataTransfer"] }}} ] }
	//   Because each Expression can have only one operator, the service returns an
	//   error if more than one is specified. The following example shows an Expression
	//   object that creates an error: { "And": [ ... ], "Dimensions": { "Key":
	//   "USAGE_TYPE", "Values": [ "DataTransfer" ] } } The following is an example of
	//   the corresponding error message: "Expression has more than one roots. Only
	//   one root operator is allowed for each expression: And, Or, Not, Dimensions,
	//   Tags, CostCategories"
	// For the GetRightsizingRecommendation action, a combination of OR and NOT isn't
	// supported. OR isn't supported between different dimensions, or dimensions and
	// tags. NOT operators aren't supported. Dimensions are also limited to
	// LINKED_ACCOUNT , REGION , or RIGHTSIZING_TYPE . For the
	// GetReservationPurchaseRecommendation action, only NOT is supported. AND and OR
	// aren't supported. Dimensions are limited to LINKED_ACCOUNT .
	Filter *types.Expression

	// The pagination token that indicates the next set of results that you want to
	// retrieve.
	NextPageToken *string

	// The number of recommendations that you want returned in a single response
	// object.
	PageSize int32
	// contains filtered or unexported fields
}

type GetRightsizingRecommendationOutput

type GetRightsizingRecommendationOutput struct {

	// You can use Configuration to customize recommendations across two attributes.
	// You can choose to view recommendations for instances within the same instance
	// families or across different instance families. You can also choose to view your
	// estimated savings that are associated with recommendations with consideration of
	// existing Savings Plans or RI benefits, or neither.
	Configuration *types.RightsizingRecommendationConfiguration

	// Information regarding this specific recommendation set.
	Metadata *types.RightsizingRecommendationMetadata

	// The token to retrieve the next set of results.
	NextPageToken *string

	// Recommendations to rightsize resources.
	RightsizingRecommendations []types.RightsizingRecommendation

	// Summary of this recommendation set.
	Summary *types.RightsizingRecommendationSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetSavingsPlanPurchaseRecommendationDetailsInput added in v1.26.0

type GetSavingsPlanPurchaseRecommendationDetailsInput struct {

	// The ID that is associated with the Savings Plan recommendation.
	//
	// This member is required.
	RecommendationDetailId *string
	// contains filtered or unexported fields
}

type GetSavingsPlanPurchaseRecommendationDetailsOutput added in v1.26.0

type GetSavingsPlanPurchaseRecommendationDetailsOutput struct {

	// Contains detailed information about a specific Savings Plan recommendation.
	RecommendationDetailData *types.RecommendationDetailData

	// The ID that is associated with the Savings Plan recommendation.
	RecommendationDetailId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetSavingsPlansCoverageAPIClient added in v0.30.0

type GetSavingsPlansCoverageAPIClient interface {
	GetSavingsPlansCoverage(context.Context, *GetSavingsPlansCoverageInput, ...func(*Options)) (*GetSavingsPlansCoverageOutput, error)
}

GetSavingsPlansCoverageAPIClient is a client that implements the GetSavingsPlansCoverage operation.

type GetSavingsPlansCoverageInput

type GetSavingsPlansCoverageInput struct {

	// The time period that you want the usage and costs for. The Start date must be
	// within 13 months. The End date must be after the Start date, and before the
	// current date. Future dates can't be used as an End date.
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// Filters Savings Plans coverage data by dimensions. You can filter data for
	// Savings Plans usage with the following dimensions:
	//   - LINKED_ACCOUNT
	//   - REGION
	//   - SERVICE
	//   - INSTANCE_FAMILY
	// GetSavingsPlansCoverage uses the same Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html)
	// object as the other operations, but only AND is supported among each dimension.
	// If there are multiple values for a dimension, they are OR'd together. Cost
	// category is also supported.
	Filter *types.Expression

	// The granularity of the Amazon Web Services cost data for your Savings Plans.
	// Granularity can't be set if GroupBy is set. The GetSavingsPlansCoverage
	// operation supports only DAILY and MONTHLY granularities.
	Granularity types.Granularity

	// You can group the data using the attributes INSTANCE_FAMILY , REGION , or
	// SERVICE .
	GroupBy []types.GroupDefinition

	// The number of items to be returned in a response. The default is 20 , with a
	// minimum value of 1 .
	MaxResults *int32

	// The measurement that you want your Savings Plans coverage reported in. The only
	// valid value is SpendCoveredBySavingsPlans .
	Metrics []string

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextToken *string

	// The value that you want to sort the data by. The following values are supported
	// for Key :
	//   - SpendCoveredBySavingsPlan
	//   - OnDemandCost
	//   - CoveragePercentage
	//   - TotalCost
	//   - InstanceFamily
	//   - Region
	//   - Service
	// The supported values for SortOrder are ASCENDING and DESCENDING .
	SortBy *types.SortDefinition
	// contains filtered or unexported fields
}

type GetSavingsPlansCoverageOutput

type GetSavingsPlansCoverageOutput struct {

	// The amount of spend that your Savings Plans covered.
	//
	// This member is required.
	SavingsPlansCoverages []types.SavingsPlansCoverage

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetSavingsPlansCoveragePaginator added in v0.30.0

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

GetSavingsPlansCoveragePaginator is a paginator for GetSavingsPlansCoverage

func NewGetSavingsPlansCoveragePaginator added in v0.30.0

NewGetSavingsPlansCoveragePaginator returns a new GetSavingsPlansCoveragePaginator

func (*GetSavingsPlansCoveragePaginator) HasMorePages added in v0.30.0

func (p *GetSavingsPlansCoveragePaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*GetSavingsPlansCoveragePaginator) NextPage added in v0.30.0

NextPage retrieves the next GetSavingsPlansCoverage page.

type GetSavingsPlansCoveragePaginatorOptions added in v0.30.0

type GetSavingsPlansCoveragePaginatorOptions struct {
	// The number of items to be returned in a response. The default is 20 , with a
	// minimum value of 1 .
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

GetSavingsPlansCoveragePaginatorOptions is the paginator options for GetSavingsPlansCoverage

type GetSavingsPlansPurchaseRecommendationInput

type GetSavingsPlansPurchaseRecommendationInput struct {

	// The lookback period that's used to generate the recommendation.
	//
	// This member is required.
	LookbackPeriodInDays types.LookbackPeriodInDays

	// The payment option that's used to generate these recommendations.
	//
	// This member is required.
	PaymentOption types.PaymentOption

	// The Savings Plans recommendation type that's requested.
	//
	// This member is required.
	SavingsPlansType types.SupportedSavingsPlansType

	// The savings plan recommendation term that's used to generate these
	// recommendations.
	//
	// This member is required.
	TermInYears types.TermInYears

	// The account scope that you want your recommendations for. Amazon Web Services
	// calculates recommendations including the management account and member accounts
	// if the value is set to PAYER . If the value is LINKED , recommendations are
	// calculated for individual member accounts only.
	AccountScope types.AccountScope

	// You can filter your recommendations by Account ID with the LINKED_ACCOUNT
	// dimension. To filter your recommendations by Account ID, specify Key as
	// LINKED_ACCOUNT and Value as the comma-separated Acount ID(s) that you want to
	// see Savings Plans purchase recommendations for. For
	// GetSavingsPlansPurchaseRecommendation, the Filter doesn't include CostCategories
	// or Tags . It only includes Dimensions . With Dimensions , Key must be
	// LINKED_ACCOUNT and Value can be a single Account ID or multiple comma-separated
	// Account IDs that you want to see Savings Plans Purchase Recommendations for. AND
	// and OR operators are not supported.
	Filter *types.Expression

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string

	// The number of recommendations that you want returned in a single response
	// object.
	PageSize int32
	// contains filtered or unexported fields
}

type GetSavingsPlansPurchaseRecommendationOutput

type GetSavingsPlansPurchaseRecommendationOutput struct {

	// Information that regards this specific recommendation set.
	Metadata *types.SavingsPlansPurchaseRecommendationMetadata

	// The token for the next set of retrievable results. Amazon Web Services provides
	// the token when the response from a previous call has more results than the
	// maximum page size.
	NextPageToken *string

	// Contains your request parameters, Savings Plan Recommendations Summary, and
	// Details.
	SavingsPlansPurchaseRecommendation *types.SavingsPlansPurchaseRecommendation

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetSavingsPlansUtilizationDetailsAPIClient added in v0.30.0

type GetSavingsPlansUtilizationDetailsAPIClient interface {
	GetSavingsPlansUtilizationDetails(context.Context, *GetSavingsPlansUtilizationDetailsInput, ...func(*Options)) (*GetSavingsPlansUtilizationDetailsOutput, error)
}

GetSavingsPlansUtilizationDetailsAPIClient is a client that implements the GetSavingsPlansUtilizationDetails operation.

type GetSavingsPlansUtilizationDetailsInput

type GetSavingsPlansUtilizationDetailsInput struct {

	// The time period that you want the usage and costs for. The Start date must be
	// within 13 months. The End date must be after the Start date, and before the
	// current date. Future dates can't be used as an End date.
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// The data type.
	DataType []types.SavingsPlansDataType

	// Filters Savings Plans utilization coverage data for active Savings Plans
	// dimensions. You can filter data with the following dimensions:
	//   - LINKED_ACCOUNT
	//   - SAVINGS_PLAN_ARN
	//   - REGION
	//   - PAYMENT_OPTION
	//   - INSTANCE_TYPE_FAMILY
	// GetSavingsPlansUtilizationDetails uses the same Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html)
	// object as the other operations, but only AND is supported among each dimension.
	Filter *types.Expression

	// The number of items to be returned in a response. The default is 20 , with a
	// minimum value of 1 .
	MaxResults *int32

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextToken *string

	// The value that you want to sort the data by. The following values are supported
	// for Key :
	//   - UtilizationPercentage
	//   - TotalCommitment
	//   - UsedCommitment
	//   - UnusedCommitment
	//   - NetSavings
	//   - AmortizedRecurringCommitment
	//   - AmortizedUpfrontCommitment
	// The supported values for SortOrder are ASCENDING and DESCENDING .
	SortBy *types.SortDefinition
	// contains filtered or unexported fields
}

type GetSavingsPlansUtilizationDetailsOutput

type GetSavingsPlansUtilizationDetailsOutput struct {

	// Retrieves a single daily or monthly Savings Plans utilization rate and details
	// for your account.
	//
	// This member is required.
	SavingsPlansUtilizationDetails []types.SavingsPlansUtilizationDetail

	// The time period of the request.
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextToken *string

	// The total Savings Plans utilization, regardless of time period.
	Total *types.SavingsPlansUtilizationAggregates

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetSavingsPlansUtilizationDetailsPaginator added in v0.30.0

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

GetSavingsPlansUtilizationDetailsPaginator is a paginator for GetSavingsPlansUtilizationDetails

func NewGetSavingsPlansUtilizationDetailsPaginator added in v0.30.0

NewGetSavingsPlansUtilizationDetailsPaginator returns a new GetSavingsPlansUtilizationDetailsPaginator

func (*GetSavingsPlansUtilizationDetailsPaginator) HasMorePages added in v0.30.0

HasMorePages returns a boolean indicating whether more pages are available

func (*GetSavingsPlansUtilizationDetailsPaginator) NextPage added in v0.30.0

NextPage retrieves the next GetSavingsPlansUtilizationDetails page.

type GetSavingsPlansUtilizationDetailsPaginatorOptions added in v0.30.0

type GetSavingsPlansUtilizationDetailsPaginatorOptions struct {
	// The number of items to be returned in a response. The default is 20 , with a
	// minimum value of 1 .
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

GetSavingsPlansUtilizationDetailsPaginatorOptions is the paginator options for GetSavingsPlansUtilizationDetails

type GetSavingsPlansUtilizationInput

type GetSavingsPlansUtilizationInput struct {

	// The time period that you want the usage and costs for. The Start date must be
	// within 13 months. The End date must be after the Start date, and before the
	// current date. Future dates can't be used as an End date.
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// Filters Savings Plans utilization coverage data for active Savings Plans
	// dimensions. You can filter data with the following dimensions:
	//   - LINKED_ACCOUNT
	//   - SAVINGS_PLAN_ARN
	//   - SAVINGS_PLANS_TYPE
	//   - REGION
	//   - PAYMENT_OPTION
	//   - INSTANCE_TYPE_FAMILY
	// GetSavingsPlansUtilization uses the same Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html)
	// object as the other operations, but only AND is supported among each dimension.
	Filter *types.Expression

	// The granularity of the Amazon Web Services utillization data for your Savings
	// Plans. The GetSavingsPlansUtilization operation supports only DAILY and MONTHLY
	// granularities.
	Granularity types.Granularity

	// The value that you want to sort the data by. The following values are supported
	// for Key :
	//   - UtilizationPercentage
	//   - TotalCommitment
	//   - UsedCommitment
	//   - UnusedCommitment
	//   - NetSavings
	// The supported values for SortOrder are ASCENDING and DESCENDING .
	SortBy *types.SortDefinition
	// contains filtered or unexported fields
}

type GetSavingsPlansUtilizationOutput

type GetSavingsPlansUtilizationOutput struct {

	// The total amount of cost/commitment that you used your Savings Plans,
	// regardless of date ranges.
	//
	// This member is required.
	Total *types.SavingsPlansUtilizationAggregates

	// The amount of cost/commitment that you used your Savings Plans. You can use it
	// to specify date ranges.
	SavingsPlansUtilizationsByTime []types.SavingsPlansUtilizationByTime

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetTagsInput

type GetTagsInput struct {

	// The start and end dates for retrieving the dimension values. The start date is
	// inclusive, but the end date is exclusive. For example, if start is 2017-01-01
	// and end is 2017-05-01 , then the cost and usage data is retrieved from
	// 2017-01-01 up to and including 2017-04-30 but not including 2017-05-01 .
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// Use Expression to filter in various Cost Explorer APIs. Not all Expression
	// types are supported in each API. Refer to the documentation for each specific
	// API to see what is supported. There are two patterns:
	//   - Simple dimension values.
	//   - There are three types of simple dimension values: CostCategories , Tags ,
	//   and Dimensions .
	//   - Specify the CostCategories field to define a filter that acts on Cost
	//   Categories.
	//   - Specify the Tags field to define a filter that acts on Cost Allocation Tags.
	//   - Specify the Dimensions field to define a filter that acts on the
	//   DimensionValues (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_DimensionValues.html)
	//   .
	//   - For each filter type, you can set the dimension name and values for the
	//   filters that you plan to use.
	//   - For example, you can filter for REGION==us-east-1 OR REGION==us-west-1 . For
	//   GetRightsizingRecommendation , the Region is a full name (for example,
	//   REGION==US East (N. Virginia) .
	//   - The corresponding Expression for this example is as follows: {
	//   "Dimensions": { "Key": "REGION", "Values": [ "us-east-1", "us-west-1" ] } }
	//   - As shown in the previous example, lists of dimension values are combined
	//   with OR when applying the filter.
	//   - You can also set different match options to further control how the filter
	//   behaves. Not all APIs support match options. Refer to the documentation for each
	//   specific API to see what is supported.
	//   - For example, you can filter for linked account names that start with "a".
	//   - The corresponding Expression for this example is as follows: {
	//   "Dimensions": { "Key": "LINKED_ACCOUNT_NAME", "MatchOptions": [ "STARTS_WITH" ],
	//   "Values": [ "a" ] } }
	//   - Compound Expression types with logical operations.
	//   - You can use multiple Expression types and the logical operators AND/OR/NOT
	//   to create a list of one or more Expression objects. By doing this, you can
	//   filter by more advanced options.
	//   - For example, you can filter by ((REGION == us-east-1 OR REGION ==
	//   us-west-1) OR (TAG.Type == Type1)) AND (USAGE_TYPE != DataTransfer) .
	//   - The corresponding Expression for this example is as follows: { "And": [
	//   {"Or": [ {"Dimensions": { "Key": "REGION", "Values": [ "us-east-1", "us-west-1"
	//   ] }}, {"Tags": { "Key": "TagName", "Values": ["Value1"] } } ]}, {"Not":
	//   {"Dimensions": { "Key": "USAGE_TYPE", "Values": ["DataTransfer"] }}} ] }
	//   Because each Expression can have only one operator, the service returns an
	//   error if more than one is specified. The following example shows an Expression
	//   object that creates an error: { "And": [ ... ], "Dimensions": { "Key":
	//   "USAGE_TYPE", "Values": [ "DataTransfer" ] } } The following is an example of
	//   the corresponding error message: "Expression has more than one roots. Only
	//   one root operator is allowed for each expression: And, Or, Not, Dimensions,
	//   Tags, CostCategories"
	// For the GetRightsizingRecommendation action, a combination of OR and NOT isn't
	// supported. OR isn't supported between different dimensions, or dimensions and
	// tags. NOT operators aren't supported. Dimensions are also limited to
	// LINKED_ACCOUNT , REGION , or RIGHTSIZING_TYPE . For the
	// GetReservationPurchaseRecommendation action, only NOT is supported. AND and OR
	// aren't supported. Dimensions are limited to LINKED_ACCOUNT .
	Filter *types.Expression

	// This field is only used when SortBy is provided in the request. The maximum
	// number of objects that are returned for this request. If MaxResults isn't
	// specified with SortBy, the request returns 1000 results as the default value for
	// this parameter. For GetTags , MaxResults has an upper quota of 1000.
	MaxResults *int32

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextPageToken *string

	// The value that you want to search for.
	SearchString *string

	// The value that you want to sort the data by. The key represents cost and usage
	// metrics. The following values are supported:
	//   - BlendedCost
	//   - UnblendedCost
	//   - AmortizedCost
	//   - NetAmortizedCost
	//   - NetUnblendedCost
	//   - UsageQuantity
	//   - NormalizedUsageAmount
	// The supported values for SortOrder are ASCENDING and DESCENDING . When you use
	// SortBy , NextPageToken and SearchString aren't supported.
	SortBy []types.SortDefinition

	// The key of the tag that you want to return values for.
	TagKey *string
	// contains filtered or unexported fields
}

type GetTagsOutput

type GetTagsOutput struct {

	// The number of query results that Amazon Web Services returns at a time.
	//
	// This member is required.
	ReturnSize *int32

	// The tags that match your request.
	//
	// This member is required.
	Tags []string

	// The total number of query results.
	//
	// This member is required.
	TotalSize *int32

	// The token for the next set of retrievable results. Amazon Web Services provides
	// the token when the response from a previous call has more results than the
	// maximum page size.
	NextPageToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetUsageForecastInput

type GetUsageForecastInput struct {

	// How granular you want the forecast to be. You can get 3 months of DAILY
	// forecasts or 12 months of MONTHLY forecasts. The GetUsageForecast operation
	// supports only DAILY and MONTHLY granularities.
	//
	// This member is required.
	Granularity types.Granularity

	// Which metric Cost Explorer uses to create your forecast. Valid values for a
	// GetUsageForecast call are the following:
	//   - USAGE_QUANTITY
	//   - NORMALIZED_USAGE_AMOUNT
	//
	// This member is required.
	Metric types.Metric

	// The start and end dates of the period that you want to retrieve usage forecast
	// for. The start date is included in the period, but the end date isn't included
	// in the period. For example, if start is 2017-01-01 and end is 2017-05-01 , then
	// the cost and usage data is retrieved from 2017-01-01 up to and including
	// 2017-04-30 but not including 2017-05-01 . The start date must be equal to or
	// later than the current date to avoid a validation error.
	//
	// This member is required.
	TimePeriod *types.DateInterval

	// The filters that you want to use to filter your forecast. The GetUsageForecast
	// API supports filtering by the following dimensions:
	//   - AZ
	//   - INSTANCE_TYPE
	//   - LINKED_ACCOUNT
	//   - LINKED_ACCOUNT_NAME
	//   - OPERATION
	//   - PURCHASE_TYPE
	//   - REGION
	//   - SERVICE
	//   - USAGE_TYPE
	//   - USAGE_TYPE_GROUP
	//   - RECORD_TYPE
	//   - OPERATING_SYSTEM
	//   - TENANCY
	//   - SCOPE
	//   - PLATFORM
	//   - SUBSCRIPTION_ID
	//   - LEGAL_ENTITY_NAME
	//   - DEPLOYMENT_OPTION
	//   - DATABASE_ENGINE
	//   - INSTANCE_TYPE_FAMILY
	//   - BILLING_ENTITY
	//   - RESERVATION_ID
	//   - SAVINGS_PLAN_ARN
	Filter *types.Expression

	// Amazon Web Services Cost Explorer always returns the mean forecast as a single
	// point. You can request a prediction interval around the mean by specifying a
	// confidence level. The higher the confidence level, the more confident Cost
	// Explorer is about the actual value falling in the prediction interval. Higher
	// confidence levels result in wider prediction intervals.
	PredictionIntervalLevel *int32
	// contains filtered or unexported fields
}

type GetUsageForecastOutput

type GetUsageForecastOutput struct {

	// The forecasts for your query, in order. For DAILY forecasts, this is a list of
	// days. For MONTHLY forecasts, this is a list of months.
	ForecastResultsByTime []types.ForecastResult

	// How much you're forecasted to use over the forecast period.
	Total *types.MetricValue

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type HTTPClient

type HTTPClient interface {
	Do(*http.Request) (*http.Response, error)
}

type HTTPSignerV4

type HTTPSignerV4 interface {
	SignHTTP(ctx context.Context, credentials aws.Credentials, r *http.Request, payloadHash string, service string, region string, signingTime time.Time, optFns ...func(*v4.SignerOptions)) error
}

type ListCostAllocationTagBackfillHistoryAPIClient added in v1.37.0

type ListCostAllocationTagBackfillHistoryAPIClient interface {
	ListCostAllocationTagBackfillHistory(context.Context, *ListCostAllocationTagBackfillHistoryInput, ...func(*Options)) (*ListCostAllocationTagBackfillHistoryOutput, error)
}

ListCostAllocationTagBackfillHistoryAPIClient is a client that implements the ListCostAllocationTagBackfillHistory operation.

type ListCostAllocationTagBackfillHistoryInput added in v1.37.0

type ListCostAllocationTagBackfillHistoryInput struct {

	// The maximum number of objects that are returned for this request.
	MaxResults *int32

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextToken *string
	// contains filtered or unexported fields
}

type ListCostAllocationTagBackfillHistoryOutput added in v1.37.0

type ListCostAllocationTagBackfillHistoryOutput struct {

	// The list of historical cost allocation tag backfill requests.
	BackfillRequests []types.CostAllocationTagBackfillRequest

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListCostAllocationTagBackfillHistoryPaginator added in v1.37.0

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

ListCostAllocationTagBackfillHistoryPaginator is a paginator for ListCostAllocationTagBackfillHistory

func NewListCostAllocationTagBackfillHistoryPaginator added in v1.37.0

NewListCostAllocationTagBackfillHistoryPaginator returns a new ListCostAllocationTagBackfillHistoryPaginator

func (*ListCostAllocationTagBackfillHistoryPaginator) HasMorePages added in v1.37.0

HasMorePages returns a boolean indicating whether more pages are available

func (*ListCostAllocationTagBackfillHistoryPaginator) NextPage added in v1.37.0

NextPage retrieves the next ListCostAllocationTagBackfillHistory page.

type ListCostAllocationTagBackfillHistoryPaginatorOptions added in v1.37.0

type ListCostAllocationTagBackfillHistoryPaginatorOptions struct {
	// The maximum number of objects that are returned for this request.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

ListCostAllocationTagBackfillHistoryPaginatorOptions is the paginator options for ListCostAllocationTagBackfillHistory

type ListCostAllocationTagsAPIClient added in v1.19.0

type ListCostAllocationTagsAPIClient interface {
	ListCostAllocationTags(context.Context, *ListCostAllocationTagsInput, ...func(*Options)) (*ListCostAllocationTagsOutput, error)
}

ListCostAllocationTagsAPIClient is a client that implements the ListCostAllocationTags operation.

type ListCostAllocationTagsInput added in v1.19.0

type ListCostAllocationTagsInput struct {

	// The maximum number of objects that are returned for this request. By default,
	// the request returns 100 results.
	MaxResults *int32

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextToken *string

	// The status of cost allocation tag keys that are returned for this request.
	Status types.CostAllocationTagStatus

	// The list of cost allocation tag keys that are returned for this request.
	TagKeys []string

	// The type of CostAllocationTag object that are returned for this request. The
	// AWSGenerated type tags are tags that Amazon Web Services defines and applies to
	// support Amazon Web Services resources for cost allocation purposes. The
	// UserDefined type tags are tags that you define, create, and apply to resources.
	Type types.CostAllocationTagType
	// contains filtered or unexported fields
}

type ListCostAllocationTagsOutput added in v1.19.0

type ListCostAllocationTagsOutput struct {

	// A list of cost allocation tags that includes the detailed metadata for each one.
	CostAllocationTags []types.CostAllocationTag

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListCostAllocationTagsPaginator added in v1.19.0

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

ListCostAllocationTagsPaginator is a paginator for ListCostAllocationTags

func NewListCostAllocationTagsPaginator added in v1.19.0

NewListCostAllocationTagsPaginator returns a new ListCostAllocationTagsPaginator

func (*ListCostAllocationTagsPaginator) HasMorePages added in v1.19.0

func (p *ListCostAllocationTagsPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*ListCostAllocationTagsPaginator) NextPage added in v1.19.0

NextPage retrieves the next ListCostAllocationTags page.

type ListCostAllocationTagsPaginatorOptions added in v1.19.0

type ListCostAllocationTagsPaginatorOptions struct {
	// The maximum number of objects that are returned for this request. By default,
	// the request returns 100 results.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

ListCostAllocationTagsPaginatorOptions is the paginator options for ListCostAllocationTags

type ListCostCategoryDefinitionsAPIClient added in v0.30.0

type ListCostCategoryDefinitionsAPIClient interface {
	ListCostCategoryDefinitions(context.Context, *ListCostCategoryDefinitionsInput, ...func(*Options)) (*ListCostCategoryDefinitionsOutput, error)
}

ListCostCategoryDefinitionsAPIClient is a client that implements the ListCostCategoryDefinitions operation.

type ListCostCategoryDefinitionsInput

type ListCostCategoryDefinitionsInput struct {

	// The date when the Cost Category was effective.
	EffectiveOn *string

	// The number of entries a paginated response contains.
	MaxResults *int32

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextToken *string
	// contains filtered or unexported fields
}

type ListCostCategoryDefinitionsOutput

type ListCostCategoryDefinitionsOutput struct {

	// A reference to a Cost Category that contains enough information to identify the
	// Cost Category.
	CostCategoryReferences []types.CostCategoryReference

	// The token to retrieve the next set of results. Amazon Web Services provides the
	// token when the response from a previous call has more results than the maximum
	// page size.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListCostCategoryDefinitionsPaginator added in v0.30.0

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

ListCostCategoryDefinitionsPaginator is a paginator for ListCostCategoryDefinitions

func NewListCostCategoryDefinitionsPaginator added in v0.30.0

NewListCostCategoryDefinitionsPaginator returns a new ListCostCategoryDefinitionsPaginator

func (*ListCostCategoryDefinitionsPaginator) HasMorePages added in v0.30.0

func (p *ListCostCategoryDefinitionsPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*ListCostCategoryDefinitionsPaginator) NextPage added in v0.30.0

NextPage retrieves the next ListCostCategoryDefinitions page.

type ListCostCategoryDefinitionsPaginatorOptions added in v0.30.0

type ListCostCategoryDefinitionsPaginatorOptions struct {
	// The number of entries a paginated response contains.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

ListCostCategoryDefinitionsPaginatorOptions is the paginator options for ListCostCategoryDefinitions

type ListSavingsPlansPurchaseRecommendationGenerationInput added in v1.22.0

type ListSavingsPlansPurchaseRecommendationGenerationInput struct {

	// The status of the recommendation generation.
	GenerationStatus types.GenerationStatus

	// The token to retrieve the next set of results.
	NextPageToken *string

	// The number of recommendations that you want returned in a single response
	// object.
	PageSize int32

	// The IDs for each specific recommendation.
	RecommendationIds []string
	// contains filtered or unexported fields
}

type ListSavingsPlansPurchaseRecommendationGenerationOutput added in v1.22.0

type ListSavingsPlansPurchaseRecommendationGenerationOutput struct {

	// The list of historical recommendation generations.
	GenerationSummaryList []types.GenerationSummary

	// The token to retrieve the next set of results.
	NextPageToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListTagsForResourceInput added in v1.18.0

type ListTagsForResourceInput struct {

	// The Amazon Resource Name (ARN) of the resource. For a list of supported
	// resources, see ResourceTag (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_ResourceTag.html)
	// .
	//
	// This member is required.
	ResourceArn *string
	// contains filtered or unexported fields
}

type ListTagsForResourceOutput added in v1.18.0

type ListTagsForResourceOutput struct {

	// A list of tag key value pairs that are associated with the resource.
	ResourceTags []types.ResourceTag

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type Options

type Options struct {
	// Set of options to modify how an operation is invoked. These apply to all
	// operations invoked for this client. Use functional options on operation call to
	// modify this list for per operation behavior.
	APIOptions []func(*middleware.Stack) error

	// The optional application specific identifier appended to the User-Agent header.
	AppID string

	// This endpoint will be given as input to an EndpointResolverV2. It is used for
	// providing a custom base endpoint that is subject to modifications by the
	// processing EndpointResolverV2.
	BaseEndpoint *string

	// Configures the events that will be sent to the configured logger.
	ClientLogMode aws.ClientLogMode

	// The credentials object to use when signing requests.
	Credentials aws.CredentialsProvider

	// The configuration DefaultsMode that the SDK should use when constructing the
	// clients initial default settings.
	DefaultsMode aws.DefaultsMode

	// The endpoint options to be used when attempting to resolve an endpoint.
	EndpointOptions EndpointResolverOptions

	// The service endpoint resolver.
	//
	// Deprecated: Deprecated: EndpointResolver and WithEndpointResolver. Providing a
	// value for this field will likely prevent you from using any endpoint-related
	// service features released after the introduction of EndpointResolverV2 and
	// BaseEndpoint. To migrate an EndpointResolver implementation that uses a custom
	// endpoint, set the client option BaseEndpoint instead.
	EndpointResolver EndpointResolver

	// Resolves the endpoint used for a particular service operation. This should be
	// used over the deprecated EndpointResolver.
	EndpointResolverV2 EndpointResolverV2

	// Signature Version 4 (SigV4) Signer
	HTTPSignerV4 HTTPSignerV4

	// The logger writer interface to write logging messages to.
	Logger logging.Logger

	// The region to send requests to. (Required)
	Region string

	// RetryMaxAttempts specifies the maximum number attempts an API client will call
	// an operation that fails with a retryable error. A value of 0 is ignored, and
	// will not be used to configure the API client created default retryer, or modify
	// per operation call's retry max attempts. If specified in an operation call's
	// functional options with a value that is different than the constructed client's
	// Options, the Client's Retryer will be wrapped to use the operation's specific
	// RetryMaxAttempts value.
	RetryMaxAttempts int

	// RetryMode specifies the retry mode the API client will be created with, if
	// Retryer option is not also specified. When creating a new API Clients this
	// member will only be used if the Retryer Options member is nil. This value will
	// be ignored if Retryer is not nil. Currently does not support per operation call
	// overrides, may in the future.
	RetryMode aws.RetryMode

	// Retryer guides how HTTP requests should be retried in case of recoverable
	// failures. When nil the API client will use a default retryer. The kind of
	// default retry created by the API client can be changed with the RetryMode
	// option.
	Retryer aws.Retryer

	// The RuntimeEnvironment configuration, only populated if the DefaultsMode is set
	// to DefaultsModeAuto and is initialized using config.LoadDefaultConfig . You
	// should not populate this structure programmatically, or rely on the values here
	// within your applications.
	RuntimeEnvironment aws.RuntimeEnvironment

	// The HTTP client to invoke API calls with. Defaults to client's default HTTP
	// implementation if nil.
	HTTPClient HTTPClient

	// The auth scheme resolver which determines how to authenticate for each
	// operation.
	AuthSchemeResolver AuthSchemeResolver

	// The list of auth schemes supported by the client.
	AuthSchemes []smithyhttp.AuthScheme
	// contains filtered or unexported fields
}

func (Options) Copy

func (o Options) Copy() Options

Copy creates a clone where the APIOptions list is deep copied.

func (Options) GetIdentityResolver added in v1.32.2

func (o Options) GetIdentityResolver(schemeID string) smithyauth.IdentityResolver

type ProvideAnomalyFeedbackInput added in v0.29.0

type ProvideAnomalyFeedbackInput struct {

	// A cost anomaly ID.
	//
	// This member is required.
	AnomalyId *string

	// Describes whether the cost anomaly was a planned activity or you considered it
	// an anomaly.
	//
	// This member is required.
	Feedback types.AnomalyFeedbackType
	// contains filtered or unexported fields
}

type ProvideAnomalyFeedbackOutput added in v0.29.0

type ProvideAnomalyFeedbackOutput struct {

	// The ID of the modified cost anomaly.
	//
	// This member is required.
	AnomalyId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ResolveEndpoint

type ResolveEndpoint struct {
	Resolver EndpointResolver
	Options  EndpointResolverOptions
}

func (*ResolveEndpoint) HandleSerialize

func (*ResolveEndpoint) ID

func (*ResolveEndpoint) ID() string

type StartCostAllocationTagBackfillInput added in v1.37.0

type StartCostAllocationTagBackfillInput struct {

	// The date you want the backfill to start from. The date can only be a first day
	// of the month (a billing start date). Dates can't precede the previous twelve
	// months, or in the future.
	//
	// This member is required.
	BackfillFrom *string
	// contains filtered or unexported fields
}

type StartCostAllocationTagBackfillOutput added in v1.37.0

type StartCostAllocationTagBackfillOutput struct {

	// An object containing detailed metadata of your new backfill request.
	BackfillRequest *types.CostAllocationTagBackfillRequest

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type StartSavingsPlansPurchaseRecommendationGenerationInput added in v1.22.0

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

type StartSavingsPlansPurchaseRecommendationGenerationOutput added in v1.22.0

type StartSavingsPlansPurchaseRecommendationGenerationOutput struct {

	// The estimated time for when the recommendation generation will complete.
	EstimatedCompletionTime *string

	// The start time of the recommendation generation.
	GenerationStartedTime *string

	// The ID for this specific recommendation.
	RecommendationId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type TagResourceInput added in v1.18.0

type TagResourceInput struct {

	// The Amazon Resource Name (ARN) of the resource. For a list of supported
	// resources, see ResourceTag (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_ResourceTag.html)
	// .
	//
	// This member is required.
	ResourceArn *string

	// A list of tag key-value pairs to be added to the resource. Each tag consists of
	// a key and a value, and each key must be unique for the resource. The following
	// restrictions apply to resource tags:
	//   - Although the maximum number of array members is 200, you can assign a
	//   maximum of 50 user-tags to one resource. The remaining are reserved for Amazon
	//   Web Services use
	//   - The maximum length of a key is 128 characters
	//   - The maximum length of a value is 256 characters
	//   - Keys and values can only contain alphanumeric characters, spaces, and any
	//   of the following: _.:/=+@-
	//   - Keys and values are case sensitive
	//   - Keys and values are trimmed for any leading or trailing whitespaces
	//   - Don’t use aws: as a prefix for your keys. This prefix is reserved for Amazon
	//   Web Services use
	//
	// This member is required.
	ResourceTags []types.ResourceTag
	// contains filtered or unexported fields
}

type TagResourceOutput added in v1.18.0

type TagResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UntagResourceInput added in v1.18.0

type UntagResourceInput struct {

	// The Amazon Resource Name (ARN) of the resource. For a list of supported
	// resources, see ResourceTag (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_ResourceTag.html)
	// .
	//
	// This member is required.
	ResourceArn *string

	// A list of tag keys associated with tags that need to be removed from the
	// resource. If you specify a tag key that doesn't exist, it's ignored. Although
	// the maximum number of array members is 200, user-tag maximum is 50. The
	// remaining are reserved for Amazon Web Services use.
	//
	// This member is required.
	ResourceTagKeys []string
	// contains filtered or unexported fields
}

type UntagResourceOutput added in v1.18.0

type UntagResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UpdateAnomalyMonitorInput added in v0.29.0

type UpdateAnomalyMonitorInput struct {

	// Cost anomaly monitor Amazon Resource Names (ARNs).
	//
	// This member is required.
	MonitorArn *string

	// The new name for the cost anomaly monitor.
	MonitorName *string
	// contains filtered or unexported fields
}

type UpdateAnomalyMonitorOutput added in v0.29.0

type UpdateAnomalyMonitorOutput struct {

	// A cost anomaly monitor ARN.
	//
	// This member is required.
	MonitorArn *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UpdateAnomalySubscriptionInput added in v0.29.0

type UpdateAnomalySubscriptionInput struct {

	// A cost anomaly subscription Amazon Resource Name (ARN).
	//
	// This member is required.
	SubscriptionArn *string

	// The update to the frequency value that subscribers receive notifications.
	Frequency types.AnomalySubscriptionFrequency

	// A list of cost anomaly monitor ARNs.
	MonitorArnList []string

	// The update to the subscriber list.
	Subscribers []types.Subscriber

	// The new name of the subscription.
	SubscriptionName *string

	// (deprecated) The update to the threshold value for receiving notifications.
	// This field has been deprecated. To update a threshold, use ThresholdExpression.
	// Continued use of Threshold will be treated as shorthand syntax for a
	// ThresholdExpression. You can specify either Threshold or ThresholdExpression,
	// but not both.
	//
	// Deprecated: Threshold has been deprecated in favor of ThresholdExpression
	Threshold *float64

	// The update to the Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html)
	// object used to specify the anomalies that you want to generate alerts for. This
	// supports dimensions and nested expressions. The supported dimensions are
	// ANOMALY_TOTAL_IMPACT_ABSOLUTE and ANOMALY_TOTAL_IMPACT_PERCENTAGE ,
	// corresponding to an anomaly’s TotalImpact and TotalImpactPercentage,
	// respectively (see Impact (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Impact.html)
	// for more details). The supported nested expression types are AND and OR . The
	// match option GREATER_THAN_OR_EQUAL is required. Values must be numbers between
	// 0 and 10,000,000,000 in string format. You can specify either Threshold or
	// ThresholdExpression, but not both. The following are examples of valid
	// ThresholdExpressions:
	//   - Absolute threshold: { "Dimensions": { "Key":
	//   "ANOMALY_TOTAL_IMPACT_ABSOLUTE", "MatchOptions": [ "GREATER_THAN_OR_EQUAL" ],
	//   "Values": [ "100" ] } }
	//   - Percentage threshold: { "Dimensions": { "Key":
	//   "ANOMALY_TOTAL_IMPACT_PERCENTAGE", "MatchOptions": [ "GREATER_THAN_OR_EQUAL" ],
	//   "Values": [ "100" ] } }
	//   - AND two thresholds together: { "And": [ { "Dimensions": { "Key":
	//   "ANOMALY_TOTAL_IMPACT_ABSOLUTE", "MatchOptions": [ "GREATER_THAN_OR_EQUAL" ],
	//   "Values": [ "100" ] } }, { "Dimensions": { "Key":
	//   "ANOMALY_TOTAL_IMPACT_PERCENTAGE", "MatchOptions": [ "GREATER_THAN_OR_EQUAL" ],
	//   "Values": [ "100" ] } } ] }
	//   - OR two thresholds together: { "Or": [ { "Dimensions": { "Key":
	//   "ANOMALY_TOTAL_IMPACT_ABSOLUTE", "MatchOptions": [ "GREATER_THAN_OR_EQUAL" ],
	//   "Values": [ "100" ] } }, { "Dimensions": { "Key":
	//   "ANOMALY_TOTAL_IMPACT_PERCENTAGE", "MatchOptions": [ "GREATER_THAN_OR_EQUAL" ],
	//   "Values": [ "100" ] } } ] }
	ThresholdExpression *types.Expression
	// contains filtered or unexported fields
}

type UpdateAnomalySubscriptionOutput added in v0.29.0

type UpdateAnomalySubscriptionOutput struct {

	// A cost anomaly subscription ARN.
	//
	// This member is required.
	SubscriptionArn *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UpdateCostAllocationTagsStatusInput added in v1.19.0

type UpdateCostAllocationTagsStatusInput struct {

	// The list of CostAllocationTagStatusEntry objects that are used to update cost
	// allocation tags status for this request.
	//
	// This member is required.
	CostAllocationTagsStatus []types.CostAllocationTagStatusEntry
	// contains filtered or unexported fields
}

type UpdateCostAllocationTagsStatusOutput added in v1.19.0

type UpdateCostAllocationTagsStatusOutput struct {

	// A list of UpdateCostAllocationTagsStatusError objects with error details about
	// each cost allocation tag that can't be updated. If there's no failure, an empty
	// array returns.
	Errors []types.UpdateCostAllocationTagsStatusError

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UpdateCostCategoryDefinitionInput

type UpdateCostCategoryDefinitionInput struct {

	// The unique identifier for your Cost Category.
	//
	// This member is required.
	CostCategoryArn *string

	// The rule schema version in this particular Cost Category.
	//
	// This member is required.
	RuleVersion types.CostCategoryRuleVersion

	// The Expression object used to categorize costs. For more information, see
	// CostCategoryRule  (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_CostCategoryRule.html)
	// .
	//
	// This member is required.
	Rules []types.CostCategoryRule

	// The default value for the cost category.
	DefaultValue *string

	// The Cost Category's effective start date. It can only be a billing start date
	// (first day of the month). If the date isn't provided, it's the first day of the
	// current month. Dates can't be before the previous twelve months, or in the
	// future.
	EffectiveStart *string

	// The split charge rules used to allocate your charges between your Cost Category
	// values.
	SplitChargeRules []types.CostCategorySplitChargeRule
	// contains filtered or unexported fields
}

type UpdateCostCategoryDefinitionOutput

type UpdateCostCategoryDefinitionOutput struct {

	// The unique identifier for your Cost Category.
	CostCategoryArn *string

	// The Cost Category's effective start date. It can only be a billing start date
	// (first day of the month).
	EffectiveStart *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Source Files

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

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