1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`DescribeSpotPriceHistory`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder) operation.
    /// This operation supports pagination; See [`into_paginator()`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::into_paginator).
    ///
    /// - The fluent builder is configurable:
    ///   - [`filters(Filter)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::filters) / [`set_filters(Option<Vec::<Filter>>)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::set_filters):<br>required: **false**<br><p>The filters.</p> <ul>  <li>   <p><code>availability-zone</code> - The Availability Zone for which prices should be returned.</p></li>  <li>   <p><code>instance-type</code> - The type of instance (for example, <code>m3.medium</code>).</p></li>  <li>   <p><code>product-description</code> - The product description for the Spot price (<code>Linux/UNIX</code> | <code>Red Hat Enterprise Linux</code> | <code>SUSE Linux</code> | <code>Windows</code> | <code>Linux/UNIX (Amazon VPC)</code> | <code>Red Hat Enterprise Linux (Amazon VPC)</code> | <code>SUSE Linux (Amazon VPC)</code> | <code>Windows (Amazon VPC)</code>).</p></li>  <li>   <p><code>spot-price</code> - The Spot price. The value must match exactly (or use wildcards; greater than or less than comparison is not supported).</p></li>  <li>   <p><code>timestamp</code> - The time stamp of the Spot price history, in UTC format (for example, <i>ddd MMM dd HH</i>:<i>mm</i>:<i>ss</i> UTC <i>YYYY</i>). You can use wildcards (<code>*</code> and <code>?</code>). Greater than or less than comparison is not supported.</p></li> </ul><br>
    ///   - [`availability_zone(impl Into<String>)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::availability_zone) / [`set_availability_zone(Option<String>)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::set_availability_zone):<br>required: **false**<br><p>Filters the results by the specified Availability Zone.</p><br>
    ///   - [`dry_run(bool)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::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>
    ///   - [`end_time(DateTime)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::end_time) / [`set_end_time(Option<DateTime>)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::set_end_time):<br>required: **false**<br><p>The date and time, up to the current date, from which to stop retrieving the price history data, in UTC format (for example, <i>YYYY</i>-<i>MM</i>-<i>DD</i>T<i>HH</i>:<i>MM</i>:<i>SS</i>Z).</p><br>
    ///   - [`instance_types(InstanceType)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::instance_types) / [`set_instance_types(Option<Vec::<InstanceType>>)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::set_instance_types):<br>required: **false**<br><p>Filters the results by the specified instance types.</p><br>
    ///   - [`max_results(i32)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::max_results) / [`set_max_results(Option<i32>)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::set_max_results):<br>required: **false**<br><p>The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination">Pagination</a>.</p><br>
    ///   - [`next_token(impl Into<String>)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::next_token) / [`set_next_token(Option<String>)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::set_next_token):<br>required: **false**<br><p>The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.</p><br>
    ///   - [`product_descriptions(impl Into<String>)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::product_descriptions) / [`set_product_descriptions(Option<Vec::<String>>)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::set_product_descriptions):<br>required: **false**<br><p>Filters the results by the specified basic product descriptions.</p><br>
    ///   - [`start_time(DateTime)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::start_time) / [`set_start_time(Option<DateTime>)`](crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::set_start_time):<br>required: **false**<br><p>The date and time, up to the past 90 days, from which to start retrieving the price history data, in UTC format (for example, <i>YYYY</i>-<i>MM</i>-<i>DD</i>T<i>HH</i>:<i>MM</i>:<i>SS</i>Z).</p><br>
    /// - On success, responds with [`DescribeSpotPriceHistoryOutput`](crate::operation::describe_spot_price_history::DescribeSpotPriceHistoryOutput) with field(s):
    ///   - [`next_token(Option<String>)`](crate::operation::describe_spot_price_history::DescribeSpotPriceHistoryOutput::next_token): <p>The token to include in another request to get the next page of items. This value is an empty string (<code>""</code>) or <code>null</code> when there are no more items to return.</p>
    ///   - [`spot_price_history(Option<Vec::<SpotPrice>>)`](crate::operation::describe_spot_price_history::DescribeSpotPriceHistoryOutput::spot_price_history): <p>The historical Spot prices.</p>
    /// - On failure, responds with [`SdkError<DescribeSpotPriceHistoryError>`](crate::operation::describe_spot_price_history::DescribeSpotPriceHistoryError)
    pub fn describe_spot_price_history(&self) -> crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder {
        crate::operation::describe_spot_price_history::builders::DescribeSpotPriceHistoryFluentBuilder::new(self.handle.clone())
    }
}