Class: Aws::CostExplorer::Types::GetReservationCoverageRequest

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 GetReservationCoverageRequest 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_page_token: "NextPageToken",
  sort_by: {
    key: "SortDefinitionKey", # required
    sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
  },
  max_results: 1,
}

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

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#filterTypes::Expression

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

Returns:



3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 3501

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

#granularityString

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.

Returns:

  • (String)


3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 3501

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

#group_byArray<Types::GroupDefinition>

You can group the data by the following attributes:

  • AZ

  • CACHE_ENGINE

  • DATABASE_ENGINE

  • DEPLOYMENT_OPTION

  • INSTANCE_TYPE

  • LINKED_ACCOUNT

  • OPERATING_SYSTEM

  • PLATFORM

  • REGION

  • TENANCY

Returns:



3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 3501

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

#max_resultsInteger

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.

Returns:

  • (Integer)


3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 3501

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

#metricsArray<String>

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.

Returns:

  • (Array<String>)


3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 3501

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

#next_page_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)


3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 3501

class GetReservationCoverageRequest < Struct.new(
  :time_period,
  :group_by,
  :granularity,
  :filter,
  :metrics,
  :next_page_token,
  :sort_by,
  :max_results)
  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:

  • OnDemandCost

  • CoverageHoursPercentage

  • OnDemandHours

  • ReservedHours

  • TotalRunningHours

  • CoverageNormalizedUnitsPercentage

  • OnDemandNormalizedUnits

  • ReservedNormalizedUnits

  • TotalRunningNormalizedUnits

  • Time

Supported values for SortOrder are ASCENDING or DESCENDING.



3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 3501

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

#time_periodTypes::DateInterval

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.

Returns:



3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
# File 'gems/aws-sdk-costexplorer/lib/aws-sdk-costexplorer/types.rb', line 3501

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