// ================================================================= // // * WARNING * // // This file is generated! // // Changes made to this file will be overwritten. If changes are // required to the generated code, the service_crategen project // must be updated to generate the changes. // // ================================================================= use std::error::Error; use std::fmt; use async_trait::async_trait; use rusoto_core::credential::ProvideAwsCredentials; use rusoto_core::region; use rusoto_core::request::{BufferedHttpResponse, DispatchSignedRequest}; use rusoto_core::{Client, RusotoError}; use rusoto_core::proto; use rusoto_core::request::HttpResponse; use rusoto_core::signature::SignedRequest; #[allow(unused_imports)] use serde::{Deserialize, Serialize}; impl ComprehendMedicalClient { fn new_signed_request(&self, http_method: &str, request_uri: &str) -> SignedRequest { let mut request = SignedRequest::new(http_method, "comprehendmedical", &self.region, request_uri); request.set_content_type("application/x-amz-json-1.1".to_owned()); request } async fn sign_and_dispatch( &self, request: SignedRequest, from_response: fn(BufferedHttpResponse) -> RusotoError, ) -> Result> { let mut response = self.client.sign_and_dispatch(request).await?; if !response.status.is_success() { let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; return Err(from_response(response)); } Ok(response) } } use serde_json; ///

An extracted segment of the text that is an attribute of an entity, or otherwise related to an entity, such as the dosage of a medication taken. It contains information about the attribute such as id, begin and end offset within the input text, and the segment of the input text.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct Attribute { ///

The 0-based character offset in the input text that shows where the attribute begins. The offset returns the UTF-8 code point in the string.

#[serde(rename = "BeginOffset")] #[serde(skip_serializing_if = "Option::is_none")] pub begin_offset: Option, ///

The category of attribute.

#[serde(rename = "Category")] #[serde(skip_serializing_if = "Option::is_none")] pub category: Option, ///

The 0-based character offset in the input text that shows where the attribute ends. The offset returns the UTF-8 code point in the string.

#[serde(rename = "EndOffset")] #[serde(skip_serializing_if = "Option::is_none")] pub end_offset: Option, ///

The numeric identifier for this attribute. This is a monotonically increasing id unique within this response rather than a global unique identifier.

#[serde(rename = "Id")] #[serde(skip_serializing_if = "Option::is_none")] pub id: Option, ///

The level of confidence that Amazon Comprehend Medical has that this attribute is correctly related to this entity.

#[serde(rename = "RelationshipScore")] #[serde(skip_serializing_if = "Option::is_none")] pub relationship_score: Option, ///

The type of relationship between the entity and attribute. Type for the relationship is OVERLAP, indicating that the entity occurred at the same time as the Date_Expression.

#[serde(rename = "RelationshipType")] #[serde(skip_serializing_if = "Option::is_none")] pub relationship_type: Option, ///

The level of confidence that Amazon Comprehend Medical has that the segment of text is correctly recognized as an attribute.

#[serde(rename = "Score")] #[serde(skip_serializing_if = "Option::is_none")] pub score: Option, ///

The segment of input text extracted as this attribute.

#[serde(rename = "Text")] #[serde(skip_serializing_if = "Option::is_none")] pub text: Option, ///

Contextual information for this attribute.

#[serde(rename = "Traits")] #[serde(skip_serializing_if = "Option::is_none")] pub traits: Option>, ///

The type of attribute.

#[serde(rename = "Type")] #[serde(skip_serializing_if = "Option::is_none")] pub type_: Option, } ///

Provides information for filtering a list of detection jobs.

#[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct ComprehendMedicalAsyncJobFilter { ///

Filters on the name of the job.

#[serde(rename = "JobName")] #[serde(skip_serializing_if = "Option::is_none")] pub job_name: Option, ///

Filters the list of jobs based on job status. Returns only jobs with the specified status.

#[serde(rename = "JobStatus")] #[serde(skip_serializing_if = "Option::is_none")] pub job_status: Option, ///

Filters the list of jobs based on the time that the job was submitted for processing. Returns only jobs submitted after the specified time. Jobs are returned in descending order, newest to oldest.

#[serde(rename = "SubmitTimeAfter")] #[serde(skip_serializing_if = "Option::is_none")] pub submit_time_after: Option, ///

Filters the list of jobs based on the time that the job was submitted for processing. Returns only jobs submitted before the specified time. Jobs are returned in ascending order, oldest to newest.

#[serde(rename = "SubmitTimeBefore")] #[serde(skip_serializing_if = "Option::is_none")] pub submit_time_before: Option, } ///

Provides information about a detection job.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct ComprehendMedicalAsyncJobProperties { ///

The Amazon Resource Name (ARN) that gives Amazon Comprehend Medical read access to your input data.

#[serde(rename = "DataAccessRoleArn")] #[serde(skip_serializing_if = "Option::is_none")] pub data_access_role_arn: Option, ///

The time that the detection job completed.

#[serde(rename = "EndTime")] #[serde(skip_serializing_if = "Option::is_none")] pub end_time: Option, ///

The date and time that job metadata is deleted from the server. Output files in your S3 bucket will not be deleted. After the metadata is deleted, the job will no longer appear in the results of the ListEntitiesDetectionV2Job or the ListPHIDetectionJobs operation.

#[serde(rename = "ExpirationTime")] #[serde(skip_serializing_if = "Option::is_none")] pub expiration_time: Option, ///

The input data configuration that you supplied when you created the detection job.

#[serde(rename = "InputDataConfig")] #[serde(skip_serializing_if = "Option::is_none")] pub input_data_config: Option, ///

The identifier assigned to the detection job.

#[serde(rename = "JobId")] #[serde(skip_serializing_if = "Option::is_none")] pub job_id: Option, ///

The name that you assigned to the detection job.

#[serde(rename = "JobName")] #[serde(skip_serializing_if = "Option::is_none")] pub job_name: Option, ///

The current status of the detection job. If the status is FAILED, the Message field shows the reason for the failure.

#[serde(rename = "JobStatus")] #[serde(skip_serializing_if = "Option::is_none")] pub job_status: Option, ///

The AWS Key Management Service key, if any, used to encrypt the output files.

#[serde(rename = "KMSKey")] #[serde(skip_serializing_if = "Option::is_none")] pub kms_key: Option, ///

The language code of the input documents.

#[serde(rename = "LanguageCode")] #[serde(skip_serializing_if = "Option::is_none")] pub language_code: Option, ///

The path to the file that describes the results of a batch job.

#[serde(rename = "ManifestFilePath")] #[serde(skip_serializing_if = "Option::is_none")] pub manifest_file_path: Option, ///

A description of the status of a job.

#[serde(rename = "Message")] #[serde(skip_serializing_if = "Option::is_none")] pub message: Option, ///

The version of the model used to analyze the documents. The version number looks like X.X.X. You can use this information to track the model used for a particular batch of documents.

#[serde(rename = "ModelVersion")] #[serde(skip_serializing_if = "Option::is_none")] pub model_version: Option, ///

The output data configuration that you supplied when you created the detection job.

#[serde(rename = "OutputDataConfig")] #[serde(skip_serializing_if = "Option::is_none")] pub output_data_config: Option, ///

The time that the detection job was submitted for processing.

#[serde(rename = "SubmitTime")] #[serde(skip_serializing_if = "Option::is_none")] pub submit_time: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct DescribeEntitiesDetectionV2JobRequest { ///

The identifier that Amazon Comprehend Medical generated for the job. The StartEntitiesDetectionV2Job operation returns this identifier in its response.

#[serde(rename = "JobId")] pub job_id: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DescribeEntitiesDetectionV2JobResponse { ///

An object that contains the properties associated with a detection job.

#[serde(rename = "ComprehendMedicalAsyncJobProperties")] #[serde(skip_serializing_if = "Option::is_none")] pub comprehend_medical_async_job_properties: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct DescribeICD10CMInferenceJobRequest { ///

The identifier that Amazon Comprehend Medical generated for the job. The StartICD10CMInferenceJob operation returns this identifier in its response.

#[serde(rename = "JobId")] pub job_id: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DescribeICD10CMInferenceJobResponse { ///

An object that contains the properties associated with a detection job.

#[serde(rename = "ComprehendMedicalAsyncJobProperties")] #[serde(skip_serializing_if = "Option::is_none")] pub comprehend_medical_async_job_properties: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct DescribePHIDetectionJobRequest { ///

The identifier that Amazon Comprehend Medical generated for the job. The StartPHIDetectionJob operation returns this identifier in its response.

#[serde(rename = "JobId")] pub job_id: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DescribePHIDetectionJobResponse { ///

An object that contains the properties associated with a detection job.

#[serde(rename = "ComprehendMedicalAsyncJobProperties")] #[serde(skip_serializing_if = "Option::is_none")] pub comprehend_medical_async_job_properties: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct DescribeRxNormInferenceJobRequest { ///

The identifier that Amazon Comprehend Medical generated for the job. The StartRxNormInferenceJob operation returns this identifier in its response.

#[serde(rename = "JobId")] pub job_id: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DescribeRxNormInferenceJobResponse { ///

An object that contains the properties associated with a detection job.

#[serde(rename = "ComprehendMedicalAsyncJobProperties")] #[serde(skip_serializing_if = "Option::is_none")] pub comprehend_medical_async_job_properties: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct DetectEntitiesRequest { ///

A UTF-8 text string containing the clinical content being examined for entities. Each string must contain fewer than 20,000 bytes of characters.

#[serde(rename = "Text")] pub text: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DetectEntitiesResponse { ///

The collection of medical entities extracted from the input text and their associated information. For each entity, the response provides the entity text, the entity category, where the entity text begins and ends, and the level of confidence that Amazon Comprehend Medical has in the detection and analysis. Attributes and traits of the entity are also returned.

#[serde(rename = "Entities")] pub entities: Vec, ///

The version of the model used to analyze the documents. The version number looks like X.X.X. You can use this information to track the model used for a particular batch of documents.

#[serde(rename = "ModelVersion")] pub model_version: String, ///

If the result of the previous request to DetectEntities was truncated, include the PaginationToken to fetch the next page of entities.

#[serde(rename = "PaginationToken")] #[serde(skip_serializing_if = "Option::is_none")] pub pagination_token: Option, ///

Attributes extracted from the input text that we were unable to relate to an entity.

#[serde(rename = "UnmappedAttributes")] #[serde(skip_serializing_if = "Option::is_none")] pub unmapped_attributes: Option>, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct DetectEntitiesV2Request { ///

A UTF-8 string containing the clinical content being examined for entities. Each string must contain fewer than 20,000 bytes of characters.

#[serde(rename = "Text")] pub text: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DetectEntitiesV2Response { ///

The collection of medical entities extracted from the input text and their associated information. For each entity, the response provides the entity text, the entity category, where the entity text begins and ends, and the level of confidence in the detection and analysis. Attributes and traits of the entity are also returned.

#[serde(rename = "Entities")] pub entities: Vec, ///

The version of the model used to analyze the documents. The version number looks like X.X.X. You can use this information to track the model used for a particular batch of documents.

#[serde(rename = "ModelVersion")] pub model_version: String, ///

If the result to the DetectEntitiesV2 operation was truncated, include the PaginationToken to fetch the next page of entities.

#[serde(rename = "PaginationToken")] #[serde(skip_serializing_if = "Option::is_none")] pub pagination_token: Option, ///

Attributes extracted from the input text that couldn't be related to an entity.

#[serde(rename = "UnmappedAttributes")] #[serde(skip_serializing_if = "Option::is_none")] pub unmapped_attributes: Option>, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct DetectPHIRequest { ///

A UTF-8 text string containing the clinical content being examined for PHI entities. Each string must contain fewer than 20,000 bytes of characters.

#[serde(rename = "Text")] pub text: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct DetectPHIResponse { ///

The collection of PHI entities extracted from the input text and their associated information. For each entity, the response provides the entity text, the entity category, where the entity text begins and ends, and the level of confidence that Amazon Comprehend Medical has in its detection.

#[serde(rename = "Entities")] pub entities: Vec, ///

The version of the model used to analyze the documents. The version number looks like X.X.X. You can use this information to track the model used for a particular batch of documents.

#[serde(rename = "ModelVersion")] pub model_version: String, ///

If the result of the previous request to DetectPHI was truncated, include the PaginationToken to fetch the next page of PHI entities.

#[serde(rename = "PaginationToken")] #[serde(skip_serializing_if = "Option::is_none")] pub pagination_token: Option, } ///

Provides information about an extracted medical entity.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct Entity { ///

The extracted attributes that relate to this entity.

#[serde(rename = "Attributes")] #[serde(skip_serializing_if = "Option::is_none")] pub attributes: Option>, ///

The 0-based character offset in the input text that shows where the entity begins. The offset returns the UTF-8 code point in the string.

#[serde(rename = "BeginOffset")] #[serde(skip_serializing_if = "Option::is_none")] pub begin_offset: Option, ///

The category of the entity.

#[serde(rename = "Category")] #[serde(skip_serializing_if = "Option::is_none")] pub category: Option, ///

The 0-based character offset in the input text that shows where the entity ends. The offset returns the UTF-8 code point in the string.

#[serde(rename = "EndOffset")] #[serde(skip_serializing_if = "Option::is_none")] pub end_offset: Option, ///

The numeric identifier for the entity. This is a monotonically increasing id unique within this response rather than a global unique identifier.

#[serde(rename = "Id")] #[serde(skip_serializing_if = "Option::is_none")] pub id: Option, ///

The level of confidence that Amazon Comprehend Medical has in the accuracy of the detection.

#[serde(rename = "Score")] #[serde(skip_serializing_if = "Option::is_none")] pub score: Option, ///

The segment of input text extracted as this entity.

#[serde(rename = "Text")] #[serde(skip_serializing_if = "Option::is_none")] pub text: Option, ///

Contextual information for the entity.

#[serde(rename = "Traits")] #[serde(skip_serializing_if = "Option::is_none")] pub traits: Option>, ///

Describes the specific type of entity with category of entities.

#[serde(rename = "Type")] #[serde(skip_serializing_if = "Option::is_none")] pub type_: Option, } ///

The detected attributes that relate to an entity. This includes an extracted segment of the text that is an attribute of an entity, or otherwise related to an entity. InferICD10CM detects the following attributes: Direction, System, Organ or Site, and Acuity.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct ICD10CMAttribute { ///

The 0-based character offset in the input text that shows where the attribute begins. The offset returns the UTF-8 code point in the string.

#[serde(rename = "BeginOffset")] #[serde(skip_serializing_if = "Option::is_none")] pub begin_offset: Option, ///

The 0-based character offset in the input text that shows where the attribute ends. The offset returns the UTF-8 code point in the string.

#[serde(rename = "EndOffset")] #[serde(skip_serializing_if = "Option::is_none")] pub end_offset: Option, ///

The numeric identifier for this attribute. This is a monotonically increasing id unique within this response rather than a global unique identifier.

#[serde(rename = "Id")] #[serde(skip_serializing_if = "Option::is_none")] pub id: Option, ///

The level of confidence that Amazon Comprehend Medical has that this attribute is correctly related to this entity.

#[serde(rename = "RelationshipScore")] #[serde(skip_serializing_if = "Option::is_none")] pub relationship_score: Option, ///

The level of confidence that Amazon Comprehend Medical has that the segment of text is correctly recognized as an attribute.

#[serde(rename = "Score")] #[serde(skip_serializing_if = "Option::is_none")] pub score: Option, ///

The segment of input text which contains the detected attribute.

#[serde(rename = "Text")] #[serde(skip_serializing_if = "Option::is_none")] pub text: Option, ///

The contextual information for the attribute. The traits recognized by InferICD10CM are DIAGNOSIS, SIGN, SYMPTOM, and NEGATION.

#[serde(rename = "Traits")] #[serde(skip_serializing_if = "Option::is_none")] pub traits: Option>, ///

The type of attribute. InferICD10CM detects entities of the type DX_NAME.

#[serde(rename = "Type")] #[serde(skip_serializing_if = "Option::is_none")] pub type_: Option, } ///

The ICD-10-CM concepts that the entity could refer to, along with a score indicating the likelihood of the match.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct ICD10CMConcept { ///

The ICD-10-CM code that identifies the concept found in the knowledge base from the Centers for Disease Control.

#[serde(rename = "Code")] #[serde(skip_serializing_if = "Option::is_none")] pub code: Option, ///

The long description of the ICD-10-CM code in the ontology.

#[serde(rename = "Description")] #[serde(skip_serializing_if = "Option::is_none")] pub description: Option, ///

The level of confidence that Amazon Comprehend Medical has that the entity is accurately linked to an ICD-10-CM concept.

#[serde(rename = "Score")] #[serde(skip_serializing_if = "Option::is_none")] pub score: Option, } ///

The collection of medical entities extracted from the input text and their associated information. For each entity, the response provides the entity text, the entity category, where the entity text begins and ends, and the level of confidence that Amazon Comprehend Medical has in the detection and analysis. Attributes and traits of the entity are also returned.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct ICD10CMEntity { ///

The detected attributes that relate to the entity. An extracted segment of the text that is an attribute of an entity, or otherwise related to an entity, such as the nature of a medical condition.

#[serde(rename = "Attributes")] #[serde(skip_serializing_if = "Option::is_none")] pub attributes: Option>, ///

The 0-based character offset in the input text that shows where the entity begins. The offset returns the UTF-8 code point in the string.

#[serde(rename = "BeginOffset")] #[serde(skip_serializing_if = "Option::is_none")] pub begin_offset: Option, ///

The category of the entity. InferICD10CM detects entities in the MEDICAL_CONDITION category.

#[serde(rename = "Category")] #[serde(skip_serializing_if = "Option::is_none")] pub category: Option, ///

The 0-based character offset in the input text that shows where the entity ends. The offset returns the UTF-8 code point in the string.

#[serde(rename = "EndOffset")] #[serde(skip_serializing_if = "Option::is_none")] pub end_offset: Option, ///

The ICD-10-CM concepts that the entity could refer to, along with a score indicating the likelihood of the match.

#[serde(rename = "ICD10CMConcepts")] #[serde(skip_serializing_if = "Option::is_none")] pub icd10cm_concepts: Option>, ///

The numeric identifier for the entity. This is a monotonically increasing id unique within this response rather than a global unique identifier.

#[serde(rename = "Id")] #[serde(skip_serializing_if = "Option::is_none")] pub id: Option, ///

The level of confidence that Amazon Comprehend Medical has in the accuracy of the detection.

#[serde(rename = "Score")] #[serde(skip_serializing_if = "Option::is_none")] pub score: Option, ///

The segment of input text that is matched to the detected entity.

#[serde(rename = "Text")] #[serde(skip_serializing_if = "Option::is_none")] pub text: Option, ///

Provides Contextual information for the entity. The traits recognized by InferICD10CM are DIAGNOSIS, SIGN, SYMPTOM, and NEGATION.

#[serde(rename = "Traits")] #[serde(skip_serializing_if = "Option::is_none")] pub traits: Option>, ///

Describes the specific type of entity with category of entities. InferICD10CM detects entities of the type DX_NAME.

#[serde(rename = "Type")] #[serde(skip_serializing_if = "Option::is_none")] pub type_: Option, } ///

Contextual information for the entity. The traits recognized by InferICD10CM are DIAGNOSIS, SIGN, SYMPTOM, and NEGATION.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct ICD10CMTrait { ///

Provides a name or contextual description about the trait.

#[serde(rename = "Name")] #[serde(skip_serializing_if = "Option::is_none")] pub name: Option, ///

The level of confidence that Amazon Comprehend Medical has that the segment of text is correctly recognized as a trait.

#[serde(rename = "Score")] #[serde(skip_serializing_if = "Option::is_none")] pub score: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct InferICD10CMRequest { ///

The input text used for analysis. The input for InferICD10CM is a string from 1 to 10000 characters.

#[serde(rename = "Text")] pub text: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct InferICD10CMResponse { ///

The medical conditions detected in the text linked to ICD-10-CM concepts. If the action is successful, the service sends back an HTTP 200 response, as well as the entities detected.

#[serde(rename = "Entities")] pub entities: Vec, ///

The version of the model used to analyze the documents, in the format n.n.n You can use this information to track the model used for a particular batch of documents.

#[serde(rename = "ModelVersion")] #[serde(skip_serializing_if = "Option::is_none")] pub model_version: Option, ///

If the result of the previous request to InferICD10CM was truncated, include the PaginationToken to fetch the next page of medical condition entities.

#[serde(rename = "PaginationToken")] #[serde(skip_serializing_if = "Option::is_none")] pub pagination_token: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct InferRxNormRequest { ///

The input text used for analysis. The input for InferRxNorm is a string from 1 to 10000 characters.

#[serde(rename = "Text")] pub text: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct InferRxNormResponse { ///

The medication entities detected in the text linked to RxNorm concepts. If the action is successful, the service sends back an HTTP 200 response, as well as the entities detected.

#[serde(rename = "Entities")] pub entities: Vec, ///

The version of the model used to analyze the documents, in the format n.n.n You can use this information to track the model used for a particular batch of documents.

#[serde(rename = "ModelVersion")] #[serde(skip_serializing_if = "Option::is_none")] pub model_version: Option, ///

If the result of the previous request to InferRxNorm was truncated, include the PaginationToken to fetch the next page of medication entities.

#[serde(rename = "PaginationToken")] #[serde(skip_serializing_if = "Option::is_none")] pub pagination_token: Option, } ///

The input properties for an entities detection job. This includes the name of the S3 bucket and the path to the files to be analyzed. See batch-manifest for more information.

#[derive(Clone, Debug, Default, Deserialize, PartialEq, Serialize)] pub struct InputDataConfig { ///

The URI of the S3 bucket that contains the input data. The bucket must be in the same region as the API endpoint that you are calling.

Each file in the document collection must be less than 40 KB. You can store a maximum of 30 GB in the bucket.

#[serde(rename = "S3Bucket")] pub s3_bucket: String, ///

The path to the input data files in the S3 bucket.

#[serde(rename = "S3Key")] #[serde(skip_serializing_if = "Option::is_none")] pub s3_key: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct ListEntitiesDetectionV2JobsRequest { ///

Filters the jobs that are returned. You can filter jobs based on their names, status, or the date and time that they were submitted. You can only set one filter at a time.

#[serde(rename = "Filter")] #[serde(skip_serializing_if = "Option::is_none")] pub filter: Option, ///

The maximum number of results to return in each page. The default is 100.

#[serde(rename = "MaxResults")] #[serde(skip_serializing_if = "Option::is_none")] pub max_results: Option, ///

Identifies the next page of results to return.

#[serde(rename = "NextToken")] #[serde(skip_serializing_if = "Option::is_none")] pub next_token: Option, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct ListEntitiesDetectionV2JobsResponse { ///

A list containing the properties of each job returned.

#[serde(rename = "ComprehendMedicalAsyncJobPropertiesList")] #[serde(skip_serializing_if = "Option::is_none")] pub comprehend_medical_async_job_properties_list: Option>, ///

Identifies the next page of results to return.

#[serde(rename = "NextToken")] #[serde(skip_serializing_if = "Option::is_none")] pub next_token: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct ListICD10CMInferenceJobsRequest { ///

Filters the jobs that are returned. You can filter jobs based on their names, status, or the date and time that they were submitted. You can only set one filter at a time.

#[serde(rename = "Filter")] #[serde(skip_serializing_if = "Option::is_none")] pub filter: Option, ///

The maximum number of results to return in each page. The default is 100.

#[serde(rename = "MaxResults")] #[serde(skip_serializing_if = "Option::is_none")] pub max_results: Option, ///

Identifies the next page of results to return.

#[serde(rename = "NextToken")] #[serde(skip_serializing_if = "Option::is_none")] pub next_token: Option, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct ListICD10CMInferenceJobsResponse { ///

A list containing the properties of each job that is returned.

#[serde(rename = "ComprehendMedicalAsyncJobPropertiesList")] #[serde(skip_serializing_if = "Option::is_none")] pub comprehend_medical_async_job_properties_list: Option>, ///

Identifies the next page of results to return.

#[serde(rename = "NextToken")] #[serde(skip_serializing_if = "Option::is_none")] pub next_token: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct ListPHIDetectionJobsRequest { ///

Filters the jobs that are returned. You can filter jobs based on their names, status, or the date and time that they were submitted. You can only set one filter at a time.

#[serde(rename = "Filter")] #[serde(skip_serializing_if = "Option::is_none")] pub filter: Option, ///

The maximum number of results to return in each page. The default is 100.

#[serde(rename = "MaxResults")] #[serde(skip_serializing_if = "Option::is_none")] pub max_results: Option, ///

Identifies the next page of results to return.

#[serde(rename = "NextToken")] #[serde(skip_serializing_if = "Option::is_none")] pub next_token: Option, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct ListPHIDetectionJobsResponse { ///

A list containing the properties of each job returned.

#[serde(rename = "ComprehendMedicalAsyncJobPropertiesList")] #[serde(skip_serializing_if = "Option::is_none")] pub comprehend_medical_async_job_properties_list: Option>, ///

Identifies the next page of results to return.

#[serde(rename = "NextToken")] #[serde(skip_serializing_if = "Option::is_none")] pub next_token: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct ListRxNormInferenceJobsRequest { ///

Filters the jobs that are returned. You can filter jobs based on their names, status, or the date and time that they were submitted. You can only set one filter at a time.

#[serde(rename = "Filter")] #[serde(skip_serializing_if = "Option::is_none")] pub filter: Option, ///

Identifies the next page of results to return.

#[serde(rename = "MaxResults")] #[serde(skip_serializing_if = "Option::is_none")] pub max_results: Option, ///

Identifies the next page of results to return.

#[serde(rename = "NextToken")] #[serde(skip_serializing_if = "Option::is_none")] pub next_token: Option, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct ListRxNormInferenceJobsResponse { ///

The maximum number of results to return in each page. The default is 100.

#[serde(rename = "ComprehendMedicalAsyncJobPropertiesList")] #[serde(skip_serializing_if = "Option::is_none")] pub comprehend_medical_async_job_properties_list: Option>, ///

Identifies the next page of results to return.

#[serde(rename = "NextToken")] #[serde(skip_serializing_if = "Option::is_none")] pub next_token: Option, } ///

The output properties for a detection job.

#[derive(Clone, Debug, Default, Deserialize, PartialEq, Serialize)] pub struct OutputDataConfig { ///

When you use the OutputDataConfig object with asynchronous operations, you specify the Amazon S3 location where you want to write the output data. The URI must be in the same region as the API endpoint that you are calling. The location is used as the prefix for the actual location of the output.

#[serde(rename = "S3Bucket")] pub s3_bucket: String, ///

The path to the output data files in the S3 bucket. Amazon Comprehend Medical creates an output directory using the job ID so that the output from one job does not overwrite the output of another.

#[serde(rename = "S3Key")] #[serde(skip_serializing_if = "Option::is_none")] pub s3_key: Option, } ///

The extracted attributes that relate to this entity. The attributes recognized by InferRxNorm are DOSAGE, DURATION, FORM, FREQUENCY, RATE, ROUTE_OR_MODE.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct RxNormAttribute { ///

The 0-based character offset in the input text that shows where the attribute begins. The offset returns the UTF-8 code point in the string.

#[serde(rename = "BeginOffset")] #[serde(skip_serializing_if = "Option::is_none")] pub begin_offset: Option, ///

The 0-based character offset in the input text that shows where the attribute ends. The offset returns the UTF-8 code point in the string.

#[serde(rename = "EndOffset")] #[serde(skip_serializing_if = "Option::is_none")] pub end_offset: Option, ///

The numeric identifier for this attribute. This is a monotonically increasing id unique within this response rather than a global unique identifier.

#[serde(rename = "Id")] #[serde(skip_serializing_if = "Option::is_none")] pub id: Option, ///

The level of confidence that Amazon Comprehend Medical has that the attribute is accurately linked to an entity.

#[serde(rename = "RelationshipScore")] #[serde(skip_serializing_if = "Option::is_none")] pub relationship_score: Option, ///

The level of confidence that Comprehend Medical has that the segment of text is correctly recognized as an attribute.

#[serde(rename = "Score")] #[serde(skip_serializing_if = "Option::is_none")] pub score: Option, ///

The segment of input text which corresponds to the detected attribute.

#[serde(rename = "Text")] #[serde(skip_serializing_if = "Option::is_none")] pub text: Option, ///

Contextual information for the attribute. InferRxNorm recognizes the trait NEGATION for attributes, i.e. that the patient is not taking a specific dose or form of a medication.

#[serde(rename = "Traits")] #[serde(skip_serializing_if = "Option::is_none")] pub traits: Option>, ///

The type of attribute. The types of attributes recognized by InferRxNorm are BRAND_NAME and GENERIC_NAME.

#[serde(rename = "Type")] #[serde(skip_serializing_if = "Option::is_none")] pub type_: Option, } ///

The RxNorm concept that the entity could refer to, along with a score indicating the likelihood of the match.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct RxNormConcept { ///

RxNorm concept ID, also known as the RxCUI.

#[serde(rename = "Code")] #[serde(skip_serializing_if = "Option::is_none")] pub code: Option, ///

The description of the RxNorm concept.

#[serde(rename = "Description")] #[serde(skip_serializing_if = "Option::is_none")] pub description: Option, ///

The level of confidence that Amazon Comprehend Medical has that the entity is accurately linked to the reported RxNorm concept.

#[serde(rename = "Score")] #[serde(skip_serializing_if = "Option::is_none")] pub score: Option, } ///

The collection of medical entities extracted from the input text and their associated information. For each entity, the response provides the entity text, the entity category, where the entity text begins and ends, and the level of confidence that Amazon Comprehend Medical has in the detection and analysis. Attributes and traits of the entity are also returned.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct RxNormEntity { ///

The extracted attributes that relate to the entity. The attributes recognized by InferRxNorm are DOSAGE, DURATION, FORM, FREQUENCY, RATE, ROUTE_OR_MODE, and STRENGTH.

#[serde(rename = "Attributes")] #[serde(skip_serializing_if = "Option::is_none")] pub attributes: Option>, ///

The 0-based character offset in the input text that shows where the entity begins. The offset returns the UTF-8 code point in the string.

#[serde(rename = "BeginOffset")] #[serde(skip_serializing_if = "Option::is_none")] pub begin_offset: Option, ///

The category of the entity. The recognized categories are GENERIC or BRAND_NAME.

#[serde(rename = "Category")] #[serde(skip_serializing_if = "Option::is_none")] pub category: Option, ///

The 0-based character offset in the input text that shows where the entity ends. The offset returns the UTF-8 code point in the string.

#[serde(rename = "EndOffset")] #[serde(skip_serializing_if = "Option::is_none")] pub end_offset: Option, ///

The numeric identifier for the entity. This is a monotonically increasing id unique within this response rather than a global unique identifier.

#[serde(rename = "Id")] #[serde(skip_serializing_if = "Option::is_none")] pub id: Option, ///

The RxNorm concepts that the entity could refer to, along with a score indicating the likelihood of the match.

#[serde(rename = "RxNormConcepts")] #[serde(skip_serializing_if = "Option::is_none")] pub rx_norm_concepts: Option>, ///

The level of confidence that Amazon Comprehend Medical has in the accuracy of the detected entity.

#[serde(rename = "Score")] #[serde(skip_serializing_if = "Option::is_none")] pub score: Option, ///

The segment of input text extracted from which the entity was detected.

#[serde(rename = "Text")] #[serde(skip_serializing_if = "Option::is_none")] pub text: Option, ///

Contextual information for the entity.

#[serde(rename = "Traits")] #[serde(skip_serializing_if = "Option::is_none")] pub traits: Option>, ///

Describes the specific type of entity. For InferRxNorm, the recognized entity type is MEDICATION.

#[serde(rename = "Type")] #[serde(skip_serializing_if = "Option::is_none")] pub type_: Option, } ///

The contextual information for the entity. InferRxNorm recognizes the trait NEGATION, which is any indication that the patient is not taking a medication.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct RxNormTrait { ///

Provides a name or contextual description about the trait.

#[serde(rename = "Name")] #[serde(skip_serializing_if = "Option::is_none")] pub name: Option, ///

The level of confidence that Amazon Comprehend Medical has in the accuracy of the detected trait.

#[serde(rename = "Score")] #[serde(skip_serializing_if = "Option::is_none")] pub score: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct StartEntitiesDetectionV2JobRequest { ///

A unique identifier for the request. If you don't set the client request token, Amazon Comprehend Medical generates one.

#[serde(rename = "ClientRequestToken")] #[serde(skip_serializing_if = "Option::is_none")] pub client_request_token: Option, ///

The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that grants Amazon Comprehend Medical read access to your input data. For more information, see Role-Based Permissions Required for Asynchronous Operations.

#[serde(rename = "DataAccessRoleArn")] pub data_access_role_arn: String, ///

Specifies the format and location of the input data for the job.

#[serde(rename = "InputDataConfig")] pub input_data_config: InputDataConfig, ///

The identifier of the job.

#[serde(rename = "JobName")] #[serde(skip_serializing_if = "Option::is_none")] pub job_name: Option, ///

An AWS Key Management Service key to encrypt your output files. If you do not specify a key, the files are written in plain text.

#[serde(rename = "KMSKey")] #[serde(skip_serializing_if = "Option::is_none")] pub kms_key: Option, ///

The language of the input documents. All documents must be in the same language.

#[serde(rename = "LanguageCode")] pub language_code: String, ///

Specifies where to send the output files.

#[serde(rename = "OutputDataConfig")] pub output_data_config: OutputDataConfig, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct StartEntitiesDetectionV2JobResponse { ///

The identifier generated for the job. To get the status of a job, use this identifier with the DescribeEntitiesDetectionV2Job operation.

#[serde(rename = "JobId")] #[serde(skip_serializing_if = "Option::is_none")] pub job_id: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct StartICD10CMInferenceJobRequest { ///

A unique identifier for the request. If you don't set the client request token, Amazon Comprehend Medical generates one.

#[serde(rename = "ClientRequestToken")] #[serde(skip_serializing_if = "Option::is_none")] pub client_request_token: Option, ///

The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that grants Amazon Comprehend Medical read access to your input data. For more information, see Role-Based Permissions Required for Asynchronous Operations.

#[serde(rename = "DataAccessRoleArn")] pub data_access_role_arn: String, ///

Specifies the format and location of the input data for the job.

#[serde(rename = "InputDataConfig")] pub input_data_config: InputDataConfig, ///

The identifier of the job.

#[serde(rename = "JobName")] #[serde(skip_serializing_if = "Option::is_none")] pub job_name: Option, ///

An AWS Key Management Service key to encrypt your output files. If you do not specify a key, the files are written in plain text.

#[serde(rename = "KMSKey")] #[serde(skip_serializing_if = "Option::is_none")] pub kms_key: Option, ///

The language of the input documents. All documents must be in the same language.

#[serde(rename = "LanguageCode")] pub language_code: String, ///

Specifies where to send the output files.

#[serde(rename = "OutputDataConfig")] pub output_data_config: OutputDataConfig, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct StartICD10CMInferenceJobResponse { ///

The identifier generated for the job. To get the status of a job, use this identifier with the StartICD10CMInferenceJob operation.

#[serde(rename = "JobId")] #[serde(skip_serializing_if = "Option::is_none")] pub job_id: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct StartPHIDetectionJobRequest { ///

A unique identifier for the request. If you don't set the client request token, Amazon Comprehend Medical generates one.

#[serde(rename = "ClientRequestToken")] #[serde(skip_serializing_if = "Option::is_none")] pub client_request_token: Option, ///

The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that grants Amazon Comprehend Medical read access to your input data. For more information, see Role-Based Permissions Required for Asynchronous Operations.

#[serde(rename = "DataAccessRoleArn")] pub data_access_role_arn: String, ///

Specifies the format and location of the input data for the job.

#[serde(rename = "InputDataConfig")] pub input_data_config: InputDataConfig, ///

The identifier of the job.

#[serde(rename = "JobName")] #[serde(skip_serializing_if = "Option::is_none")] pub job_name: Option, ///

An AWS Key Management Service key to encrypt your output files. If you do not specify a key, the files are written in plain text.

#[serde(rename = "KMSKey")] #[serde(skip_serializing_if = "Option::is_none")] pub kms_key: Option, ///

The language of the input documents. All documents must be in the same language.

#[serde(rename = "LanguageCode")] pub language_code: String, ///

Specifies where to send the output files.

#[serde(rename = "OutputDataConfig")] pub output_data_config: OutputDataConfig, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct StartPHIDetectionJobResponse { ///

The identifier generated for the job. To get the status of a job, use this identifier with the DescribePHIDetectionJob operation.

#[serde(rename = "JobId")] #[serde(skip_serializing_if = "Option::is_none")] pub job_id: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct StartRxNormInferenceJobRequest { ///

A unique identifier for the request. If you don't set the client request token, Amazon Comprehend Medical generates one.

#[serde(rename = "ClientRequestToken")] #[serde(skip_serializing_if = "Option::is_none")] pub client_request_token: Option, ///

The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that grants Amazon Comprehend Medical read access to your input data. For more information, see Role-Based Permissions Required for Asynchronous Operations.

#[serde(rename = "DataAccessRoleArn")] pub data_access_role_arn: String, ///

Specifies the format and location of the input data for the job.

#[serde(rename = "InputDataConfig")] pub input_data_config: InputDataConfig, ///

The identifier of the job.

#[serde(rename = "JobName")] #[serde(skip_serializing_if = "Option::is_none")] pub job_name: Option, ///

An AWS Key Management Service key to encrypt your output files. If you do not specify a key, the files are written in plain text.

#[serde(rename = "KMSKey")] #[serde(skip_serializing_if = "Option::is_none")] pub kms_key: Option, ///

The language of the input documents. All documents must be in the same language.

#[serde(rename = "LanguageCode")] pub language_code: String, ///

Specifies where to send the output files.

#[serde(rename = "OutputDataConfig")] pub output_data_config: OutputDataConfig, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct StartRxNormInferenceJobResponse { ///

The identifier of the job.

#[serde(rename = "JobId")] #[serde(skip_serializing_if = "Option::is_none")] pub job_id: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct StopEntitiesDetectionV2JobRequest { ///

The identifier of the medical entities job to stop.

#[serde(rename = "JobId")] pub job_id: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct StopEntitiesDetectionV2JobResponse { ///

The identifier of the medical entities detection job that was stopped.

#[serde(rename = "JobId")] #[serde(skip_serializing_if = "Option::is_none")] pub job_id: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct StopICD10CMInferenceJobRequest { ///

The identifier of the job.

#[serde(rename = "JobId")] pub job_id: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct StopICD10CMInferenceJobResponse { ///

The identifier generated for the job. To get the status of job, use this identifier with the DescribeICD10CMInferenceJob operation.

#[serde(rename = "JobId")] #[serde(skip_serializing_if = "Option::is_none")] pub job_id: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct StopPHIDetectionJobRequest { ///

The identifier of the PHI detection job to stop.

#[serde(rename = "JobId")] pub job_id: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct StopPHIDetectionJobResponse { ///

The identifier of the PHI detection job that was stopped.

#[serde(rename = "JobId")] #[serde(skip_serializing_if = "Option::is_none")] pub job_id: Option, } #[derive(Clone, Debug, Default, PartialEq, Serialize)] #[cfg_attr(feature = "deserialize_structs", derive(Deserialize))] pub struct StopRxNormInferenceJobRequest { ///

The identifier of the job.

#[serde(rename = "JobId")] pub job_id: String, } #[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct StopRxNormInferenceJobResponse { ///

The identifier generated for the job. To get the status of job, use this identifier with the DescribeRxNormInferenceJob operation.

#[serde(rename = "JobId")] #[serde(skip_serializing_if = "Option::is_none")] pub job_id: Option, } ///

Provides contextual information about the extracted entity.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct Trait { ///

Provides a name or contextual description about the trait.

#[serde(rename = "Name")] #[serde(skip_serializing_if = "Option::is_none")] pub name: Option, ///

The level of confidence that Amazon Comprehend Medical has in the accuracy of this trait.

#[serde(rename = "Score")] #[serde(skip_serializing_if = "Option::is_none")] pub score: Option, } ///

An attribute that we extracted, but were unable to relate to an entity.

#[derive(Clone, Debug, Default, Deserialize, PartialEq)] #[cfg_attr(any(test, feature = "serialize_structs"), derive(Serialize))] pub struct UnmappedAttribute { ///

The specific attribute that has been extracted but not mapped to an entity.

#[serde(rename = "Attribute")] #[serde(skip_serializing_if = "Option::is_none")] pub attribute: Option, ///

The type of the attribute, could be one of the following values: "MEDICATION", "MEDICAL_CONDITION", "ANATOMY", "TEST_AND_TREATMENT_PROCEDURE" or "PROTECTED_HEALTH_INFORMATION".

#[serde(rename = "Type")] #[serde(skip_serializing_if = "Option::is_none")] pub type_: Option, } /// Errors returned by DescribeEntitiesDetectionV2Job #[derive(Debug, PartialEq)] pub enum DescribeEntitiesDetectionV2JobError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check the ARN and try your request again.

ResourceNotFound(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl DescribeEntitiesDetectionV2JobError { pub fn from_response( res: BufferedHttpResponse, ) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service( DescribeEntitiesDetectionV2JobError::InternalServer(err.msg), ) } "InvalidRequestException" => { return RusotoError::Service( DescribeEntitiesDetectionV2JobError::InvalidRequest(err.msg), ) } "ResourceNotFoundException" => { return RusotoError::Service( DescribeEntitiesDetectionV2JobError::ResourceNotFound(err.msg), ) } "TooManyRequestsException" => { return RusotoError::Service( DescribeEntitiesDetectionV2JobError::TooManyRequests(err.msg), ) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for DescribeEntitiesDetectionV2JobError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { DescribeEntitiesDetectionV2JobError::InternalServer(ref cause) => { write!(f, "{}", cause) } DescribeEntitiesDetectionV2JobError::InvalidRequest(ref cause) => { write!(f, "{}", cause) } DescribeEntitiesDetectionV2JobError::ResourceNotFound(ref cause) => { write!(f, "{}", cause) } DescribeEntitiesDetectionV2JobError::TooManyRequests(ref cause) => { write!(f, "{}", cause) } } } } impl Error for DescribeEntitiesDetectionV2JobError {} /// Errors returned by DescribeICD10CMInferenceJob #[derive(Debug, PartialEq)] pub enum DescribeICD10CMInferenceJobError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check the ARN and try your request again.

ResourceNotFound(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl DescribeICD10CMInferenceJobError { pub fn from_response( res: BufferedHttpResponse, ) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(DescribeICD10CMInferenceJobError::InternalServer( err.msg, )) } "InvalidRequestException" => { return RusotoError::Service(DescribeICD10CMInferenceJobError::InvalidRequest( err.msg, )) } "ResourceNotFoundException" => { return RusotoError::Service( DescribeICD10CMInferenceJobError::ResourceNotFound(err.msg), ) } "TooManyRequestsException" => { return RusotoError::Service(DescribeICD10CMInferenceJobError::TooManyRequests( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for DescribeICD10CMInferenceJobError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { DescribeICD10CMInferenceJobError::InternalServer(ref cause) => write!(f, "{}", cause), DescribeICD10CMInferenceJobError::InvalidRequest(ref cause) => write!(f, "{}", cause), DescribeICD10CMInferenceJobError::ResourceNotFound(ref cause) => write!(f, "{}", cause), DescribeICD10CMInferenceJobError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for DescribeICD10CMInferenceJobError {} /// Errors returned by DescribePHIDetectionJob #[derive(Debug, PartialEq)] pub enum DescribePHIDetectionJobError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check the ARN and try your request again.

ResourceNotFound(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl DescribePHIDetectionJobError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(DescribePHIDetectionJobError::InternalServer( err.msg, )) } "InvalidRequestException" => { return RusotoError::Service(DescribePHIDetectionJobError::InvalidRequest( err.msg, )) } "ResourceNotFoundException" => { return RusotoError::Service(DescribePHIDetectionJobError::ResourceNotFound( err.msg, )) } "TooManyRequestsException" => { return RusotoError::Service(DescribePHIDetectionJobError::TooManyRequests( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for DescribePHIDetectionJobError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { DescribePHIDetectionJobError::InternalServer(ref cause) => write!(f, "{}", cause), DescribePHIDetectionJobError::InvalidRequest(ref cause) => write!(f, "{}", cause), DescribePHIDetectionJobError::ResourceNotFound(ref cause) => write!(f, "{}", cause), DescribePHIDetectionJobError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for DescribePHIDetectionJobError {} /// Errors returned by DescribeRxNormInferenceJob #[derive(Debug, PartialEq)] pub enum DescribeRxNormInferenceJobError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check the ARN and try your request again.

ResourceNotFound(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl DescribeRxNormInferenceJobError { pub fn from_response( res: BufferedHttpResponse, ) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(DescribeRxNormInferenceJobError::InternalServer( err.msg, )) } "InvalidRequestException" => { return RusotoError::Service(DescribeRxNormInferenceJobError::InvalidRequest( err.msg, )) } "ResourceNotFoundException" => { return RusotoError::Service(DescribeRxNormInferenceJobError::ResourceNotFound( err.msg, )) } "TooManyRequestsException" => { return RusotoError::Service(DescribeRxNormInferenceJobError::TooManyRequests( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for DescribeRxNormInferenceJobError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { DescribeRxNormInferenceJobError::InternalServer(ref cause) => write!(f, "{}", cause), DescribeRxNormInferenceJobError::InvalidRequest(ref cause) => write!(f, "{}", cause), DescribeRxNormInferenceJobError::ResourceNotFound(ref cause) => write!(f, "{}", cause), DescribeRxNormInferenceJobError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for DescribeRxNormInferenceJobError {} /// Errors returned by DetectEntities #[derive(Debug, PartialEq)] pub enum DetectEntitiesError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The input text was not in valid UTF-8 character encoding. Check your text then retry your request.

InvalidEncoding(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The Amazon Comprehend Medical service is temporarily unavailable. Please wait and then retry your request.

ServiceUnavailable(String), ///

The size of the text you submitted exceeds the size limit. Reduce the size of the text or use a smaller document and then retry your request.

TextSizeLimitExceeded(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl DetectEntitiesError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(DetectEntitiesError::InternalServer(err.msg)) } "InvalidEncodingException" => { return RusotoError::Service(DetectEntitiesError::InvalidEncoding(err.msg)) } "InvalidRequestException" => { return RusotoError::Service(DetectEntitiesError::InvalidRequest(err.msg)) } "ServiceUnavailableException" => { return RusotoError::Service(DetectEntitiesError::ServiceUnavailable(err.msg)) } "TextSizeLimitExceededException" => { return RusotoError::Service(DetectEntitiesError::TextSizeLimitExceeded( err.msg, )) } "TooManyRequestsException" => { return RusotoError::Service(DetectEntitiesError::TooManyRequests(err.msg)) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for DetectEntitiesError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { DetectEntitiesError::InternalServer(ref cause) => write!(f, "{}", cause), DetectEntitiesError::InvalidEncoding(ref cause) => write!(f, "{}", cause), DetectEntitiesError::InvalidRequest(ref cause) => write!(f, "{}", cause), DetectEntitiesError::ServiceUnavailable(ref cause) => write!(f, "{}", cause), DetectEntitiesError::TextSizeLimitExceeded(ref cause) => write!(f, "{}", cause), DetectEntitiesError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for DetectEntitiesError {} /// Errors returned by DetectEntitiesV2 #[derive(Debug, PartialEq)] pub enum DetectEntitiesV2Error { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The input text was not in valid UTF-8 character encoding. Check your text then retry your request.

InvalidEncoding(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The Amazon Comprehend Medical service is temporarily unavailable. Please wait and then retry your request.

ServiceUnavailable(String), ///

The size of the text you submitted exceeds the size limit. Reduce the size of the text or use a smaller document and then retry your request.

TextSizeLimitExceeded(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl DetectEntitiesV2Error { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(DetectEntitiesV2Error::InternalServer(err.msg)) } "InvalidEncodingException" => { return RusotoError::Service(DetectEntitiesV2Error::InvalidEncoding(err.msg)) } "InvalidRequestException" => { return RusotoError::Service(DetectEntitiesV2Error::InvalidRequest(err.msg)) } "ServiceUnavailableException" => { return RusotoError::Service(DetectEntitiesV2Error::ServiceUnavailable(err.msg)) } "TextSizeLimitExceededException" => { return RusotoError::Service(DetectEntitiesV2Error::TextSizeLimitExceeded( err.msg, )) } "TooManyRequestsException" => { return RusotoError::Service(DetectEntitiesV2Error::TooManyRequests(err.msg)) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for DetectEntitiesV2Error { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { DetectEntitiesV2Error::InternalServer(ref cause) => write!(f, "{}", cause), DetectEntitiesV2Error::InvalidEncoding(ref cause) => write!(f, "{}", cause), DetectEntitiesV2Error::InvalidRequest(ref cause) => write!(f, "{}", cause), DetectEntitiesV2Error::ServiceUnavailable(ref cause) => write!(f, "{}", cause), DetectEntitiesV2Error::TextSizeLimitExceeded(ref cause) => write!(f, "{}", cause), DetectEntitiesV2Error::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for DetectEntitiesV2Error {} /// Errors returned by DetectPHI #[derive(Debug, PartialEq)] pub enum DetectPHIError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The input text was not in valid UTF-8 character encoding. Check your text then retry your request.

InvalidEncoding(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The Amazon Comprehend Medical service is temporarily unavailable. Please wait and then retry your request.

ServiceUnavailable(String), ///

The size of the text you submitted exceeds the size limit. Reduce the size of the text or use a smaller document and then retry your request.

TextSizeLimitExceeded(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl DetectPHIError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(DetectPHIError::InternalServer(err.msg)) } "InvalidEncodingException" => { return RusotoError::Service(DetectPHIError::InvalidEncoding(err.msg)) } "InvalidRequestException" => { return RusotoError::Service(DetectPHIError::InvalidRequest(err.msg)) } "ServiceUnavailableException" => { return RusotoError::Service(DetectPHIError::ServiceUnavailable(err.msg)) } "TextSizeLimitExceededException" => { return RusotoError::Service(DetectPHIError::TextSizeLimitExceeded(err.msg)) } "TooManyRequestsException" => { return RusotoError::Service(DetectPHIError::TooManyRequests(err.msg)) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for DetectPHIError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { DetectPHIError::InternalServer(ref cause) => write!(f, "{}", cause), DetectPHIError::InvalidEncoding(ref cause) => write!(f, "{}", cause), DetectPHIError::InvalidRequest(ref cause) => write!(f, "{}", cause), DetectPHIError::ServiceUnavailable(ref cause) => write!(f, "{}", cause), DetectPHIError::TextSizeLimitExceeded(ref cause) => write!(f, "{}", cause), DetectPHIError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for DetectPHIError {} /// Errors returned by InferICD10CM #[derive(Debug, PartialEq)] pub enum InferICD10CMError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The input text was not in valid UTF-8 character encoding. Check your text then retry your request.

InvalidEncoding(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The Amazon Comprehend Medical service is temporarily unavailable. Please wait and then retry your request.

ServiceUnavailable(String), ///

The size of the text you submitted exceeds the size limit. Reduce the size of the text or use a smaller document and then retry your request.

TextSizeLimitExceeded(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl InferICD10CMError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(InferICD10CMError::InternalServer(err.msg)) } "InvalidEncodingException" => { return RusotoError::Service(InferICD10CMError::InvalidEncoding(err.msg)) } "InvalidRequestException" => { return RusotoError::Service(InferICD10CMError::InvalidRequest(err.msg)) } "ServiceUnavailableException" => { return RusotoError::Service(InferICD10CMError::ServiceUnavailable(err.msg)) } "TextSizeLimitExceededException" => { return RusotoError::Service(InferICD10CMError::TextSizeLimitExceeded(err.msg)) } "TooManyRequestsException" => { return RusotoError::Service(InferICD10CMError::TooManyRequests(err.msg)) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for InferICD10CMError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { InferICD10CMError::InternalServer(ref cause) => write!(f, "{}", cause), InferICD10CMError::InvalidEncoding(ref cause) => write!(f, "{}", cause), InferICD10CMError::InvalidRequest(ref cause) => write!(f, "{}", cause), InferICD10CMError::ServiceUnavailable(ref cause) => write!(f, "{}", cause), InferICD10CMError::TextSizeLimitExceeded(ref cause) => write!(f, "{}", cause), InferICD10CMError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for InferICD10CMError {} /// Errors returned by InferRxNorm #[derive(Debug, PartialEq)] pub enum InferRxNormError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The input text was not in valid UTF-8 character encoding. Check your text then retry your request.

InvalidEncoding(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The Amazon Comprehend Medical service is temporarily unavailable. Please wait and then retry your request.

ServiceUnavailable(String), ///

The size of the text you submitted exceeds the size limit. Reduce the size of the text or use a smaller document and then retry your request.

TextSizeLimitExceeded(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl InferRxNormError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(InferRxNormError::InternalServer(err.msg)) } "InvalidEncodingException" => { return RusotoError::Service(InferRxNormError::InvalidEncoding(err.msg)) } "InvalidRequestException" => { return RusotoError::Service(InferRxNormError::InvalidRequest(err.msg)) } "ServiceUnavailableException" => { return RusotoError::Service(InferRxNormError::ServiceUnavailable(err.msg)) } "TextSizeLimitExceededException" => { return RusotoError::Service(InferRxNormError::TextSizeLimitExceeded(err.msg)) } "TooManyRequestsException" => { return RusotoError::Service(InferRxNormError::TooManyRequests(err.msg)) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for InferRxNormError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { InferRxNormError::InternalServer(ref cause) => write!(f, "{}", cause), InferRxNormError::InvalidEncoding(ref cause) => write!(f, "{}", cause), InferRxNormError::InvalidRequest(ref cause) => write!(f, "{}", cause), InferRxNormError::ServiceUnavailable(ref cause) => write!(f, "{}", cause), InferRxNormError::TextSizeLimitExceeded(ref cause) => write!(f, "{}", cause), InferRxNormError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for InferRxNormError {} /// Errors returned by ListEntitiesDetectionV2Jobs #[derive(Debug, PartialEq)] pub enum ListEntitiesDetectionV2JobsError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl ListEntitiesDetectionV2JobsError { pub fn from_response( res: BufferedHttpResponse, ) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(ListEntitiesDetectionV2JobsError::InternalServer( err.msg, )) } "InvalidRequestException" => { return RusotoError::Service(ListEntitiesDetectionV2JobsError::InvalidRequest( err.msg, )) } "TooManyRequestsException" => { return RusotoError::Service(ListEntitiesDetectionV2JobsError::TooManyRequests( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for ListEntitiesDetectionV2JobsError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { ListEntitiesDetectionV2JobsError::InternalServer(ref cause) => write!(f, "{}", cause), ListEntitiesDetectionV2JobsError::InvalidRequest(ref cause) => write!(f, "{}", cause), ListEntitiesDetectionV2JobsError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for ListEntitiesDetectionV2JobsError {} /// Errors returned by ListICD10CMInferenceJobs #[derive(Debug, PartialEq)] pub enum ListICD10CMInferenceJobsError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl ListICD10CMInferenceJobsError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(ListICD10CMInferenceJobsError::InternalServer( err.msg, )) } "InvalidRequestException" => { return RusotoError::Service(ListICD10CMInferenceJobsError::InvalidRequest( err.msg, )) } "TooManyRequestsException" => { return RusotoError::Service(ListICD10CMInferenceJobsError::TooManyRequests( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for ListICD10CMInferenceJobsError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { ListICD10CMInferenceJobsError::InternalServer(ref cause) => write!(f, "{}", cause), ListICD10CMInferenceJobsError::InvalidRequest(ref cause) => write!(f, "{}", cause), ListICD10CMInferenceJobsError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for ListICD10CMInferenceJobsError {} /// Errors returned by ListPHIDetectionJobs #[derive(Debug, PartialEq)] pub enum ListPHIDetectionJobsError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl ListPHIDetectionJobsError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(ListPHIDetectionJobsError::InternalServer(err.msg)) } "InvalidRequestException" => { return RusotoError::Service(ListPHIDetectionJobsError::InvalidRequest(err.msg)) } "TooManyRequestsException" => { return RusotoError::Service(ListPHIDetectionJobsError::TooManyRequests( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for ListPHIDetectionJobsError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { ListPHIDetectionJobsError::InternalServer(ref cause) => write!(f, "{}", cause), ListPHIDetectionJobsError::InvalidRequest(ref cause) => write!(f, "{}", cause), ListPHIDetectionJobsError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for ListPHIDetectionJobsError {} /// Errors returned by ListRxNormInferenceJobs #[derive(Debug, PartialEq)] pub enum ListRxNormInferenceJobsError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl ListRxNormInferenceJobsError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(ListRxNormInferenceJobsError::InternalServer( err.msg, )) } "InvalidRequestException" => { return RusotoError::Service(ListRxNormInferenceJobsError::InvalidRequest( err.msg, )) } "TooManyRequestsException" => { return RusotoError::Service(ListRxNormInferenceJobsError::TooManyRequests( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for ListRxNormInferenceJobsError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { ListRxNormInferenceJobsError::InternalServer(ref cause) => write!(f, "{}", cause), ListRxNormInferenceJobsError::InvalidRequest(ref cause) => write!(f, "{}", cause), ListRxNormInferenceJobsError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for ListRxNormInferenceJobsError {} /// Errors returned by StartEntitiesDetectionV2Job #[derive(Debug, PartialEq)] pub enum StartEntitiesDetectionV2JobError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check the ARN and try your request again.

ResourceNotFound(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl StartEntitiesDetectionV2JobError { pub fn from_response( res: BufferedHttpResponse, ) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(StartEntitiesDetectionV2JobError::InternalServer( err.msg, )) } "InvalidRequestException" => { return RusotoError::Service(StartEntitiesDetectionV2JobError::InvalidRequest( err.msg, )) } "ResourceNotFoundException" => { return RusotoError::Service( StartEntitiesDetectionV2JobError::ResourceNotFound(err.msg), ) } "TooManyRequestsException" => { return RusotoError::Service(StartEntitiesDetectionV2JobError::TooManyRequests( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for StartEntitiesDetectionV2JobError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { StartEntitiesDetectionV2JobError::InternalServer(ref cause) => write!(f, "{}", cause), StartEntitiesDetectionV2JobError::InvalidRequest(ref cause) => write!(f, "{}", cause), StartEntitiesDetectionV2JobError::ResourceNotFound(ref cause) => write!(f, "{}", cause), StartEntitiesDetectionV2JobError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for StartEntitiesDetectionV2JobError {} /// Errors returned by StartICD10CMInferenceJob #[derive(Debug, PartialEq)] pub enum StartICD10CMInferenceJobError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check the ARN and try your request again.

ResourceNotFound(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl StartICD10CMInferenceJobError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(StartICD10CMInferenceJobError::InternalServer( err.msg, )) } "InvalidRequestException" => { return RusotoError::Service(StartICD10CMInferenceJobError::InvalidRequest( err.msg, )) } "ResourceNotFoundException" => { return RusotoError::Service(StartICD10CMInferenceJobError::ResourceNotFound( err.msg, )) } "TooManyRequestsException" => { return RusotoError::Service(StartICD10CMInferenceJobError::TooManyRequests( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for StartICD10CMInferenceJobError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { StartICD10CMInferenceJobError::InternalServer(ref cause) => write!(f, "{}", cause), StartICD10CMInferenceJobError::InvalidRequest(ref cause) => write!(f, "{}", cause), StartICD10CMInferenceJobError::ResourceNotFound(ref cause) => write!(f, "{}", cause), StartICD10CMInferenceJobError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for StartICD10CMInferenceJobError {} /// Errors returned by StartPHIDetectionJob #[derive(Debug, PartialEq)] pub enum StartPHIDetectionJobError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check the ARN and try your request again.

ResourceNotFound(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl StartPHIDetectionJobError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(StartPHIDetectionJobError::InternalServer(err.msg)) } "InvalidRequestException" => { return RusotoError::Service(StartPHIDetectionJobError::InvalidRequest(err.msg)) } "ResourceNotFoundException" => { return RusotoError::Service(StartPHIDetectionJobError::ResourceNotFound( err.msg, )) } "TooManyRequestsException" => { return RusotoError::Service(StartPHIDetectionJobError::TooManyRequests( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for StartPHIDetectionJobError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { StartPHIDetectionJobError::InternalServer(ref cause) => write!(f, "{}", cause), StartPHIDetectionJobError::InvalidRequest(ref cause) => write!(f, "{}", cause), StartPHIDetectionJobError::ResourceNotFound(ref cause) => write!(f, "{}", cause), StartPHIDetectionJobError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for StartPHIDetectionJobError {} /// Errors returned by StartRxNormInferenceJob #[derive(Debug, PartialEq)] pub enum StartRxNormInferenceJobError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check the ARN and try your request again.

ResourceNotFound(String), ///

You have made too many requests within a short period of time. Wait for a short time and then try your request again. Contact customer support for more information about a service limit increase.

TooManyRequests(String), } impl StartRxNormInferenceJobError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(StartRxNormInferenceJobError::InternalServer( err.msg, )) } "InvalidRequestException" => { return RusotoError::Service(StartRxNormInferenceJobError::InvalidRequest( err.msg, )) } "ResourceNotFoundException" => { return RusotoError::Service(StartRxNormInferenceJobError::ResourceNotFound( err.msg, )) } "TooManyRequestsException" => { return RusotoError::Service(StartRxNormInferenceJobError::TooManyRequests( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for StartRxNormInferenceJobError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { StartRxNormInferenceJobError::InternalServer(ref cause) => write!(f, "{}", cause), StartRxNormInferenceJobError::InvalidRequest(ref cause) => write!(f, "{}", cause), StartRxNormInferenceJobError::ResourceNotFound(ref cause) => write!(f, "{}", cause), StartRxNormInferenceJobError::TooManyRequests(ref cause) => write!(f, "{}", cause), } } } impl Error for StartRxNormInferenceJobError {} /// Errors returned by StopEntitiesDetectionV2Job #[derive(Debug, PartialEq)] pub enum StopEntitiesDetectionV2JobError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check the ARN and try your request again.

ResourceNotFound(String), } impl StopEntitiesDetectionV2JobError { pub fn from_response( res: BufferedHttpResponse, ) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(StopEntitiesDetectionV2JobError::InternalServer( err.msg, )) } "InvalidRequestException" => { return RusotoError::Service(StopEntitiesDetectionV2JobError::InvalidRequest( err.msg, )) } "ResourceNotFoundException" => { return RusotoError::Service(StopEntitiesDetectionV2JobError::ResourceNotFound( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for StopEntitiesDetectionV2JobError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { StopEntitiesDetectionV2JobError::InternalServer(ref cause) => write!(f, "{}", cause), StopEntitiesDetectionV2JobError::InvalidRequest(ref cause) => write!(f, "{}", cause), StopEntitiesDetectionV2JobError::ResourceNotFound(ref cause) => write!(f, "{}", cause), } } } impl Error for StopEntitiesDetectionV2JobError {} /// Errors returned by StopICD10CMInferenceJob #[derive(Debug, PartialEq)] pub enum StopICD10CMInferenceJobError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check the ARN and try your request again.

ResourceNotFound(String), } impl StopICD10CMInferenceJobError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(StopICD10CMInferenceJobError::InternalServer( err.msg, )) } "InvalidRequestException" => { return RusotoError::Service(StopICD10CMInferenceJobError::InvalidRequest( err.msg, )) } "ResourceNotFoundException" => { return RusotoError::Service(StopICD10CMInferenceJobError::ResourceNotFound( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for StopICD10CMInferenceJobError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { StopICD10CMInferenceJobError::InternalServer(ref cause) => write!(f, "{}", cause), StopICD10CMInferenceJobError::InvalidRequest(ref cause) => write!(f, "{}", cause), StopICD10CMInferenceJobError::ResourceNotFound(ref cause) => write!(f, "{}", cause), } } } impl Error for StopICD10CMInferenceJobError {} /// Errors returned by StopPHIDetectionJob #[derive(Debug, PartialEq)] pub enum StopPHIDetectionJobError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check the ARN and try your request again.

ResourceNotFound(String), } impl StopPHIDetectionJobError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(StopPHIDetectionJobError::InternalServer(err.msg)) } "InvalidRequestException" => { return RusotoError::Service(StopPHIDetectionJobError::InvalidRequest(err.msg)) } "ResourceNotFoundException" => { return RusotoError::Service(StopPHIDetectionJobError::ResourceNotFound( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for StopPHIDetectionJobError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { StopPHIDetectionJobError::InternalServer(ref cause) => write!(f, "{}", cause), StopPHIDetectionJobError::InvalidRequest(ref cause) => write!(f, "{}", cause), StopPHIDetectionJobError::ResourceNotFound(ref cause) => write!(f, "{}", cause), } } } impl Error for StopPHIDetectionJobError {} /// Errors returned by StopRxNormInferenceJob #[derive(Debug, PartialEq)] pub enum StopRxNormInferenceJobError { ///

An internal server error occurred. Retry your request.

InternalServer(String), ///

The request that you made is invalid. Check your request to determine why it's invalid and then retry the request.

InvalidRequest(String), ///

The resource identified by the specified Amazon Resource Name (ARN) was not found. Check the ARN and try your request again.

ResourceNotFound(String), } impl StopRxNormInferenceJobError { pub fn from_response(res: BufferedHttpResponse) -> RusotoError { if let Some(err) = proto::json::Error::parse(&res) { match err.typ.as_str() { "InternalServerException" => { return RusotoError::Service(StopRxNormInferenceJobError::InternalServer( err.msg, )) } "InvalidRequestException" => { return RusotoError::Service(StopRxNormInferenceJobError::InvalidRequest( err.msg, )) } "ResourceNotFoundException" => { return RusotoError::Service(StopRxNormInferenceJobError::ResourceNotFound( err.msg, )) } "ValidationException" => return RusotoError::Validation(err.msg), _ => {} } } RusotoError::Unknown(res) } } impl fmt::Display for StopRxNormInferenceJobError { #[allow(unused_variables)] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match *self { StopRxNormInferenceJobError::InternalServer(ref cause) => write!(f, "{}", cause), StopRxNormInferenceJobError::InvalidRequest(ref cause) => write!(f, "{}", cause), StopRxNormInferenceJobError::ResourceNotFound(ref cause) => write!(f, "{}", cause), } } } impl Error for StopRxNormInferenceJobError {} /// Trait representing the capabilities of the ComprehendMedical API. ComprehendMedical clients implement this trait. #[async_trait] pub trait ComprehendMedical { ///

Gets the properties associated with a medical entities detection job. Use this operation to get the status of a detection job.

async fn describe_entities_detection_v2_job( &self, input: DescribeEntitiesDetectionV2JobRequest, ) -> Result< DescribeEntitiesDetectionV2JobResponse, RusotoError, >; ///

Gets the properties associated with an InferICD10CM job. Use this operation to get the status of an inference job.

async fn describe_icd10cm_inference_job( &self, input: DescribeICD10CMInferenceJobRequest, ) -> Result>; ///

Gets the properties associated with a protected health information (PHI) detection job. Use this operation to get the status of a detection job.

async fn describe_phi_detection_job( &self, input: DescribePHIDetectionJobRequest, ) -> Result>; ///

Gets the properties associated with an InferRxNorm job. Use this operation to get the status of an inference job.

async fn describe_rx_norm_inference_job( &self, input: DescribeRxNormInferenceJobRequest, ) -> Result>; ///

The DetectEntities operation is deprecated. You should use the DetectEntitiesV2 operation instead.

Inspects the clinical text for a variety of medical entities and returns specific information about them such as entity category, location, and confidence score on that information .

async fn detect_entities( &self, input: DetectEntitiesRequest, ) -> Result>; ///

Inspects the clinical text for a variety of medical entities and returns specific information about them such as entity category, location, and confidence score on that information. Amazon Comprehend Medical only detects medical entities in English language texts.

The DetectEntitiesV2 operation replaces the DetectEntities operation. This new action uses a different model for determining the entities in your medical text and changes the way that some entities are returned in the output. You should use the DetectEntitiesV2 operation in all new applications.

The DetectEntitiesV2 operation returns the Acuity and Direction entities as attributes instead of types.

async fn detect_entities_v2( &self, input: DetectEntitiesV2Request, ) -> Result>; ///

Inspects the clinical text for protected health information (PHI) entities and returns the entity category, location, and confidence score for each entity. Amazon Comprehend Medical only detects entities in English language texts.

async fn detect_phi( &self, input: DetectPHIRequest, ) -> Result>; ///

InferICD10CM detects medical conditions as entities listed in a patient record and links those entities to normalized concept identifiers in the ICD-10-CM knowledge base from the Centers for Disease Control. Amazon Comprehend Medical only detects medical entities in English language texts.

async fn infer_icd10cm( &self, input: InferICD10CMRequest, ) -> Result>; ///

InferRxNorm detects medications as entities listed in a patient record and links to the normalized concept identifiers in the RxNorm database from the National Library of Medicine. Amazon Comprehend Medical only detects medical entities in English language texts.

async fn infer_rx_norm( &self, input: InferRxNormRequest, ) -> Result>; ///

Gets a list of medical entity detection jobs that you have submitted.

async fn list_entities_detection_v2_jobs( &self, input: ListEntitiesDetectionV2JobsRequest, ) -> Result>; ///

Gets a list of InferICD10CM jobs that you have submitted.

async fn list_icd10cm_inference_jobs( &self, input: ListICD10CMInferenceJobsRequest, ) -> Result>; ///

Gets a list of protected health information (PHI) detection jobs that you have submitted.

async fn list_phi_detection_jobs( &self, input: ListPHIDetectionJobsRequest, ) -> Result>; ///

Gets a list of InferRxNorm jobs that you have submitted.

async fn list_rx_norm_inference_jobs( &self, input: ListRxNormInferenceJobsRequest, ) -> Result>; ///

Starts an asynchronous medical entity detection job for a collection of documents. Use the DescribeEntitiesDetectionV2Job operation to track the status of a job.

async fn start_entities_detection_v2_job( &self, input: StartEntitiesDetectionV2JobRequest, ) -> Result>; ///

Starts an asynchronous job to detect medical conditions and link them to the ICD-10-CM ontology. Use the DescribeICD10CMInferenceJob operation to track the status of a job.

async fn start_icd10cm_inference_job( &self, input: StartICD10CMInferenceJobRequest, ) -> Result>; ///

Starts an asynchronous job to detect protected health information (PHI). Use the DescribePHIDetectionJob operation to track the status of a job.

async fn start_phi_detection_job( &self, input: StartPHIDetectionJobRequest, ) -> Result>; ///

Starts an asynchronous job to detect medication entities and link them to the RxNorm ontology. Use the DescribeRxNormInferenceJob operation to track the status of a job.

async fn start_rx_norm_inference_job( &self, input: StartRxNormInferenceJobRequest, ) -> Result>; ///

Stops a medical entities detection job in progress.

async fn stop_entities_detection_v2_job( &self, input: StopEntitiesDetectionV2JobRequest, ) -> Result>; ///

Stops an InferICD10CM inference job in progress.

async fn stop_icd10cm_inference_job( &self, input: StopICD10CMInferenceJobRequest, ) -> Result>; ///

Stops a protected health information (PHI) detection job in progress.

async fn stop_phi_detection_job( &self, input: StopPHIDetectionJobRequest, ) -> Result>; ///

Stops an InferRxNorm inference job in progress.

async fn stop_rx_norm_inference_job( &self, input: StopRxNormInferenceJobRequest, ) -> Result>; } /// A client for the ComprehendMedical API. #[derive(Clone)] pub struct ComprehendMedicalClient { client: Client, region: region::Region, } impl ComprehendMedicalClient { /// Creates a client backed by the default tokio event loop. /// /// The client will use the default credentials provider and tls client. pub fn new(region: region::Region) -> ComprehendMedicalClient { ComprehendMedicalClient { client: Client::shared(), region, } } pub fn new_with( request_dispatcher: D, credentials_provider: P, region: region::Region, ) -> ComprehendMedicalClient where P: ProvideAwsCredentials + Send + Sync + 'static, D: DispatchSignedRequest + Send + Sync + 'static, { ComprehendMedicalClient { client: Client::new_with(credentials_provider, request_dispatcher), region, } } pub fn new_with_client(client: Client, region: region::Region) -> ComprehendMedicalClient { ComprehendMedicalClient { client, region } } } #[async_trait] impl ComprehendMedical for ComprehendMedicalClient { ///

Gets the properties associated with a medical entities detection job. Use this operation to get the status of a detection job.

async fn describe_entities_detection_v2_job( &self, input: DescribeEntitiesDetectionV2JobRequest, ) -> Result< DescribeEntitiesDetectionV2JobResponse, RusotoError, > { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.DescribeEntitiesDetectionV2Job", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, DescribeEntitiesDetectionV2JobError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Gets the properties associated with an InferICD10CM job. Use this operation to get the status of an inference job.

async fn describe_icd10cm_inference_job( &self, input: DescribeICD10CMInferenceJobRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.DescribeICD10CMInferenceJob", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, DescribeICD10CMInferenceJobError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Gets the properties associated with a protected health information (PHI) detection job. Use this operation to get the status of a detection job.

async fn describe_phi_detection_job( &self, input: DescribePHIDetectionJobRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.DescribePHIDetectionJob", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, DescribePHIDetectionJobError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Gets the properties associated with an InferRxNorm job. Use this operation to get the status of an inference job.

async fn describe_rx_norm_inference_job( &self, input: DescribeRxNormInferenceJobRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.DescribeRxNormInferenceJob", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, DescribeRxNormInferenceJobError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

The DetectEntities operation is deprecated. You should use the DetectEntitiesV2 operation instead.

Inspects the clinical text for a variety of medical entities and returns specific information about them such as entity category, location, and confidence score on that information .

async fn detect_entities( &self, input: DetectEntitiesRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header("x-amz-target", "ComprehendMedical_20181030.DetectEntities"); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, DetectEntitiesError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response).deserialize::() } ///

Inspects the clinical text for a variety of medical entities and returns specific information about them such as entity category, location, and confidence score on that information. Amazon Comprehend Medical only detects medical entities in English language texts.

The DetectEntitiesV2 operation replaces the DetectEntities operation. This new action uses a different model for determining the entities in your medical text and changes the way that some entities are returned in the output. You should use the DetectEntitiesV2 operation in all new applications.

The DetectEntitiesV2 operation returns the Acuity and Direction entities as attributes instead of types.

async fn detect_entities_v2( &self, input: DetectEntitiesV2Request, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.DetectEntitiesV2", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, DetectEntitiesV2Error::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response).deserialize::() } ///

Inspects the clinical text for protected health information (PHI) entities and returns the entity category, location, and confidence score for each entity. Amazon Comprehend Medical only detects entities in English language texts.

async fn detect_phi( &self, input: DetectPHIRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header("x-amz-target", "ComprehendMedical_20181030.DetectPHI"); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, DetectPHIError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response).deserialize::() } ///

InferICD10CM detects medical conditions as entities listed in a patient record and links those entities to normalized concept identifiers in the ICD-10-CM knowledge base from the Centers for Disease Control. Amazon Comprehend Medical only detects medical entities in English language texts.

async fn infer_icd10cm( &self, input: InferICD10CMRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header("x-amz-target", "ComprehendMedical_20181030.InferICD10CM"); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, InferICD10CMError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response).deserialize::() } ///

InferRxNorm detects medications as entities listed in a patient record and links to the normalized concept identifiers in the RxNorm database from the National Library of Medicine. Amazon Comprehend Medical only detects medical entities in English language texts.

async fn infer_rx_norm( &self, input: InferRxNormRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header("x-amz-target", "ComprehendMedical_20181030.InferRxNorm"); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, InferRxNormError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response).deserialize::() } ///

Gets a list of medical entity detection jobs that you have submitted.

async fn list_entities_detection_v2_jobs( &self, input: ListEntitiesDetectionV2JobsRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.ListEntitiesDetectionV2Jobs", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, ListEntitiesDetectionV2JobsError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Gets a list of InferICD10CM jobs that you have submitted.

async fn list_icd10cm_inference_jobs( &self, input: ListICD10CMInferenceJobsRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.ListICD10CMInferenceJobs", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, ListICD10CMInferenceJobsError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Gets a list of protected health information (PHI) detection jobs that you have submitted.

async fn list_phi_detection_jobs( &self, input: ListPHIDetectionJobsRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.ListPHIDetectionJobs", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, ListPHIDetectionJobsError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Gets a list of InferRxNorm jobs that you have submitted.

async fn list_rx_norm_inference_jobs( &self, input: ListRxNormInferenceJobsRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.ListRxNormInferenceJobs", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, ListRxNormInferenceJobsError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Starts an asynchronous medical entity detection job for a collection of documents. Use the DescribeEntitiesDetectionV2Job operation to track the status of a job.

async fn start_entities_detection_v2_job( &self, input: StartEntitiesDetectionV2JobRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.StartEntitiesDetectionV2Job", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, StartEntitiesDetectionV2JobError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Starts an asynchronous job to detect medical conditions and link them to the ICD-10-CM ontology. Use the DescribeICD10CMInferenceJob operation to track the status of a job.

async fn start_icd10cm_inference_job( &self, input: StartICD10CMInferenceJobRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.StartICD10CMInferenceJob", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, StartICD10CMInferenceJobError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Starts an asynchronous job to detect protected health information (PHI). Use the DescribePHIDetectionJob operation to track the status of a job.

async fn start_phi_detection_job( &self, input: StartPHIDetectionJobRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.StartPHIDetectionJob", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, StartPHIDetectionJobError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Starts an asynchronous job to detect medication entities and link them to the RxNorm ontology. Use the DescribeRxNormInferenceJob operation to track the status of a job.

async fn start_rx_norm_inference_job( &self, input: StartRxNormInferenceJobRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.StartRxNormInferenceJob", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, StartRxNormInferenceJobError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Stops a medical entities detection job in progress.

async fn stop_entities_detection_v2_job( &self, input: StopEntitiesDetectionV2JobRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.StopEntitiesDetectionV2Job", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, StopEntitiesDetectionV2JobError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Stops an InferICD10CM inference job in progress.

async fn stop_icd10cm_inference_job( &self, input: StopICD10CMInferenceJobRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.StopICD10CMInferenceJob", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, StopICD10CMInferenceJobError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } ///

Stops a protected health information (PHI) detection job in progress.

async fn stop_phi_detection_job( &self, input: StopPHIDetectionJobRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.StopPHIDetectionJob", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, StopPHIDetectionJobError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response).deserialize::() } ///

Stops an InferRxNorm inference job in progress.

async fn stop_rx_norm_inference_job( &self, input: StopRxNormInferenceJobRequest, ) -> Result> { let mut request = self.new_signed_request("POST", "/"); request.add_header( "x-amz-target", "ComprehendMedical_20181030.StopRxNormInferenceJob", ); let encoded = serde_json::to_string(&input).unwrap(); request.set_payload(Some(encoded)); let response = self .sign_and_dispatch(request, StopRxNormInferenceJobError::from_response) .await?; let mut response = response; let response = response.buffer().await.map_err(RusotoError::HttpDispatch)?; proto::json::ResponsePayload::new(&response) .deserialize::() } }