Update and Publish Localized Content with Ease

Working with content that has multiple languages can be tedious at times. Updating or publishing the localized and unlocalized versions of a content entry involves constantly toggling between languages.

To simplify managing multi-language content, we have introduced two localization features: non-localizable fields and bulk publish localized content entry versions.

What is Non-Localizable Field and How to Use It

There may be fields in your entry that do not require translation in all localized versions. For example, a URL field (such as a link to profile page) that should remain the same in all languages or an image (such as a profile image) that is common for all localized copies. You can now mark these fields as “non-localizable” when creating the content type. Fields marked as “non-localizable” are editable only through the entry in the master language.

This ensures that only the required content gets localized and the data of the non-localizable field remains consistent across all localized copies of the entry.


Learn more about how to use non-localizable fields in your content types.

Bulk Publish Localized and Unlocalized Content Entry Versions

Previously, localized versions of an entry had to be published by going to the localized entry version for that language and publish from there. Contentstack now allows you to bulk publish all localized and unlocalized versions of a content entry right from the master language entry. This avoids the need to switch between language tabs and publish those entry versions separately.

For example, consider you have a multi-language site that serves content in multiple languages: English (United States), French (France), Spanish (Spain), and Japanese (Japan), and you make changes to all the localized versions of a single entry. Now, instead of publishing each localized entry version separately, you can bulk publish them right from the master language entry version.). Note that when you bulk publish entry versions of different languages, the latest version of the localized entries is sent for publishing.


Read more about bulk publishing entries in different languages.

Read More

Referencing Multiple Content Types

With our latest release, we have upgraded our existing Reference field to make it more flexible than before. The new Reference field now allows a content manager to add references to entries of more than one content type.

What’s New with the Reference Field

The Reference field helps you add references to the entries of another content type. For example, the “Author” Reference field in your “Blog” content type refers to the “Blog Writers” content type. So, while creating an entry, instead of adding the author details manually in the “Author” field, the content manager can add a relevant entry of the “Blog Writers” content type. This is how the Reference field worked until now.

So, what’s new?

While creating a content type, you can now link more than one content type to a Reference field. So, instead of just linking “Blog Writers,” you can also link “Marketing Writers,” “Technical Writers,” and “Legal Writers” to the “Author” Reference field.

Subsequently, while creating an entry for the “Blog” content type, the content manager can add any entry from the above mentioned content types as a reference to the “Author” field.

Note: Stacks created after this release will get the new Reference field by default. To use the feature in existing or older stacks, you need to upgrade the Reference field within the content type.

How to Upgrade a Reference Field

To start using the new Reference field, perform the following steps:

  1. Edit the Properties of the existing Reference field within the content type.
  2. Click on Upgrade.
  3. Save the entry.

This allows your Reference field to include multiple reference content types (max 10 content types) in a single instance.

Likewise, you can revert your upgrade by clicking on the Revert button provided in the properties section. This will downgrade your Reference field back to the older version.

Refer to our documentation to learn more about adding multiple content types to a Reference field and adding entries of referred content types.

How Multiple Content-Type Referencing Affects Functionality

Upgrading your existing Reference fields results in API changes. The primary change is that the input format of your Reference field changes from an array of strings to an array of objects. The change in the Reference field format is as follows:




"ref_field": ["entry_UID1", entry_UID2,...]





    "ref_field": [{

      "uid": "blt1111fe11e111111f",

      "_content_type_uid": "footer"

    },{ }, ...



You can refer to the API Changelog document for more details.

SDK Users

If you have used an SDK for developing your digital property, you will need to update the SDK to the latest version to start using the upgraded Reference field.

Refer to our SDK documentation for more details.

DataSync Users

We have updated DataSync and added support for the new Reference field. DataSync users can refer to the DataSync documentation to learn how they can start using the new Reference field.

Helpful Resources

If you haven’t tried it yet, log in to your Contentstack account and check out the new Reference field. For more details, refer to the links below:

Read More

Saving In-Progress Entries

In this week’s release, we introduced the ability to save content with empty required fields. Let’s understand this feature in detail.

What Is an In-Progress Entry?

An entry is a piece of content that you create using a content type. An in-progress entry is an entry that includes one or more mandatory fields with no set value. Previously, Contentstack did not allow saving entries if the required fields were left blank. While it was helpful for validation, such an implementation made it impossible for content managers to navigate away from content entry midway, for example, to edit content later or to create entry references.

Note that the “mandatory” field validation is checked when publishing the entry.

Why Allow Saving In-Progress Entries?

The following lists some situations where saving in-progress entries is beneficial.

Avoid data loss: The ability to save entries with no values in mandatory fields allows you to save data at any time while editing. Being able to save data helps guard against data loss that may arise to a sudden power outage or a system crash.

Edit in multiple sessions: You may want to work on an entry over a long period of time, due to the size or complexity of the entry. In such cases, you can save the entry as incomplete and come back later for further editing.

Create references on the go: While creating an entry, you may want to create reference entries on the go. However, to do that, you have to navigate away from the parent entry page. Saving in-progress entries makes this easier and helps ensure content is up to date without any loss of data.

How to Save In-Progress Entries

Saving in-progress entries is not different than saving a normal, complete entry. To save an in-progress entry:

  • Go to the entry page
  • Add content (you can choose to skip adding values to the mandatory fields)
  • Click "Save"

This saves the entry as being in progress.

There are, however, certain limitations on the actions that you can perform on in-progress entries. Read more about them below.

Note: This feature is not available by default. To enable in-progress entries for your organization, contact us a

What You Cannot Do with In-Progress Entries

An important point to note is that entries cannot be published until they are complete. In fact, all the actions related to publishing the entry cannot be performed for in-progress entries. This means that the in-progress entries:

  • Cannot be published
  • Cannot be added to release
  • Cannot be scheduled for publishing
  • Cannot be part of bulk publishing
  • Cannot be sent for publishing as reference

So all rules that were applicable to publishing are still the same, ensuring that only complete content can go live.

Read more about saving in-progress entries.

Read More

Contentstack Introduces Advanced Language and Localization Features

Delivering content in multiple languages enables businesses to serve their customers better across geographies and improve engagement. However, performing tasks related to multi-language content—from the translation of content to uploading and managing the translated content—can be tedious and tricky at times.

Contentstack understands this, and that’s why we are delivering new features and capabilities that ease the process of managing the content of multiple languages.

Fallback Languages For Easy Localization

Contentstack is introducing the ability to select the fallback language for the languages of your stack. It lets you specify which language to use as source content if the entry does not exist in the specified language.

For example, let’s consider that ‘English - United States’ is the master language of your stack. The fallback language of ‘French - France’ is ‘English - United States,’ and the fallback language for ‘Spanish - Spain’ is ‘French - France.’


Now, while creating an entry for ‘Spanish - Spain,’ Contentstack will fetch data from ‘French - France’ to show the unlocalized entry. You can then use (and modify) this inherited content to localize the content in ‘Spanish - Spain’.

The flexibility of specifying a fallback language makes the process of localization quicker and less painful for content managers. Read more about specifying a fallback language.

Adding Support For Generic Languages

Until now, Contentstack provided support for country-specific languages that allowed you to deliver content to specific markets (for example, ‘English - United States,’ ‘English - United Kingdom,’ ‘French - France,’ ‘French - Canada’).

Contentstack now supports generic language options. A generic language is a language that is not tied to the corresponding region it is spoken in. So, for example, you can now add the generic language of 'Spanish' to your stack, instead of requiring you to associate the language with a region, such as 'Spanish - Bolivia,' 'Spanish - Argentina' or 'Spanish - Spain.'

Read more about how generic languages work in Contentstack.

Read More

Contentstack Headless CMS Analytics

At Contentstack, we strive to provide tools that enable you to make informed business decisions.

Our latest release—featuring all-new Analytics dashboard—does exactly that. It gives an overview of your organizations' usage of Contentstack. It shows how the users of your organization are using Contentstack as well as how your organization APIs are being consumed.

This analytics data provides valuable insights that allow the organization owner and admins to analyze usage and manage network load.

Let’s look at the various sections of the new Analytics dashboard.

View Usage of Contenstack Entities

The Usage Overview section gives a quick overview of the usage of the different entities within your organization, such as stacks, content types, entries, assets, and users. It also displays the maximum allowed usage limit for the entities, if applicable.


The Usage by Stacks section offers a granular view of the usage at the stack level. It helps you identify stacks that are being used heavily and stacks that have light usage.


Check API Usage and Analytics

The API Usage by Type table shows the usage of and the bandwidth consumed by the four types of APIs that Contenstack currently offers – CDN, Images, Assets, and Content

Lastly, the Top URLs section shows the list of most-used URLs of your organization. You can refine the list by filtering it by API types.


Use Quick Filters

You can view API usage data of the last 30 days or a custom date range within the last 30 days by using the ‘Duration’ filter. You can also apply stack-based filters to view API usage data of a specific stack.


Getting Started

It’s easy to access the new Analytics dashboard. If you are the owner or admin of an organization, follow the steps below to access your Analytics Page/Dashboard/Hub:

  • Step 1. Open the list of organizations.
  • Step 2. Go to organization settings.
  • Step 3. Click the ‘Analytics’ tab in the header.

This displays the usage analytics of your organization.

Read more about the Analytics dashboard on our documentation site.

Read More