---
title: Optimizely Languages
slug: cms-11/dev-docs/optimizely-languages
createdAt: 2026-07-22T19:45:20.939Z
---

![](https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/dQH7PdborlKVxfDpIWZFJ-20260722-194645.png "episerverlanguages.png")

Use Optimizely Languages to export and import XLIFF files that can be sent to in-house translators or localization agencies.

`ITranslationPackageExporter` and `ITranslationPackageImporter` are interfaces used for import and export of translation packages to a project. The default implementations are `XLIFFTranslationPackageImporter` and `XLIFFTranslationPackageExporter`.

## Requirements

- No additional license fee.
- An Optimizely Content Management System (CMS) or Optimizely Customized Commerce installation.
- See [Add-ons platform compatibility](docId\:bXYbY3IauDz9fts3sKR_c) for package and version information.

## Install

- Versions 7.5 and higher are [installed through NuGet](https://nuget.episerver.com/package/?id=EPiServer.Labs.LanguageManager).
- Version 7 is installed and updated through one-click installation.

## Documentation

- Developer guide:
  - [Configure auto-translation](docId\:pVQP_1sjjsTxic8bdOdTi)
  - [Breaking changes Optimizely Languages 2.0](docId\:pVQP_1sjjsTxic8bdOdTi)
- [User guide Optimizely Languages](docId\:vKU2-nQv1hNV16PCIpBbI)

## Configure auto-translation

This section describes configuring an auto-translation service for the Optimizely Languages app. Use Optimizely Languages as its translation provider Microsoft Translator, part of the Microsoft Cognitive Services collection of APIs, available in the [Azure portal](https://azure.microsoft.com/en-us/). The following steps show how to configure the auto-translate option.

**Connect to the auto-translation service**

1. [Subscribe to Azure](https://azure.microsoft.com/en-us/), if you haven’t done so already.
2. Configure the auto-translate component in Optimizely Languages.
   1. Go to admin view > **Config** > **Tool Settings** > **Language Manager**.
   2. In the **Translator Provider**, select **Cognitive Service Translator**.
   3. In the **Subscription Key** box, enter your Microsoft subscription key (Key 1).
   4. In **Subscription Region**, enter the Location value from the Azure subscription service.
   5. Save your changes.

See also: [Reminder: Move Translator API subscriptions from DataMarket to Azure before April 30, 2017](https://www.microsoft.com/en-us/translator/blog/2017/04/10/reminder-move-translator-api-subscriptions-from-datamarket-to-azure-before-april-30-2017/).

## Breaking changes for Languages version 2

This topic describes API changes in version 2 of Episerver Languages.

:::hint{type="info"}
**Note**
Episerver Languages was renamed to Optimizely Languages.
:::

### Changed

Introduced new methods in the `ILanguageBranchManager` interface and its implementation, `LanguageBranchManager`. Compared with old methods, the difference is that the new method returns newly created content as an `out` parameter (`createdContentLink`):

```csharp
bool CopyDataFromMasterBranch(ContentReference contentReference, string fromLanguageID, 
  string toLanguageID, Func<object, object> transformOnCopyingValue, 
  out ContentReference createdContentLink, bool autoPublish = false);

bool CreateLanguageBranch(ContentReference contentLink, string languageID, 
  out ContentReference createdContentLink);

bool TranslateAndCopyDataFromMasterBranch(ContentReference contentReference, 
  string fromLanguageID, string fromTwoLetterLanguageName, string toLanguageID, 
  string toTwoLetterLanguageName, out ContentReference createdContentLink, 
  bool autoPublish = false);
```

### Marked as obsolete

The following functions in `ILanguageBranchManager` and its default implementation `LanguageBranchManager` are obsolete and are removed in an upcoming release:

```csharp
bool CopyDataFromMasterBranch(ContentReference contentReference, string fromLanguageID,  
  string toLanguageID, Func\<object, object> transformOnCopyingValue,  
  bool autoPublish = false);

bool CreateLanguageBranch(ContentReference contentLink, string languageID);

bool TranslateAndCopyDataFromMasterBranch(ContentReference contentReference,  
  string fromLanguageID, string fromTwoLetterLanguageName, string toLanguageID,  
  string toTwoLetterLanguageName, bool autoPublish = false);
```

### New dependencies

Languages 2.0 depends on newer packages: `EPiServer.CMS.Core` 9.8, `EPiServer.CMS.UI` 9.5.0
