With the Iterable Connector, translations are requested from within the Smartling platform, and translated content is automatically sent to your Iterable instance.
Once the Iterable Connector has been connected and set up, you will find Iterable content in the Iterable tab of your Smartling project. Here, you will be able to request and authorize content for translation and manage the translation process.
Not seeing your snippets? See Snippet locale matching below.
Requesting translations
Remember to include an Unsubscribe link in your email template. You can add it in the email with the "{{unsubscribeUrl}}". The integration will be unable to deliver translations to Iterable without this link.
Also, please keep the "Preheader" text and translations under 150 characters. Exceeding this limit will also have an impact on translation delivery. This character limit is supported automatically.
There are two ways of requesting the translation of Iterable content:
1) In the Iterable tab of your Smartling project, select the asset and click Actions > Request Translation. This option also allows you to bulk-select multiple assets for translation.
2) In the Iterable tab of your Smartling project, click the information icon of an asset > Request Translation. This option allows you to request translation for only that individual asset.
Both options will open the Request Translation wizard.
The Request Translation two-step wizard will appear for you to enter the Job details. You can choose to create a New Job or add the asset to an Existing Job.
- Insert the Job Name - the title for the translation task in Smartling.
- Ensure the asset selection is correct. Click the X to remove any asset listed.
- Insert a description for the linguists, if desired.
- Select the Target Languages, or alternatively, choose a Language Group
- Click Save Job and Continue to create the Job in Smartling.
-
Authorize the Job into your preferred workflow to begin the translation process.
If you save a Job for later, please don't forget to authorize it from your Jobs Dashboard.
Only email templates without errors or warnings in Iterable may be requested for translation in Smartling. If the email template has an error, such as the one captured below, you will be able to request translation but translation delivery will fail. Unfortunately, Smartling cannot alert about potential issues with the emails in Iterable.
Track the translation progress
You can track the translation progress of each asset per language from the Iterable tab.
- Go to your Iterable project in Smartling and navigate to the Iterable tab.
- Click the information icon of an asset to see the progress per language.
- For completed translations, you can also check if and when they have been delivered back to Iterable.
Alternatively, you can also track the translation progress of each Job from your Jobs Dashboard.
Downloading translations to Iterable
As translations for an asset are completed, they are automatically delivered to your Iterable instance.
Iterable supports language versioning. This means that in Iterable, each translated asset is stored within the original asset. The Connector does not create individual email templates per target language, but all translated versions are stored within the same email template. This is also applicable to all of the other content types in Iterable.
Exporting translations manually
Translations can also be exported manually to Iterable at any time. For example, the option to export translations manually can be used if you would like to retrieve translations which are saved in Smartling, but still in progress in a workflow.
To perform a manual export of translated content from Smartling to Iterable:
- From your Iterable project, navigate to the Iterable tab
- Select the translated assets to download (bulk-select and export is supported)
- Click Actions and select Export Translation
If you would always like to download saved translations to Iterable before they are fully completed in Smartling, talk to your Smartling Customer Success Manager or Solutions Architect about configuration options regarding how your Iterable Connector retrieves translated content from Smartling.
Handling updates to Iterable content
How the Iterable Connector handles changes made to your source content in Iterable is configured under General > Automation of Prior Requests for Translation in the Iterable Settings. If desired, changes to content assets which you previously submitted for translation can be detected automatically and batched up into a Job.
Translating snippets that use input parameters
The Iterable Connector is not able to parse complex Handlebars logic. If you create an Iterable snippet that expects input parameters, please be aware that Smartling only supports #assign and defaultIfEmpty Handlebars parameters. As a solution, you can extract your string into a new variable.
Example
Iterable snippet that expects input parameters
{{{ snippet "dynamic_cta_ctn" "center" "Find out more about this" "https://host.com/" "297px" }}}Extract your string to a new variable
{{#assign "title"}}Find out more about this{{/assign}}
{{{ snippet "dynamic_cta_ctn" "center" title "https://host.com/" "297px" }}}Snippet locale matching
Snippets have no locale field of their own in Iterable, so the connector has no direct way to tell a source snippet apart from one that has already been translated and written back to Iterable. To make that distinction, it identifies the source snippet by a naming convention: only snippets whose name ends with a suffix matching your project's source locale appear when using the Snippets filter in the Iterable tab of your project.
The match is exact and case-sensitive, including the region subtag when your source locale includes one:
- source locale set to en-US โ snippet names must end in _en-US (for example,
WelcomeBanner_en-US). - source locale set to en โ snippet names must end in _en (for example,
WelcomeBanner_en).
A snippet named WelcomeBanner_en-US will not match a source locale of en, and a snippet named WelcomeBanner_en will not match a source locale of en-US.
Keep the suffix and the source locale setting in sync. If you rename a snippet or change the source locale setting, confirm the two still match exactly. A mismatch isn't flagged as an error, you simply won't see the snippet listed in the Iterable tab of your project.
If the Snippets filter loads an empty list while every other content type (email, SMS, push, in-app, embedded, catalog) loads normally and the connection tests successfully, this is almost always a suffix mismatch, not a permissions or connection problem.