Skip to main content
Skip table of contents


Lilt + Contentful connector enables companies to automatically push and pull web content between Contentful and Lilt. This saves you time by providing seamless localization while letting you continue to work in the systems you know.

The Lilt + Contentful Connector is built on the principle of field-level localization. By working on a field-level localization, you can ensure localization consistency across stakeholders, while also providing a stable environment for Lilt’s connector infrastructure.

This Knowledge Base article will cover all of the necessary steps for install, configuration and use, as well as an FAQ with additional info and tips!

Installing and Configuring the Lilt Connector

  1. To install the Lilt Connector, start by going to Apps > Manage Apps in your instance of Contentful. In the list of Available apps, you will find Lilt > Install.

  2. In the Install pane, you can find more information about this Connector. You can review Lilt’s website and documentation, and send any questions to our support team.

  3. At this point, your Lilt Account Manager will provide you with your Lilt dedicated API key. To access your Contentful Management API Key, navigate to Settings > API Keys > Content management tokens. Click Generate personal token. Name the API key whatever you like, click Generate, copy the access token, and click Done. For more information about generating your Contentful Management API Key, please review the documentation linked below:

  4. Under Apps > Manage Apps, install and configure the Lilt app. To configure, enter the following:

    • Lilt API Key: Add your Lilt API key provided by your Lilt Account Manager.
    • Lilt API URL:
    • Contentful Management API Key: This is the API Key you located in step #3.
    • Choose or Create a Configuration: Choose the content types you want to translate and the Lilt Data Source (Memory) you want to use for each language pair. 
      1. Note: You'll need to ensure that locales have also been selected in your Contentful instance. Under Settings > Locales, add the locales you want content to be localized into.
  5. Finally, you can add Lilt to your Contentful sidebar. Navigating to Content Model, (and for each content type you want to enable the Lilt app for), open the content type, click on Sidebar, add the Lilt app to the custom sidebar, and click Save.
  6. Prior to a demo or a POC, you will need to provide your Lilt Account Manager with the following information to ensure that the necessary configurations are enabled for integration between your Lilt and Contentful instances. 

    1. Contentful Space ID

    2. Contentful Environment ID

    3. List of enabled Content type IDs (Pulled from Content Models)

    4. Contentful Management Token

    5. Language Pairs

    6. Confirmed Link Depth

Setting up Content Models for Translation

As Lilt works with Contentful for field-level localization, there are certain parameters that must be met within the content model to ensure a stable environment. Now that you've added Lilt as an app in the sidebar for the content models you would like to localize, there are a few final steps to ensure Lilt is ready to handle translations at scale!

There are two required fields - Lilt Status and Lilt Metadata - that will auto-populate. Activate this by completing the following:

  1. Add Lilt to your sidebar
  2. Ensure there are fields enabled for localization
  3. Go to Content > Create a new entry
  4. Re-load page to initialize the Lilt Connector
  5. Return to your content model, and you will now see that the two fields have been automatically added
  6. Change the Lilt Metadata field to “Show field when editing”. The field will automatically change to “Disabled in response”, which is the necessary setting.

Sending a Request for Translation

By adding Lilt to your content model sidebar, your team can easily view localization statuses and send requests for translation at any time using the steps below.

Project creation

  1. In Contentful, open a content piece and click the Send for Localization button under LILT in the sidebar. A popup will appear where you’ll be able to select translation type and your target languages.
  2. Select Translation Type & Target Language. If your Lilt instance has both Instant and Verified Translation configured, you will be able to select your Translation Type between the two.

    A few tips and tricks:

    1. The selection you make will persist across future localization jobs. You don’t have to set the Translation Type every time you send the entry for localization.
    2. If the entry is in a Release you can use “Manage Other Entries” to batch set the Translation Type for multiple entries at once.
    3. With both Verified and Instant Translation, the Entry isn’t pulled into Lilt right away. It will still get picked up by the scheduler like all other Contentful Entries.
    4. If you're interested in both Instant and Verified Translation and do not see the option to select Translation Type, please discuss with your Lilt Account Manager.
  3. In the same popup, you will find be able to select your Target Language either by search or checking the respective boxes. Make your language selections and click Submit.

Project Statuses

  1. Once submitted for localization, the status will change to “Ready to start.” This status is how our Connector identifies entries that are ready to be picked up for localization.
  2. Lilt periodically checks Contentful for content that has been sent for localization with Lilt. When this content is found, Lilt Projects are automatically created that contain the content to be localized. Once the content is pulled into Lilt, the content sidebar in Contentful will display In Progress.
  3. Lilt periodically checks for Projects marked as Done. When this is detected, the translated content is automatically sent back to Contentful. Your language pair statuses will update in real time as they are delivered.
  4. To view your translations, ensure you have multiple locales selected on your sidebar. Once all languages are completed to satisfactory quality, click Complete Localization to finalize the content and prepare it for publishing. 

Using Contentful Release Functionality with Lilt

The “Release” functionality in Contentful can be used to bulk export Entry IDs to send to Lilt for Translation. This is another way you can set up your workflow for the Lilt + Contentful connector.

Here's a quick walkthrough of what this process looks like as a whole!

Lilt - Contentful - Release Functionality.mp4


Q: How do I resubmit content for translation?

  • A: Delete all content in the “Lilt Status” field. (eg. Delete “Complete” or "Needs Localization"). Delete all content in the “Metadata” fields. Refresh the page, which will update the button to Send for Localization again.

Q: Why do I need to click the Complete Localization button for each job?

  • A: The Complete Localization button functions to lock the translated content files as finalized and ready for publishing. This helps ensure that any future source changes are clearly delineated as content that may require updated translation steps. Clicking Complete Localization will update the labels the Lilt platform checks so that when the time comes, it will be ready for these followup translation jobs on the same content after source updates.

Q: Can Lilt auto-confirm entries for me?

  • A:  Yes! Talk to your Lilt Account Manager to update your Lilt + Contentful connector configuration to auto-confirm entries on completion. This will change your workflow to look like the following:
    • Upon Delivery, Complete Localization is automatically configured
    • When source updates are detected, you will see a warning message in the sidebar
    • You can dismiss this warning message if needed
    • When relevant, you can then resubmit content for translation
      Auto-Complete Contentful.mp4

Q: We don't like/use the Lilt Statuses. Can we hide those to simplify the view?

  • A: Yes. This is possible through the configuration of the Lilt connector. Reach out to your Lilt Account Manager for assistance making this change.

Q: I sometimes see inaccurate statuses after I duplicate tasks in Contentful. What should I do?

  • A: Contentful's duplication feature duplicates all metadata, including the Lilt status. It is best practice to avoid duplicating tasks for any content that has already been submitted for translation. Instead, you can create a new entry to ensure that the workflow status restarts from the first stage.

Q: I get a lot of pop-up warnings about content translation when I try to publish. Is that expected?

  • A: Contentful has a robust verification system geared toward avoiding unintended content getting published. With that, even non-critical updates to files can trigger popup warnings when publishing. This is expected behavior, and these popups can be dismissed in cases where this is not relevant to any source/translation changes.

Q: Some content says it has changed, but I know the source has remained the same. What's wrong?

  • A: Contentful is extremely sensitive to source updates, which can cause it to show content as "modified" even when only metadata or non-source changes have been made.

Q: What content models should I apply the Lilt sidebar to?

  • A: Apply the Lilt sidebar to any content model you wish to send translation jobs for. These can be set up one at a time using the instructions above.

Q: The Lilt app and other buttons on the sidebar are similar and confuse some users. Can we change it?

  • A: The Contentful sidebar is customizable. In the sidebar setup page for any given content type, drag and drop the active sidebar apps to adjust the ordering.
  • A: Verified Translation will honor your link-depth strategy. (Remember that you need to share your link-depth information with your Lilt account team at the time of setup!)
  • A: Instant Translation does NOT take into account link-depth, and only directly selected entries will be sent for instant translation.

Q: Can I pull a list of Entry IDs from a release?

  • A: Add content to a release and go to your release in the Launch app. Hit "F12" on your keyboard to pull up Developer Tools in your browser and navigate to the Console tab.
    1. Click the blue carrot next to Add Content.

    2. Enter the following script in the developer tools Console box:

      x = document.querySelectorAll('td[data-test-id="checkbox-cell"] div label')
      x.forEach(c => console.log(c.getAttribute('data-test-id').replace('checkbox-', '')))
    3. Once you click "Enter", Entry IDs will populate.

    4. Copy and paste the list of Entry IDs, and reformat as needed.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.