Amazon Translate Batch Translation API

The Batch Translation API from Amazon Translate — 2 operation(s) for batch translation.

Business capability
Language & Document Understanding AE-110.40

Operations 2

POST /#ListTextTranslationJobs List Text Translation Jobs #
POST /#StartTextTranslationJob Start Text Translation Job #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-translate:amazon-translate-batch-translation-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

amazon-translate-batch-translation-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Amazon Translate Batch Translation API
  version: '2017-07-01'
  description: Generated from AWS's published Smithy model for Amazon Translate. 2 operation(s).
  contact:
    name: Amazon Web Services
    url: https://aws.amazon.com/contact-us/
  license:
    name: Apache 2.0
    identifier: Apache-2.0
    url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://translate.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
paths:
  /#ListTextTranslationJobs:
    post:
      operationId: ListTextTranslationJobs
      summary: List Text Translation Jobs
      description: Gets a list of the batch translation jobs that you have submitted.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ListTextTranslationJobsResponse'
        '500':
          description: InternalServerException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InternalServerException'
        '400':
          description: InvalidFilterException; InvalidRequestException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InvalidFilterException'
        '429':
          description: TooManyRequestsException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/TooManyRequestsException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AWSShineFrontendService_20170701.ListTextTranslationJobs
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/ListTextTranslationJobsRequest'
      tags:
      - Batch Translation
  /#StartTextTranslationJob:
    post:
      operationId: StartTextTranslationJob
      summary: Start Text Translation Job
      description: Starts an asynchronous batch translation job. Use batch translation jobs to translate large volumes of
        text across multiple documents at once. For batch translation, you can input documents with different source languages
        (specify auto as the source language). You can specify one or more target languages. Batch translation translates
        each input document into each of the target languages. For more information, see Asynchronous batch processing. Batch
        translation jobs can be described with the DescribeTextTranslationJob operation, listed with the ListTextTranslationJobs
        operation, and stopped with the StopTextTranslationJob operation.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/StartTextTranslationJobResponse'
        '500':
          description: InternalServerException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InternalServerException'
        '400':
          description: InvalidParameterValueException; InvalidRequestException; UnsupportedLanguagePairException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InvalidParameterValueException'
        '404':
          description: ResourceNotFoundException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '429':
          description: TooManyRequestsException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/TooManyRequestsException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AWSShineFrontendService_20170701.StartTextTranslationJob
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/StartTextTranslationJobRequest'
      tags:
      - Batch Translation
components:
  securitySchemes:
    sigv4:
      type: apiKey
      in: header
      name: Authorization
      description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical
        request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
      x-aws-sigv4:
        signingName: translate
  schemas:
    EncryptionKey:
      type: object
      properties:
        Type:
          type: string
          enum:
          - KMS
          description: The type of encryption key used by Amazon Translate to encrypt this object.
        Id:
          type: string
          description: The Amazon Resource Name (ARN) of the encryption key being used to encrypt this object.
      required:
      - Type
      - Id
    InputDataConfig:
      type: object
      properties:
        S3Uri:
          type: string
          description: The URI of the AWS S3 folder that contains the input files. Amazon Translate translates all the files
            in the folder and all its sub-folders. The folder must be in the same Region as the API endpoint you are calling.
        ContentType:
          type: string
          description: 'Describes the format of the data that you submit to Amazon Translate as input. You can specify one
            of the following multipurpose internet mail extension (MIME) types: text/html: The input data consists of one
            or more HTML files. Amazon Translate translates only the text that resides in the html element in each file. text/plain:
            The input data consists of one or more unformatted text files. Amazon Translate translates every character in
            this type of input. application/vnd.openxmlformats-officedocument.wordprocessingml.document: The input data consists
            of one or more Word documents (.docx). appl'
      required:
      - S3Uri
      - ContentType
    InternalServerException:
      type: object
      properties:
        Message:
          type: string
    InvalidFilterException:
      type: object
      properties:
        Message:
          type: string
    InvalidParameterValueException:
      type: object
      properties:
        Message:
          type: string
    JobDetails:
      type: object
      properties:
        TranslatedDocumentsCount:
          type: integer
          description: The number of documents successfully processed during a translation job.
        DocumentsWithErrorsCount:
          type: integer
          description: The number of documents that could not be processed during a translation job.
        InputDocumentsCount:
          type: integer
          description: The number of documents used as input in a translation job.
    ListTextTranslationJobsRequest:
      type: object
      properties:
        Filter:
          $ref: '#/components/schemas/TextTranslationJobFilter'
        NextToken:
          type: string
          description: The token to request the next page of results.
        MaxResults:
          type: integer
          description: The maximum number of results to return in each page. The default value is 100.
    ListTextTranslationJobsResponse:
      type: object
      properties:
        TextTranslationJobPropertiesList:
          type: array
          items:
            $ref: '#/components/schemas/TextTranslationJobProperties'
          description: A list containing the properties of each job that is returned.
        NextToken:
          type: string
          description: The token to use to retrieve the next page of results. This value is null when there are no more results
            to return.
    OutputDataConfig:
      type: object
      properties:
        S3Uri:
          type: string
          description: The URI of the S3 folder that contains a translation job's output file. The folder must be in the same
            Region as the API endpoint that you are calling.
        EncryptionKey:
          $ref: '#/components/schemas/EncryptionKey'
      required:
      - S3Uri
    ResourceNotFoundException:
      type: object
      properties:
        Message:
          type: string
    StartTextTranslationJobRequest:
      type: object
      properties:
        JobName:
          type: string
          description: The name of the batch translation job to be performed.
        InputDataConfig:
          $ref: '#/components/schemas/InputDataConfig'
        OutputDataConfig:
          $ref: '#/components/schemas/OutputDataConfig'
        DataAccessRoleArn:
          type: string
          description: The Amazon Resource Name (ARN) of an AWS Identity Access and Management (IAM) role that grants Amazon
            Translate read access to your input data. For more information, see Identity and access management .
        SourceLanguageCode:
          type: string
          description: The language code of the input language. Specify the language if all input documents share the same
            language. If you don't know the language of the source files, or your input documents contains different source
            languages, select auto. Amazon Translate auto detects the source language for each input document. For a list
            of supported language codes, see Supported languages.
        TargetLanguageCodes:
          type: array
          items:
            type: string
          description: The target languages of the translation job. Enter up to 10 language codes. Each input file is translated
            into each target language. Each language code is 2 or 5 characters long. For a list of language codes, see Supported
            languages.
        TerminologyNames:
          type: array
          items:
            type: string
          description: The name of a custom terminology resource to add to the translation job. This resource lists examples
            source terms and the desired translation for each term. This parameter accepts only one custom terminology resource.
            If you specify multiple target languages for the job, translate uses the designated terminology for each requested
            target language that has an entry for the source term in the terminology file. For a list of available custom
            terminology resources, use the ListTerminologies operation. For more information, see Custom terminology.
        ParallelDataNames:
          type: array
          items:
            type: string
          description: The name of a parallel data resource to add to the translation job. This resource consists of examples
            that show how you want segments of text to be translated. If you specify multiple target languages for the job,
            the parallel data file must include translations for all the target languages. When you add parallel data to a
            translation job, you create an Active Custom Translation job. This parameter accepts only one parallel data resource.
            Active Custom Translation jobs are priced at a higher rate than other jobs that don't use parallel data. For more
            information, see Amazon Translate pricing.
        ClientToken:
          type: string
          description: A unique identifier for the request. This token is generated for you when using the Amazon Translate
            SDK.
        Settings:
          $ref: '#/components/schemas/TranslationSettings'
      required:
      - InputDataConfig
      - OutputDataConfig
      - DataAccessRoleArn
      - SourceLanguageCode
      - TargetLanguageCodes
      - ClientToken
    StartTextTranslationJobResponse:
      type: object
      properties:
        JobId:
          type: string
          description: The identifier generated for the job. To get the status of a job, use this ID with the DescribeTextTranslationJob
            operation.
        JobStatus:
          type: string
          enum:
          - SUBMITTED
          - IN_PROGRESS
          - COMPLETED
          - COMPLETED_WITH_ERROR
          - FAILED
          - STOP_REQUESTED
          - STOPPED
          description: 'The status of the job. Possible values include: SUBMITTED - The job has been received and is queued
            for processing. IN_PROGRESS - Amazon Translate is processing the job. COMPLETED - The job was successfully completed
            and the output is available. COMPLETED_WITH_ERROR - The job was completed with errors. The errors can be analyzed
            in the job''s output. FAILED - The job did not complete. To get details, use the DescribeTextTranslationJob operation.
            STOP_REQUESTED - The user who started the job has requested that it be stopped. STOPPED - The job has been stopped.'
    TextTranslationJobFilter:
      type: object
      properties:
        JobName:
          type: string
          description: Filters the list of jobs by name.
        JobStatus:
          type: string
          enum:
          - SUBMITTED
          - IN_PROGRESS
          - COMPLETED
          - COMPLETED_WITH_ERROR
          - FAILED
          - STOP_REQUESTED
          - STOPPED
          description: Filters the list of jobs based by job status.
        SubmittedBeforeTime:
          type: string
          format: date-time
          description: Filters the list of jobs based on the time that the job was submitted for processing and returns only
            the jobs submitted before the specified time. Jobs are returned in ascending order, oldest to newest.
        SubmittedAfterTime:
          type: string
          format: date-time
          description: Filters the list of jobs based on the time that the job was submitted for processing and returns only
            the jobs submitted after the specified time. Jobs are returned in descending order, newest to oldest.
    TextTranslationJobProperties:
      type: object
      properties:
        JobId:
          type: string
          description: The ID of the translation job.
        JobName:
          type: string
          description: The user-defined name of the translation job.
        JobStatus:
          type: string
          enum:
          - SUBMITTED
          - IN_PROGRESS
          - COMPLETED
          - COMPLETED_WITH_ERROR
          - FAILED
          - STOP_REQUESTED
          - STOPPED
          description: The status of the translation job.
        JobDetails:
          $ref: '#/components/schemas/JobDetails'
        SourceLanguageCode:
          type: string
          description: The language code of the language of the source text. The language must be a language supported by
            Amazon Translate.
        TargetLanguageCodes:
          type: array
          items:
            type: string
          description: The language code of the language of the target text. The language must be a language supported by
            Amazon Translate.
        TerminologyNames:
          type: array
          items:
            type: string
          description: A list containing the names of the terminologies applied to a translation job. Only one terminology
            can be applied per StartTextTranslationJob request at this time.
        ParallelDataNames:
          type: array
          items:
            type: string
          description: A list containing the names of the parallel data resources applied to the translation job.
        Message:
          type: string
          description: An explanation of any errors that may have occurred during the translation job.
        SubmittedTime:
          type: string
          format: date-time
          description: The time at which the translation job was submitted.
        EndTime:
          type: string
          format: date-time
          description: The time at which the translation job ended.
        InputDataConfig:
          $ref: '#/components/schemas/InputDataConfig'
        OutputDataConfig:
          $ref: '#/components/schemas/OutputDataConfig'
        DataAccessRoleArn:
          type: string
          description: The Amazon Resource Name (ARN) of an AWS Identity Access and Management (IAM) role that granted Amazon
            Translate read access to the job's input data.
        Settings:
          $ref: '#/components/schemas/TranslationSettings'
    TooManyRequestsException:
      type: object
      properties:
        Message:
          type: string
    TranslationSettings:
      type: object
      properties:
        Formality:
          type: string
          enum:
          - FORMAL
          - INFORMAL
          description: You can specify the desired level of formality for translations to supported target languages. The
            formality setting controls the level of formal language usage (also known as register) in the translation output.
            You can set the value to informal or formal. If you don't specify a value for formality, or if the target language
            doesn't support formality, the translation will ignore the formality setting. If you specify multiple target languages
            for the job, translate ignores the formality setting for any unsupported target language. For a list of target
            languages that support formality, see Supp
        Profanity:
          type: string
          enum:
          - MASK
          description: You can enable the profanity setting if you want to mask profane words and phrases in your translation
            output. To mask profane words and phrases, Amazon Translate replaces them with the grawlix string “?$#@$“. This
            5-character sequence is used for each profane word or phrase, regardless of the length or number of words. Amazon
            Translate doesn't detect profanity in all of its supported languages. For languages that don't support profanity
            detection, see Unsupported languages in the Amazon Translate Developer Guide. If you specify multiple target languages
            for the job, all the target languages m
        Brevity:
          type: string
          enum:
          - 'ON'
          description: When you turn on brevity, Amazon Translate reduces the length of the translation output for most translations
            (when compared with the same translation with brevity turned off). By default, brevity is turned off. If you turn
            on brevity for a translation request with an unsupported language pair, the translation proceeds with the brevity
            setting turned off. For the language pairs that brevity supports, see Using brevity in the Amazon Translate Developer
            Guide.
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/translate/service/2017-07-01/translate-2017-07-01.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)