// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`StartBackupJob`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`backup_vault_name(impl ::std::convert::Into<String>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::backup_vault_name) / [`set_backup_vault_name(Option<String>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::set_backup_vault_name): <p>The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.</p>
/// - [`resource_arn(impl ::std::convert::Into<String>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::resource_arn) / [`set_resource_arn(Option<String>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::set_resource_arn): <p>An Amazon Resource Name (ARN) that uniquely identifies a resource. The format of the ARN depends on the resource type.</p>
/// - [`iam_role_arn(impl ::std::convert::Into<String>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::iam_role_arn) / [`set_iam_role_arn(Option<String>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::set_iam_role_arn): <p>Specifies the IAM role ARN used to create the target recovery point; for example, <code>arn:aws:iam::123456789012:role/S3Access</code>.</p>
/// - [`idempotency_token(impl ::std::convert::Into<String>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::idempotency_token) / [`set_idempotency_token(Option<String>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::set_idempotency_token): <p>A customer-chosen string that you can use to distinguish between otherwise identical calls to <code>StartBackupJob</code>. Retrying a successful request with the same idempotency token results in a success message with no action taken.</p>
/// - [`start_window_minutes(i64)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::start_window_minutes) / [`set_start_window_minutes(Option<i64>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::set_start_window_minutes): <p>A value in minutes after a backup is scheduled before a job will be canceled if it doesn't start successfully. This value is optional, and the default is 8 hours. If this value is included, it must be at least 60 minutes to avoid errors.</p>
/// - [`complete_window_minutes(i64)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::complete_window_minutes) / [`set_complete_window_minutes(Option<i64>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::set_complete_window_minutes): <p>A value in minutes during which a successfully started backup must complete, or else Backup will cancel the job. This value is optional. This value begins counting down from when the backup was scheduled. It does not add additional time for <code>StartWindowMinutes</code>, or if the backup started later than scheduled.</p>
/// - [`lifecycle(Lifecycle)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::lifecycle) / [`set_lifecycle(Option<Lifecycle>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::set_lifecycle): <p>The lifecycle defines when a protected resource is transitioned to cold storage and when it expires. Backup will transition and expire backups automatically according to the lifecycle that you define. </p> <p>Backups transitioned to cold storage must be stored in cold storage for a minimum of 90 days. Therefore, the “retention” setting must be 90 days greater than the “transition to cold after days” setting. The “transition to cold after days” setting cannot be changed after a backup has been transitioned to cold. </p> <p>Resource types that are able to be transitioned to cold storage are listed in the "Lifecycle to cold storage" section of the <a href="https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource"> Feature availability by resource</a> table. Backup ignores this expression for other resource types.</p>
/// - [`recovery_point_tags(HashMap<String, String>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::recovery_point_tags) / [`set_recovery_point_tags(Option<HashMap<String, String>>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::set_recovery_point_tags): <p>To help organize your resources, you can assign your own metadata to the resources that you create. Each tag is a key-value pair.</p>
/// - [`backup_options(HashMap<String, String>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::backup_options) / [`set_backup_options(Option<HashMap<String, String>>)`](crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::set_backup_options): <p>Specifies the backup option for a selected resource. This option is only available for Windows Volume Shadow Copy Service (VSS) backup jobs.</p> <p>Valid values: Set to <code>"WindowsVSS":"enabled"</code> to enable the <code>WindowsVSS</code> backup option and create a Windows VSS backup. Set to <code>"WindowsVSS""disabled"</code> to create a regular backup. The <code>WindowsVSS</code> option is not enabled by default.</p>
/// - On success, responds with [`StartBackupJobOutput`](crate::operation::start_backup_job::StartBackupJobOutput) with field(s):
/// - [`backup_job_id(Option<String>)`](crate::operation::start_backup_job::StartBackupJobOutput::backup_job_id): <p>Uniquely identifies a request to Backup to back up a resource.</p>
/// - [`recovery_point_arn(Option<String>)`](crate::operation::start_backup_job::StartBackupJobOutput::recovery_point_arn): <p> <i>Note: This field is only returned for Amazon EFS and Advanced DynamoDB resources.</i> </p> <p>An ARN that uniquely identifies a recovery point; for example, <code>arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45</code>.</p>
/// - [`creation_date(Option<DateTime>)`](crate::operation::start_backup_job::StartBackupJobOutput::creation_date): <p>The date and time that a backup job is created, in Unix format and Coordinated Universal Time (UTC). The value of <code>CreationDate</code> is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.</p>
/// - [`is_parent(bool)`](crate::operation::start_backup_job::StartBackupJobOutput::is_parent): <p>This is a returned boolean value indicating this is a parent (composite) backup job.</p>
/// - On failure, responds with [`SdkError<StartBackupJobError>`](crate::operation::start_backup_job::StartBackupJobError)
pub fn start_backup_job(
&self,
) -> crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder {
crate::operation::start_backup_job::builders::StartBackupJobFluentBuilder::new(
self.handle.clone(),
)
}
}