@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Amazon Translate
@version 2017-07-01
@auth AWS SigV4
@endpoints 19
@toc root(19)

@endpoint POST /
@required {Name: str, ParallelDataConfig: ParallelDataConfig, ClientToken: str}
@optional {Description: str, EncryptionKey: EncryptionKey, Tags: [Tag]}
@returns(200) {Name: str?, Status: str?}

@endpoint POST /
@required {Name: str}
@returns(200) {Name: str?, Status: str?}

@endpoint POST /
@required {Name: str}

@endpoint POST /
@required {JobId: str}
@returns(200) {TextTranslationJobProperties: TextTranslationJobProperties?{JobId: str?, JobName: str?, JobStatus: str?, JobDetails: JobDetails?{TranslatedDocumentsCount: int?, DocumentsWithErrorsCount: int?, InputDocumentsCount: int?}, SourceLanguageCode: str?, TargetLanguageCodes: [str]?, TerminologyNames: [str]?, ParallelDataNames: [str]?, Message: str?, SubmittedTime: str(timestamp)?, EndTime: str(timestamp)?, InputDataConfig: InputDataConfig?{S3Uri: str, ContentType: str}, OutputDataConfig: OutputDataConfig?{S3Uri: str, EncryptionKey: EncryptionKey?{Type: str, Id: str}}, DataAccessRoleArn: str?, Settings: TranslationSettings?{Formality: str?, Profanity: str?, Brevity: str?}}}

@endpoint POST /
@required {Name: str}
@returns(200) {ParallelDataProperties: ParallelDataProperties?{Name: str?, Arn: str?, Description: str?, Status: str?, SourceLanguageCode: str?, TargetLanguageCodes: [str]?, ParallelDataConfig: ParallelDataConfig?{S3Uri: str?, Format: str?}, Message: str?, ImportedDataSize: int(i64)?, ImportedRecordCount: int(i64)?, FailedRecordCount: int(i64)?, SkippedRecordCount: int(i64)?, EncryptionKey: EncryptionKey?{Type: str, Id: str}, CreatedAt: str(timestamp)?, LastUpdatedAt: str(timestamp)?, LatestUpdateAttemptStatus: str?, LatestUpdateAttemptAt: str(timestamp)?}, DataLocation: ParallelDataDataLocation?{RepositoryType: str, Location: str}, AuxiliaryDataLocation: ParallelDataDataLocation?{RepositoryType: str, Location: str}, LatestUpdateAttemptAuxiliaryDataLocation: ParallelDataDataLocation?{RepositoryType: str, Location: str}}

@endpoint POST /
@required {Name: str}
@optional {TerminologyDataFormat: str}
@returns(200) {TerminologyProperties: TerminologyProperties?{Name: str?, Description: str?, Arn: str?, SourceLanguageCode: str?, TargetLanguageCodes: [str]?, EncryptionKey: EncryptionKey?{Type: str, Id: str}, SizeBytes: int?, TermCount: int?, CreatedAt: str(timestamp)?, LastUpdatedAt: str(timestamp)?, Directionality: str?, Message: str?, SkippedTermCount: int?, Format: str?}, TerminologyDataLocation: TerminologyDataLocation?{RepositoryType: str, Location: str}, AuxiliaryDataLocation: TerminologyDataLocation?{RepositoryType: str, Location: str}}

@endpoint POST /
@required {Name: str, MergeStrategy: str, TerminologyData: TerminologyData}
@optional {Description: str, EncryptionKey: EncryptionKey, Tags: [Tag]}
@returns(200) {TerminologyProperties: TerminologyProperties?{Name: str?, Description: str?, Arn: str?, SourceLanguageCode: str?, TargetLanguageCodes: [str]?, EncryptionKey: EncryptionKey?{Type: str, Id: str}, SizeBytes: int?, TermCount: int?, CreatedAt: str(timestamp)?, LastUpdatedAt: str(timestamp)?, Directionality: str?, Message: str?, SkippedTermCount: int?, Format: str?}, AuxiliaryDataLocation: TerminologyDataLocation?{RepositoryType: str, Location: str}}

@endpoint POST /
@optional {DisplayLanguageCode: str, NextToken: str, MaxResults: int}
@returns(200) {Languages: [Language]?, DisplayLanguageCode: str?, NextToken: str?}

@endpoint POST /
@optional {NextToken: str, MaxResults: int}
@returns(200) {ParallelDataPropertiesList: [ParallelDataProperties]?, NextToken: str?}

@endpoint POST /
@required {ResourceArn: str}
@returns(200) {Tags: [Tag]?}

@endpoint POST /
@optional {NextToken: str, MaxResults: int}
@returns(200) {TerminologyPropertiesList: [TerminologyProperties]?, NextToken: str?}

@endpoint POST /
@optional {Filter: TextTranslationJobFilter, NextToken: str, MaxResults: int}
@returns(200) {TextTranslationJobPropertiesList: [TextTranslationJobProperties]?, NextToken: str?}

@endpoint POST /
@required {InputDataConfig: InputDataConfig, OutputDataConfig: OutputDataConfig, DataAccessRoleArn: str, SourceLanguageCode: str, TargetLanguageCodes: [str], ClientToken: str}
@optional {JobName: str, TerminologyNames: [str], ParallelDataNames: [str], Settings: TranslationSettings}
@returns(200) {JobId: str?, JobStatus: str?}

@endpoint POST /
@required {JobId: str}
@returns(200) {JobId: str?, JobStatus: str?}

@endpoint POST /
@required {ResourceArn: str, Tags: [Tag]}

@endpoint POST /
@required {Document: Document, SourceLanguageCode: str, TargetLanguageCode: str}
@optional {TerminologyNames: [str], Settings: TranslationSettings}
@returns(200) {TranslatedDocument: TranslatedDocument{Content: bytes}, SourceLanguageCode: str, TargetLanguageCode: str, AppliedTerminologies: [AppliedTerminology]?, AppliedSettings: TranslationSettings?{Formality: str?, Profanity: str?, Brevity: str?}}

@endpoint POST /
@required {Text: str, SourceLanguageCode: str, TargetLanguageCode: str}
@optional {TerminologyNames: [str], Settings: TranslationSettings}
@returns(200) {TranslatedText: str, SourceLanguageCode: str, TargetLanguageCode: str, AppliedTerminologies: [AppliedTerminology]?, AppliedSettings: TranslationSettings?{Formality: str?, Profanity: str?, Brevity: str?}}

@endpoint POST /
@required {ResourceArn: str, TagKeys: [str]}

@endpoint POST /
@required {Name: str, ParallelDataConfig: ParallelDataConfig, ClientToken: str}
@optional {Description: str}
@returns(200) {Name: str?, Status: str?, LatestUpdateAttemptStatus: str?, LatestUpdateAttemptAt: str(timestamp)?}

@end
