Skip navigation

Product changelog

  • All changes
  • Breaking changes
Showing changes in
  • Kentico Kontent app
  • Custom elements API
  • Delivery API
  • Management API
  • Recommendation API
  • SDKs and tools
  • Webhooks
  • Docs & tutorials

Subscribe to all changes via RSS or breaking changes via email .

Files used by assets can be updated via API

The Upsert an asset endpoint in Management API v2 now lets you update the file_reference you get after uploading a file. This means you can programatically change the file used in specific assets.

Breaking changes newsletter

Besides viewing all changes from the Kentico Kontent Docs portal in your RSS reader, you can now follow all Kontent's breaking changes via email. Emails with a breaking change will be sent out right after its publishing here in the changelog. This way, you don't need to look for them proactively and still prepare for any breaking change in advance. Subscribe by clicking a link at the top of the changelog.

Structured text, more formatting, and images in tables

Tables now allow headings, lists, and more text formatting options in addition to bold, italics, and links. Also, you can insert images. See how to use tables in rich text.

Rich text in a table including images, lists and headings.

Table with images, lists, and headings.

In your content types, you can separately limit the formatting options for tables just like you can for the text itself.

Configuration of allowed text formatting in tables.

Configuration of allowed text formatting in tables.

New macros for preview URLs

You can now use two new macros while defining preview URLs for your content types. The new {Codename} macro resolves to the codename of a content item and the {ItemId} macro resolves to the internal ID of a content item.

Manage project environments

Environments provide a way to make changes in isolation from your production project. Use environments to prepare changes for your production project in a safe place. Your developers then take care of propagating those changes to production.

Webhook triggers for Preview API

Added Delivery Preview API events that you can choose to trigger your webhooks. These events can be triggered for changes in content items and taxonomy groups. See webhooks reference for details.

Checking your content structure

You can now browse content items in a hierarchical form using the new Relations tab.

Assigning roles in different languages

You can now assign multiple roles in different languages to invite users with language-specific access to your project.

Animation showing how to invite user and assign multiple roles.

New deep-dive content modeling guide

So that you have better guidance during content modeling, one of the most important parts of any content project, there's now a new content modeling section available that explains what content modeling is, how to start, and how to go live. Moreover, you can get some inspiration from our existing customers.

With that, the docs tutorials are now sorted within a slightly different page tree with new names. If you bookmarked any old URL, though, all URLs will still work.

Restore multiple content items at once

If you have multiple items in the Archived workflow step and you need to start working on them again, you can now select these items in your content items list and move them to the first step your role can work with using the Restore action.

Tasks in content items

You can now create and assign tasks within content items to delegate responsibilities and track progress of your content creation.

Archiving content and a new workflow step

Your projects will now contain a new default workflow step named Archived, which comes after the Published step. After you unpublish an item, you'll find it in the Archived step. Unpublished and archived content will no longer be mixed up with items in the Draft and other workflow steps in your content list. If you later decide that you need to work on an archived item again, you can restore it to the first available step.

Custom elements full-text search support

Custom elements can expose a plain text value that will be searchable in the content items list. See Custom element API and Management API reference for more information.

Sharing filters in the content item listing

You can now share your active filters in the content item listing with your colleagues via link.

Example of shared filters

API changelog evolves into product changelog

The changelog will now contain product changes as well. Use the new filter on the right (or at the top on mobile devices) if you're interested in a specific part of Kontent.

Changes to the unpublish and create new permissions

The permissions to Create a new version and Unpublish were split. The permissions can be assigned separately to the roles in your project via the Published workflow step. Make sure to verify who can unpublish content in your project and limit the permission only to select roles.

Markdown shorthands in rich text editor

You can now use markdown shorthands to create headings and lists when editing text in the rich text editor.

Animation showing how to use markdown shorthands

Saving filters in the content item listing

You can now save filters in the content item listing so that you can find the right content even more quickly and don't need to select the filters again every time.

Saving filter buttons

Commenting on all content elements in all workflow steps

You can now add comments to all content elements in all workflow steps. That also applies to custom elements and published content items.

Duplicating content types

When you need to create a similar type that has a lot of content elements, you can now create a copy of the content type and save some time.

Duplicate option in content type editing

Faster revision comparing

Comparing revisions of content items is now significantly faster for larger items with a lot of rich text elements.

Maximum length of the content item name increased

Names of content items can now contain up to 200 characters (instead of original 50) to better support more descriptive titles.

Configuring columns in the content item listing

You can now configure what columns will be shown in the content item listing in your project. Hide those columns that you don't use or don't want to see.

Column visibility configuration in content inventory

Addition to webhook triggers

Added new webhook triggers for content items. The new content item events are create, delete, and restore. Whenever someone creates new content in your project or deletes items in any language, you can use the new events to trigger an integration with the Management API.

Discarding unpublished changes

You can now discard unpublished changes made to your content so they don't clutter your project when a user accidentally creates a new version.

Discarding a draft

Choose scope for full-text search within content items

You can now select a scope that will be used for searching within content. You can choose to search either within content item names only or within all content elements of your content items.

Selecting a scope for search

Delivery API limitation

On February 1, 2020, introduced the following changes to the Delivery API to ensure our Fair Use PolicyOpens in a new window:

  • The List content items endpoint will return max. 2,000 items (including linked items).
  • A rate limit will be applied to uncached requests to the Delivery API, resulting in a 429 Too Many Requests error when the limit of 100 requests per second is reached. This won't affect requests that hit our CDN cache.

Deleting projects

You can now delete projects in your subscriptions. Be careful, though, deleting a project is irreversible as all project data are removed. If unsure whether you can delete a project, you can always archive it instead.

Deleting project dialog

New URL for Custom elements JS API

The Custom elements JS API is now available at a new URL: https://app.kontent.ai/js-api/custom-element/v1/custom-element.min.js. The previous URL https://app.kontent.ai/js-api/custom-element.js has been deprecated and will stop working after a few months. We recommend using the new URL for any custom elements that you plan to create. The previous URL temporarily redirects to the new one, which means your existing custom elements will continue to work.

Request conflict resolution in Management API

The Management API may now return a 409 Conflict status code whenever a single resource (such as content type or snippet) is modified via multiple requests at the same time.

Including images in the Guideline element

 You can now add images to the Guidelines element to advise your content editor more effectively when they're creating content.

Changes to Management API v2

On December 11, 2019, we introduced the following breaking changes:

  • The endpoint for getting taxonomy groups returns a paginated response instead of an array of taxonomy objects. To unify the data format across the API, you will get the list of taxonomies wrapped in a JSON object which includes paging. If you use our JavaScript SDKOpens in a new window, you can use the latest version which accepts both the old and new format of the endpoint. If you use your own implementation, you will need to change the code to accept the taxonomies in this new format.
  • The endpoints for modifying content types and modifying content type snippets use the path parameter instead of the referenceparameter. Currently you can use both parameters. After this change, the reference parameter will be deprecated and only path parameter will work.
  • The endpoints that return paginated responses accept only the x-continuation header parameter for paging. The continuationToken query parameter will be deprecated.
  • The URL slug element's  mode property is required instead of optional.
  • When specifying elements in content type snippets using codename references, the element codename must be prefixed with the snippet codename. The stable version of the API will no longer accept non-prefixed codenames such as element_codename and requires prefixed codenames such as snippet_codename__element_codename. This is the same format as displayed in the UI when copying codenames of elements in snippets.

JavaRx Delivery SDK and Swift Delivery SDK renamed

In relation to the recent rebranding to Kentico Kontent, additional SDK packages have been updated to reflect the new naming and are now available at the following locations:

Changes to codenames of content items in the Management API

Added support for setting codenames when creating or updating content items via the Management API. To avoid breaking changes in version 1 of the API, updating the name property of an item causes the codename to autogenerate based on the new name. In version 2, the codename remains unchanged.

.NET Management SDK, Express Apollo boilerplate, GraphQL generator, and Gridsome plugin renamed

In relation to the recent rebranding to Kentico Kontent, additional SDK packages have been updated to reflect the new naming and are now available at the following locations:

Components in Management API v2

Rich text element objects in language variants were extended with a new components property. The property contains all components inserted into the value of the rich text object. You can specify components when working with language variants.

Total count of items in Delivery API

Added support for retrieving total count of content items matching your query when listing content items via the Delivery API. To get the total number of items, use the includeTotalCount query parameter set to true in your request. This will cause the pagination object to include the total_count property with the total number of items. You can use the new property to build pagination mechanisms in your apps.

Changes to URL slug element model

The URL slug element in language variants lets you specify the element's mode via the new mode property. With the mode property, you can programmatically choose whether the URL slug element's value is generated automatically or assigned manually.

Java Delivery SDK renamed

In relation to the recent rebranding to Kentico Kontent, the Java Delivery SDK package was updated to reflect the new naming and is now available at https://github.com/Kentico/kontent-delivery-sdk-javaOpens in a new window.

Changes to content type and content type snippet PATCH requests

For Management API v2, PATCH requests to modify content types and content type snippets have been slightly modified to make references to given objects less ambiguous. To replace the property_name and reference body parameter, a new path body parameter has been added to specific the specific object that should be modified.

The property_name and reference parameters will continue to work for some time, but it is recommended to switch over to using the the path parameter.

Change to sign-in URL

The domain used when signing in to Kentico Kontent has been changed to https://login.kontent.ai. Users will be redirected to this domain automatically when accessing https://app.kontent.aiOpens in a new window without being signed in.

Asset model change in Management API

The asset objects retrieved via Management API v1 and v2 now contain a new url property with a URL to the binary file.

Asset folders added to Management API

Added support for managing asset folders via Management API v2 using the /folders endpoint with GET, POST, or PATCH operations. Use GET /folders to retrieve a list of your folders, POST /folders to create initial folder structure, and PATCH /folders to modify existing folders. For example, the modification includes operations such as adding "op":"addInto", renaming "op":"rename", and removing "op":"remove".

SDK packages renamed

In relation to the recent rebranding to Kentico Kontent, SDK packages are being updated according to the new naming.

New SDK packages:

New boilerplate packages:

New sample apps:

Please note that the packages contain new endpoint URLs (https://*.kontent.ai) and the namespaces have been updated accordingly to Kentico.Kontent.*.

Changes to paging in Management API v2

The continuationToken query parameter has been deprecated and replaced with the x-continuation request header. The change affects endpoints that return a dynamically paginated list of objects. The original query parameter will continue to work until the end of November 2019.

Changes to references in taxonomy and language updates

The way PATCH operations to modify taxonomy groups and languages work with references has been changed.

For the Modify a language endpoint, the reference body parameter has been removed. The operation will be applied to the language specified in the language_identifier path parameter.

For the Modify taxonomy groups endpoint, the reference body parameter is optional for the replace and addInto operations. If a reference is not specified, the operation will apply to the taxonomy group specified in the taxonomy_group_identifier path parameter. If a reference is specified, the operation will apply to the specified term. The reference body parameter is still required for the remove operation.

Changes to content item PUT requests

The sitemap_locations property has been made optional for the body of the content item upsert requests for Management API version 1 and version 2.

API URLs changed

The API URLs have changed to:

  • https://deliver.kontent.ai/ for the Delivery API
  • https://preview-deliver.kontent.ai/ for the Preview Delivery API
  • https://manage.kontent.ai/v2/ for the Management API v2 (BETA)
  • https://manage.kontent.ai/v1/ for the Management API v1
  • https://recommendations.kontent.ai/ for the Recommendation API (BETA)

The original URLs containing kenticocloud.com will still be functional until further notice. However, we recommend that you update your SDK to the newest version or change the URLs to ensure your applications are always operational.

Webhook triggers extended

The types and operations for webhooks were extended to newly include change_workflow_status as webhooks can be triggered on changes to the workflow step an item is in.

Element limitations in the Management API

Version 2 of the Management API now includes limitations for elements in content types. The API now returns information about limitations in content type responses (all kinds of requests). See example responses in the content type model.

Webhook notification model change

The webhook notification model was extended with the id property for content items and taxonomy groups. With the ID in the notifications, you can uniquely identify any items or taxonomy groups that were modified, even if they were renamed and their codenames changed.

  • JSON
{ "data": { "items": [ { "id": "e5d575fe-9608-4523-a07d-e32d780bf92a", "codename": "where_does_coffee_come_from_", "language": "en-US", "type": "article" } ], "taxonomies": [ { "id": "4794dde6-f700-4a5d-b0dc-9ae16dcfc73d", "codename": "personas" } ] }, "message": { "id": "e1b372a2-1186-4929-b370-904c59f060b7", "project_id": "bf32e7ab-85c3-0073-47b9-90838a8462de", "type": "taxonomy", "operation": "upsert", "api_name": "delivery_production", "created_timestamp": "2019-07-18T10:52:33.1059256Z", "webhook_url": "https://myapp.com/webhook-endpoint" } }
{ "data": { "items": [ { "id": "e5d575fe-9608-4523-a07d-e32d780bf92a", "codename": "where_does_coffee_come_from_", "language": "en-US", "type": "article" } ], "taxonomies": [ { "id": "4794dde6-f700-4a5d-b0dc-9ae16dcfc73d", "codename": "personas" } ] }, "message": { "id": "e1b372a2-1186-4929-b370-904c59f060b7", "project_id": "bf32e7ab-85c3-0073-47b9-90838a8462de", "type": "taxonomy", "operation": "upsert", "api_name": "delivery_production", "created_timestamp": "2019-07-18T10:52:33.1059256Z", "webhook_url": "https://myapp.com/webhook-endpoint" } }

You can now specify titles for web URL links in Rich text elements to improve SEO of your website. When you specify a link title in the UI,  the title will be rendered in the API responses from the Delivery API and Management API v2.

  • JSON
# Delivery API "content": { "type": "rich_text", "name": "Content", "images": {}, "links": {}, "modular_content": [], "value": "<p><a href=\"http://www.kenticocloud.com\" title=\"#1 CMS\">Kentico Cloud</a></p>" } # Management API v2 { "element": { "id": "0ddd5a94-0360-5126-92e6-264dfbb61849" }, "value": "<p><a href=\"http://www.kenticocloud.com\" title=\"#1 CMS\">Kentico Cloud</a></p>" }
# Delivery API "content": { "type": "rich_text", "name": "Content", "images": {}, "links": {}, "modular_content": [], "value": "<p><a href=\"http://www.kenticocloud.com\" title=\"#1 CMS\">Kentico Cloud</a></p>" } # Management API v2 { "element": { "id": "0ddd5a94-0360-5126-92e6-264dfbb61849" }, "value": "<p><a href=\"http://www.kenticocloud.com\" title=\"#1 CMS\">Kentico Cloud</a></p>" }

Image resolution in Delivery API

Extended the asset model with the width and height properties. This applies to assets used in the Asset and Rich text elements. With this enhancement, you can, for example, render placeholders for images in your application before the assets themselves are loaded.

  • JSON
"teaser_image": { "type": "asset", "name": "Teaser image", "value": [ { "name": "coffee-beverages-explained-1080px.jpg", "type": "image/jpeg", "size": "90895", "description": null, "url": "https://assets-us-01.kc-usercontent.com/38af179c-40ba-42e7-a5ca-33b8cdcc0d45/e700596b-03b0-4cee-ac5c-9212762c027a/coffee-beverages-explained-1080px.jpg", "width": 1000, "height": 666 } ] }
"teaser_image": { "type": "asset", "name": "Teaser image", "value": [ { "name": "coffee-beverages-explained-1080px.jpg", "type": "image/jpeg", "size": "90895", "description": null, "url": "https://assets-us-01.kc-usercontent.com/38af179c-40ba-42e7-a5ca-33b8cdcc0d45/e700596b-03b0-4cee-ac5c-9212762c027a/coffee-beverages-explained-1080px.jpg", "width": 1000, "height": 666 } ] }

Content models in the Management API

Added support for managing content types, content type snippets, and taxonomy groups in the Management API v2. You can use the new endpoints to import content models from other systems, integrate with third party services, or synchronize changes across multiple projects (Continuous Integration).

Workflow steps in the Management API

Added endpoints that let you programmatically create new versions of your content as well as publish, schedule publishing, or unpublish your content. This is especially useful for automating your work or enriching your content with data from other sources. Learn more about Workflow in the Management API v2.