/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include namespace Aws { namespace CostExplorer { namespace Model { /** */ class AWS_COSTEXPLORER_API GetDimensionValuesRequest : public CostExplorerRequest { public: GetDimensionValuesRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "GetDimensionValues"; } Aws::String SerializePayload() const override; Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The value that you want to search the filter values for.

*/ inline const Aws::String& GetSearchString() const{ return m_searchString; } /** *

The value that you want to search the filter values for.

*/ inline bool SearchStringHasBeenSet() const { return m_searchStringHasBeenSet; } /** *

The value that you want to search the filter values for.

*/ inline void SetSearchString(const Aws::String& value) { m_searchStringHasBeenSet = true; m_searchString = value; } /** *

The value that you want to search the filter values for.

*/ inline void SetSearchString(Aws::String&& value) { m_searchStringHasBeenSet = true; m_searchString = std::move(value); } /** *

The value that you want to search the filter values for.

*/ inline void SetSearchString(const char* value) { m_searchStringHasBeenSet = true; m_searchString.assign(value); } /** *

The value that you want to search the filter values for.

*/ inline GetDimensionValuesRequest& WithSearchString(const Aws::String& value) { SetSearchString(value); return *this;} /** *

The value that you want to search the filter values for.

*/ inline GetDimensionValuesRequest& WithSearchString(Aws::String&& value) { SetSearchString(std::move(value)); return *this;} /** *

The value that you want to search the filter values for.

*/ inline GetDimensionValuesRequest& WithSearchString(const char* value) { SetSearchString(value); return *this;} /** *

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.

*/ inline const DateInterval& GetTimePeriod() const{ return m_timePeriod; } /** *

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.

*/ inline bool TimePeriodHasBeenSet() const { return m_timePeriodHasBeenSet; } /** *

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.

*/ inline void SetTimePeriod(const DateInterval& value) { m_timePeriodHasBeenSet = true; m_timePeriod = value; } /** *

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.

*/ inline void SetTimePeriod(DateInterval&& value) { m_timePeriodHasBeenSet = true; m_timePeriod = std::move(value); } /** *

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.

*/ inline GetDimensionValuesRequest& WithTimePeriod(const DateInterval& value) { SetTimePeriod(value); return *this;} /** *

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.

*/ inline GetDimensionValuesRequest& WithTimePeriod(DateInterval&& value) { SetTimePeriod(std::move(value)); return *this;} /** *

The name of the dimension. Each Dimension is available for a * different Context. For more information, see Context. *

*/ inline const Dimension& GetDimension() const{ return m_dimension; } /** *

The name of the dimension. Each Dimension is available for a * different Context. For more information, see Context. *

*/ inline bool DimensionHasBeenSet() const { return m_dimensionHasBeenSet; } /** *

The name of the dimension. Each Dimension is available for a * different Context. For more information, see Context. *

*/ inline void SetDimension(const Dimension& value) { m_dimensionHasBeenSet = true; m_dimension = value; } /** *

The name of the dimension. Each Dimension is available for a * different Context. For more information, see Context. *

*/ inline void SetDimension(Dimension&& value) { m_dimensionHasBeenSet = true; m_dimension = std::move(value); } /** *

The name of the dimension. Each Dimension is available for a * different Context. For more information, see Context. *

*/ inline GetDimensionValuesRequest& WithDimension(const Dimension& value) { SetDimension(value); return *this;} /** *

The name of the dimension. Each Dimension is available for a * different Context. For more information, see Context. *

*/ inline GetDimensionValuesRequest& WithDimension(Dimension&& value) { SetDimension(std::move(value)); return *this;} /** *

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.

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

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 AWS ID of the member account.

  • *
  • PLATFORM - The Amazon EC2 operating system. Examples are Windows or * Linux.

  • REGION - The AWS 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 AWS 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 AWS ID of the member * account.

  • SAVINGS_PLAN_ARN - The unique identifier for your * Savings Plan

*/ inline const Context& GetContext() const{ return m_context; } /** *

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.

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

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 AWS ID of the member account.

  • *
  • PLATFORM - The Amazon EC2 operating system. Examples are Windows or * Linux.

  • REGION - The AWS 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 AWS 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 AWS ID of the member * account.

  • SAVINGS_PLAN_ARN - The unique identifier for your * Savings Plan

*/ inline bool ContextHasBeenSet() const { return m_contextHasBeenSet; } /** *

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.

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

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 AWS ID of the member account.

  • *
  • PLATFORM - The Amazon EC2 operating system. Examples are Windows or * Linux.

  • REGION - The AWS 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 AWS 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 AWS ID of the member * account.

  • SAVINGS_PLAN_ARN - The unique identifier for your * Savings Plan

*/ inline void SetContext(const Context& value) { m_contextHasBeenSet = true; m_context = value; } /** *

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.

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

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 AWS ID of the member account.

  • *
  • PLATFORM - The Amazon EC2 operating system. Examples are Windows or * Linux.

  • REGION - The AWS 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 AWS 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 AWS ID of the member * account.

  • SAVINGS_PLAN_ARN - The unique identifier for your * Savings Plan

*/ inline void SetContext(Context&& value) { m_contextHasBeenSet = true; m_context = std::move(value); } /** *

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.

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

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 AWS ID of the member account.

  • *
  • PLATFORM - The Amazon EC2 operating system. Examples are Windows or * Linux.

  • REGION - The AWS 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 AWS 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 AWS ID of the member * account.

  • SAVINGS_PLAN_ARN - The unique identifier for your * Savings Plan

*/ inline GetDimensionValuesRequest& WithContext(const Context& value) { SetContext(value); return *this;} /** *

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.

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

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 AWS ID of the member account.

  • *
  • PLATFORM - The Amazon EC2 operating system. Examples are Windows or * Linux.

  • REGION - The AWS 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 AWS 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 AWS ID of the member * account.

  • SAVINGS_PLAN_ARN - The unique identifier for your * Savings Plan

*/ inline GetDimensionValuesRequest& WithContext(Context&& value) { SetContext(std::move(value)); return *this;} /** *

The token to retrieve the next set of results. AWS provides the token when * the response from a previous call has more results than the maximum page * size.

*/ inline const Aws::String& GetNextPageToken() const{ return m_nextPageToken; } /** *

The token to retrieve the next set of results. AWS provides the token when * the response from a previous call has more results than the maximum page * size.

*/ inline bool NextPageTokenHasBeenSet() const { return m_nextPageTokenHasBeenSet; } /** *

The token to retrieve the next set of results. AWS provides the token when * the response from a previous call has more results than the maximum page * size.

*/ inline void SetNextPageToken(const Aws::String& value) { m_nextPageTokenHasBeenSet = true; m_nextPageToken = value; } /** *

The token to retrieve the next set of results. AWS provides the token when * the response from a previous call has more results than the maximum page * size.

*/ inline void SetNextPageToken(Aws::String&& value) { m_nextPageTokenHasBeenSet = true; m_nextPageToken = std::move(value); } /** *

The token to retrieve the next set of results. AWS provides the token when * the response from a previous call has more results than the maximum page * size.

*/ inline void SetNextPageToken(const char* value) { m_nextPageTokenHasBeenSet = true; m_nextPageToken.assign(value); } /** *

The token to retrieve the next set of results. AWS provides the token when * the response from a previous call has more results than the maximum page * size.

*/ inline GetDimensionValuesRequest& WithNextPageToken(const Aws::String& value) { SetNextPageToken(value); return *this;} /** *

The token to retrieve the next set of results. AWS provides the token when * the response from a previous call has more results than the maximum page * size.

*/ inline GetDimensionValuesRequest& WithNextPageToken(Aws::String&& value) { SetNextPageToken(std::move(value)); return *this;} /** *

The token to retrieve the next set of results. AWS provides the token when * the response from a previous call has more results than the maximum page * size.

*/ inline GetDimensionValuesRequest& WithNextPageToken(const char* value) { SetNextPageToken(value); return *this;} private: Aws::String m_searchString; bool m_searchStringHasBeenSet; DateInterval m_timePeriod; bool m_timePeriodHasBeenSet; Dimension m_dimension; bool m_dimensionHasBeenSet; Context m_context; bool m_contextHasBeenSet; Aws::String m_nextPageToken; bool m_nextPageTokenHasBeenSet; }; } // namespace Model } // namespace CostExplorer } // namespace Aws