SYSTRAN Supported Languages API

Discover which language pairs, model options, formats, and selectors (domains, owners, sizes) are available - GET /translation/supportedLanguages, GET /translation/supportedFeatures, GET /translation/supportedFormats, and GET /translation/supportedSelectors.

OpenAPI Specification

systran-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: SYSTRAN Translate & NLP API
  description: >-
    RESTful API for SYSTRAN machine translation and natural language processing.
    The Translate API (server https://api-translate.systran.net) covers text,
    HTML, and file translation, supported-language discovery, user dictionaries,
    corpora (translation memory), and translation profiles. The SYSTRAN.io /
    Platform NLP surface (server https://api-platform.systran.net) adds language
    detection, morphology, tokenization, segmentation, and named entity
    recognition. Authenticate with an API key passed as the `key` query
    parameter or an `Authorization` header.


    Endpoint status: paths under /translation, /resources, and /profiles are
    grounded in the published docs.systran.net Translate API reference
    (confirmed). Paths under /nlp are modeled from the historical SYSTRAN.io /
    Platform NLP service and marked with `x-endpoint-status: modeled`.
  version: '1.0'
  contact:
    name: SYSTRAN
    url: https://docs.systran.net/translateAPI/en/
  termsOfService: https://www.systran.net
servers:
- url: https://api-translate.systran.net
  description: SYSTRAN Translate API (translation, dictionary, corpus, profiles)
- url: https://api-platform.systran.net
  description: SYSTRAN.io / Platform NLP surface (language detection and NLP)
security:
- ApiKeyQuery: []
- ApiKeyHeader: []
tags:
- name: Translation
- name: File Translation
- name: Supported Languages
- name: Language Detection
- name: NLP
- name: Dictionary
- name: Profiles
- name: Corpus
paths:
  /translation/text/translate:
    post:
      tags:
      - Translation
      operationId: translateText
      summary: Translate text
      description: Translate one or more text inputs from a source to a target language.
      parameters:
      - name: source
        in: query
        schema:
          type: string
        description: Source language code (auto-detected when omitted).
      - name: target
        in: query
        required: true
        schema:
          type: string
        description: Target language code.
      - name: input
        in: query
        schema:
          type: array
          items:
            type: string
        description: Text input(s) to translate.
      - name: format
        in: query
        schema:
          type: string
          enum: [text, html]
      - name: profile
        in: query
        schema:
          type: string
      responses:
        '200':
          description: Translation output.
  /translation/apiVersion:
    get:
      tags:
      - Translation
      operationId: getTranslationApiVersion
      summary: Get Translation API version
      responses:
        '200':
          description: API version.
  /translation/supportedLanguages:
    get:
      tags:
      - Supported Languages
      operationId: getSupportedLanguages
      summary: List supported language pairs
      parameters:
      - name: source
        in: query
        schema:
          type: string
      - name: target
        in: query
        schema:
          type: string
      responses:
        '200':
          description: Supported language pairs.
  /translation/supportedFeatures:
    get:
      tags:
      - Supported Languages
      operationId: getSupportedFeatures
      summary: List available model options by language pair
      responses:
        '200':
          description: Supported features.
  /translation/supportedFormats:
    get:
      tags:
      - Supported Languages
      operationId: getSupportedFormats
      summary: List supported input/output formats
      responses:
        '200':
          description: Supported formats.
  /translation/supportedSelectors:
    get:
      tags:
      - Supported Languages
      operationId: getSupportedSelectors
      summary: List available domains, owners, and sizes
      responses:
        '200':
          description: Supported selectors.
  /translation/profiles:
    get:
      tags:
      - Translation
      operationId: listTranslationProfiles
      summary: List translation profiles
      responses:
        '200':
          description: Profiles.
  /translation/feedback/add:
    post:
      tags:
      - Translation
      operationId: addTranslationFeedback
      summary: Submit translation feedback
      responses:
        '200':
          description: Feedback recorded.
  /translation/file/translate:
    post:
      tags:
      - File Translation
      operationId: translateFile
      summary: Translate a file
      description: Submit a document for translation. Set async=true for asynchronous processing.
      parameters:
      - name: source
        in: query
        schema:
          type: string
      - name: target
        in: query
        required: true
        schema:
          type: string
      - name: async
        in: query
        schema:
          type: boolean
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                input:
                  type: string
                  format: binary
      responses:
        '200':
          description: Translated file or a requestId for async jobs.
  /translation/file/status:
    get:
      tags:
      - File Translation
      operationId: getFileTranslationStatus
      summary: Get async file translation status
      parameters:
      - name: requestId
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Job status.
  /translation/file/result:
    get:
      tags:
      - File Translation
      operationId: getFileTranslationResult
      summary: Retrieve async file translation result
      parameters:
      - name: requestId
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Translated file.
  /translation/file/cancel:
    post:
      tags:
      - File Translation
      operationId: cancelFileTranslation
      summary: Cancel an async file translation request
      parameters:
      - name: requestId
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Cancelled.
  /translation/file/batch/create:
    post:
      tags:
      - File Translation
      operationId: createTranslationBatch
      summary: Create a translation batch
      responses:
        '200':
          description: Batch created.
  /translation/file/batch/status:
    get:
      tags:
      - File Translation
      operationId: getTranslationBatchStatus
      summary: Get batch status and associated requests
      parameters:
      - name: batchId
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Batch status.
  /translation/file/batch/close:
    post:
      tags:
      - File Translation
      operationId: closeTranslationBatch
      summary: Close a batch (no new requests)
      responses:
        '200':
          description: Batch closed.
  /translation/file/batch/cancel:
    post:
      tags:
      - File Translation
      operationId: cancelTranslationBatch
      summary: Cancel a batch and its ongoing requests
      responses:
        '200':
          description: Batch cancelled.
  /resources/dictionary/lookup:
    get:
      tags:
      - Dictionary
      operationId: dictionaryLookup
      summary: Look up dictionary entries
      parameters:
      - name: source
        in: query
        schema:
          type: string
      - name: target
        in: query
        schema:
          type: string
      - name: input
        in: query
        schema:
          type: string
      responses:
        '200':
          description: Dictionary matches.
  /resources/dictionary/lookup/supportedLanguages:
    get:
      tags:
      - Dictionary
      operationId: dictionaryLookupSupportedLanguages
      summary: List languages supported by dictionary lookup
      responses:
        '200':
          description: Supported languages.
  /resources/dictionary/supportedLanguages:
    get:
      tags:
      - Dictionary
      operationId: dictionarySupportedLanguages
      summary: List languages supported by user dictionaries
      responses:
        '200':
          description: Supported languages.
  /resources/dictionary/list:
    post:
      tags:
      - Dictionary
      operationId: listDictionaries
      summary: List user dictionaries
      responses:
        '200':
          description: Dictionaries.
  /resources/dictionary/add:
    post:
      tags:
      - Dictionary
      operationId: addDictionary
      summary: Create a user dictionary
      responses:
        '200':
          description: Dictionary created.
  /resources/dictionary/update:
    post:
      tags:
      - Dictionary
      operationId: updateDictionary
      summary: Update a user dictionary
      responses:
        '200':
          description: Dictionary updated.
  /resources/dictionary/delete:
    post:
      tags:
      - Dictionary
      operationId: deleteDictionary
      summary: Delete a user dictionary
      responses:
        '200':
          description: Dictionary deleted.
  /resources/dictionary/export:
    post:
      tags:
      - Dictionary
      operationId: exportDictionary
      summary: Export a user dictionary
      responses:
        '200':
          description: Dictionary export.
  /resources/dictionary/apply:
    post:
      tags:
      - Dictionary
      operationId: applyDictionary
      summary: Apply a user dictionary
      responses:
        '200':
          description: Dictionary applied.
  /resources/dictionary/entry/list:
    post:
      tags:
      - Dictionary
      operationId: listDictionaryEntries
      summary: List dictionary entries
      responses:
        '200':
          description: Entries.
  /resources/dictionary/entry/add:
    post:
      tags:
      - Dictionary
      operationId: addDictionaryEntry
      summary: Add a dictionary entry
      responses:
        '200':
          description: Entry added.
  /resources/dictionary/entry/update:
    post:
      tags:
      - Dictionary
      operationId: updateDictionaryEntry
      summary: Update a dictionary entry
      responses:
        '200':
          description: Entry updated.
  /resources/dictionary/entry/delete:
    post:
      tags:
      - Dictionary
      operationId: deleteDictionaryEntry
      summary: Delete a dictionary entry
      responses:
        '200':
          description: Entry deleted.
  /resources/dictionary/entry/import:
    post:
      tags:
      - Dictionary
      operationId: importDictionaryEntries
      summary: Import dictionary entries
      responses:
        '200':
          description: Entries imported.
  /profiles:
    get:
      tags:
      - Profiles
      operationId: listProfiles
      summary: List profiles
      responses:
        '200':
          description: Profiles.
  /profiles/create:
    post:
      tags:
      - Profiles
      operationId: createProfile
      summary: Create a profile
      responses:
        '200':
          description: Profile created.
  /profiles/delete:
    post:
      tags:
      - Profiles
      operationId: deleteProfile
      summary: Delete a profile
      responses:
        '200':
          description: Profile deleted.
  /profiles/activate:
    post:
      tags:
      - Profiles
      operationId: activateProfile
      summary: Activate a profile
      responses:
        '200':
          description: Profile activated.
  /profiles/deactivate:
    post:
      tags:
      - Profiles
      operationId: deactivateProfile
      summary: Deactivate a profile
      responses:
        '200':
          description: Profile deactivated.
  /profiles/{id}/permissions:
    get:
      tags:
      - Profiles
      operationId: getProfilePermissions
      summary: Get profile permissions
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Permissions.
    post:
      tags:
      - Profiles
      operationId: updateProfilePermissions
      summary: Update profile permissions
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Permissions updated.
  /translationResources:
    get:
      tags:
      - Profiles
      operationId: listTranslationResources
      summary: List translation resources
      responses:
        '200':
          description: Translation resources.
  /resources/corpus/list:
    get:
      tags:
      - Corpus
      operationId: listCorpora
      summary: List corpora
      responses:
        '200':
          description: Corpora.
  /resources/corpus/add:
    post:
      tags:
      - Corpus
      operationId: addCorpus
      summary: Create a corpus
      responses:
        '200':
          description: Corpus created.
  /resources/corpus/import:
    post:
      tags:
      - Corpus
      operationId: importCorpus
      summary: Import corpus content
      responses:
        '200':
          description: Corpus imported.
  /resources/corpus/details:
    get:
      tags:
      - Corpus
      operationId: getCorpusDetails
      summary: Get corpus details
      responses:
        '200':
          description: Corpus details.
  /resources/corpus/match:
    get:
      tags:
      - Corpus
      operationId: matchCorpus
      summary: Match segments against a corpus
      responses:
        '200':
          description: Matches.
  /resources/corpus/update:
    post:
      tags:
      - Corpus
      operationId: updateCorpus
      summary: Update a corpus
      responses:
        '200':
          description: Corpus updated.
  /resources/corpus/delete:
    post:
      tags:
      - Corpus
      operationId: deleteCorpus
      summary: Delete a corpus
      responses:
        '200':
          description: Corpus deleted.
  /resources/corpus/segment/list:
    get:
      tags:
      - Corpus
      operationId: listCorpusSegments
      summary: List corpus segments
      responses:
        '200':
          description: Segments.
  /resources/corpus/segment/add:
    post:
      tags:
      - Corpus
      operationId: addCorpusSegment
      summary: Add a corpus segment
      responses:
        '200':
          description: Segment added.
  /resources/corpus/segment/update:
    post:
      tags:
      - Corpus
      operationId: updateCorpusSegment
      summary: Update a corpus segment
      responses:
        '200':
          description: Segment updated.
  /resources/corpus/segment/delete:
    post:
      tags:
      - Corpus
      operationId: deleteCorpusSegment
      summary: Delete a corpus segment
      responses:
        '200':
          description: Segment deleted.
  /nlp/lid/detectLanguage:
    get:
      tags:
      - Language Detection
      operationId: detectLanguage
      summary: Detect the language of a text
      x-endpoint-status: modeled
      servers:
      - url: https://api-platform.systran.net
      parameters:
      - name: input
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Detected language and confidence.
  /nlp/lid/supportedLanguages:
    get:
      tags:
      - Language Detection
      operationId: lidSupportedLanguages
      summary: List languages the detector can recognize
      x-endpoint-status: modeled
      servers:
      - url: https://api-platform.systran.net
      responses:
        '200':
          description: Supported languages.
  /nlp/morphology/extractRoots:
    get:
      tags:
      - NLP
      operationId: extractRoots
      summary: Extract morphological roots
      x-endpoint-status: modeled
      servers:
      - url: https://api-platform.systran.net
      parameters:
      - name: lang
        in: query
        schema:
          type: string
      - name: input
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Morphological analysis.
  /nlp/tokenization/tokenize:
    get:
      tags:
      - NLP
      operationId: tokenize
      summary: Tokenize text
      x-endpoint-status: modeled
      servers:
      - url: https://api-platform.systran.net
      parameters:
      - name: lang
        in: query
        schema:
          type: string
      - name: input
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Tokens.
  /nlp/segmentation/segment:
    get:
      tags:
      - NLP
      operationId: segment
      summary: Segment text into sentences
      x-endpoint-status: modeled
      servers:
      - url: https://api-platform.systran.net
      parameters:
      - name: lang
        in: query
        schema:
          type: string
      - name: input
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Segments.
  /nlp/ner/extractNamedEntities:
    get:
      tags:
      - NLP
      operationId: extractNamedEntities
      summary: Extract named entities
      x-endpoint-status: modeled
      servers:
      - url: https://api-platform.systran.net
      parameters:
      - name: lang
        in: query
        schema:
          type: string
      - name: input
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Named entities.
components:
  securitySchemes:
    ApiKeyQuery:
      type: apiKey
      in: query
      name: key
      description: SYSTRAN API key passed as the `key` query parameter.
    ApiKeyHeader:
      type: apiKey
      in: header
      name: Authorization
      description: 'API key passed as an Authorization header, e.g. `Authorization: Key YOUR_API_KEY`.'