Data and AI releases

548 this month · 176 companies

Conversion tracking fields added to MarketingEngagementCreate

UpdateNot yet verified

To improve the integration of marketing platforms that track conversions beyond traditional sales metrics, we have added new fields to the MarketingEngagementCreateInput and MarketingEngagement objects on the MarketingEngagementCreate mutation. These enhancements enable more comprehensive data integration into Shopify's marketing reports.

Observability

Read on shopify.dev

Also shipped Dec 19, 2025Shopify in December 2025 →

Modal 1.3.0

Modal now supports Python 3.14. Python 3.14t (the free-threading build) support is currently a work in progress, because we are waiting for dependencies to be updated with free-threaded support. Additionally, Modal no longer supports Python 3.9, which has reached end-of-life.

Update
Source ↗

Qdrant 1.16.3

Change log Improvements #7755 , #7588 - Respect search and point retrieve timeout when trying to access segments #7685 - Respect telemetry timeout when fetching shard statistics #7715 - Log snapshot download duration and speed Bug fixes #7787 , #7791 - Fix WAL delta transfer corrupting replica after a previous full transfer was aborted #7801 , #7805 - Fix...

Update
Source ↗

What's new in Sigma

Admin Account type permissions for reports The following account type permissions are now available to enable access to reports: View reports : Enables users to view reports shared with them. Create, edit, and publish reports : Enables users to create new reports, manage existing ones, and share published versions.

Update
Source ↗

More from Shopify developer platformEvery Shopify developer platform release →

Customer marketing URL fields now require write access

Effective immediately : The following customer-related fields now require the write_customers scope and the create_and_edit_customers permission: Customer.emailOpenTrackingUrl (deprecated) Customer.unsubscribeUrl (deprecated) CustomerEmailAddress.openTrackingUrl CustomerEmailAddress.marketingUnsubscribeUrl CustomerPhoneNumber.marketingUnsubscribeUrl Reason...

Update
Source ↗

Discount Function support for rejecting discount codes

The Discount Function API now supports discount code rejection, allowing apps to conditionally reject discount codes with a custom message. With discount rejection for the Discount Function API, merchants can: Prevent double discounting on sale prices Manage fine-grained combinations of discount codes Disqualify certain products from discounts For more...

Pricing
Source ↗

Deprecation of `Shop.billingAddress` in favor of `Shop.shopAddress`

As of API version 2026-01, the shopAddress field will be introduced to the Shop object in the GraphQL Admin API. This new field replaces the now-deprecated billingAddress field, which will be removed in a future version. shopAddress will have identical structure and values as billingAddress .

Deprecation
Source ↗

Set and retrieve `processedAt` in the `refundCreate` mutation

We have introduced a new processedAt input field to the refundCreate mutation . With this field, you can manage refund timestamps in your records more effectively. If you don't provide a processedAt value, then the current timestamp is used by default. This ensures that existing integrations continue to function without modification.

Update
Source ↗

Venmo and PayPal are now treated as separate payment methods

Starting in API version 2026-01 , Venmo and PayPal are treated as separate payment methods when using payment customization functions. Previously, hiding PayPal's express checkout placement would automatically hide Venmo as well. With this change, you can now hide or show Venmo independently from PayPal in your payment customization logic.

Update
Source ↗

Faster bulk operations

We've updated bulk operations in the GraphQL Admin API to process large datasets faster. What's new: Here's what we've done: Support for all mutations : Previously bulk mutations only supported a limited set of actions. Now, you can execute any mutation using bulk operations across all API versions.

Update
Source ↗