Analytics Targets, Channel Enhancements, Line‑Item Weight Added

4/2/2026, 12:00:29 AM

A new analyticsTargets query returns paginated analytics targets for the shop, with comprehensive filtering, sorting, and a full text query syntax described in the docs. Three new mutations – analyticsTargetCreate, analyticsTargetUpdate, and analyticsTargetsDelete – let apps create, update, or remove analytics targets, each with a payload that includes the target object and potential validation errors. Multiple field descriptions in the Channel type have been clarified: accountId, accountName, handle, and specificationHandle now reference the external account, merchant-facing name, unique shop handle, and bound specification respectively, aiding multi‑channel integration. The channelCreate and channelUpdate mutations have updated descriptions and arg wording to reflect their role in establishing and modifying a channel connection, with channelCreate’s “input” field description now highlighting the creation of a connection to an external platform. channelFullSync’s documentation now explains the full product resync process, its optional country & language scoping, and the response’s fullSyncTraceInfo showing per‑feed trace data. A new weight field on LineItem provides the weight of a unit, useful for shipping calculations. Several legacy branding fields and enums (such as CheckoutAndAccountsConfigurationBrandingBackground and background) have been removed or renamed to simplify the API. The overall schema now contains fewer deprecated paths and more explicit references to the app's ownership of channels, ensuring developers can link resources securely.

Query Changes

➕ Added Queries (1)

analyticsTargets

A list of analytics targets for the shop.

🔄 Modified Queries (3)

channel

Returns a Channel by ID. The channel must belong to the calling application.

~ Modified argument: id
channelByHandle

Returns a Channel by its unique string handle. The handle is either set explicitly during channelCreate or auto-generated from the specification handle and account ID. The channel must belong to the calling application.

~ Modified argument: handle
channels

The list of Channel objects on the shop. When the calling application supports multi-channel, only channels established by the calling application are returned. Each channel represents an authenticated connection to an external selling platform such as a marketplace, social media platform, online store, or point-of-sale system.

Mutation Changes

➕ Added Mutations (3)

analyticsTargetCreate

Create a new analytics target.

analyticsTargetUpdate

Updates an analytics target.

analyticsTargetsDelete

Deletes one or more analytics targets.

🔄 Modified Mutations (4)

channelCreate

Creates a Channel representing a connection between the shop and an external selling platform account. Use this mutation after a merchant authenticates with an external platform to establish the publishing destination for product syndication and, for order-generating channels, order import.

The platform resolves the channel specification identified by specificationHandle, determines its country coverage, intersects with the shop's available region markets, and establishes product feeds for all matching regions. Product feeds immediately begin emitting events to the application's webhook or event subscription.

If the specification sets expects_online_store_parity and no matching region markets exist, the mutation returns an error. If the specification doesn't require online store parity and no matching region markets exist, a channel subordinate to shop defaults is created automatically.

~ Modified argument: input
channelDelete

Deletes a Channel from the shop. All associated product feeds are removed. Existing orders attributed to the channel are preserved. The channel must have been created via channelCreate.

channelFullSync

Triggers a full product resync for the specified Channel. All published products are added to the channel's product feed attention set, causing the next poll or event-triggered consumption to receive current state for the complete catalog. Use this mutation after initial channel setup, after recovering from a prolonged outage, or when the channel's external catalog has drifted from Shopify's state.

The sync can be scoped to a specific country and language. When neither is specified, all country-language combinations covered by the channel's specification are triggered.

~ Modified argument: channelId
~ Modified argument: language
~ Modified argument: country
channelUpdate

Updates the properties of an existing Channel. Use this mutation to update account information — such as the display name shown in Shopify Admin — or to bind the channel to a different channel specification.

Updating the specificationHandle triggers re-evaluation of the specification's country coverage against the shop's region markets, reconciling product feeds accordingly. This is also the mechanism for migrating legacy channel records to the multi-channel model by assigning a specification handle.

~ Modified argument: id
~ Modified argument: input

Type Changes

➕ Added Types (6)

🏗️AnalyticsTarget➕ AddedOBJECT

A target for an analytics metric.

Fields: createdAt, currencyCode, endDate, expectedValue, filters ... +6 more
🏗️AnalyticsTargetConnection➕ AddedOBJECT

An auto-generated type for paginating through multiple AnalyticsTargets.

Fields: edges, nodes, pageInfo
🏗️AnalyticsTargetCreatePayload➕ AddedOBJECT

Return type for analyticsTargetCreate mutation.

Fields: analyticsTarget, userErrors
🏗️AnalyticsTargetEdge➕ AddedOBJECT

An auto-generated type which holds one AnalyticsTarget and a cursor during pagination.

Fields: cursor, node
🏗️AnalyticsTargetUpdatePayload➕ AddedOBJECT

Return type for analyticsTargetUpdate mutation.

Fields: analyticsTarget, userErrors
🏗️AnalyticsTargetsDeletePayload➕ AddedOBJECT

Return type for analyticsTargetsDelete mutation.

Fields: deletedIds, userErrors

➖ Removed Types (2)

📋CheckoutAndAccountsConfigurationBrandingBackgroundStyle➖ RemovedENUM

The container background style.

Values: SOLID, NONE
📋CheckoutAndAccountsConfigurationBrandingColorSelection➖ RemovedENUM

The color selection options.

Values: TRANSPARENT

🔄 Modified Types (9)

🏗️Channel🔄 Modified
🔄 Field modified: accountId
🔄 Field modified: accountName
🔄 Field modified: handle
🔄 Field modified: specificationHandle
🏗️ChannelCreatePayload🔄 Modified
🔄 Field modified: channel
🏗️ChannelFullSyncPayload🔄 Modified
🔄 Field modified: fullSyncTraceInfo
🏗️ChannelUpdatePayload🔄 Modified
🔄 Field modified: channel
🏗️CheckoutAndAccountsConfigurationBrandingBackground🔄 Modified
Enum value removed: TRANSPARENT
🏗️CheckoutAndAccountsConfigurationBrandingButton🔄 Modified
Field removed: background
🏗️CheckoutAndAccountsConfigurationBrandingControl🔄 Modified
Field removed: color
🏗️FullSyncTraceInfo🔄 Modified
🔄 Field modified: country
🔄 Field modified: language
🏗️LineItem🔄 Modified
Field added: weight

The weight of a line item unit.