---
title: "Update Translation Engine"
method: PUT
path: "/translation-engines/{translationEngineId}"
tags: ["Translation Engine"]
---

# Update Translation Engine

`PUT /translation-engines/{translationEngineId}`

Updates a translation engine. 

It can be used to update a stand-alone translation engine or a project's translation engine. 
The identifier of a project's translation engine can be retrieved only by calling [Get Project](#/operations/GetProject) endpoint.

Pay special attention that some properties can not be changed for a project's translation engine. These include: name, description, definition.languageProcessingId, and language pairs can not be added/removed from definition.languagePairDefinitions. 

Pay special attention to how [updating](../docs/Updating-data-with-PUT.html) works.

## Headers

- `Authorization` string, required
- `X-LC-Tenant` string, required

## Request body

- TranslationEngineUpdateRequest — Translation Engine resource update request
  - `name` string — <div style="display:inline; float:right; color:#008080; margin-top:-23px; font-size:11px">default</div><div style="display: inline;">The translation engine name.</div>
  - `description` string
  - `definition` TranslationEngineDefinition — The definition of a translation engine.
    - `languageProcessingRuleId` string, required
    - `languagePairDefinitions` TranslationEngineDefinitionLanguagePair[]
      - `languagePair` LanguagePair, required
        - `source` string, required — Language code. ex: "en-US", de-DE".
        - `target` string, required — Language code. ex: "en-US", de-DE".
      - `resources` LanguagePairResource[], required
        - `id` string, required — The identifier of the Translation Memory, Termbase, Machine Translation or LLM.
        - `systemId` string — Required only for neural Machine Translation resources.
        - `type` 'TM' | 'MT' | 'TB' | 'LLM', required — The resource type.
        - `penalty` integer — Only for TM
        - `lookup` boolean — Only for TM, TB
        - `concordance` boolean — Only for TM
        - `update` boolean — Only for TM, TB
        - `generativeTranslation` boolean — Only for LLM
        - `smartReview` boolean — Only for LLM
      - `adjacentLanguagePairs` LanguagePair[]
        - `source` string, required — Language code. ex: "en-US", de-DE".
        - `target` string, required — Language code. ex: "en-US", de-DE".
    - `sequence` RemoteTranslationEngineSequence — Lists of IDs for Translation Memories, Termbases, Machine Translations and Large Language Models, in order of their use
      - `tm` string[] — Translation Memories
      - `tb` string[] — Termbases
      - `mt` string[] — Machine Translations
      - `llm` string[] — Large Language Models
    - `adjacentLanguagePenalty` integer

## Response `204`

No Content

## Other responses

- `400` — Error codes: * “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response. * "empty": Empty input in the update translation engine model. Check error details. * "invalidLanguage": Invalid language code used in language-pair
- `401` — The user could not be identified.
- `403` — Error codes: * "forbidden": The authenticated user is not allowed to update the resource.
- `404` — Error codes: * "notFound": The translation memory could not be found by identifier.
- `409` — Error codes: * "updateNotAllowed": Property specified in error response can not be updated because the translation engine provided is a copy assigned to a project. * "duplicate": Duplicate resources found for the language pair specified in the error details.

---

[API](https://skmtc.net/rws/apis/trados-cloud-platform-api.md) · [All operations](https://skmtc.net/rws/apis/trados-cloud-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/rws/trados-cloud-platform-api/revisions/d42dac7c28a3/schema)
