> ## Documentation Index
> Fetch the complete documentation index at: https://docs.thepublive.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Publive DXP changelog

> Track changes, new features, and updates to Publive DXP.

<Tip>
  Subscribe to this changelog via RSS at `https://docs.thepublive.com/changelog/dxp/rss.xml` — paste the URL into Slack (`/feed subscribe`), an RSS reader, or a tool like Zapier to get notified of new releases.
</Tip>

<Update label="August 11, 2026" tags={["Improvements", "Bug fixes"]} rss={{ title: "Case-sensitive Smart Link matching, Web Story editor and newsletter delivery fixes" }}>
  ### Improvements

  * **Smart Link matching** — Smart Link matching is now case-sensitive, so common words are no longer misidentified as brand names. For example, "boAt" and "boat" are now treated as separate entities.

  ### Bug fixes

  * **Web Story editor: content pasting** — fixed reordering in the Web Story editor unexpectedly changing slide content, order, or converting text to headings.
  * **Newsletter delivery: recreated posts** — fixed newsletter delivery failing when a post was deleted and recreated with the same slug.
</Update>

<Update label="July 28, 2026" tags={["New releases", "Improvements", "Bug fixes"]} rss={{ title: "Google Discover Headline, category URL trailing slash handling, meta keyword and form email fixes, heading hierarchy fix" }}>
  ### Google Discover Headline

  The OG Title field has moved out of the **SEO Properties** panel into a dedicated **Google Discover Headline** field, shown directly under **Title**. See [Google Discover Headline](/dxp/documentation/concepts-features/google-discover-headline) for full details.

  * It holds the same value as the old OG Title field. Existing headlines carry over automatically, so nothing is lost.
  * It controls only the headline shown when your content appears in Google Discover, not your page's Title or Meta Title.

  ### Improvements

  * **Duplicate meta keywords** — meta keywords now stay clean through every article update and republish.
  * **Form acknowledgement emails** — acknowledgement emails now show clear, readable field labels.
  * **Analytics** — the dashboard **Insights** link now takes you straight to the new analytics dashboard.
  * **Author profile mail icon** — every author profile now has a mail icon, so readers can reach any author directly.
  * **Form permissions** — added view, create, manage permissions for form schema and submission.

  ### Bug fixes

  * **Heading hierarchy** — semantic heading structure (H1, H2, H3) across homepage, section, tag, and author pages is now consistent, which improves SEO and accessibility.
</Update>

<Update label="July 15, 2026" tags={["Improvements", "Bug fixes"]} rss={{ title: "Smarter cache clearing, Activity Log Form filter fix" }}>
  ### Cache Tags — Smarter Cache Clearing

  We've optimized how caching works across all publisher websites. Earlier, any content update cleared the entire site's cache, temporarily slowing down page loads everywhere. Now, only the pages affected by the update are refreshed — the rest of the site stays fast.

  * Faster, more consistent page loads — even right after publishing or making sitewide changes
  * No action required — already live on your website

  ### Activity Log: Form Filter Restored

  The **Form** resource type was missing from the resource filter in [Audit Logs](/dxp/documentation/concepts-features/audit-logs). It has been added back — form create, update, and delete actions can now be filtered like any other resource type.
</Update>

<Update label="July 1, 2026" tags={["New releases", "Security"]} rss={{ title: "AI Tag Suggestion, Newsletter Usage Limit Notifications, Forms Management APIs, Version History component-level restore, bug fixes" }}>
  ### AI Tag Suggestion

  The Tags field now includes an AI sparkle icon that suggests relevant tags from your existing tag library.

  * Click the AI icon inside the **Tags** field to scan the post's content and get suggestions
  * The dropdown opens with an **AI Suggests** section (matched tags from your library) above the full **Other Tags** browsable list
  * Click any suggested tag to apply it — manual search and new tag creation remain fully available
  * A **Refresh** icon appears after suggestions load; it becomes active once any other field autosaves, letting writers re-scan updated content
  * If the post has too little content, or no close matches exist in the library, an inline message explains why and the full tag library stays browsable

  ### Newsletter: Usage limit notifications

  Publishers can now track monthly newsletter send usage in real time and receive automated alerts before hitting their contracted limit.

  * A usage bar on the **Newsletter Analytics** page shows sends used vs. the monthly limit, color-coded by threshold (green → amber → orange → red)
  * The platform sends automated email alerts to **Owner** and **Publisher Admin** roles when usage crosses **50%, 75%, 90%**, and **100%** of the monthly limit
  * The send screen displays the usage bar for editors once the 50% threshold is crossed

  ### Forms management APIs

  Five new CMS API endpoints are now available for programmatic forms management.

  | Method   | Endpoint      | Description              |
  | -------- | ------------- | ------------------------ |
  | `GET`    | `/forms`      | List all forms           |
  | `GET`    | `/forms/{id}` | Retrieve a specific form |
  | `POST`   | `/forms`      | Create a new form        |
  | `PUT`    | `/forms/{id}` | Update an existing form  |
  | `DELETE` | `/forms/{id}` | Delete a form            |

  Previously, only form schema fetch and form submission were supported via API. These endpoints enable MCP integrations and custom tooling to discover and manage forms without using the dashboard.

  See the [Forms API reference](/dxp/api-reference/content-management/forms/README) for full parameter details and response schemas.

  ### Version History: Component-level restore

  You can now expand nested components directly in Version History and restore them individually, without overwriting the entire entry.

  * A checkbox beside each component title lets you select and restore that component.
  * The existing **Restore Version** (full entry restore) remains available and unaffected.
</Update>

<Update label="June 16, 2026" tags={["New releases", "Improvements", "Security"]} rss={{ title: "Content Rules Engine, Forms 200 MB upload limit, CMS default relational values, relative URL support, invalid header dropping, Threads embed support" }}>
  ### Content Rules Engine

  Admins and owners can now create custom, condition-based content quality rules for any content type.

  * Rules support multiple fields with **AND/OR** logic and a configurable scoring priority — reorder rules by drag and drop
  * Each rule optionally blocks publishing when the rule is not met
  * Each rule supports a custom message shown to editors on failure
  * Rules can be enabled or disabled individually and imported/exported as JSON for reuse across content types or sister sites
  * Editors see rules applied live in priority order as they write; the content quality score updates in real time

  ### Forms: Increased media upload size limit

  The upload size limit for collective media in [Forms](/dxp/documentation/concepts-features/forms) has been increased from **5 MB to 200 MB**.

  <Note>
    This change applies to CMS APIs only and cannot be configured from the dashboard.
  </Note>

  ### Content Type Builder: Default values in relational fields

  Content type fields of relational type now support configurable default values.

  * The default must be a published post of the selected content type
  * The option is disabled when no content type is selected

  ### Content Type Builder: Relative URL support in URL field

  Publisher admins can now configure each **Links** field in the **Content Type Builder** to accept **Absolute URLs**, **Relative URLs**, or **Both**.

  * Existing fields default to **Both** with no breaking change

  ### Drop invalid header fields

  Invalid header fields are now dropped to mitigate request smuggling attacks.
</Update>

<Update label="June 2, 2026" tags={["New releases", "Improvements", "Bug fixes"]} rss={{ title: "Reader Login & Newsletter Flows APIs, admin password reset, AI Suite v2, newsletter dashboard improvements, bug fixes" }}>
  ### Reader Login API

  CMS APIs for reader authentication are now available for headless integrations.

  * [Login](/dxp/api-reference/content-management/reader/login), [signup](/dxp/api-reference/content-management/reader/register), [password management](/dxp/api-reference/content-management/reader/forgot-password), and profile detail endpoints are all included
  * Authenticate readers against your Publive subscriber base from any frontend

  See the [Reader Login API reference](/dxp/api-reference/content-management/reader/README) for full parameter details and response examples.

  ### Newsletter Flows API

  CMS APIs for newsletter subscription flows are now available for headless integrations.

  * [Subscribe](/dxp/api-reference/content-management/newsletter/subscribe) and [unsubscribe](/dxp/api-reference/content-management/newsletter/unsubscribe) readers from newsletters via API
  * Manage newsletter preferences programmatically from your own frontend

  See the [Newsletter Flows API reference](/dxp/api-reference/content-management/newsletter/README) for full details.

  ### Admin password reset

  Team admins can now reset passwords for any member directly from the **Team Members** panel — no action required from the member.

  ### AI Suite v2

  Several updates to improve AI feature discoverability in the editor.

  * The AI sparkle icon now only appears on focused or filled fields, reducing visual clutter
  * A nudge tooltip appears after pasting long text into **Title**, **Summary**, or **Meta** fields
  * A dismissible card introduces new AI features on first visit to the editor

  ### Newsletter dashboard improvements

  Two monitoring improvements for newsletter configuration and deliverability.

  * When sending a newsletter to email addresses not on the subscriber list, a warning is now shown before sending. Failed sends are surfaced in the UI instead of failing silently.
  * The newsletter analytics dashboard now displays warnings when DMARC and SPF records are not properly configured, helping publishers improve email deliverability.

  ### API users excluded from member listing

  API users no longer appear in the member listing on the dashboard and cannot be selected as contributors or in any contributor fields.

  ### Pricing and paywall discovery pages — no login required

  Pricing and paywall discovery pages are now publicly accessible. Readers no longer need to be signed in to reach them.

  ### Bug fixes

  * **Autosave after scheduling** — scheduling a publish date no longer causes subsequent autosave requests to fail with 404 errors.
  * **Category URL trailing slash** — category URLs with a trailing `/` now resolve correctly instead of returning 404 errors.
  * **Content Distribution pagination** — navigating between pages in the Content Distribution section now loads the correct data for each page.
  * **Video thumbnail and object not restored from version history** — restoring a version now correctly restores the video thumbnail and video object fields. Caption was unaffected.
</Update>

<Update label="May 25, 2026" tags={["New releases"]} rss={{ title: "Trending Posts API" }}>
  ### Trending Posts API

  The Content Delivery API now includes an endpoint for fetching a publisher's top-performing posts ranked by page views, powered by Publive analytics.

  * **Endpoint:** `GET https://cds.thepublive.com/publisher/<PUBLISHER_ID>/posts/analytics/trending/`
  * `duration` controls the analytics window: `24h` (default), `7d`, or `30d`
  * `type` filters results to a specific post type — Article, Video, Web Story, Gallery, LiveBlog, CustomPage, CustomEntity, or Newsletter
  * Pagination via `limit` (1–50, default 20) and `page`
  * Rankings refresh every 5 minutes; the CDN cache adds up to 5 minutes on top
  * Requires Publive analytics tracking to be active on the publisher's website — returns an empty list if not implemented

  See the [Trending Posts API reference](/dxp/api-reference/content-delivery/trending-post) for full parameter details and response schema.
</Update>

<Update label="May 19, 2026" tags={["New releases", "Improvements", "Bug fixes"]} rss={{ title: "AI Suite v2, Audit Logging Phase 2, Form notification improvements, CMS & CDS API updates, autosave speed, bug fixes" }}>
  ### Audit Logging Phase 2

  The activity audit trail now covers post-level actions.

  * Publish, unpublish, schedule, and delete events are tracked per post
  * Publishers using [audit logs](/dxp/documentation/concepts-features/audit-logs) will see a more complete record of content activity

  ### Form Submission Email Improvements

  Three updates to [form](/dxp/documentation/concepts-features/forms) email notifications.

  * New option to **include response data** in the notification email (off by default)
  * **View Submission** link in the email now goes directly to that submission, not the general submissions page
  * Updated subject line: `Publive | You have got a new submission on the form {FORM NAME}`

  ### Content Access Policies — Extended Support

  [Access control policies](/dxp/documentation/concepts-features/content-access-policies) now cover additional content types.

  * System default and partial entity content types are now supported

  ### Autosave Latency Improvements

  Autosave is faster across all content types — both opening the edit page and saving.

  * Biggest impact on publishers using large relational fields or many repeatable components in a single article

  ### Roles & Permissions Page — Faster Load and Save

  The roles and permissions page now opens and saves faster.

  ### API Updates

  * **Component & Dynamic Zone support in CMS APIs** — [CMS APIs](/dxp/api-reference/content-management/README) now support component and dynamic zone fields. Integrations that read or write content types using these structures will work end-to-end without workarounds.
  * **Static file support in CDS APIs** — [CDS APIs](/dxp/api-reference/content-delivery/README) now cover static files including [sitemaps](/dxp/api-reference/content-delivery/sitemap-allcontent), [robots.txt](/dxp/api-reference/content-delivery/static-robots-txt), [ads.txt](/dxp/api-reference/content-delivery/static-ads-txt), and helper iframes. Publisher websites serving these files via CDS no longer need separate handling or manual workarounds.

  ### Bug fixes

  * Relational field search — pressing Enter while searching for a custom entity now commits the top result from the dropdown instead of deselecting existing entries.
</Update>

<Update label="May 7, 2026" tags={["New releases", "Improvements"]} rss={{ title: "Content Access Policies, Change Image Globally, Import/Export Custom Entities, Form response copies" }}>
  ### Content Access Policies

  Roles now include a dedicated **Content Permissions** tab, replacing the old per-content-type checkbox system with a proper Allow/Deny policy model.

  * Define policy rows per content type, action, and field (custom types only)
  * Deny always overrides Allow; default is zero access — all access must be explicitly granted
  * Available on desktop only; accessible from the Create/Edit Role screen

  See the [Content Access Policies](/dxp/documentation/concepts-features/content-access-policies) documentation for full setup details.

  ### Change Image Globally

  Replace a media asset once from the [Media Library](/dxp/documentation/concepts-features/media-library) and it updates everywhere it is used across all content — no need to edit individual posts.

  * Gated by the **Manage Media Library** permission
  * Includes a read-only Version History tab on each media item
  * Only available for publishers with Cache Tags enabled

  ### Import/Export Custom Entities

  Admins can now export a [Custom Entity](/dxp/documentation/concepts-features/custom-entities) schema as a JSON file and import it into another publisher — no need to rebuild schemas from scratch.

  * Import shows a preview of which schemas will be reused vs. created fresh before applying any changes
  * Scoped to users with the Import/Export permission

  ### Send Copy of Form Responses to Submitter

  Publishers can configure [forms](/dxp/documentation/concepts-features/forms) to automatically send submitters an email copy of their response.

  * Toggle available in Form Settings: **Send responder a copy of their response**

  ### Photogallery Reordering

  Items within the photogallery content type can now be reordered from the dashboard.

  ### Reader Section CSV Export — All Columns Included

  The CSV export from the Reader Section now includes all columns visible in the UI.

  * Previously missing columns such as **source** and **segment** are now included in the export

  ### Structured Data Enhancements

  Several SEO schema improvements ship in this release.

  * Liveblog structured data now includes `coverageStartTime` and `coverageEndTime` fields
  * Person schema (JSON-LD) is now injected on author pages, dynamically pulling name, designation, bio, image, and social links from the CMS
  * AMP and Web Stories pages now correctly pass data layer variables for GA4
</Update>

<Update label="April 28, 2026" tags={["New releases"]} rss={{ title: "Multi-Factor Authentication, Enterprise Audit Logs" }}>
  ### Multi-Factor Authentication (MFA)

  Email OTP-based login verification is now available on the Publive dashboard. See [Multi-Factor Authentication](/dxp/documentation/getting-started/mfa) for setup instructions.

  * Enable per-user from **Edit Team Member**, or enforce MFA globally for all users under a publisher
  * OTP is 6-digit, valid for 5 minutes; account locks for 15 minutes after 5 incorrect attempts
  * MFA is account-level — if any publisher enforces it, the user must verify on all publishers they belong to
  * **Note:** enabling MFA will immediately sign out all affected users. Users belonging to multiple publishers will be signed out of all their accounts and must log in again via OTP

  ### Enterprise Audit Logs

  All key dashboard actions are now logged with the acting user and a timestamp — track who did what and when across your entire workspace.

  * Covers content operations, team management, and configuration changes
  * The [Audit Logs](/dxp/documentation/concepts-features/audit-logs) UI is controlled by a feature flag — contact support to enable the view for your publisher
  * Backend tracking is active for all publishers from this release regardless of UI access
</Update>

<Update label="April 21, 2026" tags={["New releases", "Improvements", "Bug fixes"]} rss={{ title: "Schema duplication, CMS schema APIs, related field reordering, page caching improvements, bug fixes" }}>
  ### Schema and Component Duplication

  Schemas and components can now be duplicated directly from the Content Type Builder — no need to rebuild them from scratch.

  * Duplicate any schema or component and modify it to your needs

  ### CMS APIs for Content Schema Management

  [REST APIs](/dxp/api-reference/content-management/README) are now available to programmatically create, update, and manage [content schemas](/dxp/api-reference/content-management/custom-content-types/README) with full backend validation.

  * Available to existing API users; no new permissions required

  ### Reordering Related Fields

  Users can now reorder related fields directly from the dashboard.

  ### Improved Page Caching Under Load

  Pages rebuilding in the background now serve cached content to simultaneous requests instead of all requests hitting origin.

  * Reduces redundant load on publisher websites during traffic spikes or cache rebuilds

  ### Bug fixes

  * Media Embed field in Custom Entity now correctly shows the current saved value
  * Users no longer receive newsletter emails after unsubscribing
  * [Index Sitemaps](/dxp/api-reference/content-delivery/sitemap-allcontent) `lastmod` date no longer incorrectly updates during migration
  * [CMS form submission API](/dxp/api-reference/content-management/forms/form-submission) now returns a clear error message when content type is incorrect, instead of a generic 5xx failure
  * [Custom Entity](/dxp/documentation/concepts-features/custom-entities) listing "no result found" issue resolved — data now displays correctly
</Update>

<Update label="April 13, 2026" tags={["Bug fixes"]} rss={{ title: "Category mismatch warning fix" }}>
  ### Category Warning Fix

  The category mismatch warning now only appears when there is a genuine mismatch between a category's mapped content type and the post type being published.

  * Previously, the warning fired on every category selection for publishers with no category-to-content-type mappings configured
  * No action required — editors will simply stop seeing false warnings during normal content creation
</Update>

<Update label="April 8, 2026" tags={["New releases", "Improvements", "Bug fixes"]} rss={{ title: "Article editing flow, Advanced SEO for Custom Entities, API Developer Hub, Audit Logging, Ad Slot improvements" }}>
  ### Published Article Editing

  The article list now shows a single row per article with a status chip (**Unpublished Changes / Scheduled Changes / Pending Approval**) instead of a separate draft row alongside the live article.

  * A **Discard Changes** button lets editors reset to the current live version at any point

  ### Advanced SEO for Custom Entities

  Admins can now enable the Advanced Properties panel on any [Custom Entity](/dxp/documentation/concepts-features/custom-entities) type from Content Type settings.

  * When enabled, editors see grouped SEO fields: Meta Title, OG Title, OG Description, Meta Description, Canonical URL, Select Schema
  * A new **Manage SEO** permission column controls access per role

  ### API Developer Hub

  Publishers can now generate a secure API Key and Secret directly from the dashboard.

  * One key pair per publisher
  * Generation restricted to Owner and Admin roles

  ### Bulk Role Update

  Select multiple members on the Team Members page and update all their roles in one action.

  ### Audit Logging

  All create, update, publish, and delete actions in the dashboard are now logged with the acting user and timestamp. See [Enterprise Audit Logs](/dxp/documentation/concepts-features/audit-logs) for details.

  ### Ad Slot Management Improvements

  Several improvements to how ad positions and slots are managed.

  * Position types are now split into **System Position** (read-only, managed internally) and **Custom Position** (editable)
  * All slots within a position can be disabled from the position's slots listing page
  * Device and page type fields are now mandatory when creating new positions
  * A position remains active even when all its slots are inactive

  ### Bug fixes

  * Author page bios now truncate with a **Read More** button instead of displaying the full text; links inside bios are now clickable
  * [Custom Entity](/dxp/documentation/concepts-features/custom-entities) form pages returning a 404 on the website — fixed
  * Users assigned a role with specific entity access were seeing no entities at all — fixed
  * Most recent story appearing twice on an author's page on mobile — fixed
  * No logout option after login on T5 template — fixed
</Update>

<Update label="March 13, 2026" tags={["New releases", "Improvements"]} rss={{ title: "Post component duplication, rich text in descriptions, author bio enhancements, custom pagination, larger uploads" }}>
  ### Post Component Duplication

  Editors can now duplicate sections within a post — such as accordion components — making it faster to create content with repeated structures.

  ### Rich Text in Web Story and Gallery Descriptions

  Web stories and gallery descriptions now support a light rich-text editor, allowing basic text formatting.

  * For Web Stories, this feature must be enabled from Settings

  ### Author Description Enhancements

  Author bios now support richer content and significantly longer text.

  * Character limit increased from **500 to 5,000 characters**
  * Rich-text editor added for basic formatting

  ### Custom Pagination for Post Listing Pages

  Websites can now configure how many posts are displayed per page on [listing pages](/dxp/api-reference/content-delivery/post-listing) such as [category pages](/dxp/api-reference/content-delivery/category-listing).

  * Does not apply to the homepage

  ### Increased File Upload Limits

  The system now supports larger file uploads submitted through [website forms](/dxp/documentation/concepts-features/forms).
</Update>
