// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`StartDocumentTextDetection`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`document_location(DocumentLocation)`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::document_location) / [`set_document_location(Option<DocumentLocation>)`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::set_document_location):<br>required: **true**<br><p>The location of the document to be processed.</p><br>
/// - [`client_request_token(impl Into<String>)`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::client_request_token) / [`set_client_request_token(Option<String>)`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::set_client_request_token):<br>required: **false**<br><p>The idempotent token that's used to identify the start request. If you use the same token with multiple <code>StartDocumentTextDetection</code> requests, the same <code>JobId</code> is returned. Use <code>ClientRequestToken</code> to prevent the same job from being accidentally started more than once. For more information, see <a href="https://docs.aws.amazon.com/textract/latest/dg/api-async.html">Calling Amazon Textract Asynchronous Operations</a>.</p><br>
/// - [`job_tag(impl Into<String>)`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::job_tag) / [`set_job_tag(Option<String>)`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::set_job_tag):<br>required: **false**<br><p>An identifier that you specify that's included in the completion notification published to the Amazon SNS topic. For example, you can use <code>JobTag</code> to identify the type of document that the completion notification corresponds to (such as a tax form or a receipt).</p><br>
/// - [`notification_channel(NotificationChannel)`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::notification_channel) / [`set_notification_channel(Option<NotificationChannel>)`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::set_notification_channel):<br>required: **false**<br><p>The Amazon SNS topic ARN that you want Amazon Textract to publish the completion status of the operation to.</p><br>
/// - [`output_config(OutputConfig)`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::output_config) / [`set_output_config(Option<OutputConfig>)`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::set_output_config):<br>required: **false**<br><p>Sets if the output will go to a customer defined bucket. By default Amazon Textract will save the results internally to be accessed with the GetDocumentTextDetection operation.</p><br>
/// - [`kms_key_id(impl Into<String>)`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::kms_key_id) / [`set_kms_key_id(Option<String>)`](crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::set_kms_key_id):<br>required: **false**<br><p>The KMS key used to encrypt the inference results. This can be in either Key ID or Key Alias format. When a KMS key is provided, the KMS key will be used for server-side encryption of the objects in the customer bucket. When this parameter is not enabled, the result will be encrypted server side,using SSE-S3.</p><br>
/// - On success, responds with [`StartDocumentTextDetectionOutput`](crate::operation::start_document_text_detection::StartDocumentTextDetectionOutput) with field(s):
/// - [`job_id(Option<String>)`](crate::operation::start_document_text_detection::StartDocumentTextDetectionOutput::job_id): <p>The identifier of the text detection job for the document. Use <code>JobId</code> to identify the job in a subsequent call to <code>GetDocumentTextDetection</code>. A <code>JobId</code> value is only valid for 7 days.</p>
/// - On failure, responds with [`SdkError<StartDocumentTextDetectionError>`](crate::operation::start_document_text_detection::StartDocumentTextDetectionError)
pub fn start_document_text_detection(
&self,
) -> crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder {
crate::operation::start_document_text_detection::builders::StartDocumentTextDetectionFluentBuilder::new(self.handle.clone())
}
}