Dynamics Translation Service (Preview)

Translation, Alignment, and Regeneration operations powered by Dynamics Translation Service.

This connector is available in the following products and regions:

Service Class Regions
Logic Apps Standard All Logic Apps regions except the following:
     -   Azure Government regions
     -   Azure China regions
     -   US Department of Defense (DoD)
Power Automate Premium All Power Automate regions except the following:
     -   US Government (GCC)
     -   US Government (GCC High)
     -   China Cloud operated by 21Vianet
     -   US Department of Defense (DoD)
Power Apps Premium All Power Apps regions except the following:
     -   US Government (GCC)
     -   US Government (GCC High)
     -   China Cloud operated by 21Vianet
     -   US Department of Defense (DoD)
Contact
Name Dynamics Translation Service
URL https://lcs.dynamics.com
Email dtssup@microsoft.com
Connector Metadata
Publisher Microsoft Corporation
Website https://lcs.dynamics.com/
Privacy policy https://privacy.microsoft.com/privacystatement
Categories Content and Files

The Dynamics 365 Translation Service connector integrates with the Power Platform, enabling users to access DTS directly from a flow or app. This connector calls the DTS API on its user's behalf, saving them a trip to the website. This connector allows for translating user interface (UI) files, regenerating translation requests, and creating translation memory (TM) files. By leveraging these functionalities, you will be able to automate your translation workflow.

Prerequisites

You will need the following to proceed:

  • A Microsoft Power Apps or Power Automate plan with custom connector feature.
  • An account with access to Dynamics Lifecycle Services.

How to get credentials

This connector uses OAuth via an Microsoft Entra ID app for authentication. Since DTS resides in LCS, you need LCS API permissions in your application. The following procedure guides you through the app registration process for an Microsoft Entra ID app for use with this connector.

  1. Sign in to the Azure portal as the user who will be used to communicate with the LCS API.
  2. Under Azure services, select App registrations.
  3. On the App registrations page, select New registration.
  4. On the Register an application page, in the Name field, enter a name for the app.
  5. Under Supported account types, select an option to specify which accounts should be supported.
  6. Select Register.
  7. On the page for your new app registration, in the left navigation pane, under Manage, select API permissions.
  8. On the API permissions page, select Add a permission.
  9. On the APIs my organization uses tab, find and select the Dynamics Lifecycle services API.
  10. Select the checkbox for the API permission that has the user_impersonation scope, and then select Add permissions.
  11. Select the button to grant admin consent for the permissions. When you're prompted to confirm the action, select Yes.
  12. In the left navigation pane, under Manage, select Authentication.
  13. On the Authentication page, under Advanced settings, set the Allow public client flows option to Yes.
  14. In the left navigation pane, select Overview.
  15. The overview page for your app registration shows the client ID.
  16. In the left navigation pane, select Certificates & secrets. From here, you can generate the client secret needed to set up the connection.

Get started with your connector

  1. Store your DTS assets somewhere from which they may be accessed from the connector. For example, you may upload them to OneDrive and use the OneDrive connector to retrieve your files.
  2. Depending on your scenario, you will want to start with either the Translate, Align, or Regenerate actions. In any case, you will need to provide a zip file with the resource or translation memory files. When translating or regenerating, you may use the Download Translation Result or Download Alignment Result operations to retrieve the results.
  3. The input for Translation, Alignment, and Regeneration are the same as in the Web UI. The input for all other operations will be the output from these.

Known issues and limitations

  • Only user interface requests are supported.
  • The Align operation returns a URL for the alignment file, but the download alignment operation takes the filename as input. You will need to manipulate the URL to extract the filename before using the Align operation.

Common errors and remedies

  • A request with status code 200 does not always indicate success. Please check the response body in case of unexpected results
    {
    "status": "InvalidSourceLanguage",
    "message": "The source language either does not match the product, or does not exist."
    }
    

Creating a connection

The connector supports the following authentication types:

Default Parameters for creating connection. All regions Not shareable

Default

Applicable: All regions

Parameters for creating connection.

This is not shareable connection. If the power app is shared with another user, another user will be prompted to create new connection explicitly.

Throttling Limits

Name Calls Renewal Period
API calls per connection 100 60 seconds

Actions

Align

Use the Align tool to create a translation memory file from previously translated native files.

Download Alignment Result

Download the alignment result.

Download Translation Result

Download the output of a translation request.

Regenerate

Regenerate a translation using updated translation memories.

Retrieve

Poll the status of a translation request.

Translate

Submit a new translation request.

Align

Use the Align tool to create a translation memory file from previously translated native files.

Parameters

Name Key Required Type Description
Product Type
productType True string

Select the product type.

Product Version
productVersion True string

Select the product version.

Source Language
sourceLanguage True string

Translation source language.

Target Language
targetLanguage True string

Translation target language.

Source File
sourceFile True binary

Native resource file.

Target File
targetFile True binary

Native Target file.

Returns

Name Path Type Description
status
status string

String describing the status of the request.

message
message string

String describing the status of the request.

Alignment Rate
alignmentRate float

Percentage of matched translation source and target translation units.

Aligned File URL
alignedFile string

URL to retrieve the alignment output.

Download Alignment Result

Download the alignment result.

Parameters

Name Key Required Type Description
File name
filename True string

Filename returned in alignment output.

Returns

Binary file content from alignment output.

File Output
binary

Download Translation Result

Download the output of a translation request.

Parameters

Name Key Required Type Description
Download Type
downloadType True string

The download type.

Translation ID
translationId True integer

The translation ID. Get this value from the translate operation output.

Returns

Binary file content from translation output.

File Content
binary

Regenerate

Regenerate a translation using updated translation memories.

Parameters

Name Key Required Type Description
Translation ID
translationId True integer

ID of translation you are regenerating.

Regenerate File
regenerateFile True binary

ZIP file with revised translation memory file(s).

Returns

Name Path Type Description
status
status string

String describing the status of the request.

message
message string

String elaborating on the status.

Retrieve

Poll the status of a translation request.

Parameters

Name Key Required Type Description
Translation ID
translationId True integer

ID of translation you are polling.

Returns

Name Path Type Description
status
status string

String describing the status of the request.

message
message string

String elaborating on the status.

parentTranslationID
parentTranslationID integer

The project this translation request belongs to.

requestName
requestName string

The name of the translation request.

productType
productType integer

The product for which the files were translated.

productVersion
productVersion integer

The version of the product for which the files were translated.

translationType
translationType string

The translation type: either documention or user interface.

sourceLanguage
sourceLanguage string

The language files were translated from.

targetLanguage
targetLanguage string

The language files were translated into.

Translate

Submit a new translation request.

Parameters

Name Key Required Type Description
Product Type
productType True string

Select the product type.

Product Version
productVersion True string

Select the product version.

Source Language
sourceLanguage True string

Language to translate from.

Target Language
targetLanguage True string

Language to translate into.

Request name
requestName True string

Name for the translation request.

Translation Type
translationType True string

The translation type. Currently, only UI translations are supported.

Source Files
sourceFile True binary

Zip file containing files to translate.

Custom MT Model
trainMTWithTM boolean

Create a custom MT system based on uploaded translation memory files.

Translation Memory files
tmFile binary

Zip file containing translation memory files.

Returns

Name Path Type Description
status
status string

String describing the status of the request.

message
message string

String elaborating on the status.

translationId
translationId integer

The translation request ID, used retrieve and download operations.

Definitions

binary

This is the basic data type 'binary'.