// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`StartServiceSoftwareUpdate`](crate::operation::start_service_software_update::builders::StartServiceSoftwareUpdateFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`domain_name(impl Into<String>)`](crate::operation::start_service_software_update::builders::StartServiceSoftwareUpdateFluentBuilder::domain_name) / [`set_domain_name(Option<String>)`](crate::operation::start_service_software_update::builders::StartServiceSoftwareUpdateFluentBuilder::set_domain_name):<br>required: **true**<br><p>The name of the domain that you want to update to the latest service software.</p><br>
/// - [`schedule_at(ScheduleAt)`](crate::operation::start_service_software_update::builders::StartServiceSoftwareUpdateFluentBuilder::schedule_at) / [`set_schedule_at(Option<ScheduleAt>)`](crate::operation::start_service_software_update::builders::StartServiceSoftwareUpdateFluentBuilder::set_schedule_at):<br>required: **false**<br><p>When to start the service software update.</p> <ul> <li> <p> <code>NOW</code> - Immediately schedules the update to happen in the current hour if there's capacity available.</p> </li> <li> <p> <code>TIMESTAMP</code> - Lets you specify a custom date and time to apply the update. If you specify this value, you must also provide a value for <code>DesiredStartTime</code>.</p> </li> <li> <p> <code>OFF_PEAK_WINDOW</code> - Marks the update to be picked up during an upcoming off-peak window. There's no guarantee that the update will happen during the next immediate window. Depending on capacity, it might happen in subsequent days.</p> </li> </ul> <p>Default: <code>NOW</code> if you don't specify a value for <code>DesiredStartTime</code>, and <code>TIMESTAMP</code> if you do.</p><br>
/// - [`desired_start_time(i64)`](crate::operation::start_service_software_update::builders::StartServiceSoftwareUpdateFluentBuilder::desired_start_time) / [`set_desired_start_time(Option<i64>)`](crate::operation::start_service_software_update::builders::StartServiceSoftwareUpdateFluentBuilder::set_desired_start_time):<br>required: **false**<br><p>The Epoch timestamp when you want the service software update to start. You only need to specify this parameter if you set <code>ScheduleAt</code> to <code>TIMESTAMP</code>.</p><br>
/// - On success, responds with [`StartServiceSoftwareUpdateOutput`](crate::operation::start_service_software_update::StartServiceSoftwareUpdateOutput) with field(s):
/// - [`service_software_options(Option<ServiceSoftwareOptions>)`](crate::operation::start_service_software_update::StartServiceSoftwareUpdateOutput::service_software_options): <p>The current status of the OpenSearch Service software update.</p>
/// - On failure, responds with [`SdkError<StartServiceSoftwareUpdateError>`](crate::operation::start_service_software_update::StartServiceSoftwareUpdateError)
pub fn start_service_software_update(
&self,
) -> crate::operation::start_service_software_update::builders::StartServiceSoftwareUpdateFluentBuilder {
crate::operation::start_service_software_update::builders::StartServiceSoftwareUpdateFluentBuilder::new(self.handle.clone())
}
}