Product Changelog

Stay up-to-date with all the improvements, features, and changes introduced to the product, APIs, docs, and other resources.

rss_feedSubscribe to RSS Feed

We’ve added branch support for Variants, so you can build and test personalized content in an isolated branch before making it available on your main branch. Entry variants are no longer limited to the main branch.

You can now:

  • Manage variant configuration on any branch: link content types and create entry variants in a development branch, isolated from main.
  • Keep variant groups consistent: a variant group and its variants stay global across branches, while content type assignment and entry variants remain branch-specific.
  • Test personalization in isolation: onboard to Personalize or run an A/B test without affecting production content on main.
  • Merge variant groups across branches: merge variant group configuration from a compare branch into a base branch using the Content Management API, with five merge strategies.

Note: Merging variant groups is available through the API. Workflow status is not included in the merge.

Check our documentation for full details, or contact support for more information.

We are excited to announce the MCP Client tool in Agent OS Agents, enabling you to connect your agents to any remote Model Context Protocol (MCP) server and use its tools automatically, no custom integration code required.

MCP Client Tool: A new tool available in the Agent OS agent builder that connects your agent to any remote MCP server over HTTPS.

  • Connect once and your agent gains access to all tools the server exposes, or the specific subset you approve.
  • Support for two authentication methods: Header-based authentication (API key or token) and OAuth 2.1 (sign-in via provider consent screen).
  • OAuth supports both automatic setup via Dynamic client registration and manual setup for providers that require a registered OAuth app.
  • Allowed Tools selector lets you either allow the AI to choose freely from all available tools, or lock it down to only the specific tools you pick.
  • Connections are reusable, a saved MCP Client connection can be attached to multiple agents from the Connected Apps page.

To learn more, refer to the MCP Client: Connect Remote Tools documentation.

Entries that use custom URL patterns now resolve in Visual Editor the same way they do in Live Preview, using the same configuration with no additional setup.

With this update, you can:

  • Preview custom URL entries directly on the Visual Editor canvas.
  • Browse pages from custom URL content types in the URL bar, with each entry’s resolved URL shown.
  • Create pages for custom URL content types without a URL field.
  • Resolve missing values from a screen that lists the fields a pattern needs, with a link to each field in the form.

For sites that use custom URLs, developers set the page context (Live Preview Utils SDK 4.4.4 or later) so the Start editing button opens the correct entry. See the SDK config reference for implementation details.

Note: Custom Preview URLs is available on select plans.

Learn more in the documentation, or contact support for more information.

Enhancements

  • Node.js 22 Runtime Migration: Upgraded the Node.js runtime version to v22 across all CLI plugins and updated the corresponding documentation.
  • ESLint Infrastructure Upgrade: Upgraded ESLint to v10.50.0 and migrated all plugin configurations to the new flat config format.
  • Dependency and Plugin Updates: Rolled out the runtime and linting enhancements across the following plugin versions:
    • cli-audit v1.19.5
    • cli-cm-export v1.25.2
    • cli-cm-import v1.33.4
    • cli-auth v1.8.4
    • cli-cm-bootstrap v1.19.7
    • cli-cm-branches v1.8.3
    • cli-cm-bulk-publish v1.12.1
    • cli-cm-clone v1.21.8
    • cli-cm-export-to-csv v1.12.5
    • cli-cm-import-setup v1.8.5
    • cli-cm-migrate-rte v1.7.1
    • cli-cm-seed v1.15.7
    • cli-command v1.8.4
    • cli-config v1.20.5
    • cli-migration v1.12.4
    • cli-utilities v1.18.5
    • apps-cli v1.7.1
    • cli-bulk-operations v1.2.1
    • cli-cm-regex-validate v1.0.1
    • contentstack-cli-tsgen v4.10.1
    • contentstack-cli-content-type v1.5.1
    • cli-external-migrate v1.0.0-alpha.4
    • cli-cm-export-query v1.0.4

Bug Fixe

  • Organization User Pagination: Resolved pagination bugs within the organization user fetch logic (cli-cm-export-to-csv v1.12.4).

Enhancements

  • New Plugin Integration: Introduced the contentstack/cli-external-migrate plugin (cli-external-migrate v2.0.0-beta.0) into the ecosystem.
  • Node.js 22 Runtime Migration: Upgraded the Node.js runtime version to v22 across beta plugins and updated the corresponding documentation.
  • ESLint Infrastructure Upgrade: Upgraded ESLint to v10.50.0 and migrated plugin configurations to the new flat config format.
  • Beta Plugin Dependency Updates: Rolled out runtime and linting enhancements across the following beta plugin versions:
    • cli-audit v2.0.0-beta.14
    • cli-cm-export v2.0.0-beta.21
    • cli-cm-import v2.0.0-beta.21
    • cli-auth v2.0.0-beta.14
    • cli-cm-bootstrap v2.0.0-beta.21
    • cli-cm-branches v2.0.0-beta.9
    • cli-cm-bulk-publish v2.0.0-beta.2
    • cli-cm-clone v2.0.0-beta.22
    • cli-cm-export-to-csv v2.0.0-beta.9
    • cli-cm-import-setup v2.0.0-beta.15
    • cli-cm-migrate-rte v2.0.0-beta.8
    • cli-cm-seed v2.0.0-beta.21
    • cli-command v2.0.0-beta.9
    • cli-config v2.0.0-beta.12
    • cli-migration v2.0.0-beta.14
    • cli-utilities v2.0.0-beta.10
    • apps-cli v2.0.0-beta.1
    • cli-bulk-operations v2.0.0-beta.2
    • cli-cm-regex-validate v2.0.0-beta.1
    • contentstack-cli-tsgen v5.0.0-beta.1
    • contentstack-cli-content-type v2.0.0-beta.1
    • cli-cm-export-query v2.0.0-beta.5

Enhancement

  • Dynamic Region Endpoint Resolution: Introduced Endpoint.getContentstackEndpoint to dynamically resolve service endpoints from the centralized Contentstack Regions Registry. This implementation features alias-aware, case-insensitive evaluation and throws an explicit Endpoint.EndpointError upon encountering invalid input.

New Features

  • Dynamic Region Endpoint Resolution: Introduced ContentstackUtils::Endpoint.get_contentstack_endpoint to enable dynamic URL routing based on specified region and service configurations.
  • Endpoint Resolution Proxy: Added ContentstackUtils.get_contentstack_endpoint as a top-level module proxy to maintain backward compatibility with existing integration patterns.
  • Automated Runtime Fallback: Integrated a runtime synchronization mechanism that automatically downloads the regions.json manifest from the Contentstack Regions Registry if the file is not present in the local cache.
  • Manual Registry Synchronization: Added ContentstackUtils::Endpoint.refresh_regions to facilitate the manual retrieval and refreshing of localized region metadata.

Security and Bug Fixes

  • Dependency Vulnerability Patches: Upgraded critical project dependencies to resolve established security risks:
    • Upgraded yard to 0.9.44 to address a Directory Traversal vulnerability.
    • Upgraded concurrent-ruby to 1.3.7 to fix issues relating to infinite loops, improper locking, and wrap-around errors.

Bug Fixes

  • Polymorphic JSON Deserialization: Introduced EmbeddedObject as a concrete implementation of IEmbeddedObject to seamlessly cover both IEmbeddedEntry and IEmbeddedAsset contracts during JSON deserialization.
  • Custom Type Conversion: Implemented EmbeddedObjectConverter to resolve polymorphic IEmbeddedObject types automatically during deserialization, eliminating the need for breaking changes in consumer code.
  • Metadata and Custom Field Retention: Applied the [JsonExtensionData] attribute to ensure that all custom, unmapped fields on embedded entries and assets are fully preserved without data loss.

Bug Fixes

  • Automated Embedded Items Deserialization: Registered the EmbeddedObjectConverter directly within the ContentstackClient constructor. This ensures that .includeEmbeddedItems().Fetch<T>() successfully deserializes the _embedded_items payload when the target model implements IEntryEmbedable, without requiring any architectural changes in consumer code.
  • Core Dependency Upgrade: Upgraded the downstream utility dependency from contentstack.utils 1.3.0 to contentstack.utils 1.4.0 to import the new concrete EmbeddedObject class and the updated EmbeddedObjectConverter.

New Features

  • Dynamic Region Endpoint Resolution: Introduced Endpoint.getContentstackEndpoint() to enable dynamic service URL routing driven by the centralized Contentstack Regions Registry.
  • Endpoint Resolution Proxy: Added Utils.getContentstackEndpoint() as a top-level proxy method to ensure backward-compatible access through the existing utility path.
  • Automated Registry Provisioning: Integrated a dual-phase registry mechanism where regions.json is automatically downloaded at build time via scripts/download-regions.sh, supplemented by a fail-safe runtime fallback to fetch the manifest if the local file is missing.

Enhancement

  • Dynamic Region Endpoint Resolution: Implemented dynamic endpoint routing powered by the centralized Contentstack Regions Registry. Developers can now utilize Endpoint.getContentstackEndpoint() and the configured Builder.setRegion() mechanism to resolve service URLs automatically across all supported environments.

Enhancements

  • Dynamic Region Endpoint Resolution: Implemented dynamic endpoint routing powered by the centralized Contentstack Regions Registry. Developers can now utilize Endpoint.getContentstackEndpoint() and the configured Builder.setRegion() mechanism to resolve service URLs automatically across all supported environments.

What's New?

We are excited to announce Contentstack MCP Server v0.7.2, introducing OAuth scope declarations across all 196 tools in the nine /<group>/tools endpoints, giving the served JSON a single source of truth for tool-to-scope mappings used by the OAuth consent flow and runtime authorization.

Each tool entry now includes a scopes array alongside group, making the served JSON the authoritative source for the tool-to-scope mapping consumed by the OAuth consent flow and runtime authorization checks. Scopes are derived deterministically from (group, mapper.method, mapper.apiUrl, name) via src/utils/scopes.ts; run npm run generate:scopes to regenerate them as needed. Note that cda and lytics resolve to an empty array ([]), since these use delivery-token and Lytics-token authentication rather than OAuth.

 

This release includes two improvements to the entry editing experience.

Regex Validation for URL fields

You can now apply the Validation (Regex) and Validation Error Message properties to URL fields to control the URL format that content managers can enter. Previously, these options were available only for Single Line Textbox and Multi Line Textbox fields. With this change, you can:

  • Define a custom regex pattern for the accepted URL format.
  • Show a custom validation message when an entered value doesn't match the pattern.

Refer to the URL field documentation for details.

Live Preview Panel Now Stays Open in the Entry Editor

The Live Preview panel now follows the standard entry editor panel behavior, making navigation more predictable as you work across entries. The panel now:

  • Stays open when you navigate between entries.
  • Preserves its state during entry navigation within your session.
  • Remembers a custom width and restores it when you open later entries.

This reduces the need to reopen or resize the Live Preview panel as you move between multiple entries.

Refer to the Live Preview documentation for details.

We’re adding enhancements to the Algolia app:

  • Multiple Environment and Branch Support: Mapping rules can now be scoped to specific environments and branches. Multiple rules for the same environment are identified by different labels.
  • Content Type Level Index Mapping: Index mapping is now configured one content type at a time, with an explicit index required for each rule.
  • Enhanced Field Level Mapping: Field-level mapping now supports environment and branch-level filtering. Leaving the dropdowns empty defaults to all environments and all branches.

To learn more, refer to the Algolia App Installation Guide.

The Bulk Translate and Content Types Bulk Translate options in the XTM Full Page app now include a Source Language dropdown. You can now select any stack language as the source for translation, instead of being restricted to the stack language. By default, the master language is pre-selected.

To learn more, refer to the XTM App Installation Guide.

Enhancements

  • Region Refresh Script Migration: Replaced Scripts/refresh-region.cs with a Python implementation (Scripts/refresh-region.py) to prevent MSBuild from incorrectly compiling the script as source code.
  • macOS SSL Fallback: Integrated an SSL fallback mechanism within the refresh-region.py script to mitigate macOS certificate verification failures.
  • Project Configuration Updates: Updated both contentstack.management.csharp.targets and contentstack.management.core.csproj to package and deliver the new Python script.
  • Image Format Upload Test Coverage: Expanded test coverage under Contentstack.Management.Core.Tests/Mock/assets/ to ensure SDK stability across various image types:
    • Test100 (JPEG Upload): Validates the upload of london.jpg via image/jpeg MIME type, asserting the Created status and content_type in the response.
    • Test101 (JPEG Extension Upload): Validates the upload of tokyo.jpeg and asserts the image/jpeg content type.
    • Test102 (AVIF Upload): Validates the upload of dubai.avif via image/avif MIME type, accepting either image/avif or application/octet-stream content types.
    • Test103 (Sequential Uploads): Validates sequential uploads of all three image formats and asserts the Created status for each.
    • Test104 (Metadata Retrieval): Verifies the ability to fetch metadata for a created JPEG asset, asserting the presence of uid, filename, content_type, and file_size fields.
    • Test105 (Asset Updates): Verifies asset replacement functionality by overwriting an existing JPEG asset and asserting a 200 OK update response.

Bug Fixes

  • Bulk Operation Test Assertions: Updated bulk operation tests to accept a 401 Unauthorized status alongside existing 404 / 400 codes for invalid or expired job ID assertions.
  • Resilient Test Workflows: Configured workflow stage assignments in Test002 to be non-fatal, preventing bulk operation test failures when the workflow API is temporarily unavailable.

New Features

  • Dynamic Region Resolution: Introduced an Endpoint class to enable dynamic region-to-URL resolution utilizing a CDN-backed regions.json file.
  • Region Mapping: Added ContentstackRegionMap to map the ContentstackRegion enum directly to registry region IDs.
  • GCP EU Support: Expanded infrastructure support to include the GCP_EU region.

Enhancements

  • Dynamic Base URL Configuration: Updated Config.BaseUrl to resolve hosts dynamically via the regions registry, removing the hardcoded regionCode() and HostURL logic.
  • Region Refresh Script Migration: Replaced refresh-region.cs with a Python implementation (refresh-region.py) to prevent MSBuild from incorrectly compiling the script as source code.
  • Build Targets Automation: Added build/contentstack.csharp.targets to automatically package and deliver the refresh-region.py script to consumer projects upon their first build.
  • Automated Test Coverage: Implemented EndpointTest.cs to ensure the reliability and coverage of the new endpoint resolution logic.

New Features

  • Dynamic Region Resolution: Introduced an Endpoint class to enable dynamic region-to-URL resolution utilizing a CDN-backed regions.json file.
  • Region Mapping: Added ContentstackRegionMap to map the ContentstackRegion enum directly to registry region IDs.
  • GCP EU Support: Expanded infrastructure support to include the GCP_EU region.

Enhancements

  • Dynamic Base URL Configuration: Updated Config.BaseUrl to resolve hosts dynamically via the regions registry, removing the hardcoded regionCode() and HostURL logic.
  • Region Refresh Script Migration: Replaced refresh-region.cs with a Python implementation (refresh-region.py) to prevent MSBuild from incorrectly compiling the script as source code.
  • Build Targets Automation: Added build/contentstack.csharp.targets to automatically package and deliver the refresh-region.py script to consumer projects upon their first build.
  • Automated Test Coverage: Implemented EndpointTest.cs to ensure the reliability and coverage of the new endpoint resolution logic.

New Features

  • Dynamic Region Resolution: Introduced Endpoint.get_contentstack_endpoint() to enable dynamic, region-aware URL resolution across all supported Contentstack regions and services.
  • Endpoint Resolution Proxy: Added Utils.get_contentstack_endpoint() as a top-level proxy method to ensure backward-compatible access via the existing Utils import path.
  • Cross-SDK Parity Aliases: Added getContentstackEndpoint camelCase aliases to both the Endpoint and Utils classes for consistent interface parity across different Contentstack SDKs.
  • Automated Registry Provisioning and Fallback: Bundled the authoritative regions.json registry file (supporting 7 regions and 18 service endpoint keys) into contentstack_utils/assets/regions.json. Implemented a runtime fallback mechanism in Endpoint._load_regions() that automatically downloads the registry from the Contentstack artifact server on first use if the local file is missing.
  • Programmatic and CLI Registry Synchronization: Added a refresh_regions() utility—exposed at the package level—and a python3 -m contentstack_utils.region_refresh CLI command to allow developers to programmatically or manually fetch the latest regions manifest from the CDN and overwrite the local cache.

Enhancements

  • Package-Level Exports: Exposed the Endpoint class within the package-level __all__ export list for simplified imports.
  • Automated Build-Time Refresh: Updated setup.py with a custom BuildPyWithRegions command to automatically refresh regions.json at build time. Network failures during this step are captured as warnings and will not block the build process.
  • Package Data Distribution: Added assets/regions.json to the package_data configuration in setup.py, ensuring the registry file is correctly bundled and shipped within the source distribution and wheel formats.
  • Source-Tree Utility: Bundled scripts/refresh_regions.py into the source tree for standalone environment utilization.

New Features

  • Dynamic Region Endpoint Resolution: Implemented dynamic region endpoint resolution powered by the centralized Contentstack Regions Registry (regions.json). This ensures that new regions and services can be supported via registry updates without requiring SDK code changes.
  • Three-Tier Endpoint Resolution: Introduced the Endpoint class featuring a robust three-tier resolution architecture that checks an in-memory cache, falls back to the bundled data/regions.json file, and performs a live CDN download if necessary.
  • Module-Level Proxy: Exposed contentstack_management.get_contentstack_endpoint(region, service, omit_https) as a top-level module proxy for streamlined endpoint resolution.

Enhancements

  • Dynamic Client Routing: Updated the base Client logic to dynamically resolve the contentManagement endpoint directly from the registry, completely removing the legacy hardcoded host pattern.
  • Registry Refresh Script: Bundled scripts/download_regions.py into the repository to allow manual or automated synchronization of the bundled registry file with the live CDN.

New Feature

  • Dynamic Endpoint Resolution: Introduced a dedicated Endpoint class to handle dynamic URL routing. Region-to-URL mappings are now resolved dynamically via a centralized registry, completely replacing the legacy hardcoded if/elif evaluation chains.
  • Service Endpoint Resolution Engine: Added Endpoint.get_contentstack_endpoint(region, service, omit_https) to resolve any supported region to its specific service URL, such as contentDelivery or contentManagement.
  • Module-Level Proxy: Exposed contentstack.get_contentstack_endpoint() at the root module level for quick and direct access to the resolution engine.
  • Automated Runtime Fallback: Implemented a fail-safe mechanism that automatically downloads the regions.json registry live from the Contentstack artifact server on the initial Endpoint invocation if the local file is missing.
  • Programmatic and CLI Registry Synchronization: Introduced a refresh_regions() utility—accessible via from contentstack import refresh_regions—along with a python3 -m contentstack.region_refresh CLI command to allow manual or programmatic updates of the local registry file post-installation.

Enhancements

  • Dynamic Stack Routing: Configured the Stack initialization process to automatically resolve both the delivery host and the live_preview management host using the new Endpoint class.
  • Package Data Distribution: Bundled contentstack/assets/regions.json within the package_data configuration, ensuring the registry file is consistently shipped and available upon pip install.
  • Automated Build-Time Refresh: Custom-engineered the setup.py build sequence with a BuildPyWithRegions command to automatically fetch the latest regions.json file during package creation. Any network connection drops during this phase are downgraded to warnings to ensure builds are never blocked.
  • Contributor Script: Included a standalone scripts/download_regions.py utility within the source tree explicitly for contributor environment maintenance.

We are excited to announce Contentstack MCP Server v0.7.1, introducing management token authentication, explicit region selection, dedicated-infrastructure endpoint overrides, and a new guide for building custom MCP servers on top of Contentstack APIs.

What's New?

Management Token Authentication: The cma and cma-extended groups now accept either an OAuth session or a management token, making them suitable for headless and CI/CD environments where browser-based authentication is unavailable.

  • Pass --management-token or set CONTENTSTACK_MANAGEMENT_TOKEN
  • Must be used with an explicit region (--region or CONTENTSTACK_REGION)

Explicit Region Selection: Region can now be set independently of OAuth, so CDA-only and management-token-only setups route to the correct data center without an active OAuth session.

  • Supported codes: NA, EU, AU, AZURE_NA, AZURE_EU, GCP_NA, GCP_EU
  • Common aliases accepted (e.g., us, aws-na, azure_eu)
  • The AU (Australia, AWS) region is now supported
  • An unrecognized region value returns a hard error at startup

Dedicated-Infrastructure Endpoint Overrides: Customers on private or dedicated infrastructure can now override the base URL for any service individually. When set, an override fully replaces the region-derived base URL for that service.

Build Your Own MCP: Tool Definitions API: Developers can build a custom MCP server, agent framework, or API client on top of Contentstack APIs. It covers:

  • Public tool-definition endpoints for all API groups
  • Tool definition format and the mapper object
  • Step-by-step request construction
  • Base URLs, region resolution, and authentication
  • Worked examples for CDA, CMA, and Launch GraphQL

To learn more, refer to the Contentstack MCP Server documentation.

Enhancement:

  • Performed dependency upgrades to improve stability and performance for the following plugins:
    • cli-cm-import (v1.33.3)
    • cli-cm-bootstrap (v1.19.6)
    • cli-cm-clone (v1.21.7)
    • cli-cm-seed (v1.15.6)

Enhancement:

  • Added support for custom URL endpoint integration, allowing developers to route API requests through personalized or proxied domains.

Bug Fix:

  • Upgraded the org.springframework:spring-web dependency to version 7.0.8 to resolve Snyk-reported vulnerabilities within the Spring Framework (including its transitive spring-core component).

New Feature:

  • Centralized Endpoint Resolution: Introduced Contentstack::Endpoint.get_contentstack_endpoint(region, service), completely eliminating hardcoded Contentstack hostnames to make endpoint resolution dynamic and robust.

Enhancements:

  • New Region Support: Added the Contentstack::Region::GCP_EU region constant to expand regional hosting support.
  • Module-Level Proxy: Added Contentstack.get_contentstack_endpoint as a backward-compatible proxy method, aligning it seamlessly with the ContentstackUtils endpoint resolution API.
  • Service Constants: Introduced the Contentstack::Service class with dedicated constants for CDA, CMA, and PREVIEW services.
  • Dynamic Region Registry: Migrated endpoint URLs to be driven by a local lib/data/regions.json file, featuring an automatic runtime fallback to the Contentstack registry when the file is absent.
  • Region Management Task: Added a bundle exec rake refresh_regions Rake task to manually pull down and update local region metadata from the registry.

New Feature:

  • Dynamic Endpoint Resolution: Introduced Endpoint::getContentstackEndpoint() to provide dynamic, region-aware URL resolution across 7 regions (AWS NA/EU/AU, Azure NA/EU, GCP NA/EU) and 18 service endpoint keys.

Enhancements:

  • Backward-Compatible Proxy: Added the Utils::getContentstackEndpoint() proxy method to maintain backward compatibility for existing implementations.
  • Automated Metadata Management: Configured the bundled regions.json file to download automatically during composer install or composer update via a post-install-cmd script, keeping the core repository lightweight and uncommitted.
  • Runtime Fallback Handling: Implemented a runtime fallback mechanism in Endpoint::loadRegions() that automatically downloads regions.json on its first use if the file is missing (e.g., when the package is nested as a dependency).
  • Manual Registry Refresh: Added a dedicated composer refresh-regions script, enabling developers to manually fetch the latest region metadata directly from Contentstack.

Enhancement:

  • Endpoint Integration: Implemented dynamic endpoint resolution to streamline region-aware routing and eliminate hardcoded API hostnames across different environments.

New Feature:

  • Dynamic Endpoint Resolution: Introduced dynamic routing via Endpoint.getContentstackEndpoint() and Builder.setRegion(). This system is backed by the Contentstack Regions Registry, eliminating hardcoded hostnames and allowing the SDK to automatically resolve correct service endpoints based on the configured region.

Bug fix:

  • Added the toJSON() method to EntryModel, AssetModel, and ContentTypeModel. This fixes an issue with object serialization, making entries with fully resolved references cleanly serializable via JSONSerialization.

Enhancement:

  • OAuth Token Lifecycle: Auto-refresh logic for OAuth tokens is now directly wired into the core request pipeline to handle expired credentials transparently.

Breaking Changes:

  • System.Text.Json Migration: Completely migrated the SDK framework from Newtonsoft.Json to System.Text.Json, eliminating Newtonsoft.Json as a dependency.
    • client.SerializerSettings (JsonSerializerSettings) has been replaced by client.SerializerOptions (JsonSerializerOptions).
    • response.OpenJObjectResponse() has been removed in favor of response.OpenJsonObjectResponse() (JsonObject) or response.OpenTResponse<T>().
    • JObjectParameterValue now expects System.Text.Json.Nodes.JsonNode instead of a Newtonsoft JObject.
    • [JsonProperty] attributes have been replaced with [JsonPropertyName].
    • Global null-value configurations move from [JsonObject(ItemNullValueHandling)] to DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull on the serializer options.
  • Full Module Coverage: The json migration applies uniformly across all SDK modules.
  • Target Framework Upgrade: Upgraded the minimum target framework requirement to .NET 10.

Gain deeper visibility into your Contentstack activity with Log Targets within Administration, a powerful new feature that lets you seamlessly export system-generated logs to your own cloud storage. Whether you're monitoring activity, ensuring compliance, or integrating with observability tools, Log Targets gives you full control over your log data.

Key Features

  • Flexible Log Exporting: Export key system logs, including audit, published, and webhook logs, directly to your preferred cloud storage for centralized monitoring and analysis.
  • Multi-Cloud Support: Connect with leading cloud providers like AWS S3, Azure Blob Storage, and Google Cloud Storage to store and manage your logs securely.
  • Automated Scheduling: Set up hourly export schedules to ensure your logs are consistently updated without manual intervention.
  • Customizable Storage Structure: Define base paths within your storage buckets to organize logs efficiently by type or use case.
  • Improved Visibility with History Tracking: Monitor export activity through a detailed history view, including status, duration, and error reporting for better troubleshooting.

With Log Targets, you can extend Contentstack logging capabilities beyond the platform and into your existing workflows, making observability, auditing, and analysis more streamlined than ever.

Check our documentation for full details, or contact support to get started immediately.

You can now roll back a deployed release in Contentstack to quickly recover from unintended deployments.  If a release is deployed to the wrong environment or publishes content before it is ready, create a rollback release or a duplicate of the deployed release, and deploy it to restore entries and assets to the version published before deployment.

Release Rollback provides a fast, predictable way to recover from publishing mistakes without manually restoring content. It reverts references and assets along with entries, and unpublishes documents that had no previous published version, so the environment returns to its last known good state in a few steps.

Refer to the Roll Back a Release documentation for more information.

We’ve added taxonomy-based filtering to the Select Entries modal used by Reference fields and embedded references in the Rich Text Editor fields. The modal now supports filtering using the existing Taxonomy column.

You can now:

  • Filter entries by one or more taxonomy terms directly in the Select Entries modal.
  • Find relevant entries faster in large content sets.

Note This brings the Select Entries modal in line with the taxonomy filtering already available on the Entry List page.

Enhancements:

  • Added Asset Management (AM) support for cli-bulk-operations (2.0.0-beta.1).
  • Added support for exporting assets within the query export plugin in cli-cm-export-query (2.0.0-beta.4).
  • Added comprehensive taxonomy publishing support across the migration, export, import, and cloning workflows in the following plugins:
    • cli-cm-export (2.0.0-beta.20)
    • cli-cm-import (2.0.0-beta.20)
    • cli-cm-clone (2.0.0-beta.21)

Bug & Security Fixes:

  • Performed dependency upgrades to improve stability and performance for the following plugins:
    • cli-asset-management (1.0.0-beta.4)
    • cli-variants (2.0.0-beta.16)

Bug Fix:

  • Resolved Snyk security vulnerabilities by upgrading internal dependencies to ensure safer and more secure execution of marketplace operations.

We are excited to announce Contentstack MCP Server v0.7.0, introducing a new CMA Extended tool group and comprehensive Contentstack MCP Server documentation.

What’s New?

CMA Extended: A new group of 22 tools that extends core CMA functionality with advanced administrative and governance operations.

  • Audit log access and inspection
  • Entry and asset version history
  • Global field creation and updates
  • Asset folder management
  • Workflow and publish rule inspection

Contentstack MCP Server Documentation: A new guide is now available, covering:

  • Setup, authentication, and configuration
  • All API groups and tools
  • Common workflows and best practices
  • Troubleshooting and reference documentation

To learn more, refer to the Contentstack MCP Server documentation.

Gain a clearer, more actionable view of your organization’s security posture with the new Security Dashboard. Designed for admins and security-focused roles, this feature brings critical insights, activity tracking, and recommendations into a single, streamlined interface, helping you proactively manage risks and strengthen compliance.

Security Dashboard.png

Key Features

  • Security Dashboard Overview: Access a dedicated dashboard that replaces basic organization info for elevated roles, providing a unified view of security metrics, risks, and activity.
  • Current Trends Snapshot: Monitor key metrics like total users, inactive accounts, pending invitations, and users without MFA to quickly identify potential vulnerabilities.
  • Security Scorecard: Understand your organization’s security posture with a dynamic score (Critical, At Risk, Secure) based on weighted controls like SSO, MFA, and session policies.
  • Role Distribution Insights: Visualize how roles are assigned across your organization to prevent over-allocation of privileged access.
  • Password Compliance Tracking: Identify users with outdated passwords through categorized timelines, enabling better enforcement of password policies.
  • User Session Insights: Track active sessions, including long-lived sessions (60+ days), to reduce exposure from unattended logins.
  • Recent Activity Feed: Audit security-related events such as user changes, role updates, MFA resets, and configuration changes with severity indicators.

Stay ahead of potential threats with smarter visibility and actionable insights. The Security Dashboard empowers your team to continuously strengthen security and confidently manage your organization at scale.

Read our documentation for more information.

Unified role-based access control (RBAC) introduces finer control over who can administer an organization and what they can do within each product, two new Administration roles, and the ability to create custom roles per product.

Key Features

  • Redesigned user invite interface: Managing users and roles now happens in a completely redesigned interface that brings inviting users, assigning organization-level and product-level roles, and reviewing access into one consistent experience. The same experience extends to SSO identity provider role mapping, SCIM group-to-role mapping, and Teams.
  • New Administration roles: Two out-of-the-box roles join Owner, Admin, and Member at the organization level:
    • Security Manager: Manages an organization's identity and security configuration, including SSO, SCIM provisioning, security settings, and webhooks, with read-only visibility into users, roles, and teams. This removes the previous dependency on the Owner role for configuring SSO.
    • Product Analytics Viewer: Previously, viewing Analytics required Owner or Admin role access. This new role provides read-only access to organization information and analytics, without the ability to change settings or manage users.
  • Multi-role support: Users can now hold multiple organization-level roles at once. For example, a user can be both a Member and a Product Analytics Viewer without requiring elevated admin privileges.
  • Granular product-level permissions: RBAC now scopes access within each product, not only across the organization. Administrators can assign different levels of access per product, such as Administration and Assets, so each user receives precisely the access required for their tasks.
  • Custom roles per product: When the default roles do not match a team's responsibilities, administrators can create custom organization-level roles for a product in Administration by selecting permission categories and actions such as View, Create, Edit, and Delete.

What's Next for RBAC

This release is the first step in a broader rollout. Contentstack is extending RBAC adoption across the platform, with significant enhancements to CMS RBAC coming next, bringing the same granular, consistent access control to stacks and content management.

To learn more about Administration roles, product roles, and creating custom roles, refer to the documentation.

The Contentstack migration framework now supports Drupal as a legacy source and introduces single sign-on (SSO) authentication to the migration framework.

Key Enhancements:

  • Drupal support: Migrate content from Drupal 8, 9, 10, and 11 into a Contentstack stack using the migration framework workflow. Connect your Drupal MySQL database, validate the connection, select your destination stack, and map your content types during migration.
  • Asset migration from Drupal: Move images and media assets alongside your content by providing the base site URL and public asset path of your Drupal site during setup.
  • Flexible content-type mapping: Use the structure detected from your Drupal data as-is, or map Drupal content types to existing content types in your destination stack when you've already modeled your content in Contentstack.
  • Single sign-on (SSO) authentication: Authenticate the migration framework using OAuth 2.0. The tool requests only the permissions required to migrate content, keeping the access granted narrowly scoped to the task.

Note Drupal 7 is not supported. Drupal 7 has reached the end of life and is deprecated by the Drupal community.

For installation and setup, refer to the Migration Tool Setup Guide (Drupal) and the Authenticating the Migration Tool via SSO guide.

Enhancements:

  • Migrated several external plugins into the unified cli-plugins monorepo structure to streamline maintenance and development:
    • contentstack-apps-cli (v1.7.0)
    • cli-bulk-operations (v1.2.0)
    • contentstack-cli-tsgen (v4.10.0)
    • contentstack-cli-content-type (v1.5.0)
    • cli-cm-regex-validate (v1.0.0)
    • cli-cm-migrate-rte (v1.7.0)
  • Upgraded the core oclif  framework along with dependencies across the following plugins to improve stability and performance:
    • cli-audit (v1.19.4)
    • cli-cm-bootstrap (v1.19.5)
    • cli-cm-branches (v1.8.2)
    • cli-cm-bulk-publish (v1.12.0)
    • cli-cm-clone (v1.21.6)
    • cli-cm-export-to-csv (v1.12.3)
    • cli-cm-export (v1.25.1)
    • cli-cm-import-setup (v1.8.4)
    • cli-cm-import (v1.33.2)
    • cli-migration (v1.12.3)
    • cli-cm-export-query (v1.0.3)
    • cli-cm-seed (v1.15.5)
    • cli-variants (v1.5.1)
    • cli-auth (v1.8.3)
    • cli-command (v1.8.3)
    • cli-config (v1.20.4)
    • cli-utilities (v1.18.4)

Enhancements:

  • Migrated several external plugins into the unified cli-plugins monorepo structure to streamline maintenance and development:
    • contentstack-apps-cli (v2.0.0-beta.0)
    • cli-bulk-operations (v2.0.0-beta.0)
    • contentstack-cli-tsgen (v5.0.0-beta.0)
    • contentstack-cli-content-type (v2.0.0-beta.0)
    • cli-cm-regex-validate (v2.0.0-beta.0)
    • cli-cm-migrate-rte (v2.0.0-beta.7)
  • Upgraded the core oclif framework along with dependencies across the following plugins to improve stability and performance:
    • cli-auth (v2.0.0-beta.13)
    • cli-command (v2.0.0-beta.8)
    • cli-config (v2.0.0-beta.11)
    • cli-utilities (v2.0.0-beta.9)
    • cli-asset-management (v1.0.0-beta.3)
    • cli-audit (v2.0.0-beta.13)
    • cli-cm-bootstrap (v2.0.0-beta.19)
    • cli-cm-branches (v2.0.0-beta.8)
    • cli-cm-clone (v2.0.0-beta.20)
    • cli-cm-export-to-csv (v2.0.0-beta.8)
    • cli-cm-export (v2.0.0-beta.19)
    • cli-cm-import-setup (v2.0.0-beta.13)
    • cli-cm-import (v2.0.0-beta.19)
    • cli-migration (v2.0.0-beta.13)
    • cli-cm-export-query (v2.0.0-beta.3)
    • cli-cm-seed (v2.0.0-beta.19)
    • cli-variants (v2.0.0-beta.15)

Enhancement:

  • Added setProtocols(List<Protocol>) to the Builder class, enabling developers to explicitly restrict HTTP protocols (e.g., forcing HTTP/1.1 via Collections.singletonList(Protocol.HTTP_1_1)) to handle environments where corporate proxies or intermediaries encounter issues with HTTP/2.

Bug fix:

  • Fixed an issue where SocketTimeoutException bypassed the standard retry logic. It now correctly triggers the retry mechanism in AuthInterceptor and OAuthInterceptor, ensuring that .setRetry(true) behaves as expected during network-level timeouts.

Bug fix:

  • Fixed a data fetch failure that occurred when connecting via a VPN for non-US regions (AZURE_NA, EU, AU, AZURE_EU, GCP_NA, GCP_EU). This was resolved by ensuring Stack.URL is correctly synced with the region-specific CDN host right after configuration initialization.

Bug fix:

  • Deprecated the Query#include_draft method. Because the Content Delivery API strictly returns published content, the include_draft query parameter is no longer effective. To preview unpublished entries, use Live Preview with the Preview Service, or leverage the Content Management API to work directly with draft content.

Bug fix:

  • Removed the unused bson dependency to resolve installation failures on Python 3.12+ and Python 3.14 caused by the legacy standalone bson 0.5.x package failing to build on newer Python runtimes.

We are excited to announce the new Agent OS framework, featuring Agents and Polaris, and the launch of AI Credits. This update provides a more flexible and scalable way to manage and deploy artificial intelligence capabilities across your organization.

What’s New?

  • Agent OS (Agents & Polaris): Step into the next generation of automation with Agent OS.
    • Agents: Deploy autonomous, task-oriented AI agents designed to handle complex workflows with minimal oversight.
    • Polaris: Meet your new platform-wide chat assistant. Polaris is integrated across the entire ecosystem to provide instant support, answer queries, and help you perform AI tasks across your content.
  • AI Credits: We’re introducing a unified credit system to power your AI operations. This simplified consumption model provides greater visibility and control over your AI usage, ensuring your teams monitor and manage credits more effectively.
  • Analytics: To help monitor usage and performance trends, dedicated analytics dashboards are now available for Agents, Polaris, and AI Credits.

This release transforms how organizations access, manage, and scale AI capabilities with centralized controls, intelligent automation, and enterprise-ready experiences.

To learn more, refer to the Agent OS and AI Credits documentation.

We've introduced two enhancements that help you manage entry relationships and URL structures more efficiently while working in Contentstack.

Configure Default URL Patterns for URL Fields

Note: URL pattern configuration and advanced formatting options are available only with URL Management V2. Contact our support team to enable this feature.

You can now configure default URL patterns for URL fields while creating or editing content types.

With URL pattern configuration, you can:

  • Define consistent URL structures using static paths and dynamic placeholders
  • Use supported system fields, custom text fields, locales, and taxonomies in URL patterns
  • Automatically generate localized and structured entry URLs
  • Apply formatting rules such as casing, word separators, JSON mappings, fallback values, and regex transformations
  • Reduce manual URL creation errors and maintain consistent URL structures across entries

For example, you can define a pattern such as /blog/:locale/:field[title] to automatically generate localized blog URLs.

Refer to our documentation to learn how to configure URL patterns and formatting options.

Open Referenced Entries in a Sliding Panel

You can now open referenced entries in a sliding panel within the entry editor. Click the new Open in overlay icon next to a reference to view it without leaving the current page. You can also navigate deeper by opening up to five additional referenced entries in stacked panels and use breadcrumbs to switch between them.

This update reduces the need to open multiple browser tabs when working with nested references, making it easier to validate content relationships or make quick edits without losing your place.

Refer to the documentation on navigating referenced entries.

Note: This feature is plan-based and available to early access customers. Contact support to request access.

You can now publish entries in Contentstack with greater confidence and control with enhanced reference validation and preview workflows. The updated publishing experience helps you review, validate, and selectively publish referenced content before it enters the Publish Queue, reducing errors and rework.

What's New?

  • Review referenced content before publishing
    Use the Publish Review modal to review the parent entry and all associated references to understand what is published before content enters the Publish Queue.
  • Validate references before publishing
    Validate referenced entries and assets using the Validate Items modal to catch issues early and prevent publish failures.
  • Filter and select references precisely
    Choose to publish only the parent entry, specific references, first-level references, or all references to gain greater control over what goes live.
  • Monitor validation and publish progress
    Track validation tasks and publishing status through task windows to maintain visibility and confidence throughout the publishing process.

For more details, visit our documentation or contact our support team.

New Feature:

  • Asset Management 2.0 (AM2.0) Support: Added AM2.0 support to the import setup flow across the following plugins:
    • cli-cm-import-setup (v2.0.0-beta.12)
    • cli-asset-management (v1.0.0-beta.2)
    • cli-cm-import (v2.0.0-beta.18)

Enhancement:

  • Performed dependency upgrades to improve stability and performance for:
    • cli-cm-export (v2.0.0-beta.18)
    • cli-cm-export-query (v2.0.0-beta.2)
    • cli-cm-seed (v2.0.0-beta.18)

Bug fixes:

  • cli-cm-bootstrap (v2.0.0-beta.18):
    • Cleaned up the plugin by removing deprecated sample and starter apps.
  • cli-cm-clone (v2.0.0-beta.19):
    • Fixed an issue to ensure the correct path is resolved in the clone plugin while running imports.
  • cli-config (v2.0.0-beta.10):
    • Fixed a bug where the get region command failed to display the AM endpoint for custom regions.

Enhancement:

  • Performed dependency upgrades to improve stability and performance for the following plugins:
    • cli-cm-bootstrap (v1.19.4)
    • cli-cm-clone (v1.21.5)
    • types-generator (v3.10.1)

Bug fixes:

  • cli-cm-import (v1.33.1):
    • Fixed an issue with the incorrect mapping of asset URLs inside text fields during import.
  • cli-cm-export-query (v1.0.2):
    • Fixed management token support to ensure proper authentication during query exports.

Enhancement:

  • Upgraded project dependencies to improve security, performance, and overall stability.

Enhancement:

  • Upgraded project dependencies to improve security, performance, and overall stability.

Security fix:

  • Updated the Axios dependency to version ^1.15.2 to address security vulnerabilities introduced in version 1.15.0.

Bug fixes:

  • Fixed an issue to ensure retryCondition evaluates transient network-level errors (such as ETIMEDOUT, ECONNRESET, and EPIPE) that lack an HTTP response, allowing configured retry policies to apply without requiring external Axios interceptors.
  • Fixed the retry delay path within the delivery SDK (covering network retries, retryCondition retries, and 429/401 retries) to properly honor configured retryDelayOptions.customBackoff settings.

We are expanding the power of Automations by introducing real-time triggers for our most popular connectors. This update transforms your static workflows into reactive, event-driven systems that respond instantly to external actions.

New Connector Triggers

Our existing connectors for Cloudinary and Netlify have been updated with new trigger options to help you automate your media, deployment, and communication pipelines.

  • Cloudinary: Automate your digital asset management by triggering workflows based on any changes within your Cloudinary environment. Supported events include asset uploads, metadata modifications, folder creation, access control shifts, etc. Learn more about Cloudinary Trigger.
  • Netlify: Keep your development and content teams in sync with your deployment pipeline. You can now trigger automations when builds start, deployments are created, or when environments are locked or unlocked due to permission or configuration issues. Learn more about Netlify Trigger.

Navigation Updates

To support the continued expansion of our platform, we’ve streamlined the project navigation for a more scalable and organized experience.

Settings-related options are now consolidated within the Settings panel in the top navigation, making configuration and operational controls easier to access and manage.

You can now find the following under Settings:

  • Connected Apps
  • Audit Log
  • Execution Log
  • Project Variables

Enhancement:

  • Scoped the DVR dependency strictly to the test target, preventing it from being bundled into production builds.

Platform Discovery is your new dashboard for exploring everything Contentstack has to offer. Get a unified view of every capability available to your organization, and spot the ones you are missing out on.

With this release you can:

  • Audit your stack: See a complete inventory of your features in one glance.
  • Find hidden value: Instantly identify features marked No Recent Activity, powerful tools you already have access to but aren’t leveraging.
  • Scale intelligently: See clear pathways to advanced capabilities (like Personalization or AI) that align with your growth goals.

Platform Discovery_Changelog.png

Where to find it: Open the "App Switcher" in the top navigation bar and select Platform Discovery.

Read our documentation for more information.

New Feature:

  • cli-cm-export-query (v2.0.0-beta.1):
    • Added support for nested global fields, enabling more granular data extraction for complex content models.

Enhancement:

  • Performed dependency upgrades across the following plugins to ensure compatibility and stability:
    • cli-asset-management (v1.0.0-beta.1)
    • cli-audit (v2.0.0-beta.12)
    • cli-cm-bootstrap (v2.0.0-beta.17)
    • cli-cm-clone (v2.0.0-beta.18)
    • cli-cm-export (v2.0.0-beta.17)
    • cli-cm-import (v2.0.0-beta.17)
    • cli-cm-seed (v2.0.0-beta.17)

Bug fix:

  • types-generator (v3.10.0) and contentstack-cli-tsgen (v4.9.0):
    • Fixed a bug that incorrectly handled or affected numeric IDs in generated types.

Security fix:

  • Resolved Snyk security vulnerabilities by updating affected dependencies in:
    • contentstack-cli-content-type (v1.4.5)
    • cli-cm-migrate-rte (v2.0.0-beta.6)

We’ve introduced new taxonomy enhancements in Contentstack that improve how teams manage, publish, release, and govern taxonomy, making it easier to manage taxonomy structures across environments and locales.

Publish Taxonomies Independently

You can now publish taxonomies independently, similar to entries. This allows you to manage taxonomy structures separately from content publishing workflows.

With Taxonomy Publishing, you can:

  • Publish an entire taxonomy and its complete term hierarchy
  • Publish to specific environments and locales
  • Select a branch and apply locale fallback hierarchies
  • Schedule publishing jobs (if enabled)
  • Automate taxonomy publishing through APIs

Learn more about publishing a taxonomy.

Nested Reference Publishing Now Supports Taxonomies

Nested Reference Publishing now includes taxonomy support. When you publish an entry using Send with References, any referenced taxonomies:

  • Appear in the Publish References modal
  • Are included in the publish job
  • Publish their complete hierarchy to the selected environments and locales

This helps maintain consistency between published entries and their associated taxonomy structures across environments.

Learn more about working with Nested Reference Publishing.

Add Taxonomies to Releases

You can now add taxonomies directly to releases and deploy taxonomy structures alongside related content changes.

You can add taxonomies to a release from:

  • The Taxonomy Details page
  • The Taxonomy List page
  • Entry references, where associated taxonomy terms are automatically included when references are added

This helps teams schedule taxonomy deployments, streamline localization workflows, and reduce publishing inconsistencies.

Learn more about adding a taxonomy to a release.

Granular Taxonomy Permissions for Custom Roles (Early Access)

You can now assign taxonomy management permissions to custom roles without granting full administrative access to the stack.

Custom role users can manage taxonomy structures using permissions such as:

  • Create
  • Read
  • Update
  • Publish/Unpublish
  • Delete

You can also apply exceptions to restrict access to specific taxonomies or actions.

This enhancement separates taxonomy structure management from entry-level taxonomy permissions, giving teams more precise access control and governance flexibility.

To learn more, refer to the Permissions on Taxonomies documentation.

We’re excited to introduce Contentstack Assets, a modern, AI-powered digital asset management experience built for teams that need to organize, govern, and reuse assets at scale.

This upgrade moves beyond stack-based asset management to deliver a centralized, structured, and reusable asset system across your organization. With support for shared asset spaces, custom metadata modeling, localization, AI-powered enrichment, and advanced governance controls, Contentstack Assets helps teams streamline operations and deliver consistent digital experiences faster.

Key Features

  • Centralized Asset Management Across Stacks: Manage assets in dedicated spaces and reuse them seamlessly across multiple CMS stacks, reducing duplication and improving consistency.
  • Spaces and Workspaces for Better Organization: Organize assets by brand, team, campaign, or region using independent spaces and isolated workspaces for experimentation and campaign workflows.
  • Custom Asset Modeling: Create custom asset types and user-defined metadata fields to structure assets around your business needs, from campaign information to licensing and compliance data.
  • Native Asset Localization: Manage multilingual versions of assets within a unified workflow, including localized metadata and asset variants with fallback language support.
  • AI-Powered Asset Enrichment: Automatically generate alt text and tags for images to improve discoverability, accessibility, and SEO while reducing manual effort.
  • Visual Markups for Interactive Experiences: Add hotspots and bounding boxes to images to power shoppable content and richer visual experiences.
  • Advanced Search and Filtering: Find assets faster using metadata-driven filters, saved views, color-based filtering, and intelligent search capabilities.
  • Asset Versioning and Governance: Track changes to both metadata and binaries with built-in version history and rollback support.
  • Enterprise-Ready Access Control: Manage permissions using predefined and custom roles with support for SSO and SCIM-based user provisioning.

Contentstack Assets lays the foundation for a more intelligent, scalable, and future-ready asset strategy. We’re excited to see how your teams use it to create faster workflows, stronger governance, and richer digital experiences.

Check our documentation for full details, or contact support to get started immediately.

New Feature:

  • Added support for publishing rules, enabling the inclusion of governance and workflow settings during content export and import processes in the following plugins:
    • cli-cm-export (v1.25.0)
    • cli-cm-import (v1.33.0):

Enhancement:

  • Performed dependency upgrades to improve stability and performance for the following plugins:
    • cli-cm-bootstrap (v1.19.3)
    • cli-cm-export-query (v1.0.1)
    • cli-cm-clone (v1.21.4)
    • cli-cm-seed (v1.15.3)
    • cli-variants (v1.5.0)

Security fix:

  • Resolved Snyk security vulnerabilities by updating affected dependencies in:
    • contentstack-apps-cli (v1.6.7)
    • cli-cm-regex-validate (v1.2.9)
    • cli-bulk-operations (v1.1.0)
    • contentstack-cli-content-type (v1.4.4)

New Features:

  • Live Preview Editable Tags: Added support for generating editable tags through addEditableTags and addTags.
  • Variant-Aware CSLP Tags: Introduced CSLP tag generation that recognizes variants using _applied_variants or system.applied_variants.
  • Enhanced Tag Generation: Added support for generating editable tags within nested fields, arrays, and references, and included null-safe handling.
  • Configurable Locale Casing: Added AddEditableTagsOptions.UseLowerCaseLocale to allow for configurable locale casing in tags.

Enhancement:

  • Added comprehensive unit tests for Live Preview editable tags to ensure consistent behavior across content models.

We are excited to introduce Clearwinner, a new Marketplace app designed to automate the post-test cleanup process for finished A/B test experiences.

Traditionally, concluding an A/B test requires manually identifying variant changes, merging them into baseline entries, publishing updates, and archiving the test. Clearwinner eliminates this time-consuming workflow with a single-click solution.

Key Features:

  • Automated Winner Identification: Easily view tests where Personalize has identified a winning variant based on statistical confidence levels (Has_Won, Leading_significantly, or Leading).
  • One-Click Merge & Publish: Automatically merge winning variant content into your baseline entries and publish the updates to your live environment in one background process.
  • Integrated Cleanup: Automatically archive concluded tests in Personalize and permanently delete redundant variant data to maintain a clean CMS stack.
  • Bulk Operations: Select and process multiple winning tests simultaneously to streamline large-scale experimentation cycles.

To learn more, refer to the Clearwinner App Installation Guide.

New Feature:

  • cli-cm-export-query (v1.0.0):
    • Official General Availability (GA) release of the plugin.

Enhancement:

  • cli-cm-migrate-rte (v2.0.0-beta.5):
    • Upgraded Chalk to v5 to improve terminal string styling and resolve dependency-related issues.
  • Performed dependency upgrades across all listed plugins to ensure improved stability.

Security fix:

  • Resolved Snyk security vulnerabilities by upgrading dependencies in the following plugins:
    • cli-audit (v1.19.3)
    • cli-cm-export (v1.24.3)
    • cli-cm-import (v1.32.3)
    • cli-cm-bootstrap (v1.19.2)
    • cli-cm-branches (v1.8.1)
    • cli-cm-bulk-publish (v1.11.3)
    • cli-cm-clone (v1.21.3)
    • cli-cm-export-to-csv (v1.12.2)
    • cli-cm-import-setup (v1.8.2)
    • cli-cm-seed (v1.15.2)
    • cli-migration (v1.12.2)
    • cli-variants (v1.4.3)

Bug fix:

  • Improved exception handling across the BaseModel and service layers to provide more descriptive error responses and improved stability.

Security fix:

  • Updated the Axios dependency to version 1.15.2 to address potential vulnerabilities and ensure secure network requests.

Security fix:

  • Fixed security issues to improve overall system safety and data protection.

Enhancement:

  • Migrated the JSON processing library from Newtonsoft.Json to System.Text.Json to improve performance and alignment with modern .NET standards.

New Feature:

  • Added support for .NET 10.x, ensuring compatibility with the latest framework version.

Enhancement:

  • Migrated the JSON processing library from Newtonsoft.Json to System.Text.Json to improve performance and alignment with modern .NET standards.

New Feature:

  • Added support for .NET 10.x, ensuring compatibility with the latest framework version.

We’re improving the Mappings feature in Advanced Settings to make it clearer how values are resolved and how to work with nested configuration data. It now includes a dedicated Template Substitution section and better examples for nested values.

Dynamic values can already be used in request headers and body, and now they also work in URLs and query strings.

With a single syntax, {{ var.NAME }}, you can apply dynamic values across the entire outbound request. This enables API versioning, multi-tenant routing, pagination, and more, all driven from your configuration without hardcoding.

Learn more about Introduction to Advanced Settings in Developer Hub.

Here’s an overview of the latest updates in Contentstack Launch:

  • User-Agent Support in Cache Priming:

    Cache priming requests now include a dedicated User-Agent header, allowing you to easily identify and filter them from regular traffic in your logs.

    Learn more in Identifying Cache Priming Traffic.

  • Cancel Active Deployments:

    You can now cancel an ongoing deployment in Launch, allowing you to stop unintended updates before they are applied.

    Learn more in Cancel Deployment.

  • Support for Node.js 24.x:

    We've added support for the Node.js 24.x runtime, ensuring compatibility with the latest Node.js features and improvements.

    Refer to the Supported Node.js Versions.

  • Build Machines for Launch Builds:

    Launch now offers multiple build machine tiers, enabling you to allocate appropriate CPU, memory, and disk resources for faster and more reliable builds.

    To learn more, refer to Build Machines on Launch.

  • Server Machine Tiers for Launch Functions:

    With new server machine tiers in Launch, you can control CPU and memory allocation for your functions, ensuring better performance and scalability based on workload needs.

    For more details, refer to Server Machines on Launch.

  • Launch “Warming Up” Screen for Idle Environments:

    Launch now supports an automated warm-up state for inactive environments, where sites briefly scale down and quickly reinitialize on the next request to ensure efficient resource usage without impacting availability.

Publishing now validates required fields across all publish actions, including single entry, bulk, and release deployments. If you mark fields as mandatory in a content type or global field, the system validates all existing entries against the updated rules at publish time.

If an entry does not meet the updated requirements, it cannot be published until the required fields are completed. This ensures that all published entries align with the current content model.

Managing entries just got faster. You can now switch between Publish Status, Release Status, and Publish Rules directly from the Entry Status panel using a dropdown. You can also apply filters to refine the displayed data. Selected filters remain applied across all views.

This update helps you focus on specific entry details without navigating multiple sections. For example, you can filter by environment and quickly switch views to check publishing status, release progress, or approval rules in the same context.

Refer to the view entry status documentation for more details.

We’re adding enhancements to the Algolia app:

  • Stack Delivery Token Support: Added a new section in app configuration to fetch published data via the Content Delivery API for improved data synchronization.
  • Bulk Field Mapping: You can now add up to 30 field paths at once in the Mapping section by pasting values separated by commas, spaces, or semicolons, or by pressing the enter key.
  • Enhanced Search: Introduced a search function to find entries by Entry UID and Title in the Algolia Full Page app.

To learn more, refer to the Algolia App Installation Guide.

New Feature:

  • Variant Group Support:
    • Added support for Variant Groups, enabling the management of grouped entry variations through the SDK.

New Feature:

  • Timeline Support:
    • Added support for the Timeline feature to programmatically access and manage scheduled content releases and historical events.

As part of our ongoing efforts to enhance platform security and reliability, we are deprecating legacy Content Management API versions /v1 and /v2. This change ensures that all users benefit from the latest performance improvements, security standards, and feature capabilities available in /v3 APIs.

ImportantThe legacy /v1 and /v2 CMA endpoints are now deprecated and will be officially decommissioned in 60 days.

We recommend reviewing your integrations and updating them to use the current API version to avoid any disruption.

What’s Changing
  • Deprecation of /v1 and /v2 APIs: Legacy API versions will be phased out and will no longer be supported.
  • Planned Access Restrictions:
    • /v1 endpoints will be blocked across all cloud environments.
    • /v2 endpoints will be restricted to AWS North America (AWS-NA) only during the transition period.
  • Shift to /v3 APIs: The latest API version is now the standard and actively supported across all environments.

This update helps us deliver a more secure and consistent API experience. We’re committed to supporting your transition, upgrade to /v3 today and take advantage of the latest improvements.

We’ve added enhancements to the XTM app:

  • Unified Field Management: Replaced separate inclusions or exclusions settings with a single Manage Fields section for easier control.
  • Multi-Branch Support: You can now translate entries in non-main branches.

    Note Existing users must update the app to activate this feature.

  • Unlimited Bulk Translation: Removed the entry translation limit for faster, high-volume processing.
  • Global Exclusions: Added a dropdown to exclude specific fields across all content types.
  • Automatic Filtering: Non-localizable fields are now automatically excluded from translation by default.

To learn more, refer to the XTM App Installation Guide.

Managing user access just got more powerful. Admins and organization owners can now take immediate action to secure their organization by logging out multiple users at once.

Select users in bulk from Administration > Users and immediately terminate their active sessions. Once triggered, all active sessions for the selected users are invalidated, ensuring they are logged out across all devices without delay. Take control of your organization’s security with faster, more efficient session management.

Check our documentation for full details, or contact support to get started immediately.

We’ve enhanced the Bulk Operations app to support larger datasets and smoother workflows:

  • Release Version 2.0: Supports references, higher selection limits, and improved API behavior. The release version available for the stack depends on your organization plan.
  • Revamped Tables with Pagination: All modules (Entries, Assets, Releases, and Find and Replace) now use a paginated table for improved performance and usability, along with upgraded item limits.
  • Configurable Asset Upload Limits: You can now upload assets based on your organization’s configured upload limit to better manage bulk assets operations.

To learn more, refer to the Bulk Operations App Installation Guide.

You can now use English - Uzbekistan (en-uz) as a locale in Contentstack to manage English-language content scoped to the Uzbekistan region.

Use this locale to manage region-specific variations, such as pricing, date formats, currency and localized messaging, without duplicating content or approximating wi.

To get started, add English - Uzbekistan (en-uz) from your stack’s Languages settings and create localized entries.

We’re introducing new enhancements to the Healthcheck app:

  • Version Outdated Notifications: A new notification system on the Overview page alerts if the app version is updated, displaying the current and minimum required version to ensure compatibility.
  • Unused Contentstack Features Display: The Overview page now lists unused Contentstack products (such as Launch, Personalize, etc.) to help users identify potential areas for integration.
  • New Unreferenced Assets Check: A dedicated check has been added to identify assets that have been created but are not currently referenced in any entries.
  • Enhanced Content Model Checks: Added 20+ content model checks.

To learn more, refer to the Healthcheck App Installation Guide.

Visual Editor now includes two enhancements that help you manage permissions and control how content is published.

Request Edit Access

You can request edit access when you do not have permission to modify an entry. The Request Edit Access option appears in the Form and canvas views.

Submit a request with an optional comment. Approvers can review the request and approve or reject it from the Status panel. It allows you to continue your workflow without switching tools or contacting approvers separately.

For more information, see the Request Edit Access documentation.

Publish With or Without References

You can choose to publish entries with or without references. During publishing, select whether to include all referenced items or only the selected entry.

This option helps you control how updates are deployed. For example, publish a specific change without affecting linked content, or include all dependencies to maintain consistency across pages.

We’ve introduced major improvements to the Trados app to enhance your experience and provide better visibility into translation projects.

Introduced Full Page UI Location

The app now supports a new Full Page UI location for managing translation projects directly within Contentstack.

Project creation remains the same, with the following enhancements:

  • You can quickly find projects using project search by name or filter them by status or translated language.
  • You can now view the entry version number in error logs for faster debugging.
  • You can recreate failed projects by clicking the Copy Project icon, which copies the existing project configuration.
  • You can automatically identify fields that are not supported for translation before creating a project.
Trados-v1-1-8-Full-Page-App

Note: The Stack Dashboard UI location will be deprecated soon.

During app configuration, enable Reference Handling to automatically include referenced assets in translated releases, ensuring all nested content is localized.

To learn more, refer to the Trados App Installation Guide.

We’ve added new enhancements to the Bynder app:

  • Multi-configuration Support: You can now create and manage multiple configurations for the Bynder app within a single stack.
  • Advanced Settings: A new section has been added to the app configuration, requiring a Client ID and Client Secret to enable API-driven features.
  • Login Bypass: An optional toggle that allows users to bypass the standard login screen when accessing the asset selector.
  • Asset Tracker: Monitor and track asset usage statistics directly within your Bynder portal asset dashboard.
  • OAuth Authentication: Supports a more secure authentication flow using the authorization code and refresh token grant type to generate app tokens.
  • Custom Field Flexibility: While each custom field is limited to one configuration, a single content entry can now support multiple Bynder custom fields, each pointing to different configurations.

To learn more, refer to the Bynder App Installation Guide.

We’re excited to introduce the Mux app, now available in the Contentstack Marketplace.

Mux is a video infrastructure platform that provides APIs and tools for encoding, streaming, hosting, and delivering on-demand and live video content at scale.

The Mux App streamlines video management by integrating Mux capabilities directly into your entry workflow. This secure integration with automated updates simplifies video operations and provides greater control right within Contentstack.

Mux-v1-0-Whats-New

Key features

  • Direct Video Uploads from Entries: Upload videos, track processing status, configure playback settings, and keep asset data automatically synced, all within your entry workflow.
  • Secure Webhook Integration: Automatically reflect video creation, processing, and deletion updates in your entries with secure webhook validation.
  • Flexible playback options: Choose Public playback for open access or enable Signed (private) playback for time-limited, restricted content.
  • Advanced Video Controls: Edit titles, configure captions, customize thumbnails, generate animated GIF previews, and manage MP4 renditions directly within the entry.
  • Configurable Upload Limits: Define the maximum number of videos allowed per entry to maintain structured content control.

To learn more, refer to the Mux App Installation Guide.

Here’s an overview of the latest updates in Contentstack Launch:

  • Analog Framework Support:
    Contentstack Launch now supports hosting projects built with the Analog framework, an open-source Angular-based meta-framework, with full compatibility for SSR, Static Rendering, ISR, and API Routes. You can configure build settings, environment variables, caching strategies, and sitemap generation, with application specs including a 30-second execution timeout, 1024 MB memory, and a read-only file system with a 500 MB /tmp directory.
    To get started, refer to the Quick Start Guide with Analog.
  • AstroJS Framework Support:
    Contentstack Launch now supports deploying projects built with the Astro framework, ensuring compatibility with existing build and deployment workflows for seamless hosting.
    To get started, refer to the Quick Start Guide with Astro.
  • Cache Revalidation Notifications:
    You can now monitor your cache revalidation limits in Contentstack Launch, giving you clear visibility into your usage and available capacity.
    To learn more, refer to Cache Revalidation Limits.
  • Analytics for Cache Revalidation:
    As part of your plan's existing cache revalidation limits, Contentstack Launch now introduces notifications to inform users when they are approaching or have reached their allowed limits. This improves transparency and allows users to take appropriate action before hitting the limit.

We’ve redesigned the Docs experience to make learning faster, clearer, and more connected.

Here’s what’s new:

  • Fresh look & feel
    Docs now align with Contentstack’s updated brand and design system: cleaner visuals, better readability, and a more modern experience.
  • Multi-product navigation
    Each product now has its own dedicated space. Go straight to what matters to you.
  • Docs and Academy, better together
    We’ve strengthened the connection between documentation and Academy courses. Move seamlessly between concepts and hands-on learning.
  • Light & Dark themes
    Switch between light and dark modes based on your preference, whether you’re browsing during the day or working late.
  • Improved UX & content flow
    Content is now better structured and easier to scan, helping you find answers faster with less friction.

Start exploring the new Docs experience now!

This release introduces updates to improve content modeling and the entry editing experience.

The enhancements include:

  • Default language and timezone: You can now set a preferred timezone and default language in your profile settings. The selected language is automatically applied when you open the entry list, reducing the need to switch it manually.
  • Field limit indicator banners: The Content Type Builder now displays indicators as you approach system limits:
    • At 80%, an early warning appears
    • At 100%, the limit is reached message appears

    These indicators apply to both the total number of fields and JSON Rich Text fields, helping you monitor limits while designing content types.

  • Horizontal layout for radio buttons: You can now display radio options horizontally in the entry editor. This layout makes it easy to view and select from a small set of options.

Secure your workspace by automatically logging users out after a defined limit. This gives admins precise control over session duration and inactivity.

What’s New

  • Session Timeout: Enforce strict limits. Automatically log users out once their session reaches the maximum duration you define.
  • Idle Timeout: Secure inactive workstations. Set a specific period of inactivity that triggers an automatic logout.
  • Customizable Timeouts: Tailor your policy. Configure session and idle timeouts anywhere from 1 and 8760 hours to match your security standards.
  • Email Whitelisting: Manage exceptions. Bypass timeout rules for trusted users or service accounts by whitelisting their email addresses.

Enable this feature by navigating to Administration > Security Configuration > Session Timeout. Check our documentation for full details, or contact support to get started immediately.

We’ve added enhancements to the Contentstack Shopify Integration:

  • Enhanced Sync Control: You can now choose to sync content to Shopify only when an entry is officially published in Contentstack.
  • Full URL Support: The application now fully supports syncing URL fields, removing all previous data type restrictions.
  • Dynamic Metadata Cleanup: Unpublishing an entry in Contentstack now automatically removes its associated metafields and meta-objects from Shopify while keeping the core product intact.

To learn more, refer to the Contentstack Shopify Integration Guide.

We’ve introduced a new way to control how Live Preview generates preview links. Instead of relying only on static environment base URLs or entry-level URL fields, you can now define dynamic, pattern-based preview URLs that resolve at runtime using entry data, environment, locale, or taxonomy values.

You can now preview content that uses non-native URL fields, nested routing, taxonomy-driven URLs, or multiple domains. The same content can be previewed across regional domains or environments without duplicating entries or manually updating URLs. 

With Custom Preview URLs, Live Preview reflects your real site structure more accurately, reducing broken or incorrect previews.

To get started, see the Custom Preview URLs in Live Preview documentation.

Create Variant Groups Directly in the CMS

You can now create Variant Groups directly from the CMS. Previously, variant groups could only be created through the personalization setup. With this update, administrators and developers can navigate to Settings, then Variants and click New Variant Group to create and manage variant groups within the CMS interface.

Currently, variant group creation is available only in the main branch.

This update simplifies the setup process for variants by allowing teams to create and manage variant groups without relying on APIs. It makes it easier for administrators and developers to configure variant structures directly from the CMS UI and start using variants across supported content types.

For detailed instructions, refer to the Create and Manage Variant Groups in the CMS documentation.

Note: The Entry Variants feature is available as part of the Personalize license and may not be accessible to all users. For more information, contact the support team.

Drafts and Auto Save help protect your work while editing entries in the entry editor.

Autosave automatically saves your changes as you edit, so if your browser crashes, you close a tab, or the page refreshes, your work is preserved. When you're ready to commit your changes, clicking Save creates a new official version.

When multiple users work on the same entry, Drafts and Auto Save helps maintain a structured editing experience:

  • Field-level locking prevents multiple users from editing the same field at the same time.
  • Collaboration indicators show when other users are actively viewing or editing the entry.

For more information, refer to the Drafts and Auto Save documentation.

Note: This feature is currently part of an Early Access Program and may not be available to all users. Contact the Contentstack support team for more information.

You can now add entries to a release directly from Visual Editor. Add a single entry while editing a page or select multiple entries in bulk.

Instead of navigating from the Entries module, content managers can prepare and organize content for deployment without leaving the visual page editing interface.

For example, if you update multiple components on a landing page, you can quickly select all related entries and add them to a release in one flow, helping teams coordinate launches more efficiently.

Learn more through the Add to Release in Visual Editor documentation.

We’ve redesigned the Academy to make learning faster, clearer, and more connected.

  • Fresh look & feel: Now aligned with Contentstack’s new brand colors and modern design system.
  • Multi-product navigation: Dedicated sections for each product, so you can quickly find what’s relevant to you.
  • Stronger Docs & Academy connection: Seamless interlinking between documentation and courses for smoother learning and a deeper context.
  • Light & Dark themes: Choose the experience that works best for you.
  • Improved UX & content flow: Cleaner structure, better organization, and faster access to what you need.
  • Captions & transcriptions for all videos: Learn your way: searchable, accessible, and easier to follow.

Ready to accelerate your expertise? The reimagined Academy delivers a more connected learning experience designed to take you from concept to creation in record time. Explore now!

This release delivers usability improvements that make stack management, content modeling, and entry workflows faster and more intuitive.

  • Stack Colors: You can now assign colors to stacks in the stack switcher to quickly distinguish between them.
  • Dynamic Entry Titles in Browser Tabs: Entry titles now appear in the browser tab, making it easier to identify and switch between multiple open entry tabs. If a title is missing, the tab displays Untitled Entry. If the entry is unavailable, it shows Entry Not Found.
  • Entry UID Column: The Entries list page now includes a dedicated Entry UID column with a one-click copy option. This simplifies referencing entries for API usage, debugging, and developer workflows.
  • View Reference Map: Visualize entry relationships directly within the entry editor using the View Reference Map feature. The map shows both entries that reference the current entry and entries referenced by it, providing a clear hierarchical view—especially useful for managing complex content structures.

Together, these enhancements streamline everyday tasks, reduce context switching, and make working across stacks and entries more intuitive.

Here’s an overview of the latest updates in Contentstack Launch:

  • HTTP Log Targets:
    Stream logs using a scalable, accessible method with the support for HTTP-based Log Targets in Contentstack Launch. This update eliminates the need for complex gRPC and OpenTelemetry Collector setups, allowing you to stream logs directly to popular aggregators for simpler configuration, faster onboarding, and quicker root-cause analysis.
    Refer to the Log Targets guide to start streaming logs.
  • New Launch Response Error Codes:
    Expand troubleshooting capabilities with two new error codes (CF1001, CF1003) added to Contentstack Launch.
    Read more about the error codes in the Troubleshooting Launch Response Error Codes document.
  • Cache Revalidation Limits on Launch:
    Ensure platform stability with daily cache revalidation limits applied to Launch projects.
    High-volume Enterprise organizations can request limit increases to support specific workload requirements.

We’ve renamed Visual Builder to Visual Editor to better reflect how the experience is used today.

As the product has evolved, its core value has become clearer; this is where teams review, edit, and refine content visually. From making updates and previewing changes to validating content before it goes live, editing is at the heart of the experience. The new name aligns more accurately with what users actually do every day.

Note: This is a name change only. All functionality, workflows, and access remain the same, and no action is required from existing users. You may see Visual Editor referenced across the product documentation where Visual Builder previously appeared.