aws_sdk_bcmpricingcalculator/client/create_bill_estimate.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 [`CreateBillEstimate`](crate::operation::create_bill_estimate::builders::CreateBillEstimateFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`bill_scenario_id(impl Into<String>)`](crate::operation::create_bill_estimate::builders::CreateBillEstimateFluentBuilder::bill_scenario_id) / [`set_bill_scenario_id(Option<String>)`](crate::operation::create_bill_estimate::builders::CreateBillEstimateFluentBuilder::set_bill_scenario_id):<br>required: **true**<br><p>The ID of the Bill Scenario for which you want to create a Bill estimate.</p><br>
7 /// - [`name(impl Into<String>)`](crate::operation::create_bill_estimate::builders::CreateBillEstimateFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_bill_estimate::builders::CreateBillEstimateFluentBuilder::set_name):<br>required: **true**<br><p>The name of the Bill estimate that will be created. Names must be unique for an account.</p><br>
8 /// - [`client_token(impl Into<String>)`](crate::operation::create_bill_estimate::builders::CreateBillEstimateFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_bill_estimate::builders::CreateBillEstimateFluentBuilder::set_client_token):<br>required: **false**<br><p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.</p><br>
9 /// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_bill_estimate::builders::CreateBillEstimateFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_bill_estimate::builders::CreateBillEstimateFluentBuilder::set_tags):<br>required: **false**<br><p>An optional list of tags to associate with the specified BillEstimate. You can use resource tags to control access to your BillEstimate using IAM policies. Each tag consists of a key and a value, and each key must be unique for the resource. The following restrictions apply to resource tags:</p> <ul> <li> <p>Although the maximum number of array members is 200, you can assign a maximum of 50 user-tags to one resource. The remaining are reserved for Amazon Web Services.</p></li> <li> <p>The maximum length of a key is 128 characters.</p></li> <li> <p>The maximum length of a value is 256 characters.</p></li> <li> <p>Keys and values can only contain alphanumeric characters, spaces, and any of the following: <code>_.:/=+@-</code>.</p></li> <li> <p>Keys and values are case sensitive.</p></li> <li> <p>Keys and values are trimmed for any leading or trailing whitespaces.</p></li> <li> <p>Don't use <code>aws:</code> as a prefix for your keys. This prefix is reserved for Amazon Web Services.</p></li> </ul><br>
10 /// - On success, responds with [`CreateBillEstimateOutput`](crate::operation::create_bill_estimate::CreateBillEstimateOutput) with field(s):
11 /// - [`id(String)`](crate::operation::create_bill_estimate::CreateBillEstimateOutput::id): <p>The unique identifier of your newly created Bill estimate.</p>
12 /// - [`name(Option<String>)`](crate::operation::create_bill_estimate::CreateBillEstimateOutput::name): <p>The name of your newly created Bill estimate.</p>
13 /// - [`status(Option<BillEstimateStatus>)`](crate::operation::create_bill_estimate::CreateBillEstimateOutput::status): <p>The status of your newly created Bill estimate. Bill estimate creation can take anywhere between 8 to 12 hours. The status will allow you to identify when the Bill estimate is complete or has failed.</p>
14 /// - [`failure_message(Option<String>)`](crate::operation::create_bill_estimate::CreateBillEstimateOutput::failure_message): <p>This attribute provides the reason if a Bill estimate result generation fails.</p>
15 /// - [`bill_interval(Option<BillInterval>)`](crate::operation::create_bill_estimate::CreateBillEstimateOutput::bill_interval): <p>The bill month start and end timestamp that was used to create the Bill estimate. This is set to the last complete anniversary bill month start and end timestamp.</p>
16 /// - [`cost_summary(Option<BillEstimateCostSummary>)`](crate::operation::create_bill_estimate::CreateBillEstimateOutput::cost_summary): <p>Returns summary-level cost information once a Bill estimate is successfully generated. This summary includes: 1) the total cost difference, showing the pre-tax cost change for the consolidated billing family between the completed anniversary bill and the estimated bill, and 2) total cost differences per service, detailing the pre-tax cost of each service, comparing the completed anniversary bill to the estimated bill on a per-service basis.</p>
17 /// - [`created_at(Option<DateTime>)`](crate::operation::create_bill_estimate::CreateBillEstimateOutput::created_at): <p>The timestamp of when the Bill estimate create process was started (not when it successfully completed or failed).</p>
18 /// - [`expires_at(Option<DateTime>)`](crate::operation::create_bill_estimate::CreateBillEstimateOutput::expires_at): <p>The timestamp of when the Bill estimate will expire. A Bill estimate becomes inaccessible after expiration.</p>
19 /// - [`group_sharing_preference(Option<GroupSharingPreferenceEnum>)`](crate::operation::create_bill_estimate::CreateBillEstimateOutput::group_sharing_preference): <p>The setting for the reserved instance and savings plan group sharing used in this estimate.</p>
20 /// - [`cost_category_group_sharing_preference_arn(Option<String>)`](crate::operation::create_bill_estimate::CreateBillEstimateOutput::cost_category_group_sharing_preference_arn): <p>The arn of the cost category used in the reserved and prioritized group sharing.</p>
21 /// - [`cost_category_group_sharing_preference_effective_date(Option<DateTime>)`](crate::operation::create_bill_estimate::CreateBillEstimateOutput::cost_category_group_sharing_preference_effective_date): <p>Timestamp of the effective date of the cost category used in the group sharing settings.</p>
22 /// - On failure, responds with [`SdkError<CreateBillEstimateError>`](crate::operation::create_bill_estimate::CreateBillEstimateError)
23 pub fn create_bill_estimate(&self) -> crate::operation::create_bill_estimate::builders::CreateBillEstimateFluentBuilder {
24 crate::operation::create_bill_estimate::builders::CreateBillEstimateFluentBuilder::new(self.handle.clone())
25 }
26}