// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`StartMedicalScribeJob`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`medical_scribe_job_name(impl Into<String>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::medical_scribe_job_name) / [`set_medical_scribe_job_name(Option<String>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::set_medical_scribe_job_name):<br>required: **true**<br><p>A unique name, chosen by you, for your Medical Scribe job.</p> <p>This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account. If you try to create a new job with the same name as an existing job, you get a <code>ConflictException</code> error.</p><br>
/// - [`media(Media)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::media) / [`set_media(Option<Media>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::set_media):<br>required: **true**<br><p>Describes the Amazon S3 location of the media file you want to use in your request.</p> <p>For information on supported media formats, refer to the <code>MediaFormat</code> parameter or the <a href="https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio">Media formats</a> section in the Amazon S3 Developer Guide.</p><br>
/// - [`output_bucket_name(impl Into<String>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::output_bucket_name) / [`set_output_bucket_name(Option<String>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::set_output_bucket_name):<br>required: **true**<br><p>The name of the Amazon S3 bucket where you want your Medical Scribe output stored. Do not include the <code>S3://</code> prefix of the specified bucket.</p> <p>Note that the role specified in the <code>DataAccessRoleArn</code> request parameter must have permission to use the specified location. You can change Amazon S3 permissions using the <a href="https://console.aws.amazon.com/s3">Amazon Web Services Management Console</a>. See also <a href="https://docs.aws.amazon.com/transcribe/latest/dg/security_iam_id-based-policy-examples.html#auth-role-iam-user">Permissions Required for IAM User Roles</a>.</p><br>
/// - [`output_encryption_kms_key_id(impl Into<String>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::output_encryption_kms_key_id) / [`set_output_encryption_kms_key_id(Option<String>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::set_output_encryption_kms_key_id):<br>required: **false**<br><p>The KMS key you want to use to encrypt your Medical Scribe output.</p> <p>If using a key located in the <b>current</b> Amazon Web Services account, you can specify your KMS key in one of four ways:</p> <ol> <li> <p>Use the KMS key ID itself. For example, <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>.</p></li> <li> <p>Use an alias for the KMS key ID. For example, <code>alias/ExampleAlias</code>.</p></li> <li> <p>Use the Amazon Resource Name (ARN) for the KMS key ID. For example, <code>arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>.</p></li> <li> <p>Use the ARN for the KMS key alias. For example, <code>arn:aws:kms:region:account-ID:alias/ExampleAlias</code>.</p></li> </ol> <p>If using a key located in a <b>different</b> Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:</p> <ol> <li> <p>Use the ARN for the KMS key ID. For example, <code>arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>.</p></li> <li> <p>Use the ARN for the KMS key alias. For example, <code>arn:aws:kms:region:account-ID:alias/ExampleAlias</code>.</p></li> </ol> <p>If you do not specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).</p> <p>Note that the role specified in the <code>DataAccessRoleArn</code> request parameter must have permission to use the specified KMS key.</p><br>
/// - [`kms_encryption_context(impl Into<String>, impl Into<String>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::kms_encryption_context) / [`set_kms_encryption_context(Option<HashMap::<String, String>>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::set_kms_encryption_context):<br>required: **false**<br><p>A map of plain text, non-secret key:value pairs, known as encryption context pairs, that provide an added layer of security for your data. For more information, see <a href="https://docs.aws.amazon.com/transcribe/latest/dg/key-management.html#kms-context">KMS encryption context</a> and <a href="https://docs.aws.amazon.com/transcribe/latest/dg/symmetric-asymmetric.html">Asymmetric keys in KMS</a>.</p><br>
/// - [`data_access_role_arn(impl Into<String>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::data_access_role_arn) / [`set_data_access_role_arn(Option<String>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::set_data_access_role_arn):<br>required: **true**<br><p>The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files, write to the output bucket, and use your KMS key if supplied. If the role that you specify doesn’t have the appropriate permissions your request fails.</p> <p>IAM role ARNs have the format <code>arn:partition:iam::account:role/role-name-with-path</code>. For example: <code>arn:aws:iam::111122223333:role/Admin</code>.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns">IAM ARNs</a>.</p><br>
/// - [`settings(MedicalScribeSettings)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::settings) / [`set_settings(Option<MedicalScribeSettings>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::set_settings):<br>required: **true**<br><p>Makes it possible to control how your Medical Scribe job is processed using a <code>MedicalScribeSettings</code> object. Specify <code>ChannelIdentification</code> if <code>ChannelDefinitions</code> are set. Enabled <code>ShowSpeakerLabels</code> if <code>ChannelIdentification</code> and <code>ChannelDefinitions</code> are not set. One and only one of <code>ChannelIdentification</code> and <code>ShowSpeakerLabels</code> must be set. If <code>ShowSpeakerLabels</code> is set, <code>MaxSpeakerLabels</code> must also be set. Use <code>Settings</code> to specify a vocabulary or vocabulary filter or both using <code>VocabularyName</code>, <code>VocabularyFilterName</code>. <code>VocabularyFilterMethod</code> must be specified if <code>VocabularyFilterName</code> is set.</p><br>
/// - [`channel_definitions(MedicalScribeChannelDefinition)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::channel_definitions) / [`set_channel_definitions(Option<Vec::<MedicalScribeChannelDefinition>>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::set_channel_definitions):<br>required: **false**<br><p>Makes it possible to specify which speaker is on which channel. For example, if the clinician is the first participant to speak, you would set <code>ChannelId</code> of the first <code>ChannelDefinition</code> in the list to <code>0</code> (to indicate the first channel) and <code>ParticipantRole</code> to <code>CLINICIAN</code> (to indicate that it's the clinician speaking). Then you would set the <code>ChannelId</code> of the second <code>ChannelDefinition</code> in the list to <code>1</code> (to indicate the second channel) and <code>ParticipantRole</code> to <code>PATIENT</code> (to indicate that it's the patient speaking).</p><br>
/// - [`tags(Tag)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::set_tags):<br>required: **false**<br><p>Adds one or more custom tags, each in the form of a key:value pair, to the Medica Scribe job.</p> <p>To learn more about using tags with Amazon Transcribe, refer to <a href="https://docs.aws.amazon.com/transcribe/latest/dg/tagging.html">Tagging resources</a>.</p><br>
/// - On success, responds with [`StartMedicalScribeJobOutput`](crate::operation::start_medical_scribe_job::StartMedicalScribeJobOutput) with field(s):
/// - [`medical_scribe_job(Option<MedicalScribeJob>)`](crate::operation::start_medical_scribe_job::StartMedicalScribeJobOutput::medical_scribe_job): <p>Provides detailed information about the current Medical Scribe job, including job status and, if applicable, failure reason.</p>
/// - On failure, responds with [`SdkError<StartMedicalScribeJobError>`](crate::operation::start_medical_scribe_job::StartMedicalScribeJobError)
pub fn start_medical_scribe_job(&self) -> crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder {
crate::operation::start_medical_scribe_job::builders::StartMedicalScribeJobFluentBuilder::new(self.handle.clone())
}
}