aws_sdk_ec2/client/
describe_reserved_instances_offerings.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`DescribeReservedInstancesOfferings`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder) operation.
4    /// This operation supports pagination; See [`into_paginator()`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::into_paginator).
5    ///
6    /// - The fluent builder is configurable:
7    ///   - [`availability_zone(impl Into<String>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::availability_zone) / [`set_availability_zone(Option<String>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_availability_zone):<br>required: **false**<br><p>The Availability Zone in which the Reserved Instance can be used.</p> <p>Either <code>AvailabilityZone</code> or <code>AvailabilityZoneId</code> can be specified, but not both.</p><br>
8    ///   - [`include_marketplace(bool)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::include_marketplace) / [`set_include_marketplace(Option<bool>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_include_marketplace):<br>required: **false**<br><p>Include Reserved Instance Marketplace offerings in the response.</p><br>
9    ///   - [`instance_type(InstanceType)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::instance_type) / [`set_instance_type(Option<InstanceType>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_instance_type):<br>required: **false**<br><p>The instance type that the reservation will cover (for example, <code>m1.small</code>). For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html">Amazon EC2 instance types</a> in the <i>Amazon EC2 User Guide</i>.</p><br>
10    ///   - [`max_duration(i64)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::max_duration) / [`set_max_duration(Option<i64>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_max_duration):<br>required: **false**<br><p>The maximum duration (in seconds) to filter when searching for offerings.</p> <p>Default: 94608000 (3 years)</p><br>
11    ///   - [`max_instance_count(i32)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::max_instance_count) / [`set_max_instance_count(Option<i32>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_max_instance_count):<br>required: **false**<br><p>The maximum number of instances to filter when searching for offerings.</p> <p>Default: 20</p><br>
12    ///   - [`min_duration(i64)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::min_duration) / [`set_min_duration(Option<i64>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_min_duration):<br>required: **false**<br><p>The minimum duration (in seconds) to filter when searching for offerings.</p> <p>Default: 2592000 (1 month)</p><br>
13    ///   - [`offering_class(OfferingClassType)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::offering_class) / [`set_offering_class(Option<OfferingClassType>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_offering_class):<br>required: **false**<br><p>The offering class of the Reserved Instance. Can be <code>standard</code> or <code>convertible</code>.</p><br>
14    ///   - [`product_description(RiProductDescription)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::product_description) / [`set_product_description(Option<RiProductDescription>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_product_description):<br>required: **false**<br><p>The Reserved Instance product platform description. Instances that include <code>(Amazon VPC)</code> in the description are for use with Amazon VPC.</p><br>
15    ///   - [`reserved_instances_offering_ids(impl Into<String>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::reserved_instances_offering_ids) / [`set_reserved_instances_offering_ids(Option<Vec::<String>>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_reserved_instances_offering_ids):<br>required: **false**<br><p>One or more Reserved Instances offering IDs.</p><br>
16    ///   - [`availability_zone_id(impl Into<String>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::availability_zone_id) / [`set_availability_zone_id(Option<String>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_availability_zone_id):<br>required: **false**<br><p>The ID of the Availability Zone.</p> <p>Either <code>AvailabilityZone</code> or <code>AvailabilityZoneId</code> can be specified, but not both.</p><br>
17    ///   - [`dry_run(bool)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_dry_run):<br>required: **false**<br><p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p><br>
18    ///   - [`filters(Filter)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::filters) / [`set_filters(Option<Vec::<Filter>>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_filters):<br>required: **false**<br><p>One or more filters.</p> <ul>  <li>   <p><code>availability-zone</code> - The Availability Zone where the Reserved Instance can be used.</p></li>  <li>   <p><code>availability-zone-id</code> - The ID of the Availability Zone where the Reserved Instance can be used.</p></li>  <li>   <p><code>duration</code> - The duration of the Reserved Instance (for example, one year or three years), in seconds (<code>31536000</code> | <code>94608000</code>).</p></li>  <li>   <p><code>fixed-price</code> - The purchase price of the Reserved Instance (for example, 9800.0).</p></li>  <li>   <p><code>instance-type</code> - The instance type that is covered by the reservation.</p></li>  <li>   <p><code>marketplace</code> - Set to <code>true</code> to show only Reserved Instance Marketplace offerings. When this filter is not used, which is the default behavior, all offerings from both Amazon Web Services and the Reserved Instance Marketplace are listed.</p></li>  <li>   <p><code>product-description</code> - The Reserved Instance product platform description (<code>Linux/UNIX</code> | <code>Linux with SQL Server Standard</code> | <code>Linux with SQL Server Web</code> | <code>Linux with SQL Server Enterprise</code> | <code>SUSE Linux</code> | <code>Red Hat Enterprise Linux</code> | <code>Red Hat Enterprise Linux with HA</code> | <code>Windows</code> | <code>Windows with SQL Server Standard</code> | <code>Windows with SQL Server Web</code> | <code>Windows with SQL Server Enterprise</code>).</p></li>  <li>   <p><code>reserved-instances-offering-id</code> - The Reserved Instances offering ID.</p></li>  <li>   <p><code>scope</code> - The scope of the Reserved Instance (<code>Availability Zone</code> or <code>Region</code>).</p></li>  <li>   <p><code>usage-price</code> - The usage price of the Reserved Instance, per hour (for example, 0.84).</p></li> </ul><br>
19    ///   - [`instance_tenancy(Tenancy)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::instance_tenancy) / [`set_instance_tenancy(Option<Tenancy>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_instance_tenancy):<br>required: **false**<br><p>The tenancy of the instances covered by the reservation. A Reserved Instance with a tenancy of <code>dedicated</code> is applied to instances that run in a VPC on single-tenant hardware (i.e., Dedicated Instances).</p> <p><b>Important:</b> The <code>host</code> value cannot be used with this parameter. Use the <code>default</code> or <code>dedicated</code> values only.</p> <p>Default: <code>default</code></p><br>
20    ///   - [`offering_type(OfferingTypeValues)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::offering_type) / [`set_offering_type(Option<OfferingTypeValues>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_offering_type):<br>required: **false**<br><p>The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the <code>Medium Utilization</code> Reserved Instance offering type.</p><br>
21    ///   - [`next_token(impl Into<String>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::next_token) / [`set_next_token(Option<String>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_next_token):<br>required: **false**<br><p>The token to retrieve the next page of results.</p><br>
22    ///   - [`max_results(i32)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::max_results) / [`set_max_results(Option<i32>)`](crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::set_max_results):<br>required: **false**<br><p>The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned <code>NextToken</code> value. The maximum is 100.</p> <p>Default: 100</p><br>
23    /// - On success, responds with [`DescribeReservedInstancesOfferingsOutput`](crate::operation::describe_reserved_instances_offerings::DescribeReservedInstancesOfferingsOutput) with field(s):
24    ///   - [`next_token(Option<String>)`](crate::operation::describe_reserved_instances_offerings::DescribeReservedInstancesOfferingsOutput::next_token): <p>The token to use to retrieve the next page of results. This value is <code>null</code> when there are no more results to return.</p>
25    ///   - [`reserved_instances_offerings(Option<Vec::<ReservedInstancesOffering>>)`](crate::operation::describe_reserved_instances_offerings::DescribeReservedInstancesOfferingsOutput::reserved_instances_offerings): <p>A list of Reserved Instances offerings.</p>
26    /// - On failure, responds with [`SdkError<DescribeReservedInstancesOfferingsError>`](crate::operation::describe_reserved_instances_offerings::DescribeReservedInstancesOfferingsError)
27    pub fn describe_reserved_instances_offerings(
28        &self,
29    ) -> crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder {
30        crate::operation::describe_reserved_instances_offerings::builders::DescribeReservedInstancesOfferingsFluentBuilder::new(self.handle.clone())
31    }
32}