Class: Aws::CostExplorer::Types::GetSavingsPlansCoverageRequest

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb

Overview

Note:

When making an API call, you may pass GetSavingsPlansCoverageRequest data as a hash:

{
  time_period: { # required
    start: "YearMonthDay", # required
    end: "YearMonthDay", # required
  },
  group_by: [
    {
      type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
      key: "GroupDefinitionKey",
    },
  ],
  granularity: "DAILY", # accepts DAILY, MONTHLY, HOURLY
  filter: {
    or: [
      {
        # recursive Expression
      },
    ],
    and: [
      {
        # recursive Expression
      },
    ],
    not: {
      # recursive Expression
    },
    dimensions: {
      key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, LINKED_ACCOUNT_NAME, OPERATION, PURCHASE_TYPE, REGION, SERVICE, SERVICE_CODE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION, AGREEMENT_END_DATE_TIME_AFTER, AGREEMENT_END_DATE_TIME_BEFORE
      values: ["Value"],
      match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
    },
    tags: {
      key: "TagKey",
      values: ["Value"],
      match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
    },
    cost_categories: {
      key: "CostCategoryName",
      values: ["Value"],
      match_options: ["EQUALS"], # accepts EQUALS, ABSENT, STARTS_WITH, ENDS_WITH, CONTAINS, CASE_SENSITIVE, CASE_INSENSITIVE
    },
  },
  metrics: ["MetricName"],
  next_token: "NextPageToken",
  max_results: 1,
  sort_by: {
    key: "SortDefinitionKey", # required
    sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
  },
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#filterTypes::Expression

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

Returns:



4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 4240

class GetSavingsPlansCoverageRequest < Struct.new(
  :time_period,
  :group_by,
  :granularity,
  :filter,
  :metrics,
  :next_token,
  :max_results,
  :sort_by)
  SENSITIVE = []
  include Aws::Structure
end

#granularityString

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.

Returns:

  • (String)


4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 4240

class GetSavingsPlansCoverageRequest < Struct.new(
  :time_period,
  :group_by,
  :granularity,
  :filter,
  :metrics,
  :next_token,
  :max_results,
  :sort_by)
  SENSITIVE = []
  include Aws::Structure
end

#group_byArray<Types::GroupDefinition>

You can group the data using the attributes INSTANCE_FAMILY, REGION, or SERVICE.

Returns:



4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 4240

class GetSavingsPlansCoverageRequest < Struct.new(
  :time_period,
  :group_by,
  :granularity,
  :filter,
  :metrics,
  :next_token,
  :max_results,
  :sort_by)
  SENSITIVE = []
  include Aws::Structure
end

#max_resultsInteger

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

Returns:

  • (Integer)


4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 4240

class GetSavingsPlansCoverageRequest < Struct.new(
  :time_period,
  :group_by,
  :granularity,
  :filter,
  :metrics,
  :next_token,
  :max_results,
  :sort_by)
  SENSITIVE = []
  include Aws::Structure
end

#metricsArray<String>

The measurement that you want your Savings Plans coverage reported in. The only valid value is SpendCoveredBySavingsPlans.

Returns:

  • (Array<String>)


4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 4240

class GetSavingsPlansCoverageRequest < Struct.new(
  :time_period,
  :group_by,
  :granularity,
  :filter,
  :metrics,
  :next_token,
  :max_results,
  :sort_by)
  SENSITIVE = []
  include Aws::Structure
end

#next_tokenString

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.

Returns:

  • (String)


4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 4240

class GetSavingsPlansCoverageRequest < Struct.new(
  :time_period,
  :group_by,
  :granularity,
  :filter,
  :metrics,
  :next_token,
  :max_results,
  :sort_by)
  SENSITIVE = []
  include Aws::Structure
end

#sort_byTypes::SortDefinition

The value by which you want to sort the data.

The following values are supported for Key:

  • SpendCoveredBySavingsPlan

  • OnDemandCost

  • CoveragePercentage

  • TotalCost

  • InstanceFamily

  • Region

  • Service

Supported values for SortOrder are ASCENDING or DESCENDING.



4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 4240

class GetSavingsPlansCoverageRequest < Struct.new(
  :time_period,
  :group_by,
  :granularity,
  :filter,
  :metrics,
  :next_token,
  :max_results,
  :sort_by)
  SENSITIVE = []
  include Aws::Structure
end

#time_periodTypes::DateInterval

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.

Returns:



4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 4240

class GetSavingsPlansCoverageRequest < Struct.new(
  :time_period,
  :group_by,
  :granularity,
  :filter,
  :metrics,
  :next_token,
  :max_results,
  :sort_by)
  SENSITIVE = []
  include Aws::Structure
end