Product Updates

DatoCMS changelog for new features and general improvements
UI Improvement

Pre-filter linked records with saved filters

February 18th, 2026

If you've ever had editors accidentally linking the wrong records because the list was too broad, this one's for you. When linking records, the list of available items can get overwhelming, especially when it includes outdated or irrelevant records that editors shouldn't pick (like records still in drafts).

To address this, we've introduced a way to pre-filter linked records with saved filters, letting you control exactly which records appear when editors browse items to link.

What's new?

The standard editors for Single and Multiple Link fields (compact and expanded) now include a new settings section. Here, you can pair each linked model with one of your saved shared filters, so editors only see the records that they should.

How do I enable it?

Head to the Presentation tab in your Link field settings. You'll see the new Applied Filters section right away: just pick a model, choose a filter, and you're done. If you need more filters, create more saved filters in the Content Area to configure another.

The only prerequisite is that you need at least one shared saved filter for the models you want to filter. Private filters aren't available here.

Images API Video API New

New media editor for images AND videos

February 13th, 2026

We've rolled out considerable changes and updates to the media editor inside the CMS's Media Area. The new update brings changes to editing images, and introduces in-CMS video editing.

If you need to edit an uploaded image, you can use the built-in editor to crop, rotate, apply predefined color filters, tweak colors, and resize images:

Similarly, if you need to edit an uploaded video, you can also do this in the CMS now, with options to trim, add filters, and other similar edits.

After you're done editing your asset, you can choose to save it as a duplicate (available under a new URL), or replace the original asset and retain the URL.

New UI Improvement Plugins

Introducing Visual Editing

February 10th, 2026

We've rolled out big changes to how editors and content creators can interact with content in DatoCMS. Instead of navigating through forms and fields in the CMS interface, editors can now see their content exactly as it appears on the live site, click directly on any element to edit it, and watch changes appear instantly.​​​​

Visual Editing lets your content editors click directly on any element of your website and edit it in DatoCMS — no more hunting through record forms, switching tabs, or guessing which field maps to which headline. Available on every plan, including Free.

Visual Editing supports two workflows. Use either one, or both depending on which approach suits your content editors best.

Click-to-edit: Content Link on your website

This is the simplest setup. Editors visit your website in draft mode, hover over content to see what's editable, and click to open DatoCMS in a new tab. It works entirely on your frontend.

This also works entirely on your website, no DatoCMS plugin required. It's a great starting point that already provides significant value to editors.

Visual Mode: Side-by-side editing in the CMS

We made major updates to the Web Preview plugin to give editors the ideal setup: preview on the left, edit panel on the right, click anything, edit immediately, see it update live.

When they click on content, the edit panel opens instantly in the same view with no tab switching required.

This plugin also enables you to have preview links in the CMS sidebar, have bidirectional navigation (scroll either panel, the other panel will keep up with context), and give you full-screen Visual Editing mode.

Getting started

We're making it as easy as possible for you to get started with Visual Editing.

We have dedicated SDKs and in-depth integration guides for React/Next.js, Astro, Svelte/SvelteKit, and Vue/Nuxt. Each provides its own <ContentLink /> component (or equivalent) that handles detection, overlay rendering, and keyboard shortcuts. Drop it into your layout, and you're done.

Want to see them in action first? Clone one of our starter kits — they come pre-configured with Draft Mode, Real-time Updates, Content Link, and Web Previews already wired together!

UI Improvement

Separate controls for record links and inline records in Structured Text fields

January 28th, 2026

You can now choose whether editors can link to records, embed them inline, or both, independently controlling each option in your Structured Text fields.

The problem

Structured Text fields let editors reference other records in two ways: as clickable links or as embedded inline content. Until now, these were bundled together. If you enabled record references, editors got both options in the menu, even if you only wanted one. This meant developers had to handle two different content structures in their code when they only needed one.

What's new?

The Presentation tab in your field settings now includes separate toggles for Link to record and Inline record, alongside other editor features like Blockquote and Heading.

This gives you cleaner content structures. If you only want editors to link to products without embedding them inline, just disable Inline record. Your GraphQL queries and rendering logic only need to handle the shape you actually use.

Compatibility

All existing Structured Text fields will have both options enabled by default, so everything continues working exactly as before. To change the behavior for a field, open its settings and adjust the toggles in the Presentation tab.

Content Delivery API Content Management API New

Include milliseconds in date serialization

January 16th, 2026

We've added an opt-in configuration option to include milliseconds in date serialization across both the Content Delivery API (CDA) and Content Management API (CMA).

The problem

Until now, DatoCMS APIs serialized dates without milliseconds (e.g., 2025-12-05T00:01:00-05:00), even though the underlying data stores full millisecond precision.

When customers sort records by date, items with the same timestamp (when rounded to seconds) appear out of order. This looks like a sorting bug, but it's actually correct behavior—the records have different millisecond values that simply aren't visible in the API response.

What's new

You can now opt-in to include milliseconds in date serialization. Once enabled, both APIs return full precision:

GraphQL CDA:

{
allBlogPosts(orderBy: createdAt_DESC) {
createdAt # Returns "2025-12-05T14:30:00.345+00:00"
}
}

REST CMA:

{
"data": {
"attributes": {
"created_at": "2025-12-05T14:30:00.345+00:00"
}
}
}

This allows you to see the full precision of date fields, makes sorting behavior transparent and predictable, and ensures consistent date formats across both APIs.

How to enable it

The change is opt-in at the project level to ensure backward compatibility. Navigate to Configuration / Available Updates and enable the "Include milliseconds in date serialization" option.

Images API Content Delivery API New

Replace assets without breaking existing URLs

January 13th, 2026

This has been one of our most requested features, and it’s finally here: you can now replace assets in your DatoCMS project while keeping the original URL.

When replacing an asset, you now have two options:

  • Create new URL (existing behavior): The new asset is available immediately, but with a fresh URL. The old URL will be purged from cache and will disappear after complete propagation. Use this when you need immediate availability of the new file.

  • Keep the original URL (new!): Existing links will continue to work automatically, but changes may take 5-10 minutes to appear everywhere due to CDN and browser cache propagation. Some users may temporarily see the old version. Use this when you have many existing references and want to avoid updating URLs.

Limitations

Assets can only be replaced keeping the original URL if:

  • The new asset has the same file format as the original (for example, JPEG → JPEG).

  • You are using DatoCMS’s default asset manager. This feature is not supported when using custom Enterprise asset storage (S3/GCP).

For full details on the related API changes, see the CMA documentation.

Content Management API

Improving the items listing in CMA

January 7th, 2026

We're changing the default behavior when you list all records in the Content Management API to better reflect modern content workflows. The default version parameter will change from published to current, giving you access to the latest version of your content by default.

What's changing

When you list all records without explicitly specifying a version parameter:

  • Previously: The endpoint returned only published records (version: "published").

  • Now: The endpoint will return the latest available version of each record (version: "current"), which may include drafts, updated content, or published records.

Who is affected by this change?

This change will apply to all brand new DatoCMS projects created from today onwards. If you have an existing project that you'd like to update, you can manually opt-in to this behavior in the Environment Settings.

Please note that this change cannot be undone, so we strongly recommend testing the effects in a sandbox environment before applying the change to your primary environment.

Existing projects that do not opt-in will maintain the current default behavior (published).

Why we're making this change

This new default aligns better with common use cases:

  • API consistency: When you retrieve a record, it already returns the latest version by default (current). This change makes listing all records behave consistently with retrieving a single record.

  • Developer expectations: This matches the behavior developers typically expect when fetching content programmatically.

What you need to do

For new projects created from today onwards: If you want to receive only published content instead of the latest version, simply add the version parameter explicitly:

const records = await client.items.list({
version: "published", // Explicitly request only published records
filter: {
type: "blog_post"
}
});

For existing projects: Your project will continue to use the current default (published) unless you manually opt-in to the new behavior via Environment Settings. We recommend testing the change in a sandbox environment first.

More information

For complete details on the version parameter and how to filter by publication status, see our List all records documentation.
If you have questions or concerns about this change, please reach out to our support team.

Security New

See Last Used Time for API Tokens

December 16th, 2025

Its now easier to understand the usage of API tokens associated with your project.

We've made their "Last Used Time" visible across your project settings, making it helpful for projects with many tokens to see each one's activity on the CMA and CDA.

If a token was last used months ago, its probably safe to get rid of them.

To see tokens and their usage, head over to Project Settings > API Tokens and select the token you want to see the associated activity for.

Plugins

Reactive plugins

December 4th, 2025

We've just rolled out a significant improvement to the plugin scope: as of today, plugin settings are synced across multiple users in real time, just as we do for records and other entities.

What's new

Until today, plugin data were loaded into DatoCMS at a few predefined moments: when opening the CMS, after installing a new plugin, and... that was pretty much it. That caused issues in some non-trivial cases involving plugins with complex parameters: if multiple users updated a plugin's settings at the same time, they risked overwriting each other's changes.

We solved the problem with the same approach with many other entities of DatoCMS: now the changes to plugin parameters are propagated to other users instantly, so that they always see the last version of it.

CLI New

New CLI command to call any DatoCMS API method directly

December 4th, 2025

You can now run any DatoCMS API method straight from our CLI with the new cma:call command. No need to write custom scripts anymore, just call the method you need directly from your terminal.

The command dynamically discovers all available resources and methods from @datocms/cma-client, so you're always working with the latest API surface.

Key features:

  • Dynamic discovery: All resources and methods are automatically available

  • Smart validation: Validates request body requirements and prompts for --data when needed

  • Flexible parameters: Supports URL placeholders via positional arguments and query parameters via --params

  • Helpful errors: Clear error messages with suggestions when something goes wrong

Perfect for quick API calls, testing, automation scripts, or when you just need to run a one-off command without spinning up a full script!

Start using DatoCMS today
According to Gartner 89% of companies plan to compete primarily on the basis of customer experience this year. Don't get caught unprepared.
  • No credit card
  • Easy setup
Subscribe to our newsletter! 📥
One update per month. All the latest news and sneak peeks directly in your inbox.
support@datocms.com ©2026 Dato srl, all rights reserved P.IVA 06969620480