9/22/2026, 12:01:03 AM
The description of the marketRelationships query and the Market object's child/parent fields now explain eventual consistency and reference the new marketRelationshipsStatus query. The corresponding count fieldsβ documentation has also been updated to include this reference. A new object type, AnalyticsSchemaExpansionFields, is introduced and used in the schemas to describe fields emitted when an entity is grouped. To support this, AnalyticsSchema gained an entityExpansionFields field, and AnalyticsSchemaField now exposes clusterJoin and requiresEntityNamespace to clarify clusterable dimensions and namespace requirements. The rollouts field on several discount types remains unchanged functionally but its description updates the query filter language slightly. No queries, mutations, or directives were added, removed, or deprecated in this change set.
The relationships between all markets in the shop. Eventually consistent following a change in market hierarchy.
See marketRelationshipsStatus.
The fields emitted when an entity is grouped using a schema.
entityExpansionFieldsThe fields emitted when an entity is grouped using this schema. Null for schemas that don't support entity expansion.
clusterJoinFor clusterable entity dimensions, the generated cluster schema and field that this field joins to. Null for fields that don't participate in cluster grouping.
requiresEntityNamespaceWhether this field must be referenced with its entity namespace (for example shipping_address.latitude), including when the entity is the primary entity of the schema.
rolloutsrollouts on DiscountAutomaticAppThe rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive; unknown values match no rollouts. | - DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
The rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive. Comma-separated values match any listed status: status:ACTIVE,SCHEDULED is equivalent to status:ACTIVE OR status:SCHEDULED. Quote lists containing spaces. Unknown values are ignored when mixed with known values; a filter containing only unknown values matches no rollouts. |
- DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE- status:ACTIVE,SCHEDULED |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
rolloutsrollouts on DiscountAutomaticBasicThe rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive; unknown values match no rollouts. | - DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
The rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive. Comma-separated values match any listed status: status:ACTIVE,SCHEDULED is equivalent to status:ACTIVE OR status:SCHEDULED. Quote lists containing spaces. Unknown values are ignored when mixed with known values; a filter containing only unknown values matches no rollouts. |
- DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE- status:ACTIVE,SCHEDULED |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
rolloutsrollouts on DiscountAutomaticBxgyThe rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive; unknown values match no rollouts. | - DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
The rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive. Comma-separated values match any listed status: status:ACTIVE,SCHEDULED is equivalent to status:ACTIVE OR status:SCHEDULED. Quote lists containing spaces. Unknown values are ignored when mixed with known values; a filter containing only unknown values matches no rollouts. |
- DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE- status:ACTIVE,SCHEDULED |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
rolloutsrollouts on DiscountAutomaticFreeShippingThe rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive; unknown values match no rollouts. | - DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
The rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive. Comma-separated values match any listed status: status:ACTIVE,SCHEDULED is equivalent to status:ACTIVE OR status:SCHEDULED. Quote lists containing spaces. Unknown values are ignored when mixed with known values; a filter containing only unknown values matches no rollouts. |
- DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE- status:ACTIVE,SCHEDULED |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
rolloutsrollouts on DiscountCodeAppThe rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive; unknown values match no rollouts. | - DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
The rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive. Comma-separated values match any listed status: status:ACTIVE,SCHEDULED is equivalent to status:ACTIVE OR status:SCHEDULED. Quote lists containing spaces. Unknown values are ignored when mixed with known values; a filter containing only unknown values matches no rollouts. |
- DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE- status:ACTIVE,SCHEDULED |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
rolloutsrollouts on DiscountCodeBasicThe rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive; unknown values match no rollouts. | - DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
The rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive. Comma-separated values match any listed status: status:ACTIVE,SCHEDULED is equivalent to status:ACTIVE OR status:SCHEDULED. Quote lists containing spaces. Unknown values are ignored when mixed with known values; a filter containing only unknown values matches no rollouts. |
- DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE- status:ACTIVE,SCHEDULED |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
rolloutsrollouts on DiscountCodeBxgyThe rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive; unknown values match no rollouts. | - DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
The rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive. Comma-separated values match any listed status: status:ACTIVE,SCHEDULED is equivalent to status:ACTIVE OR status:SCHEDULED. Quote lists containing spaces. Unknown values are ignored when mixed with known values; a filter containing only unknown values matches no rollouts. |
- DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE- status:ACTIVE,SCHEDULED |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
rolloutsrollouts on DiscountCodeFreeShippingThe rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive; unknown values match no rollouts. | - DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
The rollouts that include this discount. A rollout includes a discount when
one of its treatments adds or removes the discount. Walktreatments.changes to see what each treatment does to the discount.
A rollout's schedule is separate from the discount's own startsAt and endsAt.
Use query to filter by rollout status.
RolloutConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| status | string | Filter by rollout status. Values are case-insensitive. Comma-separated values match any listed status: status:ACTIVE,SCHEDULED is equivalent to status:ACTIVE OR status:SCHEDULED. Quote lists containing spaces. Unknown values are ignored when mixed with known values; a filter containing only unknown values matches no rollouts. |
- DRAFT- SCHEDULED- PAUSED- ACTIVE- CONCLUDED- ARCHIVED |
- status:ACTIVE- status:ACTIVE,SCHEDULED |
|
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
childMarketschildMarkets on MarketThe market's direct children. Eventually consistent following a change in market hierarchy. See marketRelationshipsStatus.
MarketConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
The market's direct children. Eventually consistent following a change in market hierarchy. See marketRelationshipsStatus.
MarketConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
childMarketsCountchildMarketsCount on MarketThe number of direct child markets. Eventually consistent following a change in market hierarchy. See marketRelationshipsStatus.
CountThe number of direct child markets. Eventually consistent following a change in market hierarchy. See marketRelationshipsStatus.
CountparentMarketsparentMarkets on MarketThe market's direct parents. Eventually consistent following a change in market hierarchy. See marketRelationshipsStatus.
MarketConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
The market's direct parents. Eventually consistent following a change in market hierarchy. See marketRelationshipsStatus.
MarketConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
parentMarketsCountparentMarketsCount on MarketThe number of direct parent markets. Eventually consistent following a change in market hierarchy. See marketRelationshipsStatus.
CountThe number of direct parent markets. Eventually consistent following a change in market hierarchy. See marketRelationshipsStatus.
Count