// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`StartMediaAnalysisJob`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`client_request_token(impl Into<String>)`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::client_request_token) / [`set_client_request_token(Option<String>)`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::set_client_request_token):<br>required: **false**<br><p>Idempotency token used to prevent the accidental creation of duplicate versions. If you use the same token with multiple <code>StartMediaAnalysisJobRequest</code> requests, the same response is returned. Use <code>ClientRequestToken</code> to prevent the same request from being processed more than once.</p><br>
/// - [`job_name(impl Into<String>)`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::job_name) / [`set_job_name(Option<String>)`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::set_job_name):<br>required: **false**<br><p>The name of the job. Does not have to be unique.</p><br>
/// - [`operations_config(MediaAnalysisOperationsConfig)`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::operations_config) / [`set_operations_config(Option<MediaAnalysisOperationsConfig>)`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::set_operations_config):<br>required: **true**<br><p>Configuration options for the media analysis job to be created.</p><br>
/// - [`input(MediaAnalysisInput)`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::input) / [`set_input(Option<MediaAnalysisInput>)`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::set_input):<br>required: **true**<br><p>Input data to be analyzed by the job.</p><br>
/// - [`output_config(MediaAnalysisOutputConfig)`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::output_config) / [`set_output_config(Option<MediaAnalysisOutputConfig>)`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::set_output_config):<br>required: **true**<br><p>The Amazon S3 bucket location to store the results.</p><br>
/// - [`kms_key_id(impl Into<String>)`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::kms_key_id) / [`set_kms_key_id(Option<String>)`](crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::set_kms_key_id):<br>required: **false**<br><p>The identifier of customer managed AWS KMS key (name or ARN). The key is used to encrypt images copied into the service. The key is also used to encrypt results and manifest files written to the output Amazon S3 bucket.</p><br>
/// - On success, responds with [`StartMediaAnalysisJobOutput`](crate::operation::start_media_analysis_job::StartMediaAnalysisJobOutput) with field(s):
/// - [`job_id(String)`](crate::operation::start_media_analysis_job::StartMediaAnalysisJobOutput::job_id): <p>Identifier for the created job.</p>
/// - On failure, responds with [`SdkError<StartMediaAnalysisJobError>`](crate::operation::start_media_analysis_job::StartMediaAnalysisJobError)
pub fn start_media_analysis_job(&self) -> crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder {
crate::operation::start_media_analysis_job::builders::StartMediaAnalysisJobFluentBuilder::new(self.handle.clone())
}
}