3 September 2026
API
Enhancement
Product catalogMessages/SubscriptionsGraphQL
Every Variant Message now carries a reference to the Product that contains the Variant. This standardizes how the owning Product is exposed across all Variant Messages. Previously, only VariantUnpublishedMessage included a product reference, while VariantCreatedMessage exposed a plain productId and the remaining Messages exposed neither.
With the product reference present on every Message, a subscriber can resolve the owning Product directly from the Message payload instead of making a follow-up request. This matters most for VariantDeletedMessage, where the Variant no longer resolves after deletion and the only reliable alternative was reprocessing a broader set of catalog data.
Variant Messages are only generated for Projects with productCatalogModel set to Modular, which is available in public beta.

Changes:

VariantUnpublishedMessage and the GraphQL VariantUnpublished message type already included the Product reference and are unchanged.
If your integration reads productId from VariantCreated, update it to read product.id in the HTTP API or productRef.id in the GraphQL API. The ChangeSubscription is not affected by this change; to consume the Product reference, subscribe to Variant Messages instead.