REST Translation API API Reference

Translation

The Translation API is used to perform translations.

It is a tool that automatically translates text from one language to another.

The source text is the text to be translated. The source language is the language that the source text is written in. The target language is the language that the source text is translated into.

This document is intended for developers who want to write applications that can interact with the Translation API. You can use the Translation API to programmatically translate text on your webpages or apps.

Authentication

  • In header the access token generated from the authorization-server (ses-console) using OAuth2 Flow Client Credentials or PKCE.
Authorization: Bearer YOUR_ACCESS_TOKEN
  • In header the API Key generated from the authorization-server (ses-console)
Authorization: Key YOUR_API_KEY
  • In querystring the API Key as key parameter
?key=YOUR_API_KEY

Note about the input/output text

  • The input text passed as a URL parameter will be escaped with an equivalent of the javascript 'encodeURIComponent' function.
  • The input text must be encoded in UTF-8.
  • The output text will be encoded in UTF-8.

Language code values

The language codes to be used are the two-letter codes defined by the ISO 639-1:2002, Codes for the representation of names of languages - Part 1: Alpha-2 code standard.

Refer to the column 'ISO 639-1 code' of this list: http://www.loc.gov/standards/iso639-2/php/code_list.php.

In addition to this list, the following codes are used:

Language Code Language
auto Language Detection
tj Tajik (cyrillic script)

Our new Chinese-target engines and all Chinese-target models trained on Model Studio are XXZH models that support multiple locales (e.g. CN=China Simplified script, TW=Taiwan Traditional script, or HK=Hong Kong Traditional script).

To use them you have to create a XXZH profile in which you define your locale under “Model Schema,” and select the 'zh' language code locale and specify the profileID for a request. By default XX to ZH requests will use the zh-CN locale.

If you are currently using a XXZT profile for Traditional Chinese, please note that new XXZT models will not be released whereas all improvements concerning Traditional Chinese will be now released under XXZH models.

Although the existing XXZT engines may still be used for the moment by calling the language code 'zt', this may change in the future, so we strongly advise you to create a new XXZH profile for your translation needs.

Schemes: https
Version: 2.11.0

Authentication

accessToken

"Bearer access_token" OR "Key api_key"

type
apiKey
name
Authorization
in
header

apiKey

API Key

type
apiKey
name
key
in
query

Paths

Get API version

GET /translation/apiVersion

Current version for this API

Successful response

400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json
Response Example (200 OK)
{
  "version": "1.0.0"
}

Translate text

POST /translation/text/translate

Translate text from source language to target language

input: string[]
in query

Input text. This parameter can be repeated. 50000 paragraphs / 50 MB maximum per request (please contact SYSTRAN support for more).

Array values passed as multiple parameters: ?input=aaa&input=bbb

source: string auto
in query

Source language code ( details) or auto.

When the value is set to auto, the language will be automatically detected, used to enhance the translation, and returned in output.

target: string
in query

Target language code ( details)

format: string
in query

Format of the source text.

Use 'name' property of supported formats api response ( details).

profile: string
in query

Profile UUID (Universally Unique IDentifier).

(Advanced usage - Please contact SYSTRAN representative for more details on how to get customized translation profiles).

withInfo: boolean false
in query

If true, additional translation metadata (detected language, used profiles, various stats, ...) will also be sent back in the response message.

withSource: boolean false
in query

If true, the source will also be sent back in the response message. It can be useful when used with the withAnnotations option to align the source document with the translated document

withAnnotations: boolean false
in query

If true, different annotations will be provided in the translated document. If the option 'withSource' is used, the annotations will also be provided in the source document. It will provide segments, tokens, not found words,... If the format is text/html the response will be in html If the format is text/plain the response will be in JSON N.B:The annotations work only if the source document is in text/html or text/plain format

withDictionary: string
in query

DEPRECATED

To apply User Dictionary or/and Normalization Dictionary, please use the Profiles API instead

withCorpus: string
in query

DEPRECATED

To apply Corpus, please use the Profiles API instead

backTranslation: boolean false
in query

If true, the translated text will be translated back in source language

options: string[]
in query

Additional advanced options that may be given by SYSTRAN Support team for specific use cases.

An option can be a JSON object containing a set of key/value generic options supported by the translator. It can also be a string with the syntax ' : ' to pass a key/value generic option to the translator.

Array values passed as multiple parameters: ?options=aaa&options=bbb

encoding: string base64, utf-8 utf-8
in query

Encoding. base64 can be useful to send binary documents in the JSON body. Please note that another alternative is to use translateFile

modelOptions: Object
in query

Object of features to be applied during translation. ex: {'locale': 'en-US', 'Formality level': 'Formal'} Use GET /translation/supportedFeatures to fetch all available modelOptions

owner: string
in query

Preferred translation resource owner (If not set, translation resources with a non "Systran" owner will be chosen in priority. This is the usual default behaviour but it will depend on the translation back-end configuration)

domain: string
in query

Preferred translation resource domain ("Generic" is the usual default chosen domain but will depend on the translation back-end configuration)

size: string M, S
in query

Preferred translation resource size ("M" is the usual default chosen size but will depend on the translation back-end configuration)

autodetectionMode: string single, multi multi
in query

When source is not provided (auto-detect) If "unique", detect a language for all the text of the input table and translate with it If "multi", the detected language will depend on the element of inputs array

200 OK

Successful response

type
object
400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json
Response Example (200 OK)
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "requestId": "55b753d87f2d682a607b8be1",
  "outputs": [
    {
      "error": "Internal error",
      "info": {
        "lid": {
          "language": "en",
          "confidence": 0.9260174036026001
        },
        "selected_routes": [
          {
            "routes": [
              {
                "profileId": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
                "queue": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
                "service": "Translate_en_fr",
                "version": 2,
                "selectors": "object"
              }
            ],
            "stepName": "filter-import"
          }
        ],
        "stats": "object"
      },
      "output": "le chien",
      "backTranslation": "the dog",
      "source": "the dog"
    }
  ]
}

Translate file

POST /translation/file/translate

Translate a file from source language to target language

  • In asynchronous mode (async=true), the response will be a JSON containing a request identifier. This identifier can then be used to poll the request status and its result when completed.

    {
       "requestId": "54a3d860e62ea467b136eddb" /* Request identifier to use to get the status,
                                                  the result of the request and to cancel it */
       "error": {
         "message": "" /* Error at request level */
         "info": {}
       }
    }
    
  • In synchronous mode, the response will be either:

    • The translated document, directly, if none of withInfo and withSource options were activated

    • A multipart/mixed document with the following parts:

      1. Info, if request was done with withInfo:
      • Header:

        part-name: info

      • Body: JSON document

        {
          lid: {
            confidence: number,
            language: "string"
          },
          stats: object,
          selected_routes: array,
          [...]
        }
        
      1. Source document, if request was done with withSource:
      • Header: part-name: source
      • Body: Source document
      1. Translated document
      • Header: part-name: output

      • Body: Translated document

input: file
in formData

Input file. 50000 paragraphs / 50 MB maximum per request (please contact SYSTRAN support for more).

source: string auto
in query

Source language code ( details) or auto.

When the value is set to auto, the language will be automatically detected, used to enhance the translation, and returned in output.

target: string
in query

Target language code ( details)

format: string
in query

Format of the source text.

Use 'name' property of supported formats api response ( details).

profile: string
in query

Profile UUID (Universally Unique IDentifier).

(Advanced usage - Please contact SYSTRAN representative for more details on how to get customized translation profiles).

withInfo: boolean false
in query

If true, additional translation metadata (detected language, used profiles, various stats, ...) will also be sent back in the response message.

withSource: boolean false
in query

If true, the source will also be sent back in the response message. It can be useful when used with the withAnnotations option to align the source document with the translated document

withAnnotations: boolean false
in query

If true, different annotations will be provided in the translated document. If the option 'withSource' is used, the annotations will also be provided in the source document. It will provide segments, tokens, not found words,... If the format is text/html the response will be in html If the format is text/plain the response will be in JSON N.B:The annotations work only if the source document is in text/html or text/plain format

withDictionary: string
in query

DEPRECATED

To apply User Dictionary or/and Normalization Dictionary, please use the Profiles API instead

withCorpus: string
in query

DEPRECATED

To apply Corpus, please use the Profiles API instead

options: string[]
in query

Additional advanced options that may be given by SYSTRAN Support team for specific use cases.

An option can be a JSON object containing a set of key/value generic options supported by the translator. It can also be a string with the syntax ' : ' to pass a key/value generic option to the translator.

Array values passed as multiple parameters: ?options=aaa&options=bbb

encoding: string base64, utf-8 utf-8
in query

Encoding. base64 can be useful to send binary documents in the JSON body. Please note that another alternative is to use translateFile

async: boolean false
in query

If true, the translation is performed asynchronously.

The "/translation/file/status" service must be used to wait for the completion of the request and the "/translation/file/result" service must be used to get the final result. The "/translation/file/cancel" can be used to cancel the request.

batchId: string
in query

Identifier of the batch to which the translation request will be associated. Only asynchronous requests (async=true) can be associated to a batch.

owner: string
in query

Preferred translation resource owner (If not set, translation resources with a non "Systran" owner will be chosen in priority. This is the usual default behaviour but it will depend on the translation back-end configuration)

domain: string
in query

Preferred translation resource domain ("Generic" is the usual default chosen domain but will depend on the translation back-end configuration)

size: string M, S
in query

Preferred translation resource size ("M" is the usual default chosen size but will depend on the translation back-end configuration)

200 OK

Successful response

type
object
400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json, multipart/mixed, */*
Response Example (200 OK)
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "requestId": "54a3d860e62ea467b136eddb"
}

Get translation status

GET /translation/file/status

Get the status of an asynchronous translation request

The translation result is available when the value of the status field is finished.

The translation request is unsuccessful when the value of the status field is error.

requestId: string
in query

Request identifier

200 OK

Successful response

type
object
400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json
Response Example (200 OK)
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "batchId": "54a3d860e62ea467b136eddb",
  "cancelled": "boolean",
  "createdAt": 1242234432,
  "description": "success",
  "expireAt": 1242234900,
  "finishedAt": "number (double)",
  "finishedSteps": 3,
  "status": "string",
  "totalSteps": 6
}

Cancel translation

POST /translation/file/cancel

Cancel an asynchronous translation request. Requests with status Finished or error are not modified. Requests with other statuses are cancelled. Note that for the statuses started and pending, the cancellation can take some time to be effective.

requestId: string
in query

Request identifier

200 OK

Successful response

type
object
400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json
Response Example (200 OK)
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  }
}

Get translation result

GET /translation/file/result

Get the result of an asynchronous translation request

Depending on the initial translation request options, the response can have multiple formats:

  • If withInfo was not activated: the translated document directly

  • If withInfo was activated: a multipart/mixed document with the following parts:

    1. Info
    • Header:

      part-name: info

    • Body: JSON document

      {
        lid: {
          confidence: number,
          language: "string"
        },
        stats: object,
        selected_routes: array,
        [...]
      }
      
    1. Translated document
    • Header: part-name: output

    • Body: Translated document

An error can occur in the following cases:

  • Invalid request ID
  • No result available (see request status for more information)
  • Unable to retrieve the result
  • ...
requestId: string
in query

Request identifier

200 OK

Successful response

type
object
400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json, multipart/mixed, */*
Response Example (200 OK)
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "requestId": "54a3d860e62ea467b136eddb"
}

Create batch

POST /translation/file/batch/create

Create a new translation batch, to which asynchronous translation requests can be associated. You may create a batch if you want to follow up simultaneously several translation requests.

200 OK

Successful response

type
object
500 Internal Server Error

Error

Response Content-Types: application/json
Response Example (200 OK)
{
  "batchId": "54a3d860e62ea467b136eddb",
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  }
}

Get batch status

GET /translation/file/batch/status

Get the status of the translation requests of a translation batch

batchId: string
in query

Batch identifier

200 OK

Successful response

type
object
400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json
Response Example (200 OK)
{
  "cancelled": false,
  "closed": false,
  "createdAt": 1242234432,
  "expireAt": 1242234900,
  "finishedAt": 1242234700,
  "requests": [
    {
      "id": "54a3d860e62ea467b136eddb",
      "status": "string"
    }
  ],
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  }
}

Cancel batch

POST /translation/file/batch/cancel

Cancel a translation batch. This will cancel also all ongoing translation requests.

batchId: string
in query

Batch identifier

200 OK

Successful response

type
object
400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json
Response Example (200 OK)
{
  "status": "cancelled",
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  }
}

Close batch

POST /translation/file/batch/close

Close a translation batch. This will prevent new requests to be added to the batch. Eventual ongoing translation requests of the batch will go on.

batchId: string
in query

Batch identifier

200 OK

Successful response

type
object
400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json
Response Example (200 OK)
{
  "status": "finished",
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  }
}

Supported languages

GET /translation/supportedLanguages

List of language pairs in which translation is supported.

This list can be limited to a specific source language or target language.

source: string[]
in query

Language code of the source text

Array values passed as multiple parameters: ?source=aaa&source=bbb

target: string[]
in query

Language code into which to translate the source text

Array values passed as multiple parameters: ?target=aaa&target=bbb

200 OK

Successful response

type
object
400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json
Response Example (200 OK)
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "languagePairs": [
    {
      "source": "en",
      "target": "fr",
      "profiles": [
        {
          "id": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
          "private": false
        }
      ]
    }
  ]
}

Supported formats

GET /translation/supportedFormats

List of supported formats with their outputs for the translation.

200 OK

Successful response

type
object
400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json
Response Example (200 OK)
{
  "formats": [
    {
      "mimetypes": {
        "input": "text/bitext",
        "output": "text/bitext"
      },
      "name": "bitext"
    }
  ]
}

Add feedback

POST /translation/feedback/add

Add feedback for a particular translation.

sourceText: string
in query

Source text

targetText: string
in query

Target text

status: string new, in-progress, resolved, closed, rejected
in query

Feedback status

problemSeverity: string trivial, minor, normal, major, critical, blocker
in query

Problem severity

translationRating: string incomprehensible, disfluent, non-native, good, flawless
in query

Translation rating

suggestedTranslation: string
in query

Suggested translation

comment: string
in query

Comment

encoding: string base64
in query

sourceText, targetText and suggestedTranslation's encoding

source: string
in query

Source language code ( details)

target: string
in query

Target language code ( details)

profile: string
in query

Profile UUID (Universally Unique IDentifier).

(Advanced usage - Please contact SYSTRAN representative for more details on how to get customized translation profiles).

200 OK

Successful response

type
object
400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json
Response Example (200 OK)
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "feedbackId": "55b753d87f2d682a607b8be1"
}

List profiles

GET /translation/profiles

List all available profiles for translation.

source: string
in query

Source language code of the profile

target: string
in query

Target Language code of the profile

in query

Profile UUID(s) (Universally Unique IDentifier). This parameter can be repeated.

Array values passed as multiple parameters: ?id=aaa&id=bbb

200 OK

Successful response

type
object
400 Bad Request

Invalid parameters

500 Internal Server Error

Error

Response Content-Types: application/json
Response Example (200 OK)
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "profiles": [
    {
      "id": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
      "deactivated": false,
      "running": true,
      "selectors": {
        "owner": "Systran",
        "domain": "Generic",
        "size": "S"
      },
      "localization": "object",
      "name": "My Profile",
      "source": "en",
      "target": "fr"
    }
  ]
}

Supported features

GET /translation/supportedFeatures

List features that can be used during translation. List profileIds that correspond to request parameters. Results can be limited by specifying a combination of:

  • source
  • target
  • owner
  • domain
  • size
  • profileId
  • value of a given feature
source: string
in query

Language code of the source of which we want to see available features

target: string
in query

Language code of the target of which we want to see available features

owner: string
in query

Owner name for which we want to see available features

domain: string
in query

Domain name for which we want to see available features

size: string
in query

Size for which we want to see available features

profileId: string
in query

ProfileId of the profile of which we want to see available features

options: string
in query

Options object specifying a value for a given feature returning us the others available features Example: "{"locale":"en-GB","formality":"formal"}"

Successful response

400 Bad Request

Bad Request No key / credentials provided

Response Content-Types: application/json
Response Example (200 OK)

Supported Selectors

GET /translation/supportedSelectors

List selectors (domains, owners, sizes) which can be used during translation given some parameters.

source: string
in query

Source language for which we want to see the corresponding available selectors

target: string
in query

Target language for which we want to see the corresponding available selectors

domain: string
in query

Domain for which we want to see the corresponding available owner and size selectors

owner: string
in query

Owner for which we want to see the corresponding available domain and size selectors

size: string
in query

Size for which we want to see the corresponding availables domain and owner selectors

profileId: string
in query

ProfileId for which we want to see the corresponding available selectors

200 OK

Successful response

type
object
400 Bad Request

Bad Request No key / credentials provided

Response Content-Types: application/json
Response Example (200 OK)
{
  "domains": [
    "string"
  ],
  "owners": [
    "string"
  ],
  "sizes": [
    "string"
  ]
}

Schema Definitions

TranslationLID: object

Result of the automatic language detection (Language Identification)

language: string

Automatic detected language

confidence: number (double)

Automatic language detection confidence

Example
{
  "language": "en",
  "confidence": 0.9260174036026001
}

TranslationRoute: object

Selected route during the translation flow

profileId: string

Profile UUID (Universally Unique IDentifier)

queue: string

Queue identifier

service: string

Service name

version: string

Route version

selectors: object

Route selectors

Example
{
  "profileId": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
  "queue": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
  "service": "Translate_en_fr",
  "version": 2,
  "selectors": "object"
}

TranslationStep: object

Particular step that is part of the translation flow

routes: object[]

List of routes involved during the step

object

Selected route during the translation flow

profileId: string

Profile UUID (Universally Unique IDentifier)

queue: string

Queue identifier

service: string

Service name

version: string

Route version

selectors: object

Route selectors

stepName: string

Name of this step

Example
{
  "routes": [
    {
      "profileId": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
      "queue": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
      "service": "Translate_en_fr",
      "version": 2,
      "selectors": "object"
    }
  ],
  "stepName": "filter-import"
}

TranslationInfo: object

lid: object

Result of the automatic language detection (Language Identification)

language: string

Automatic detected language

confidence: number (double)

Automatic language detection confidence

selected_routes: object[]

List of selected routes during the translation flow

object

Particular step that is part of the translation flow

routes: object[]

List of routes involved during the step

object

Selected route during the translation flow

profileId: string

Profile UUID (Universally Unique IDentifier)

queue: string

Queue identifier

service: string

Service name

version: string

Route version

selectors: object

Route selectors

stepName: string

Name of this step

stats: object

Translation statistics (translated tokens, characters, etc.)

Example
{
  "lid": {
    "language": "en",
    "confidence": 0.9260174036026001
  },
  "selected_routes": [
    {
      "routes": [
        {
          "profileId": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
          "queue": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
          "service": "Translate_en_fr",
          "version": 2,
          "selectors": "object"
        }
      ],
      "stepName": "filter-import"
    }
  ],
  "stats": "object"
}

TranslationOutput: object

error: string

Error at output level

info: object
lid: object

Result of the automatic language detection (Language Identification)

language: string

Automatic detected language

confidence: number (double)

Automatic language detection confidence

selected_routes: object[]

List of selected routes during the translation flow

object

Particular step that is part of the translation flow

routes: object[]

List of routes involved during the step

object

Selected route during the translation flow

profileId: string

Profile UUID (Universally Unique IDentifier)

queue: string

Queue identifier

service: string

Service name

version: string

Route version

selectors: object

Route selectors

stepName: string

Name of this step

stats: object

Translation statistics (translated tokens, characters, etc.)

output: string

Translated text

backTranslation: string

Retranslation of output in source language, if backTranslation was specified

source: string

Source text, if withSource was specified

Example
{
  "error": "Internal error",
  "info": {
    "lid": {
      "language": "en",
      "confidence": 0.9260174036026001
    },
    "selected_routes": [
      {
        "routes": [
          {
            "profileId": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
            "queue": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
            "service": "Translate_en_fr",
            "version": 2,
            "selectors": "object"
          }
        ],
        "stepName": "filter-import"
      }
    ],
    "stats": "object"
  },
  "output": "le chien",
  "backTranslation": "the dog",
  "source": "the dog"
}

TranslationResponse: object

By default (synchronous mode), the response will be a JSON object containing the result of the translation.

  {
    "warning": "", /* Warning at request level */
    "error": {
      "message": "" /* Error at request level */
      "info": {}
    },
    "outputs": [
      {
        "warning": "", /* Warning at input level */
        "error": "", /* Error at input level */
        "info": { /* Info object containing selected routes, language detection result, translation stats, etc. */
          "lid": {
            "language": "fr",
            "confidence": 0.75
          }
          [...]
        },
        "backTranslation": "retranslation of output in fr"
      },
      [...]
    ]
  }

In asynchronous mode, the response will be a JSON containing a request identifier. This identifier can then be used to poll the request status and its result when completed.

{
   "error": {
     "message": "" /* Error at request level */
     "info": {}
   }
   "requestId": "54a3d860e62ea467b136eddb" /* Request identifier to use to get the status, the result of the request and to cancel it */
}
error: ErrorResponse

Error at request level

requestId: string

Request identifier to use to get the status, the result of the request and to cancel it in asynchronous mode

outputs: object[]

Outputs of translation

object
error: string

Error at output level

info: object
lid: object

Result of the automatic language detection (Language Identification)

language: string

Automatic detected language

confidence: number (double)

Automatic language detection confidence

selected_routes: object[]

List of selected routes during the translation flow

object

Particular step that is part of the translation flow

routes: object[]

List of routes involved during the step

object

Selected route during the translation flow

profileId: string

Profile UUID (Universally Unique IDentifier)

queue: string

Queue identifier

service: string

Service name

version: string

Route version

selectors: object

Route selectors

stepName: string

Name of this step

stats: object

Translation statistics (translated tokens, characters, etc.)

output: string

Translated text

backTranslation: string

Retranslation of output in source language, if backTranslation was specified

source: string

Source text, if withSource was specified

Example
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "requestId": "55b753d87f2d682a607b8be1",
  "outputs": [
    {
      "error": "Internal error",
      "info": {
        "lid": {
          "language": "en",
          "confidence": 0.9260174036026001
        },
        "selected_routes": [
          {
            "routes": [
              {
                "profileId": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
                "queue": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
                "service": "Translate_en_fr",
                "version": 2,
                "selectors": "object"
              }
            ],
            "stepName": "filter-import"
          }
        ],
        "stats": "object"
      },
      "output": "le chien",
      "backTranslation": "the dog",
      "source": "the dog"
    }
  ]
}

TranslationFileResponse: object

error: ErrorResponse

Error at request level

requestId: string

Request identifier to use to get the status, the result of the request and to cancel it in asynchronous mode

Example
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "requestId": "54a3d860e62ea467b136eddb"
}

TranslationStatus: object

error: ErrorResponse

Error of the request

batchId: string

Batch identifier

cancelled: boolean

Is the request cancelled

createdAt: number (double)

Creation time of the request (ms since the Epoch)

description: string

Description

expireAt: number (double)

Expiration time of the request (ms since the Epoch)

finishedAt: number (double)

Completion time of the request (ms since the Epoch)

finishedSteps: integer

Number of processed steps (Each step during translation corresponds to the processing of 1 paragraph).

status: string registered, import, started, pending, export, finished, error

Status of the request

totalSteps: integer

Number of steps to process (Each step during translation corresponds to the processing of 1 paragraph).

Example
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "batchId": "54a3d860e62ea467b136eddb",
  "cancelled": "boolean",
  "createdAt": 1242234432,
  "description": "success",
  "expireAt": 1242234900,
  "finishedAt": "number (double)",
  "finishedSteps": 3,
  "status": "string",
  "totalSteps": 6
}

TranslationCancel: object

error: ErrorResponse

Error of the request

Example
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  }
}

BatchRequest: object

Batch request

id: string

Request identifier

status: string pending, finished, cancelled, error

Status of the request

Example
{
  "id": "54a3d860e62ea467b136eddb",
  "status": "string"
}

BatchCreate: object

batchId: string

Identifier of the created batch

error: ErrorResponse

Error of the request

Example
{
  "batchId": "54a3d860e62ea467b136eddb",
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  }
}

BatchCancel: object

status: string

Result of the request

error: ErrorResponse

Error of the request

Example
{
  "status": "cancelled",
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  }
}

BatchClose: object

status: string

Result of the request

error: ErrorResponse

Error of the request

Example
{
  "status": "finished",
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  }
}

BatchStatus: object

cancelled: boolean

Is the batch cancelled

closed: boolean

Is the batch closed

createdAt: number (double)

Creation time of the batch (ms since the Epoch)

expireAt: number (double)

Expiration time of the batch (ms since the Epoch). Is null while there are pending requests

finishedAt: number (double)

Completion time of the batch (ms since the Epoch)

requests: object[]

Array of requests

object

Batch request

id: string

Request identifier

status: string pending, finished, cancelled, error

Status of the request

error: ErrorResponse

Error of the request

Example
{
  "cancelled": false,
  "closed": false,
  "createdAt": 1242234432,
  "expireAt": 1242234900,
  "finishedAt": 1242234700,
  "requests": [
    {
      "id": "54a3d860e62ea467b136eddb",
      "status": "string"
    }
  ],
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  }
}

Format: object

mimetypes: object
input: string

supported input type

output: string

supported output type

name: string

user friendly name for the format

Example
{
  "mimetypes": {
    "input": "text/bitext",
    "output": "text/bitext"
  },
  "name": "bitext"
}

LanguagePair: object

source: string

Source language

target: string

Target language

profiles: Profile

Array of profile identifiers

Profile
Example
{
  "source": "en",
  "target": "fr",
  "profiles": [
    {
      "id": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
      "private": false
    }
  ]
}

SupportedLanguagesResponse: object

error: ErrorResponse

Error at request level

languagePairs: object[]

Array of language pairs

object
source: string

Source language

target: string

Target language

profiles: Profile

Array of profile identifiers

Profile
Example
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "languagePairs": [
    {
      "source": "en",
      "target": "fr",
      "profiles": [
        {
          "id": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
          "private": false
        }
      ]
    }
  ]
}

SupportedFormatsResponse: object

formats: object[]

Array of formats

object
mimetypes: object
input: string

supported input type

output: string

supported output type

name: string

user friendly name for the format

Example
{
  "formats": [
    {
      "mimetypes": {
        "input": "text/bitext",
        "output": "text/bitext"
      },
      "name": "bitext"
    }
  ]
}

ProfileData: object

Profile data

id: string

Profile UUID (Universally Unique IDentifier)

deactivated: boolean

Profile deactivated

running: boolean

Profile with a running Translation Resource

selectors: object

Profile selectors

localization: object

Localization of the profile name

name: string

Name

source: string

Source

target: string

Target

Example
{
  "id": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
  "deactivated": false,
  "running": true,
  "selectors": {
    "owner": "Systran",
    "domain": "Generic",
    "size": "S"
  },
  "localization": "object",
  "name": "My Profile",
  "source": "en",
  "target": "fr"
}

ProfilesResponse: object

error: ErrorResponse

Error at request level

profiles: object[]

Array of profiles data (only running & activated profiles)

object

Profile data

id: string

Profile UUID (Universally Unique IDentifier)

deactivated: boolean

Profile deactivated

running: boolean

Profile with a running Translation Resource

selectors: object

Profile selectors

localization: object

Localization of the profile name

name: string

Name

source: string

Source

target: string

Target

Example
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "profiles": [
    {
      "id": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
      "deactivated": false,
      "running": true,
      "selectors": {
        "owner": "Systran",
        "domain": "Generic",
        "size": "S"
      },
      "localization": "object",
      "name": "My Profile",
      "source": "en",
      "target": "fr"
    }
  ]
}

FeedbackAddResponse: object

error: ErrorResponse

Error at request level

feedbackId: string

Feedback identifier

Example
{
  "error": {
    "message": "Internal error",
    "statusCode": 500,
    "info": "object"
  },
  "feedbackId": "55b753d87f2d682a607b8be1"
}

Profile: object

Profile

id: string

Profile UUID (Universally Unique IDentifier)

private: boolean

Public or private profile

Example
{
  "id": "6b80a3f5-aff2-41ba-a5ce-21603738432e",
  "private": false
}

ApiVersionResponse: object

version: string
Example
{
  "version": "1.0.0"
}

ErrorResponse: object

message: string

Readable description of the error

statusCode: integer
info: object

Additional information about the error

Example
{
  "message": "Internal error",
  "statusCode": 500,
  "info": "object"
}